summaryrefslogtreecommitdiff
path: root/drivers/usb (follow)
Commit message (Collapse)AuthorAge
...
* | | | | | | | Merge "usb: pd: Observe PSHardResetTimer for source hard reset"Linux Build Service Account2016-10-31
|\ \ \ \ \ \ \ \
| * | | | | | | | usb: pd: Observe PSHardResetTimer for source hard resetJack Pham2016-10-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Ensure the PSHardResetTimer is observed in the source case when receiving a hard reset. Currently it is handled only when sending a hard reset. This is achieved by moving PE_SRC_TRANSITION_TO_DEFAULT from usbpd_set_state to usbpd_sm. Change-Id: Iea0a8cd64fcce14a99b828cadb0f07664ce858f0 Signed-off-by: Jack Pham <jackp@codeaurora.org>
| * | | | | | | | usb: pd: Fix sink hard reset looping bugJack Pham2016-10-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit f2449fb61a25 ("usb: pd: Clear PD_IN_HARD_RESET in PE_SNK_TRANSITION_TO_DEFAULT") introduced a subtle bug by moving the clearing of the pd->hard_reset flag in sink mode to the PE_SNK_TRANSITION_TO_DEFAULT state. This caused a regression in which the state machine acts as if it had received a hard reset signal and infinitely loops back there. The cycle could only be broken if a physical disconnect happens. Fix this by renaming the flag to hard_reset_recvd and only using it when receiving, and not sending a hard reset. Change-Id: I04008d0bfc9a874e08b45f78a937004e9f37527d Signed-off-by: Jack Pham <jackp@codeaurora.org>
* | | | | | | | | Merge "msm: ipa3: Support IPA-USB suspend sequence without remote wake-up"Linux Build Service Account2016-10-31
|\ \ \ \ \ \ \ \ \ | |_|_|/ / / / / / |/| | | | | | | |
| * | | | | | | | msm: ipa3: Support IPA-USB suspend sequence without remote wake-upGhanim Fodi2016-10-26
| | |_|/ / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Today IPA-USB uses disconnect sequence when USB initiates suspend without remote wake-up, and uses suspend sequence when USB initiates suspend with remote wake-up. In accordance with USB-GSI driver, changing this behavior to use suspend sequence in both of the cases. This is to overcome some USB H/W malfunction when using disconnect sequence in case of suspend scenario. Change-Id: Iba43e192905ab37d196aea4b5d00861b9cb7c347 CRs-Fixed: 1068949 Signed-off-by: Ghanim Fodi <gfodi@codeaurora.org>
* | | | | | | | Merge "USB: dwc3-msm: Disable pipe clock requirement for HS/FS only mode"Linux Build Service Account2016-10-27
|\ \ \ \ \ \ \ \
| * | | | | | | | USB: dwc3-msm: Disable pipe clock requirement for HS/FS only modeVijayavardhan Vennapusa2016-10-25
| | |/ / / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | USB3 core expects pipe clock input for USB connection establishment and functionality working. In case of maximum speed of USB3 core set to HS/FS mode, it is required to disable pipe clock requirement and instead use UTMI clock from HS PHY as clock input. Hence disable this pipe clock requirement for the case, where maximum speed is set to FS as well. Change-Id: Ife9d6a16e1607b40c71eb1897947bf4645ac9561 Signed-off-by: Vijayavardhan Vennapusa <vvreddy@codeaurora.org>
* | | | | | | | Merge "usb: dwc3: gadget: Remove dev_WARN_ONCE in dwc3_gadget_ep_disable"Linux Build Service Account2016-10-27
|\ \ \ \ \ \ \ \ | |_|/ / / / / / |/| | | | | | |
| * | | | | | | usb: dwc3: gadget: Remove dev_WARN_ONCE in dwc3_gadget_ep_disableHemant Kumar2016-10-24
| |/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In case of usb bus suspend at the time of disconnect, rmnet function suspend disables the endpoint. Same endpoint gets disabled again as result of handling gadget driver disconnect. This generates warning message and dumps the call stack. This may cause message flooding as a result of multiple usb plug in/plug out. Hence replace dev_WARN_ONCE with dev_dbg and log this event in debug buffer. CRs-Fixed: 1081547 Change-Id: I64f0f5b15cc5d9185e415f0b26e276e111c885ec Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
* | | | | | | Merge "Merge remote-tracking branch 'msm-4.4/tmp-510d0a3f' into msm-4.4"Linux Build Service Account2016-10-26
|\ \ \ \ \ \ \ | |_|/ / / / / |/| | | | | |
| * | | | | | Merge remote-tracking branch 'msm-4.4/tmp-510d0a3f' into msm-4.4Runmin Wang2016-10-21
| |\ \ \ \ \ \ | | |/ / / / / | |/| | | / / | | | |_|/ / | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * msm-4.4/tmp-510d0a3f: Linux 4.4.11 nf_conntrack: avoid kernel pointer value leak in slab name drm/radeon: fix DP link training issue with second 4K monitor drm/i915/bdw: Add missing delay during L3 SQC credit programming drm/i915: Bail out of pipe config compute loop on LPT drm/radeon: fix PLL sharing on DCE6.1 (v2) Revert "[media] videobuf2-v4l2: Verify planes array in buffer dequeueing" Input: max8997-haptic - fix NULL pointer dereference get_rock_ridge_filename(): handle malformed NM entries tools lib traceevent: Do not reassign parg after collapse_tree() qla1280: Don't allocate 512kb of host tags atomic_open(): fix the handling of create_error regulator: axp20x: Fix axp22x ldo_io voltage ranges regulator: s2mps11: Fix invalid selector mask and voltages for buck9 workqueue: fix rebind bound workers warning ARM: dts: at91: sam9x5: Fix the memory range assigned to the PMC vfs: rename: check backing inode being equal vfs: add vfs_select_inode() helper perf/core: Disable the event on a truncated AUX record regmap: spmi: Fix regmap_spmi_ext_read in multi-byte case pinctrl: at91-pio4: fix pull-up/down logic spi: spi-ti-qspi: Handle truncated frames properly spi: spi-ti-qspi: Fix FLEN and WLEN settings if bits_per_word is overridden spi: pxa2xx: Do not detect number of enabled chip selects on Intel SPT ALSA: hda - Fix broken reconfig ALSA: hda - Fix white noise on Asus UX501VW headset ALSA: hda - Fix subwoofer pin on ASUS N751 and N551 ALSA: usb-audio: Yet another Phoneix Audio device quirk ALSA: usb-audio: Quirk for yet another Phoenix Audio devices (v2) crypto: testmgr - Use kmalloc memory for RSA input crypto: hash - Fix page length clamping in hash walk crypto: qat - fix invalid pf2vf_resp_wq logic s390/mm: fix asce_bits handling with dynamic pagetable levels zsmalloc: fix zs_can_compact() integer overflow ocfs2: fix posix_acl_create deadlock ocfs2: revert using ocfs2_acl_chmod to avoid inode cluster lock hang net/route: enforce hoplimit max value tcp: refresh skb timestamp at retransmit time net: thunderx: avoid exposing kernel stack net: fix a kernel infoleak in x25 module uapi glibc compat: fix compile errors when glibc net/if.h included before linux/if.h MIME-Version: 1.0 bridge: fix igmp / mld query parsing net: bridge: fix old ioctl unlocked net device walk VSOCK: do not disconnect socket when peer has shutdown SEND only net/mlx4_en: Fix endianness bug in IPV6 csum calculation net: fix infoleak in rtnetlink net: fix infoleak in llc net: fec: only clear a queue's work bit if the queue was emptied netem: Segment GSO packets on enqueue sch_dsmark: update backlog as well sch_htb: update backlog as well net_sched: update hierarchical backlog too net_sched: introduce qdisc_replace() helper gre: do not pull header in ICMP error processing net: Implement net_dbg_ratelimited() for CONFIG_DYNAMIC_DEBUG case samples/bpf: fix trace_output example bpf: fix check_map_func_compatibility logic bpf: fix refcnt overflow bpf: fix double-fdput in replace_map_fd_with_map_ptr() net/mlx4_en: fix spurious timestamping callbacks ipv4/fib: don't warn when primary address is missing if in_dev is dead net/mlx5e: Fix minimum MTU net/mlx5e: Device's mtu field is u16 and not int openvswitch: use flow protocol when recalculating ipv6 checksums atl2: Disable unimplemented scatter/gather feature vlan: pull on __vlan_insert_tag error path and fix csum correction net: use skb_postpush_rcsum instead of own implementations cdc_mbim: apply "NDP to end" quirk to all Huawei devices bpf/verifier: reject invalid LD_ABS | BPF_DW instruction net: sched: do not requeue a NULL skb packet: fix heap info leak in PACKET_DIAG_MCLIST sock_diag interface route: do not cache fib route info on local routes with oif decnet: Do not build routes to devices without decnet private data. parisc: Use generic extable search and sort routines arm64: kasan: Use actual memory node when populating the kernel image shadow arm64: mm: treat memstart_addr as a signed quantity arm64: lse: deal with clobbered IP registers after branch via PLT arm64: mm: check at build time that PAGE_OFFSET divides the VA space evenly arm64: kasan: Fix zero shadow mapping overriding kernel image shadow arm64: consistently use p?d_set_huge arm64: fix KASLR boot-time I-cache maintenance arm64: hugetlb: partial revert of 66b3923a1a0f arm64: make irq_stack_ptr more robust arm64: efi: invoke EFI_RNG_PROTOCOL to supply KASLR randomness efi: stub: use high allocation for converted command line efi: stub: add implementation of efi_random_alloc() efi: stub: implement efi_get_random_bytes() based on EFI_RNG_PROTOCOL arm64: kaslr: randomize the linear region arm64: add support for kernel ASLR arm64: add support for building vmlinux as a relocatable PIE binary arm64: switch to relative exception tables extable: add support for relative extables to search and sort routines scripts/sortextable: add support for ET_DYN binaries arm64: futex.h: Add missing PAN toggling arm64: make asm/elf.h available to asm files arm64: avoid dynamic relocations in early boot code arm64: avoid R_AARCH64_ABS64 relocations for Image header fields arm64: add support for module PLTs arm64: move brk immediate argument definitions to separate header arm64: mm: use bit ops rather than arithmetic in pa/va translations arm64: mm: only perform memstart_addr sanity check if DEBUG_VM arm64: User die() instead of panic() in do_page_fault() arm64: allow kernel Image to be loaded anywhere in physical memory arm64: defer __va translation of initrd_start and initrd_end arm64: move kernel image to base of vmalloc area arm64: kvm: deal with kernel symbols outside of linear mapping arm64: decouple early fixmap init from linear mapping arm64: pgtable: implement static [pte|pmd|pud]_offset variants arm64: introduce KIMAGE_VADDR as the virtual base of the kernel region arm64: add support for ioremap() block mappings arm64: prevent potential circular header dependencies in asm/bug.h of/fdt: factor out assignment of initrd_start/initrd_end of/fdt: make memblock minimum physical address arch configurable arm64: Remove the get_thread_info() function arm64: kernel: Don't toggle PAN on systems with UAO arm64: cpufeature: Test 'matches' pointer to find the end of the list arm64: kernel: Add support for User Access Override arm64: add ARMv8.2 id_aa64mmfr2 boiler plate arm64: cpufeature: Change read_cpuid() to use sysreg's mrs_s macro arm64: use local label prefixes for __reg_num symbols arm64: vdso: Mark vDSO code as read-only arm64: ubsan: select ARCH_HAS_UBSAN_SANITIZE_ALL arm64: ptdump: Indicate whether memory should be faulting arm64: Add support for ARCH_SUPPORTS_DEBUG_PAGEALLOC arm64: Drop alloc function from create_mapping arm64: prefetch: add missing #include for spin_lock_prefetch arm64: lib: patch in prfm for copy_page if requested arm64: lib: improve copy_page to deal with 128 bytes at a time arm64: prefetch: add alternative pattern for CPUs without a prefetcher arm64: prefetch: don't provide spin_lock_prefetch with LSE arm64: allow vmalloc regions to be set with set_memory_* arm64: kernel: implement ACPI parking protocol arm64: mm: create new fine-grained mappings at boot arm64: ensure _stext and _etext are page-aligned arm64: mm: allow passing a pgdir to alloc_init_* arm64: mm: allocate pagetables anywhere arm64: mm: use fixmap when creating page tables arm64: mm: add functions to walk tables in fixmap arm64: mm: add __{pud,pgd}_populate arm64: mm: avoid redundant __pa(__va(x)) arm64: mm: add functions to walk page tables by PA arm64: mm: move pte_* macros arm64: kasan: avoid TLB conflicts arm64: mm: add code to safely replace TTBR1_EL1 arm64: add function to install the idmap arm64: unmap idmap earlier arm64: unify idmap removal arm64: mm: place empty_zero_page in bss arm64: mm: specialise pagetable allocators asm-generic: Fix local variable shadow in __set_fixmap_offset Eliminate the .eh_frame sections from the aarch64 vmlinux and kernel modules arm64: Fix an enum typo in mm/dump.c arm64: kasan: ensure that the KASAN zero page is mapped read-only arch/arm64/include/asm/pgtable.h: add pmd_mkclean for THP arm64: hide __efistub_ aliases from kallsyms Linux 4.4.10 drm/i915/skl: Fix DMC load on Skylake J0 and K0 lib/test-string_helpers.c: fix and improve string_get_size() tests ACPI / processor: Request native thermal interrupt handling via _OSC drm/i915: Fake HDMI live status drm/i915: Make RPS EI/thresholds multiple of 25 on SNB-BDW drm/i915: Fix eDP low vswing for Broadwell drm/i915/ddi: Fix eDP VDD handling during booting and suspend/resume drm/radeon: make sure vertical front porch is at least 1 iio: ak8975: fix maybe-uninitialized warning iio: ak8975: Fix NULL pointer exception on early interrupt drm/amdgpu: set metadata pointer to NULL after freeing. drm/amdgpu: make sure vertical front porch is at least 1 gpu: ipu-v3: Fix imx-ipuv3-crtc module autoloading nvmem: mxs-ocotp: fix buffer overflow in read USB: serial: cp210x: add Straizona Focusers device ids USB: serial: cp210x: add ID for Link ECU ata: ahci-platform: Add ports-implemented DT bindings. libahci: save port map for forced port map powerpc: Fix bad inline asm constraint in create_zero_mask() ACPICA: Dispatcher: Update thread ID for recursive method calls x86/sysfb_efi: Fix valid BAR address range check ARC: Add missing io barriers to io{read,write}{16,32}be() ARM: cpuidle: Pass on arm_cpuidle_suspend()'s return value propogate_mnt: Handle the first propogated copy being a slave fs/pnode.c: treat zero mnt_group_id-s as unequal x86/tsc: Read all ratio bits from MSR_PLATFORM_INFO MAINTAINERS: Remove asterisk from EFI directory names writeback: Fix performance regression in wb_over_bg_thresh() batman-adv: Reduce refcnt of removed router when updating route batman-adv: Fix broadcast/ogm queue limit on a removed interface batman-adv: Check skb size before using encapsulated ETH+VLAN header batman-adv: fix DAT candidate selection (must use vid) mm: update min_free_kbytes from khugepaged after core initialization proc: prevent accessing /proc/<PID>/environ until it's ready Input: zforce_ts - fix dual touch recognition HID: Fix boot delay for Creative SB Omni Surround 5.1 with quirk HID: wacom: Add support for DTK-1651 xen/evtchn: fix ring resize when binding new events xen/balloon: Fix crash when ballooning on x86 32 bit PAE xen: Fix page <-> pfn conversion on 32 bit systems ARM: SoCFPGA: Fix secondary CPU startup in thumb2 kernel ARM: EXYNOS: Properly skip unitialized parent clock in power domain on mm/zswap: provide unique zpool name mm, cma: prevent nr_isolated_* counters from going negative Minimal fix-up of bad hashing behavior of hash_64() MD: make bio mergeable tracing: Don't display trigger file for events that can't be enabled mac80211: fix statistics leak if dev_alloc_name() fails ath9k: ar5008_hw_cmn_spur_mitigate: add missing mask_m & mask_p initialisation lpfc: fix misleading indentation clk: qcom: msm8960: Fix ce3_src register offset clk: versatile: sp810: support reentrance clk: qcom: msm8960: fix ce3_core clk enable register clk: meson: Fix meson_clk_register_clks() signature type mismatch clk: rockchip: free memory in error cases when registering clock branches soc: rockchip: power-domain: fix err handle while probing clk-divider: make sure read-only dividers do not write to their register CNS3xxx: Fix PCI cns3xxx_write_config() mwifiex: fix corner case association failure ata: ahci_xgene: dereferencing uninitialized pointer in probe nbd: ratelimit error msgs after socket close mfd: intel-lpss: Remove clock tree on error path ipvs: drop first packet to redirect conntrack ipvs: correct initial offset of Call-ID header search in SIP persistence engine ipvs: handle ip_vs_fill_iph_skb_off failure RDMA/iw_cxgb4: Fix bar2 virt addr calculation for T4 chips Revert: "powerpc/tm: Check for already reclaimed tasks" arm64: head.S: use memset to clear BSS efi: stub: define DISABLE_BRANCH_PROFILING for all architectures arm64: entry: remove pointless SPSR mode check arm64: mm: move pgd_cache initialisation to pgtable_cache_init arm64: module: avoid undefined shift behavior in reloc_data() arm64: module: fix relocation of movz instruction with negative immediate arm64: traps: address fallout from printk -> pr_* conversion arm64: ftrace: fix a stack tracer's output under function graph tracer arm64: pass a task parameter to unwind_frame() arm64: ftrace: modify a stack frame in a safe way arm64: remove irq_count and do_softirq_own_stack() arm64: hugetlb: add support for PTE contiguous bit arm64: Use PoU cache instr for I/D coherency arm64: Defer dcache flush in __cpu_copy_user_page arm64: reduce stack use in irq_handler arm64: Documentation: add list of software workarounds for errata arm64: mm: place __cpu_setup in .text arm64: cmpxchg: Don't incldue linux/mmdebug.h arm64: mm: fold alternatives into .init arm64: Remove redundant padding from linker script arm64: mm: remove pointless PAGE_MASKing arm64: don't call C code with el0's fp register arm64: when walking onto the task stack, check sp & fp are in current->stack arm64: Add this_cpu_ptr() assembler macro for use in entry.S arm64: irq: fix walking from irq stack to task stack arm64: Add do_softirq_own_stack() and enable irq_stacks arm64: Modify stack trace and dump for use with irq_stack arm64: Store struct thread_info in sp_el0 arm64: Add trace_hardirqs_off annotation in ret_to_user arm64: ftrace: fix the comments for ftrace_modify_code arm64: ftrace: stop using kstop_machine to enable/disable tracing arm64: spinlock: serialise spin_unlock_wait against concurrent lockers arm64: enable HAVE_IRQ_TIME_ACCOUNTING arm64: fix COMPAT_SHMLBA definition for large pages arm64: add __init/__initdata section marker to some functions/variables arm64: pgtable: implement pte_accessible() arm64: mm: allow sections for unaligned bases arm64: mm: detect bad __create_mapping uses Linux 4.4.9 extcon: max77843: Use correct size for reading the interrupt register stm class: Select CONFIG_SRCU megaraid_sas: add missing curly braces in ioctl handler sunrpc/cache: drop reference when sunrpc_cache_pipe_upcall() detects a race thermal: rockchip: fix a impossible condition caused by the warning unbreak allmodconfig KCONFIG_ALLCONFIG=... jme: Fix device PM wakeup API usage jme: Do not enable NIC WoL functions on S0 bus: imx-weim: Take the 'status' property value into account ARM: dts: pxa: fix dma engine node to pxa3xx-nand ARM: dts: armada-375: use armada-370-sata for SATA ARM: EXYNOS: select THERMAL_OF ARM: prima2: always enable reset controller ARM: OMAP3: Add cpuidle parameters table for omap3430 ext4: fix races of writeback with punch hole and zero range ext4: fix races between buffered IO and collapse / insert range ext4: move unlocked dio protection from ext4_alloc_file_blocks() ext4: fix races between page faults and hole punching perf stat: Document --detailed option perf tools: handle spaces in file names obtained from /proc/pid/maps perf hists browser: Only offer symbol scripting when a symbol is under the cursor mtd: nand: Drop mtd.owner requirement in nand_scan mtd: brcmnand: Fix v7.1 register offsets mtd: spi-nor: remove micron_quad_enable() serial: sh-sci: Remove cpufreq notifier to fix crash/deadlock ext4: fix NULL pointer dereference in ext4_mark_inode_dirty() x86/mm/kmmio: Fix mmiotrace for hugepages perf evlist: Reference count the cpu and thread maps at set_maps() drivers/misc/ad525x_dpot: AD5274 fix RDAC read back errors rtc: max77686: Properly handle regmap_irq_get_virq() error code rtc: rx8025: remove rv8803 id rtc: ds1685: passing bogus values to irq_restore rtc: vr41xx: Wire up alarm_irq_enable rtc: hym8563: fix invalid year calculation PM / Domains: Fix removal of a subdomain PM / OPP: Initialize u_volt_min/max to a valid value misc: mic/scif: fix wrap around tests misc/bmp085: Enable building as a module lib/mpi: Endianness fix fbdev: da8xx-fb: fix videomodes of lcd panels scsi_dh: force modular build if SCSI is a module paride: make 'verbose' parameter an 'int' again regulator: s5m8767: fix get_register() error handling irqchip/mxs: Fix error check of of_io_request_and_map() irqchip/sunxi-nmi: Fix error check of of_io_request_and_map() spi/rockchip: Make sure spi clk is on in rockchip_spi_set_cs locking/mcs: Fix mcs_spin_lock() ordering regulator: core: Fix nested locking of supplies regulator: core: Ensure we lock all regulators regulator: core: fix regulator_lock_supply regression Revert "regulator: core: Fix nested locking of supplies" videobuf2-v4l2: Verify planes array in buffer dequeueing videobuf2-core: Check user space planes array in dqbuf USB: usbip: fix potential out-of-bounds write cgroup: make sure a parent css isn't freed before its children mm/hwpoison: fix wrong num_poisoned_pages accounting mm: vmscan: reclaim highmem zone if buffer_heads is over limit numa: fix /proc/<pid>/numa_maps for THP mm/huge_memory: replace VM_NO_THP VM_BUG_ON with actual VMA check memcg: relocate charge moving from ->attach to ->post_attach cgroup, cpuset: replace cpuset_post_attach_flush() with cgroup_subsys->post_attach callback slub: clean up code for kmem cgroup support to kmem_cache_free_bulk workqueue: fix ghost PENDING flag while doing MQ IO x86/apic: Handle zero vector gracefully in clear_vector_irq() efi: Expose non-blocking set_variable() wrapper to efivars efi: Fix out-of-bounds read in variable_matches() IB/security: Restrict use of the write() interface IB/mlx5: Expose correct max_sge_rd limit cxl: Keep IRQ mappings on context teardown v4l2-dv-timings.h: fix polarity for 4k formats vb2-memops: Fix over allocation of frame vectors ASoC: rt5640: Correct the digital interface data select ASoC: dapm: Make sure we have a card when displaying component widgets ASoC: ssm4567: Reset device before regcache_sync() ASoC: s3c24xx: use const snd_soc_component_driver pointer EDAC: i7core, sb_edac: Don't return NOTIFY_BAD from mce_decoder callback toshiba_acpi: Fix regression caused by hotkey enabling value i2c: exynos5: Fix possible ABBA deadlock by keeping I2C clock prepared i2c: cpm: Fix build break due to incompatible pointer types perf intel-pt: Fix segfault tracing transactions drm/i915: Use fw_domains_put_with_fifo() on HSW drm/i915: Fixup the free space logic in ring_prepare drm/amdkfd: uninitialized variable in dbgdev_wave_control_set_registers() drm/i915: skl_update_scaler() wants a rotation bitmask instead of bit number drm/i915: Cleanup phys status page too pwm: brcmstb: Fix check of devm_ioremap_resource() return code drm/dp/mst: Get validated port ref in drm_dp_update_payload_part1() drm/dp/mst: Restore primary hub guid on resume drm/dp/mst: Validate port in drm_dp_payload_send_msg() drm/nouveau/gr/gf100: select a stream master to fixup tfb offset queries drm: Loongson-3 doesn't fully support wc memory drm/radeon: fix vertical bars appear on monitor (v2) drm/radeon: forbid mapping of userptr bo through radeon device file drm/radeon: fix initial connector audio value drm/radeon: add a quirk for a XFX R9 270X drm/amdgpu: fix regression on CIK (v2) amdgpu/uvd: add uvd fw version for amdgpu drm/amdgpu: bump the afmt limit for CZ, ST, Polaris drm/amdgpu: use defines for CRTCs and AMFT blocks drm/amdgpu: when suspending, if uvd/vce was running. need to cancel delay work. iommu/dma: Restore scatterlist offsets correctly iommu/amd: Fix checking of pci dma aliases pinctrl: single: Fix pcs_parse_bits_in_pinctrl_entry to use __ffs than ffs pinctrl: mediatek: correct debounce time unit in mtk_gpio_set_debounce xen kconfig: don't "select INPUT_XEN_KBDDEV_FRONTEND" Input: pmic8xxx-pwrkey - fix algorithm for converting trigger delay Input: gtco - fix crash on detecting device without endpoints netlink: don't send NETLINK_URELEASE for unbound sockets nl80211: check netlink protocol in socket release notification powerpc: Update TM user feature bits in scan_features() powerpc: Update cpu_user_features2 in scan_features() powerpc: scan_features() updates incorrect bits for REAL_LE crypto: talitos - fix AEAD tcrypt tests crypto: talitos - fix crash in talitos_cra_init() crypto: sha1-mb - use corrcet pointer while completing jobs crypto: ccp - Prevent information leakage on export iwlwifi: mvm: fix memory leak in paging iwlwifi: pcie: lower the debug level for RSA semaphore access s390/pci: add extra padding to function measurement block cpufreq: intel_pstate: Fix processing for turbo activation ratio Revert "drm/amdgpu: disable runtime pm on PX laptops without dGPU power control" Revert "drm/radeon: disable runtime pm on PX laptops without dGPU power control" drm/i915: Fix race condition in intel_dp_destroy_mst_connector() drm/qxl: fix cursor position with non-zero hotspot drm/nouveau/core: use vzalloc for allocating ramht futex: Acknowledge a new waiter in counter before plist futex: Handle unlock_pi race gracefully asm-generic/futex: Re-enable preemption in futex_atomic_cmpxchg_inatomic() ALSA: hda - Add dock support for ThinkPad X260 ALSA: pcxhr: Fix missing mutex unlock ALSA: hda - add PCI ID for Intel Broxton-T ALSA: hda - Keep powering up ADCs on Cirrus codecs ALSA: hda/realtek - Add ALC3234 headset mode for Optiplex 9020m ALSA: hda - Don't trust the reported actual power state x86 EDAC, sb_edac.c: Repair damage introduced when "fixing" channel address x86/mm/xen: Suppress hugetlbfs in PV guests arm64: Update PTE_RDONLY in set_pte_at() for PROT_NONE permission arm64: Honour !PTE_WRITE in set_pte_at() for kernel mappings sched/cgroup: Fix/cleanup cgroup teardown/init dmaengine: pxa_dma: fix the maximum requestor line dmaengine: hsu: correct use of channel status register dmaengine: dw: fix master selection debugfs: Make automount point inodes permanently empty lib: lz4: fixed zram with lz4 on big endian machines dm cache metadata: fix cmd_read_lock() acquiring write lock dm cache metadata: fix READ_LOCK macros and cleanup WRITE_LOCK macros usb: gadget: f_fs: Fix use-after-free usb: hcd: out of bounds access in for_each_companion xhci: fix 10 second timeout on removal of PCI hotpluggable xhci controllers usb: xhci: fix wild pointers in xhci_mem_cleanup xhci: resume USB 3 roothub first usb: xhci: applying XHCI_PME_STUCK_QUIRK to Intel BXT B0 host assoc_array: don't call compare_object() on a node ARM: OMAP2+: hwmod: Fix updating of sysconfig register ARM: OMAP2: Fix up interconnect barrier initialization for DRA7 ARM: mvebu: Correct unit address for linksys ARM: dts: AM43x-epos: Fix clk parent for synctimer KVM: arm/arm64: Handle forward time correction gracefully kvm: x86: do not leak guest xcr0 into host interrupt handlers x86/mce: Avoid using object after free in genpool block: loop: fix filesystem corruption in case of aio/dio block: partition: initialize percpuref before sending out KOBJ_ADD Conflicts: arch/arm64/Kconfig arch/arm64/include/asm/cputype.h arch/arm64/include/asm/hardirq.h arch/arm64/include/asm/irq.h arch/arm64/include/asm/mmu_context.h arch/arm64/kernel/cpu_errata.c arch/arm64/kernel/cpuinfo.c arch/arm64/kernel/setup.c arch/arm64/kernel/smp.c arch/arm64/kernel/stacktrace.c arch/arm64/mm/init.c arch/arm64/mm/mmu.c arch/arm64/mm/pageattr.c mm/memcontrol.c CRs-Fixed: 1069136 Signed-off-by: Bryan Huntsman <bryanh@codeaurora.org> Signed-off-by: Runmin Wang <runminw@codeaurora.org> Change-Id: Ie9a16debd0578331a66947376f3b787a7bb54d65
* | | | | | Merge "USB: pd: Fix compilation issues for 32 bit support"Linux Build Service Account2016-10-25
|\ \ \ \ \ \ | |/ / / / / |/| | | | |
| * | | | | USB: pd: Fix compilation issues for 32 bit supportVijayavardhan Vennapusa2016-10-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Compilation errors are seen from qpnp-pdphy.c and policy_engine.c drivers, when try to compile for 32 bit support. Hence fix those errors for 32 bit support getting compiled successfully. Change-Id: I0c496a73feb83c640f9a135f98ec393d1096b205 Signed-off-by: Vijayavardhan Vennapusa <vvreddy@codeaurora.org>
* | | | | | Merge "qpnp-smb2: support setting FCC and float voltage in battery power supply"Linux Build Service Account2016-10-20
|\ \ \ \ \ \
| * | | | | | usb: pd: Clear PD_IN_HARD_RESET in PE_SNK_TRANSITION_TO_DEFAULTJack Pham2016-10-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make sure to properly clear the PD_IN_HARD_RESET property upon reaching the SNK_Transition_to_default state to ensure that the charger driver is notified that hard reset has completed. Move the clearing of pd->hard_reset flag here as well for clarity. Also clear the pd->in_pr_swap flag when initiating or receiving hard reset signal as that should promptly abort any PR swap operation in progress. Change-Id: I967e3841af614ecd2129bf60dc08a1b19731c4e3 Signed-off-by: Jack Pham <jackp@codeaurora.org>
| * | | | | | usb: pd: Start state machine when PE_START is trueJack Pham2016-10-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Support the new POWER_SUPPLY_PROP_PE_START property which indicates when the policy engine state machine can begin. This helps to simplify the psy_changed() routine as we can now rely on this property to indicate that PROP_TYPEC_MODE and PROP_TYPE are already settled. The state machine work can now simply begin when seeing a change in TYPEC_MODE. This replaces the previous use of PROP_PD_ALLOWED which prior to commit 18da08334eb3 ("usb: pd: Handle PD_ALLOWED within state machine") was intended to be a marker to start up the policy engine but now simply indicates whether or not to start PD comms. We can now move reading of this property to usbpd_set_state() as it is now only needed locally in the SNK_STARTUP handling. Change-Id: Ia0b9e5b011ae72e1afcaf5109b8253d124afc021 Signed-off-by: Jack Pham <jackp@codeaurora.org>
* | | | | | | Merge "usb: gadget: f_qc_rndis: Change function name from qcrndis to bam"Linux Build Service Account2016-10-19
|\ \ \ \ \ \ \ | |_|/ / / / / |/| | | | | |
| * | | | | | usb: gadget: f_qc_rndis: Change function name from qcrndis to bamChandana Kishori Chiluveru2016-10-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | bam can represent the transport used for the function. Hence change the name from qcrndis to bam. Change-Id: Ie153ae9cc00a72287b10623d63f29c08a1154cb9 Signed-off-by: Chandana Kishori Chiluveru <cchiluve@codeaurora.org>
* | | | | | | Merge "usb: gadget: f_midi: Fix use after free bug"Linux Build Service Account2016-10-18
|\ \ \ \ \ \ \ | |_|/ / / / / |/| | | | | |
| * | | | | | usb: gadget: f_midi: Fix use after free bugHemant Kumar2016-10-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Upon cable disconnect usb composition switches from midi to default composition as a result midi function driver frees the midi function. When cable is plugged back in android_setup calls function setup call back for all the function instances having non-null function pointer. This results into access to already freed function pointer stored in function instance. Fix this issue by setting function instance's function pointer to NULL so that android_setup will skip calling midi function setup upon next cable connect. Change-Id: Ia619650c94c35aea015a89841c59a1f9dbc521f9 Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
* | | | | | | usb: pd: Use new power_supply properties for PD currentJack Pham2016-10-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Switch to setting the POWER_SUPPLY_PROP_PD_CURRENT_MAX for indicating the current limit to the charger driver when an explicit contract is established. Also set the POWER_SUPPLY_PROP_PD_USB_SUSPEND_SUPPORTED property whenever encountering the "USB Suspend Supported" bit in the first PDO of a Source Capabilities message. This is an indication to the charger that when the USB bus enters suspend state that it should follow suspend rules according to USB 2.0/3.1 spec. Change-Id: I665ec788a770632b4849b9beff8444d00e956ce1 Signed-off-by: Jack Pham <jackp@codeaurora.org>
* | | | | | | usb: pd: Handle PD_ALLOWED within state machineJack Pham2016-10-14
| |/ / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Charger may be able to detect a legacy cable connection in which PD is not supported however the state machine still needs to run in order to send the EXTCON_USB notification to start the USB controller in peripheral mode (assuming type is SDP or CDP). Move checking of PD_ALLOWED to the state machine which can be used to determine if moving beyond PE_SNK_STARTUP is allowed or not. The psy_changed() callback should only queue the work when either typec_mode or pd_allowed states have changed. Also move handling of the in_pr_swap flag to this function by absorbing the disconnect callback and clearing the flag when CC state indicates it is reconnected. Change-Id: I8879699531a49915e7286e4a166944709076fbd1 Signed-off-by: Jack Pham <jackp@codeaurora.org>
* | | | | | usb: pd: Use new power_supply PD_IN_HARD_RESET propertyJack Pham2016-10-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Set the POWER_SUPPLY_PROP_PD_IN_HARD_RESET when hard reset has been issued and clear it when completed. This replaces the previous use of PD_ACTIVE which is now used to indicate assertively whether the port partner is PD capable or not. As such, since charger driver now definitively knows, it is also not necessary to explicitly change PROP_TYPE to USB_PD. Change-Id: I4d8c9fcdf553d1cf1ae79c66932773834804d1a9 Signed-off-by: Jack Pham <jackp@codeaurora.org>
* | | | | | usb: pd: Support VCONN SwapJack Pham2016-10-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Support incoming VCONN Swap requests by accepting and turning off/on VCONN. Due to HW board limitations, if VCONN is being sourced from the VBUS input we cannot support enabling VCONN while as a sink and greater than 5V has been negotiated on VBUS. In that case, reject the request. Add a device tree property that indicates whether the board is configured for separate VCONN supply. Change-Id: If3a9aa316ae08a80468631f3d536a1b345e21b18 Signed-off-by: Jack Pham <jackp@codeaurora.org>
* | | | | | usb: pd: Prevent sleep when state machine in progressJack Pham2016-10-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | With PM autosleep enabled, the system may aggressively enter and re-enter suspend in between calls to queue_work() and when the state machine function gets executed, which may at best result in numerous suspend/resume cycles and at worse starve the PD state machine from even executing. Fix this by calling pm_stay_awake() whenever the work is queued and relinquish with pm_relax() when no further work is to be done. Change-Id: I71d8ea0c69a7b174c2280f92d1f5342e5e50d9b0 Signed-off-by: Jack Pham <jackp@codeaurora.org>
* | | | | | usb: pd: Simplify VDM tx handlingJack Pham2016-10-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | VDMs, especially structured ones, are almost always handled as requests and responses. Hence it does not make sense to allow more than one outgoing VDM at a time, so get rid of the vdm_tx_queue list and simplify it to a single-issued packet. Because port partners can only have one VDM request/response in flight, also handle the case when a new structured request is received before the previous response has been sent. In that case we simply discard the queued message as it's now invalid. Change-Id: I144f8158dbf8be0babf5516b01d084fd053413c3 Signed-off-by: Jack Pham <jackp@codeaurora.org>
* | | | | | usb: pd: Correctly handle invalid Structured VDMsJack Pham2016-10-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As UFP since the policy engine only responds to the Discover Identity command, all other commands are unrecognized and therefore should be NAKed. Fix the handling as follows: - Ensure the standard Discover Identity was sent using SID of 0xFF00, otherwise it is invalid - Don't NAK incoming Attention messages - When sending a NAK, respond with the same SVID of the initiating command, whether it was correct or not - Enter Mode is not supported in general, but the NAK should also be sent back with the same mode index - Re-issue Discover SVIDs when more than 12 SVIDs are returned - Clean up macro name prefixes from 'VDM' to 'SVDM' to emphasize they are accessing structured VDM specific bits Change-Id: Id2590065a01e46f8da70733d55f3bfabff5b532d Signed-off-by: Jack Pham <jackp@codeaurora.org>
* | | | | | usb: pd: Miscellaneous compliance fixesJack Pham2016-10-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix several issues which help address PD compliance testing: - Soft reset should be issued instead of hard reset in cases where an unexpected message is received. - In source mode, send a Reject if the Request PDO object also exceeds the advertised current capability. Fix the incorrect bitmask in the PD_RDO_FIXED_CURR macro. - Handle possibility of quick back-to-back RX messages by flushing the sm worker to ensure the last message was fully processed before overwriting the buffer. - Discard PING messages as they are not applicable to Type-C. - Respond to GET_SINK_CAP while in source mode, and vice versa, respond to GET_SOURCE_CAP when in sink mode. - Move pd->hard_reset=false to PE_SRC/SNK_TRANSITION_TO_DEFAULT for consistency. - Change default sink capabilities to advertise only 5V @ 900mA since the policy engine will not automatically request higher voltages. If userspace wants to request greater than 5V it should also update the sink capabilities. - Reset the protocol counters at the beginning of PE_SNK_STARTUP. Change-Id: I44598eb0b49efd763f86f303c70e8b018fca994b Signed-off-by: Jack Pham <jackp@codeaurora.org>
* | | | | | Merge "usb: gadget: f_midi: Use 1024 bytes as MIDI buffer size"Linux Build Service Account2016-10-14
|\ \ \ \ \ \
| * | | | | | usb: gadget: f_midi: Use 1024 bytes as MIDI buffer sizeHemant Kumar2016-10-13
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some UDC driver doesn't allow or throw errors when USB request buffer queued is unaligned i.e. buffer size is not equal to wMaxPacketSize or multiple of wMaxPacketSize. Fix this issue by using 1024 bytes as MIDI buffer size instead of 256 bytes. Change-Id: I71d520a5a800a3e612dc4d57e7baffa93fad61b3 Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
* | | | | | usb: pd: Fix PR_SWAP handlingJack Pham2016-10-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix several issues found with PR Swap robustness. - Change Rd->Rp as part of PE_PRS_SNK_SRC_TRANSITION_TO_OFF instead of PE_PRS_SNK_SRC_SOURCE_ON since the latter state is entered once the connection is re-established post-swap. Make sure to also notify the charger to stop drawing power. - Properly handle/ignore CC disconnect in psy_changed() which happens during the swap operation. Similarly, don't queue the state worker when detecting CC re-connect after becoming sink as the transition is already handled via PD message exchange. - Restore DRP toggling as soon as the operation is completed in order to cycle properly after the next disconnection. - Add tSwapSourceStart delay after becoming new source and before sending the source capabilities messages. - Add extra time (< tNewSrc) after enabling VBUS to allow it to fully ramp up after becoming the new source. - Unconditionally disable Vconn regulator during disconnect, since it's now possible to have it on even in sink mode. Change-Id: I9ee694d56dac11c315b45c8fc1e8be9426d06719 Signed-off-by: Jack Pham <jackp@codeaurora.org>
* | | | | | usb: pd: Improve sink hard reset handlingJack Pham2016-10-13
|/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | During hard reset in sink mode, move the wait for VBUS to reconnect to the PE_SNK_TRANSITION_TO_DEFAULT state. Use the hrtimer to wait up to the maximum expected time for VBUS to come back, which is triggered by the CC notification from psy_changed(). This simplifies PE_SNK_STARTUP to only be invoked when VBUS is already present and eliminates the PE_SNK_DISCOVERY state. When a non-PD source is connected, as the engine attempts to wait for source capabilities this will result in hard reset getting attempted 3 times with the hrtimer reaching full timeout each time (for a total of ~6s) before settling. Change-Id: Iee74c206b28fea9b75df2d234609a7939bc3d93c Signed-off-by: Jack Pham <jackp@codeaurora.org>
* | | | | Merge "dwc3: gadget: Don't memset TRB ring with zero related to USB GSI ↵Linux Build Service Account2016-10-11
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | endpoint"
| * | | | | dwc3: gadget: Don't memset TRB ring with zero related to USB GSI endpointMayank Rana2016-10-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | USB GSI endpoint related TRB ring is allocated with EP_OPS. Each USB endpoint related TRB ring is zeroed with usb_ep_disable() operation. Hence if USB composition switch or USB cable disconnect is performed when there is active data transfer with USB GSI endpoint, it results into IPA GSI accessing 0x0 address causing bus errors. Hence fix this issue by not memsetting TRB ring with zero for USB GSI endpoint. CRs-Fixed: 1072782 Change-Id: I92df514e31d5168b8dff4b249f4d8fd3e70c0118 Signed-off-by: Mayank Rana <mrana@codeaurora.org>
* | | | | | Merge "usb: gadget: ncm: Add super speed descriptors for NCM function"Linux Build Service Account2016-10-10
|\ \ \ \ \ \ | |/ / / / / |/| | | | |
| * | | | | usb: gadget: ncm: Add super speed descriptors for NCM functionMayank Rana2016-10-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change adds super speed descriptors which is required to get NCM function to work with SSUSB mode. The burst capability is not enabled for now. CRs-Fixed: 804486 Change-Id: I6239ad9e64969afb4e9af87d76837b940c3d1348 Signed-off-by: Mayank Rana <mrana@codeaurora.org>
* | | | | | Merge "usb: host: Flush hub workqueue before stopping controller"Linux Build Service Account2016-10-07
|\ \ \ \ \ \
| * | | | | | usb: host: Flush hub workqueue before stopping controllerHemant Kumar2016-10-06
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | when xhci platform driver is removed with a usb device connected there is a possibility of race between xhci platform driver remove context and device disconnect hub event work context. This results into use after free: xhci_mem_clean() called from xhci_plat_remove() freeing the xhci virtual device when a structure member is being accessed by xhci_alloc_virt_device() after virtual device allocation as part of connect hub event. deadlock: Upon device disconnect if stop endpoint command remains pending xhci_mem_cleanup() frees xhci virtual device which also frees up endpoint stop_cmd_timer. udev->dev lock is held until cancelled urb is not given back to class driver. In a different context xhci platform remove calls usb_disconnect() on children of root hub which tries to acquire the same udev->dev lock this results into a dead lock condition. Fix issues by making sure hub events are flushed before xhci is stopped. Change-Id: I86d414bca17464d1dff3346ec668d8b3efec1652 Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
* | | | | | Merge "usb: gadget: f_mtp: Handle mtp os desc properly"Linux Build Service Account2016-10-06
|\ \ \ \ \ \
| * | | | | | usb: gadget: f_mtp: Handle mtp os desc properlyHemant Kumar2016-10-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently mtp function driver is skipping function setup call back by not populating function pointer in function instance. Also, is_ptp flag is set incorrectly as true for mtp instance which would pass wrong os descriptor for mtp and ptp instance. Allow mtp driver to send os descriptor by populating function pointer in function instance and correctly set the is_ptp flag to pass valid os descriptors. Change-Id: Iec05a2f9309aba7d9ff81eca4ce683eff1590699 Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
* | | | | | | Merge "dwc3-msm: Acquire lock for USB GSI endpoint related operations"Linux Build Service Account2016-10-06
|\ \ \ \ \ \ \
| * | | | | | | dwc3-msm: Acquire lock for USB GSI endpoint related operationsMayank Rana2016-10-05
| | |/ / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There is possibility where any control request for USB GSI endpint e.g. CLEAR_FEATURE racing against USB GSI endpoint operation. Hence acquire lock for USB GSI endpoint related operations which involves sending required USB commands for the endpoint operation. Change-Id: If14af809c443e12bd64e54910602c4aeeca4f0df Signed-off-by: Mayank Rana <mrana@codeaurora.org>
* | | | | | | Merge "usb: gadget: f_gsi: Enable auto detect RNDIS device on windows OS"Linux Build Service Account2016-10-06
|\ \ \ \ \ \ \
| * | | | | | | usb: gadget: f_gsi: Enable auto detect RNDIS device on windows OSHemant Kumar2016-10-05
| |/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | RNDIS IAD descriptor needs to get updated to support auto detection of RNDIS device so that windows OS can load the RNDIS driver without manually loading the driver. Change-Id: Ia0cb418d886d6dd066d956c359a39af3ab47c9f2 Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
* | | | | | | Merge "usb: pd: Return different errors in devm_usbpd_get_by_phandle()"Linux Build Service Account2016-10-06
|\ \ \ \ \ \ \
| * | | | | | | usb: pd: Return different errors in devm_usbpd_get_by_phandle()Jack Pham2016-09-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Allow callers of devm_usbpd_get_by_phandle() to distinguish between different errors depending on what failure is encountered. For instance, return -EPROBE_DEFER if the device is available but not yet probed, which allows callers to appropriately try again later. Change-Id: I96b03d0a4c2a04a405af5a40f9f713443bc5769b Signed-off-by: Jack Pham <jackp@codeaurora.org>
* | | | | | | | Merge "usb: xhci: clean up command queue on HC halt failure as well"Linux Build Service Account2016-10-06
|\ \ \ \ \ \ \ \ | |_|_|/ / / / / |/| | | | | | |
| * | | | | | | usb: xhci: clean up command queue on HC halt failure as wellManu Gautam2016-09-29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 'Commit c9cabb7ee02bcb0c ("usb: xhci: clean up command queue when halting"); fixes deadlock condition when some commands are pending at the time of usb_remove_hcd() or when controller is halted. That change cleans up command queue if halting of controller is successful. But, this deadlock may still be seen in case if due to some reason halting of controller fails. To handle that scenario as well cleanup command queue irrespective of controller halt succeeds or fails. Change-Id: I2c88fca3614af7fe58bc858898449d47546da247 Signed-off-by: Manu Gautam <mgautam@codeaurora.org>
* | | | | | | | Merge "usb: gadget: f_qc_rndis: Add support for configfs"Linux Build Service Account2016-10-06
|\ \ \ \ \ \ \ \
| * | | | | | | | usb: gadget: f_qc_rndis: Add support for configfsChandana Kishori Chiluveru2016-10-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add APIs to allocate and instanciate f_qc_rndis function driver using configFS. Change-Id: I24f3dcb14c6467ab4c2d2eda464dfacda2c5b426 Signed-off-by: Chandana Kishori Chiluveru <cchiluve@codeaurora.org>