summaryrefslogtreecommitdiff
path: root/drivers/usb/phy (follow)
Commit message (Collapse)AuthorAge
...
* | | | | Merge tag 'lsk-v4.4-17.02-android' into branch 'msm-4.4'Runmin Wang2017-03-18
|\ \ \ \ \ | |/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * refs/heads/tmp-26c8156: Linux 4.4.49 drm/i915: fix use-after-free in page_flip_completed() ALSA: seq: Don't handle loop timeout at snd_seq_pool_done() ALSA: seq: Fix race at creating a queue xen-netfront: Delete rx_refill_timer in xennet_disconnect_backend() scsi: mpt3sas: disable ASPM for MPI2 controllers scsi: aacraid: Fix INTx/MSI-x issue with older controllers scsi: zfcp: fix use-after-free by not tracing WKA port open/close on failed send netvsc: Set maximum GSO size in the right place mac80211: Fix adding of mesh vendor IEs ARM: 8642/1: LPAE: catch pending imprecise abort on unmask target: Fix COMPARE_AND_WRITE ref leak for non GOOD status target: Fix early transport_generic_handle_tmr abort scenario target: Use correct SCSI status during EXTENDED_COPY exception target: Don't BUG_ON during NodeACL dynamic -> explicit conversion ARM: 8643/3: arm/ptrace: Preserve previous registers for short regset write hns: avoid stack overflow with CONFIG_KASAN cpumask: use nr_cpumask_bits for parsing functions Revert "x86/ioapic: Restore IO-APIC irq_chip retrigger callback" selinux: fix off-by-one in setprocattr ARC: [arcompact] brown paper bag bug in unaligned access delay slot fixup Linux 4.4.48 base/memory, hotplug: fix a kernel oops in show_valid_zones() x86/irq: Make irq activate operations symmetric USB: serial: option: add device ID for HP lt2523 (Novatel E371) usb: gadget: f_fs: Assorted buffer overflow checks. USB: Add quirk for WORLDE easykey.25 MIDI keyboard USB: serial: pl2303: add ATEN device ID USB: serial: qcserial: add Dell DW5570 QDL KVM: x86: do not save guest-unsupported XSAVE state HID: wacom: Fix poor prox handling in 'wacom_pl_irq' percpu-refcount: fix reference leak during percpu-atomic transition mmc: sdhci: Ignore unexpected CARD_INT interrupts can: bcm: fix hrtimer/tasklet termination in bcm op removal mm, fs: check for fatal signals in do_generic_file_read() mm/memory_hotplug.c: check start_pfn in test_pages_in_a_zone() cifs: initialize file_info_lock zswap: disable changing params if init fails svcrpc: fix oops in absence of krb5 module NFSD: Fix a null reference case in find_or_create_lock_stateid() powerpc: Add missing error check to prom_find_boot_cpu() powerpc/eeh: Fix wrong flag passed to eeh_unfreeze_pe() libata: apply MAX_SEC_1024 to all CX1-JB*-HP devices ata: sata_mv:- Handle return value of devm_ioremap. perf/core: Fix PERF_RECORD_MMAP2 prot/flags for anonymous memory crypto: arm64/aes-blk - honour iv_out requirement in CBC and CTR modes crypto: api - Clear CRYPTO_ALG_DEAD bit before registering an alg drm/nouveau/nv1a,nv1f/disp: fix memory clock rate retrieval drm/nouveau/disp/gt215: Fix HDA ELD handling (thus, HDMI audio) on gt215 ext4: validate s_first_meta_bg at mount time PCI/ASPM: Handle PCI-to-PCIe bridges as roots of PCIe hierarchies ANDROID: security: export security_path_chown() Linux 4.4.47 net: dsa: Bring back device detaching in dsa_slave_suspend() qmi_wwan/cdc_ether: add device ID for HP lt2523 (Novatel E371) WWAN card af_unix: move unix_mknod() out of bindlock r8152: don't execute runtime suspend if the tx is not empty bridge: netlink: call br_changelink() during br_dev_newlink() tcp: initialize max window for a new fastopen socket ipv6: addrconf: Avoid addrconf_disable_change() using RCU read-side lock net: phy: bcm63xx: Utilize correct config_intr function net: fix harmonize_features() vs NETIF_F_HIGHDMA ax25: Fix segfault after sock connection timeout ravb: do not use zero-length alignment DMA descriptor openvswitch: maintain correct checksum state in conntrack actions tcp: fix tcp_fastopen unaligned access complaints on sparc net: systemport: Decouple flow control from __bcm_sysport_tx_reclaim net: ipv4: fix table id in getroute response net: lwtunnel: Handle lwtunnel_fill_encap failure mlxsw: pci: Fix EQE structure definition mlxsw: switchx2: Fix memory leak at skb reallocation mlxsw: spectrum: Fix memory leak at skb reallocation r8152: fix the sw rx checksum is unavailable ANDROID: sdcardfs: Switch strcasecmp for internal call ANDROID: sdcardfs: switch to full_name_hash and qstr ANDROID: sdcardfs: Add GID Derivation to sdcardfs ANDROID: sdcardfs: Remove redundant operation ANDROID: sdcardfs: add support for user permission isolation ANDROID: sdcardfs: Refactor configfs interface ANDROID: sdcardfs: Allow non-owners to touch ANDROID: binder: fix format specifier for type binder_size_t ANDROID: fs: Export vfs_rmdir2 ANDROID: fs: Export free_fs_struct and set_fs_pwd ANDROID: mnt: remount should propagate to slaves of slaves ANDROID: sdcardfs: Switch ->d_inode to d_inode() ANDROID: sdcardfs: Fix locking issue with permision fix up ANDROID: sdcardfs: Change magic value ANDROID: sdcardfs: Use per mount permissions ANDROID: sdcardfs: Add gid and mask to private mount data ANDROID: sdcardfs: User new permission2 functions ANDROID: vfs: Add setattr2 for filesystems with per mount permissions ANDROID: vfs: Add permission2 for filesystems with per mount permissions ANDROID: vfs: Allow filesystems to access their private mount data ANDROID: mnt: Add filesystem private data to mount points ANDROID: sdcardfs: Move directory unlock before touch ANDROID: sdcardfs: fix external storage exporting incorrect uid ANDROID: sdcardfs: Added top to sdcardfs_inode_info ANDROID: sdcardfs: Switch package list to RCU ANDROID: sdcardfs: Fix locking for permission fix up ANDROID: sdcardfs: Check for other cases on path lookup ANDROID: sdcardfs: override umask on mkdir and create Linux 4.4.46 mm, memcg: do not retry precharge charges platform/x86: intel_mid_powerbtn: Set IRQ_ONESHOT pinctrl: broxton: Use correct PADCFGLOCK offset s5k4ecgx: select CRC32 helper IB/umem: Release pid in error and ODP flow IB/ipoib: move back IB LL address into the hard header drm/i915: Don't leak edid in intel_crt_detect_ddc() SUNRPC: cleanup ida information when removing sunrpc module NFSv4.0: always send mode in SETATTR after EXCLUSIVE4 nfs: Don't increment lock sequence ID after NFS4ERR_MOVED parisc: Don't use BITS_PER_LONG in userspace-exported swab.h header ARC: [arcompact] handle unaligned access delay slot corner case ARC: udelay: fix inline assembler by adding LP_COUNT to clobber list can: ti_hecc: add missing prepare and unprepare of the clock can: c_can_pci: fix null-pointer-deref in c_can_start() - set device pointer s390/ptrace: Preserve previous registers for short regset write RDMA/cma: Fix unknown symbol when CONFIG_IPV6 is not enabled ISDN: eicon: silence misleading array-bounds warning sysctl: fix proc_doulongvec_ms_jiffies_minmax() mm/mempolicy.c: do not put mempolicy before using its nodemask drm: Fix broken VT switch with video=1366x768 option tile/ptrace: Preserve previous registers for short regset write fbdev: color map copying bounds checking Linux 4.4.45 arm64: avoid returning from bad_mode selftest/powerpc: Wrong PMC initialized in pmc56_overflow test dmaengine: pl330: Fix runtime PM support for terminated transfers ite-cir: initialize use_demodulator before using it blackfin: check devm_pinctrl_get() for errors ARM: 8613/1: Fix the uaccess crash on PB11MPCore ARM: ux500: fix prcmu_is_cpu_in_wfi() calculation ARM: dts: imx6qdl-nitrogen6_max: fix sgtl5000 pinctrl init arm64/ptrace: Reject attempts to set incomplete hardware breakpoint fields arm64/ptrace: Avoid uninitialised struct padding in fpr_set() arm64/ptrace: Preserve previous registers for short regset write - 3 arm64/ptrace: Preserve previous registers for short regset write - 2 arm64/ptrace: Preserve previous registers for short regset write ARM: dts: da850-evm: fix read access to SPI flash ceph: fix bad endianness handling in parse_reply_info_extra ARM: 8634/1: hw_breakpoint: blacklist Scorpion CPUs svcrdma: avoid duplicate dma unmapping during error recovery clocksource/exynos_mct: Clear interrupt when cpu is shut down ubifs: Fix journal replay wrt. xattr nodes qla2xxx: Fix crash due to null pointer access x86/ioapic: Restore IO-APIC irq_chip retrigger callback mtd: nand: xway: disable module support ieee802154: atusb: do not use the stack for buffers to make them DMA able mmc: mxs-mmc: Fix additional cycles after transmission stop HID: corsair: fix control-transfer error handling HID: corsair: fix DMA buffers on stack PCI: Enumerate switches below PCI-to-PCIe bridges fuse: clear FR_PENDING flag when moving requests out of pending queue svcrpc: don't leak contexts on PROC_DESTROY x86/PCI: Ignore _CRS on Supermicro X8DTH-i/6/iF/6F tmpfs: clear S_ISGID when setting posix ACLs ARM: dts: imx31: fix AVIC base address ARM: dts: imx31: move CCM device node to AIPS2 bus devices ARM: dts: imx31: fix clock control module interrupts description perf scripting: Avoid leaking the scripting_context variable IB/IPoIB: Remove can't use GFP_NOIO warning IB/mlx4: When no DMFS for IPoIB, don't allow NET_IF QPs IB/mlx4: Fix port query for 56Gb Ethernet links IB/mlx4: Fix out-of-range array index in destroy qp flow IB/mlx4: Set traffic class in AH IB/mlx5: Wait for all async command completions to complete ftrace/x86: Set ftrace_stub to weak to prevent gcc from using short jumps to it Linux 4.4.44 pinctrl: sh-pfc: Do not unconditionally support PIN_CONFIG_BIAS_DISABLE powerpc/ibmebus: Fix device reference leaks in sysfs interface powerpc/ibmebus: Fix further device reference leaks bus: vexpress-config: fix device reference leak blk-mq: Always schedule hctx->next_cpu ACPI / APEI: Fix NMI notification handling block: cfq_cpd_alloc() should use @gfp cpufreq: powernv: Disable preemption while checking CPU throttling state NFSv4.1: nfs4_fl_prepare_ds must be careful about reporting success. NFS: Fix a performance regression in readdir pNFS: Fix race in pnfs_wait_on_layoutreturn pinctrl: meson: fix gpio request disabling other modes btrfs: fix error handling when run_delayed_extent_op fails btrfs: fix locking when we put back a delayed ref that's too new x86/cpu: Fix bootup crashes by sanitizing the argument of the 'clearcpuid=' command-line option USB: serial: ch341: fix modem-control and B0 handling USB: serial: ch341: fix resume after reset drm/radeon: drop verde dpm quirks sysctl: Drop reference added by grab_header in proc_sys_readdir sysrq: attach sysrq handler correctly for 32-bit kernel tty/serial: atmel_serial: BUG: stop DMA from transmitting in stop_tx mnt: Protect the mountpoint hashtable with mount_lock vme: Fix wrong pointer utilization in ca91cx42_slave_get xhci: fix deadlock at host remove by running watchdog correctly i2c: fix kernel memory disclosure in dev interface i2c: print correct device invalid address Input: elants_i2c - avoid divide by 0 errors on bad touchscreen data USB: serial: ch341: fix open and resume after B0 USB: serial: ch341: fix control-message error handling USB: serial: ch341: fix open error handling USB: serial: ch341: fix initial modem-control state USB: serial: kl5kusb105: fix line-state error handling nl80211: fix sched scan netlink socket owner destruction KVM: x86: Introduce segmented_write_std KVM: x86: emulate FXSAVE and FXRSTOR KVM: x86: add asm_safe wrapper KVM: x86: add Align16 instruction flag KVM: x86: flush pending lapic jump label updates on module unload jump_labels: API for flushing deferred jump label updates KVM: eventfd: fix NULL deref irqbypass consumer KVM: x86: fix emulation of "MOV SS, null selector" mm/hugetlb.c: fix reservation race when freeing surplus pages ocfs2: fix crash caused by stale lvb with fsdlm plugin mm: fix devm_memremap_pages crash, use mem_hotplug_{begin, done} selftests: do not require bash for the generated test selftests: do not require bash to run netsocktests testcase Input: i8042 - add Pegatron touchpad to noloop table Input: xpad - use correct product id for x360w controllers DEBUG: sched/fair: Fix sched_load_avg_cpu events for task_groups DEBUG: sched/fair: Fix missing sched_load_avg_cpu events net: socket: don't set sk_uid to garbage value in ->setattr() ANDROID: configs: CONFIG_ARM64_SW_TTBR0_PAN=y UPSTREAM: arm64: Disable PAN on uaccess_enable() UPSTREAM: arm64: Enable CONFIG_ARM64_SW_TTBR0_PAN UPSTREAM: arm64: xen: Enable user access before a privcmd hvc call UPSTREAM: arm64: Handle faults caused by inadvertent user access with PAN enabled BACKPORT: arm64: Disable TTBR0_EL1 during normal kernel execution BACKPORT: arm64: Introduce uaccess_{disable,enable} functionality based on TTBR0_EL1 BACKPORT: arm64: Factor out TTBR0_EL1 post-update workaround into a specific asm macro BACKPORT: arm64: Factor out PAN enabling/disabling into separate uaccess_* macros UPSTREAM: arm64: alternative: add auto-nop infrastructure UPSTREAM: arm64: barriers: introduce nops and __nops macros for NOP sequences Revert "FROMLIST: arm64: Factor out PAN enabling/disabling into separate uaccess_* macros" Revert "FROMLIST: arm64: Factor out TTBR0_EL1 post-update workaround into a specific asm macro" Revert "FROMLIST: arm64: Introduce uaccess_{disable,enable} functionality based on TTBR0_EL1" Revert "FROMLIST: arm64: Disable TTBR0_EL1 during normal kernel execution" Revert "FROMLIST: arm64: Handle faults caused by inadvertent user access with PAN enabled" Revert "FROMLIST: arm64: xen: Enable user access before a privcmd hvc call" Revert "FROMLIST: arm64: Enable CONFIG_ARM64_SW_TTBR0_PAN" ANDROID: sched/walt: fix build failure if FAIR_GROUP_SCHED=n Linux 4.4.43 mm/init: fix zone boundary creation ALSA: usb-audio: Add a quirk for Plantronics BT600 spi: mvebu: fix baudrate calculation for armada variant ARM: OMAP4+: Fix bad fallthrough for cpuidle ARM: zynq: Reserve correct amount of non-DMA RAM powerpc: Fix build warning on 32-bit PPC ALSA: firewire-tascam: Fix to handle error from initialization of stream data HID: hid-cypress: validate length of report net: vrf: do not allow table id 0 net: ipv4: Fix multipath selection with vrf gro: Disable frag0 optimization on IPv6 ext headers gro: use min_t() in skb_gro_reset_offset() gro: Enter slow-path if there is no tailroom r8152: fix rx issue for runtime suspend r8152: split rtl8152_suspend function ipv4: Do not allow MAIN to be alias for new LOCAL w/ custom rules igmp: Make igmp group member RFC 3376 compliant drop_monitor: consider inserted data in genlmsg_end drop_monitor: add missing call to genlmsg_end net/mlx5: Avoid shadowing numa_node net/mlx5: Check FW limitations on log_max_qp before setting it net: stmmac: Fix race between stmmac_drv_probe and stmmac_open net, sched: fix soft lockup in tc_classify ipv6: handle -EFAULT from skb_copy_bits net: vrf: Drop conntrack data after pass through VRF device on Tx ser_gigaset: return -ENOMEM on error instead of success netvsc: reduce maximum GSO size Linux 4.4.42 usb: gadget: composite: always set ep->mult to a sensible value Revert "usb: gadget: composite: always set ep->mult to a sensible value" tick/broadcast: Prevent NULL pointer dereference drm/radeon: Always store CRTC relative radeon_crtc->cursor_x/y values cx23885-dvb: move initialization of a8293_pdata net: vxge: avoid unused function warnings net: ti: cpmac: Fix compiler warning due to type confusion cred/userns: define current_user_ns() as a function staging: comedi: dt282x: tidy up register bit defines powerpc/pci/rpadlpar: Fix device reference leaks md: MD_RECOVERY_NEEDED is set for mddev->recovery crypto: arm64/aes-ce - fix for big endian crypto: arm64/aes-xts-ce: fix for big endian crypto: arm64/sha1-ce - fix for big endian crypto: arm64/aes-neon - fix for big endian crypto: arm64/aes-ccm-ce: fix for big endian crypto: arm/aes-ce - fix for big endian crypto: arm64/ghash-ce - fix for big endian crypto: arm64/sha2-ce - fix for big endian s390/crypto: unlock on error in prng_tdes_read() mmc: mmc_test: Uninitialized return value PM / wakeirq: Fix dedicated wakeirq for drivers not using autosuspend irqchip/bcm7038-l1: Implement irq_cpu_offline() callback target/iscsi: Fix double free in lio_target_tiqn_addtpg() scsi: mvsas: fix command_active typo ASoC: samsung: i2s: Fixup last IRQ unsafe spin lock call iommu/vt-d: Flush old iommu caches for kdump when the device gets context mapped iommu/vt-d: Fix pasid table size encoding iommu/amd: Fix the left value check of cmd buffer iommu/amd: Missing error code in amd_iommu_init_device() clk: imx31: fix rewritten input argument of mx31_clocks_init() clk: clk-wm831x: fix a logic error hwmon: (g762) Fix overflows and crash seen when writing limit attributes hwmon: (nct7802) Fix overflows seen when writing into limit attributes hwmon: (ds620) Fix overflows seen when writing temperature limits hwmon: (amc6821) sign extension temperature hwmon: (scpi) Fix module autoload cris: Only build flash rescue image if CONFIG_ETRAX_AXISFLASHMAP is selected ath10k: use the right length of "background" stable-fixup: hotplug: fix unused function warning usb: dwc3: ep0: explicitly call dwc3_ep0_prepare_one_trb() usb: dwc3: ep0: add dwc3_ep0_prepare_one_trb() usb: dwc3: gadget: always unmap EP0 requests staging: iio: ad7606: fix improper setting of oversampling pins mei: bus: fix mei_cldev_enable KDoc USB: serial: io_ti: bind to interface after fw download USB: phy: am335x-control: fix device and of_node leaks ARM: dts: r8a7794: Correct hsusb parent clock USB: serial: kl5kusb105: abort on open exception path ALSA: usb-audio: Fix bogus error return in snd_usb_create_stream() usb: musb: blackfin: add bfin_fifo_offset in bfin_ops usb: hub: Move hub_port_disable() to fix warning if PM is disabled usb: musb: Fix trying to free already-free IRQ 4 usb: dwc3: pci: add Intel Gemini Lake PCI ID xhci: Fix race related to abort operation xhci: Use delayed_work instead of timer for command timeout usb: xhci-mem: use passed in GFP flags instead of GFP_KERNEL USB: serial: mos7720: fix parallel probe USB: serial: mos7720: fix parport use-after-free on probe errors USB: serial: mos7720: fix use-after-free on probe errors USB: serial: mos7720: fix NULL-deref at open USB: serial: mos7840: fix NULL-deref at open USB: serial: kobil_sct: fix NULL-deref in write USB: serial: cyberjack: fix NULL-deref at open USB: serial: oti6858: fix NULL-deref at open USB: serial: io_edgeport: fix NULL-deref at open USB: serial: ti_usb_3410_5052: fix NULL-deref at open USB: serial: garmin_gps: fix memory leak on failed URB submit USB: serial: iuu_phoenix: fix NULL-deref at open USB: serial: io_ti: fix I/O after disconnect USB: serial: io_ti: fix another NULL-deref at open USB: serial: io_ti: fix NULL-deref at open USB: serial: spcp8x5: fix NULL-deref at open USB: serial: keyspan_pda: verify endpoints at probe USB: serial: pl2303: fix NULL-deref at open USB: serial: quatech2: fix sleep-while-atomic in close USB: serial: omninet: fix NULL-derefs at open and disconnect usb: xhci: hold lock over xhci_abort_cmd_ring() xhci: Handle command completion and timeout race usb: host: xhci: Fix possible wild pointer when handling abort command usb: xhci: fix return value of xhci_setup_device() xhci: free xhci virtual devices with leaf nodes first usb: xhci: apply XHCI_PME_STUCK_QUIRK to Intel Apollo Lake xhci: workaround for hosts missing CAS bit usb: xhci: fix possible wild pointer usb: dwc3: core: avoid Overflow events usb: gadget: composite: Test get_alt() presence instead of set_alt() USB: dummy-hcd: fix bug in stop_activity (handle ep0) USB: fix problems with duplicate endpoint addresses USB: gadgetfs: fix checks of wTotalLength in config descriptors USB: gadgetfs: fix use-after-free bug USB: gadgetfs: fix unbounded memory allocation bug usb: gadgetfs: restrict upper bound on device configuration size usb: storage: unusual_uas: Add JMicron JMS56x to unusual device usb: musb: dsps: implement clear_ep_rxintr() callback usb: musb: core: add clear_ep_rxintr() to musb_platform_ops KVM: MIPS: Flush KVM entry code from icache globally KVM: x86: reset MMU on KVM_SET_VCPU_EVENTS mac80211: initialize fast-xmit 'info' later ARM: davinci: da850: don't add emac clock to lookup table twice ALSA: usb-audio: Fix irq/process data synchronization ALSA: hda - Apply asus-mode8 fixup to ASUS X71SL ALSA: hda - Fix up GPIO for ASUS ROG Ranger Linux 4.4.41 net: mvpp2: fix dma unmapping of TX buffers for fragments sg_write()/bsg_write() is not fit to be called under KERNEL_DS kconfig/nconf: Fix hang when editing symbol with a long prompt target/user: Fix use-after-free of tcmu_cmds if they are expired powerpc: Convert cmp to cmpd in idle enter sequence powerpc/ps3: Fix system hang with GCC 5 builds nfs_write_end(): fix handling of short copies libceph: verify authorize reply on connect PCI: Check for PME in targeted sleep state Input: drv260x - fix input device's parent assignment media: solo6x10: fix lockup by avoiding delayed register write IB/cma: Fix a race condition in iboe_addr_get_sgid() IB/multicast: Check ib_find_pkey() return value IPoIB: Avoid reading an uninitialized member variable IB/mad: Fix an array index check fgraph: Handle a case where a tracer ignores set_graph_notrace platform/x86: asus-nb-wmi.c: Add X45U quirk ftrace/x86_32: Set ftrace_stub to weak to prevent gcc from using short jumps to it kvm: nVMX: Allow L1 to intercept software exceptions (#BP and #OF) KVM: PPC: Book3S HV: Don't lose hardware R/C bit updates in H_PROTECT KVM: PPC: Book3S HV: Save/restore XER in checkpointed register state md/raid5: limit request size according to implementation limits sc16is7xx: Drop bogus use of IRQF_ONESHOT s390/vmlogrdr: fix IUCV buffer allocation firmware: fix usermode helper fallback loading ARC: mm: arc700: Don't assume 2 colours for aliasing VIPT dcache scsi: avoid a permanent stop of the scsi device's request queue scsi: zfcp: fix rport unblock race with LUN recovery scsi: zfcp: do not trace pure benign residual HBA responses at default level scsi: zfcp: fix use-after-"free" in FC ingress path after TMF scsi: megaraid_sas: Do not set MPI2_TYPE_CUDA for JBOD FP path for FW which does not support JBOD sequence map scsi: megaraid_sas: For SRIOV enabled firmware, ensure VF driver waits for 30secs before reset vt: fix Scroll Lock LED trigger name block: protect iterate_bdevs() against concurrent close mei: request async autosuspend at the end of enumeration drivers/gpu/drm/ast: Fix infinite loop if read fails drm/gma500: Add compat ioctl drm/radeon: add additional pci revision to dpm workaround drm/radeon: Hide the HW cursor while it's out of bounds drm/radeon: Also call cursor_move_locked when the cursor size changes drm/nouveau/i2c/gk110b,gm10x: use the correct implementation drm/nouveau/fifo/gf100-: protect channel preempt with subdev mutex drm/nouveau/ltc: protect clearing of comptags with mutex drm/nouveau/bios: require checksum to match for fast acpi shadow method drm/nouveau/kms: lvds panel strap moved again on maxwell ACPI / video: Add force_native quirk for HP Pavilion dv6 ACPI / video: Add force_native quirk for Dell XPS 17 L702X staging: comedi: ni_mio_common: fix E series ni_ai_insn_read() data staging: comedi: ni_mio_common: fix M Series ni_ai_insn_read() data mask thermal: hwmon: Properly report critical temperature in sysfs clk: bcm2835: Avoid overwriting the div info when disabling a pll_div clk timekeeping_Force_unsigned_clocksource_to_nanoseconds_conversion regulator: stw481x-vmmc: fix ages old enable error mmc: sdhci: Fix recovery from tuning timeout ath9k: Really fix LED polarity for some Mini PCI AR9220 MB92 cards. cfg80211/mac80211: fix BSS leaks when abandoning assoc attempts rtlwifi: Fix enter/exit power_save ssb: Fix error routine when fallback SPROM fails Linux 4.4.40 ppp: defer netns reference release for ppp channel driver core: fix race between creating/querying glue dir and its cleanup xfs: set AGI buffer type in xlog_recover_clear_agi_bucket arm/xen: Use alloc_percpu rather than __alloc_percpu xen/gntdev: Use VM_MIXEDMAP instead of VM_IO to avoid NUMA balancing tpm xen: Remove bogus tpm_chip_unregister kernel/debug/debug_core.c: more properly delay for secondary CPUs kernel/watchdog: use nmi registers snapshot in hardlockup handler CIFS: Fix a possible memory corruption in push locks CIFS: Fix missing nls unload in smb2_reconnect() CIFS: Fix a possible memory corruption during reconnect ASoC: intel: Fix crash at suspend/resume without card registration dm space map metadata: fix 'struct sm_metadata' leak on failed create dm crypt: mark key as invalid until properly loaded dm flakey: return -EINVAL on interval bounds error in flakey_ctr() blk-mq: Do not invoke .queue_rq() for a stopped queue usb: gadget: composite: always set ep->mult to a sensible value exec: Ensure mm->user_ns contains the execed files fs: exec: apply CLOEXEC before changing dumpable task flags mm/vmscan.c: set correct defer count for shrinker loop: return proper error from loop_queue_rq() f2fs: set ->owner for debugfs status file's file_operations ext4: do not perform data journaling when data is encrypted ext4: return -ENOMEM instead of success ext4: reject inodes with negative size ext4: add sanity checking to count_overhead() ext4: fix in-superblock mount options processing ext4: use more strict checks for inodes_per_block on mount ext4: fix stack memory corruption with 64k block size ext4: fix mballoc breakage with 64k block size crypto: caam - fix AEAD givenc descriptors ptrace: Capture the ptracer's creds not PT_PTRACE_CAP mm: Add a user_ns owner to mm_struct and fix ptrace permission checks block_dev: don't test bdev->bd_contains when it is not stable btrfs: make file clone aware of fatal signals Btrfs: don't BUG() during drop snapshot Btrfs: fix memory leak in do_walk_down Btrfs: don't leak reloc root nodes on error Btrfs: return gracefully from balance if fs tree is corrupted Btrfs: bail out if block group has different mixed flag Btrfs: fix memory leak in reading btree blocks clk: ti: omap36xx: Work around sprz319 advisory 2.1 ALSA: hda: when comparing pin configurations, ignore assoc in addition to seq ALSA: hda - Gate the mic jack on HP Z1 Gen3 AiO ALSA: hda - fix headset-mic problem on a Dell laptop ALSA: hda - ignore the assoc and seq when comparing pin configurations ALSA: hda/ca0132 - Add quirk for Alienware 15 R2 2016 ALSA: hiface: Fix M2Tech hiFace driver sampling rate change ALSA: usb-audio: Add QuickCam Communicate Deluxe/S7500 to volume_control_quirks USB: UHCI: report non-PME wakeup signalling for Intel hardware usb: gadget: composite: correctly initialize ep->maxpacket usb: gadget: f_uac2: fix error handling at afunc_bind usb: hub: Fix auto-remount of safely removed or ejected USB-3 devices USB: cdc-acm: add device id for GW Instek AFG-125 USB: serial: kl5kusb105: fix open error path USB: serial: option: add dlink dwm-158 USB: serial: option: add support for Telit LE922A PIDs 0x1040, 0x1041 Btrfs: fix qgroup rescan worker initialization btrfs: store and load values of stripes_min/stripes_max in balance status item Btrfs: fix tree search logic when replaying directory entry deletes btrfs: limit async_work allocation and worker func duration ANDROID: trace: net: use %pK for kernel pointers ANDROID: android-base: Enable QUOTA related configs net: ipv4: Don't crash if passing a null sk to ip_rt_update_pmtu. net: inet: Support UID-based routing in IP protocols. Revert "net: ipv6: fix virtual tunneling build" net: core: add UID to flows, rules, and routes net: core: Add a UID field to struct sock. Revert "net: core: Support UID-based routing." Revert "net: core: Handle 'sk' being NULL in UID-based routing" Revert "ANDROID: net: fix 'const' warnings" Revert "ANDROID: net: fib: remove duplicate assignment" Revert "ANDROID: net: core: fix UID-based routing" UPSTREAM: efi/arm64: Don't apply MEMBLOCK_NOMAP to UEFI memory map mapping UPSTREAM: arm64: enable CONFIG_DEBUG_RODATA by default goldfish: enable CONFIG_INET_DIAG_DESTROY sched/walt: kill {min,max}_capacity sched: fix wrong truncation of walt_avg ANDROID: dm verity: add minimum prefetch size Linux 4.4.39 crypto: rsa - Add Makefile dependencies to fix parallel builds hotplug: Make register and unregister notifier API symmetric batman-adv: Check for alloc errors when preparing TT local data m68k: Fix ndelay() macro arm64: futex.h: Add missing PAN toggling can: peak: fix bad memory access and free sequence can: raw: raw_setsockopt: limit number of can_filter that can be set crypto: mcryptd - Check mcryptd algorithm compatibility perf/x86: Fix full width counter, counter overflow locking/rtmutex: Use READ_ONCE() in rt_mutex_owner() locking/rtmutex: Prevent dequeue vs. unlock race zram: restrict add/remove attributes to root only parisc: Fix TLB related boot crash on SMP machines parisc: Remove unnecessary TLB purges from flush_dcache_page_asm and flush_icache_page_asm parisc: Purge TLB before setting PTE powerpc/eeh: Fix deadlock when PE frozen state can't be cleared Conflicts: arch/arm64/kernel/traps.c drivers/usb/dwc3/core.h drivers/usb/dwc3/ep0.c drivers/usb/gadget/function/f_fs.c drivers/usb/host/xhci-mem.c drivers/usb/host/xhci-ring.c drivers/usb/host/xhci.c drivers/video/fbdev/core/fbcmap.c include/trace/events/sched.h mm/vmscan.c Change-Id: I3faa0010ecb98972cd8e6470377a493b56d95f89 Signed-off-by: Blagovest Kolenichev <bkolenichev@codeaurora.org> Signed-off-by: Runmin Wang <runminw@codeaurora.org>
| * | | | Merge branch 'linux-linaro-lsk-v4.4' into linux-linaro-lsk-v4.4-androidAlex Shi2017-01-13
| |\ \ \ \ | | | |_|/ | | |/| |
| | * | | USB: phy: am335x-control: fix device and of_node leaksJohan Hovold2017-01-12
| | | |/ | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit 015105b12183556771e111e93f5266851e7c5582 upstream. Make sure to drop the references taken by of_parse_phandle() and bus_find_device() before returning from am335x_get_phy_control(). Note that there is no guarantee that the devres-managed struct phy_control will be valid for the lifetime of the sibling phy device regardless of this change. Fixes: 3bb869c8b3f1 ("usb: phy: Add AM335x PHY driver") Acked-by: Bin Liu <b-liu@ti.com> Signed-off-by: Johan Hovold <johan@kernel.org> Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
| * | | Merge branch 'linux-linaro-lsk-v4.4' into linux-linaro-lsk-v4.4-androidAlex Shi2016-02-29
| |\| | | | |/ | |/|
* | | Merge "USB: qusb: Add support to change TUNEX registers dynamically"Linux Build Service Account2017-02-21
|\ \ \
| * | | USB: qusb: Add support to change TUNEX registers dynamicallyVijayavardhan Vennapusa2017-02-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add required support to change QUSB2PHY_PORT_TUNE1/2/3/4/5 registers dynamically for testing USB electrical complaince. Change-Id: Id84d460c8f8dc8cdedabe3887859d6b90acf7c3f Signed-off-by: Vijayavardhan Vennapusa <vvreddy@codeaurora.org>
* | | | USB: phy-msm-qusb: Fix race conditions during fast PI/POVijayavardhan Vennapusa2017-02-14
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | During fast cable connect/disconnect, there is chance that set_suspend() called as part of USB entering low power mode and PMIC driver asking to remove pulldowns race each other. This could cause unclocked access and results in crash. Fix this issue by using mutex to avoid crash due to the race mentioned. Change-Id: I1babb545d40b8761774cbdd3a57258ed6bc77398 Signed-off-by: Vijayavardhan Vennapusa <vvreddy@codeaurora.org>
* | | usb: phy: snps: fix copyright informationHemant Kumar2017-01-20
| | | | | | | | | | | | | | | | | | | | | | | | Update copyright line to "The Linux Foundation" and year. Change-Id: I1bdd64bebb77f41555f1057132ad3a060874bb11 Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
* | | Merge "usb: phy: qusb2: Enable phy auto-resume"Linux Build Service Account2017-01-16
|\ \ \
| * | | usb: phy: qusb2: Enable phy auto-resumeVijayavardhan Vennapusa2017-01-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | phy auto-resume allows phy to automatically drive bus resume right after device driving bus resume for at least 1ms due to remote wake up, before host XHCI driver gets a chance to drive bus resume. Change-Id: Ifbd2d8212fe5ed1bdad32418300ac615091f0226 Signed-off-by: Vijayavardhan Vennapusa <vvreddy@codeaurora.org>
* | | | usb: phy: snps: replace %p with %pKVamsi Krishna Samavedam2017-01-05
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Format specifier %p can leak kernel addresses while not valuing the kptr_restrict system settings. When kptr_restrict is set to (1), kernel pointers printed using the %pK format specifier will be replaced with 0's. Debugging Note : &pK prints only Zeros as address. If you need actual address information, write 0 to kptr_restrict. echo 0 > /proc/sys/kernel/kptr_restrict Change-Id: If2177395082b81670af75712b945bea53a53915e Signed-off-by: Vamsi Krishna Samavedam <vskrishn@codeaurora.org>
* | | Merge "usb: phy: qusb2: Switch to SE clk from diff clk upon suspend"Linux Build Service Account2016-12-23
|\ \ \
| * | | usb: phy: qusb2: Switch to SE clk from diff clk upon suspendHemant Kumar2016-12-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Upon out of XO shutdown due to remote wakeup, as soon as XO gets restored refclk is supplied to phy before even refgen current is stabilized. USB3 controller asserts suspend_n signal asynchronously for remote wake-up scenario solely based on utmi_linestate switching from J state(suspend) to K state(resume). As a result phy attempts to lock PLL since all prerequisites are met but, PLL lock attempt fails and phy gets stuck. Since GCC_RX1_USB2_CLKREF_EN which was supposed to control differential(CML) clock output to QUSB2 is a no-op, hence switch to SE clock by PHY CSR controlled mux upon suspend. This prevents refclk output to go directly to phy upon XO restore and prevents premature phy pll locking. Phy PLL actually gets locked when phy driver switches back from SE clk to diff clk. Change-Id: Ie5474c42ccdd88df4c101b2113ca8d924eddf037 Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
* | | | Merge "usb: phy: qusb: Keep LDOs ON during disconnect if PMI voted for it"Linux Build Service Account2016-12-20
|\ \ \ \
| * | | | usb: phy: qusb: Keep LDOs ON during disconnect if PMI voted for itManu Gautam2016-12-19
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PMI software requests PHY driver to turn-ON LDOs before running charger detection. This is needed to have USB data lines in hi-Z state. If there is race between USB driver processing disconnect and next rm_pulldown request, then there is a possibility of PHY driver turning-off LDOs even if PMI voted for it. This can cause charger detection to fail. To fix this add a check in PHY driver to check PMI vote in disconnect handling. Change-Id: I6e873207aeee60e8e933430fc4e755aef81ab447 CRs-fixed: 1097343 Signed-off-by: Manu Gautam <mgautam@codeaurora.org> Signed-off-by: Vijayavardhan Vennapusa <vvreddy@codeaurora.org>
* | | | Merge "usb: phy: qusb2: Enable phy auto-resume"Linux Build Service Account2016-12-20
|\ \ \ \
| * | | | usb: phy: qusb2: Enable phy auto-resumeHemant Kumar2016-12-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | phy auto-resume allows phy to automatically drive bus resume right after device driving bus resume for at least 1ms due to remote wake up, before host XHCI driver gets a chance to drive bus resume. Change-Id: I6ea326b0864f46dd5e438f050950b8ee721726e5 Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
* | | | | Merge "usb: qusb2: De-assert TCSR_QUSB2PHY_CLAMP_DIG_N_1P8 upon boot up"Linux Build Service Account2016-12-20
|\ \ \ \ \ | |/ / / / |/| | | |
| * | | | usb: qusb2: De-assert TCSR_QUSB2PHY_CLAMP_DIG_N_1P8 upon boot upVijayavardhan Vennapusa2016-12-14
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | This prevents leakage on 1p8 power rail upon boot up when usb cable is not connected. Change-Id: Ia19d54df6086cfb0047fcdd8b04e7e0edff91cf7 Signed-off-by: Vijayavardhan Vennapusa <vvreddy@codeaurora.org>
* | | | Merge "usb: phy: qmp: Select usb3 phy mode before initializing PHY"Linux Build Service Account2016-12-19
|\ \ \ \
| * | | | usb: phy: qmp: Select usb3 phy mode before initializing PHYJack Pham2016-12-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make sure the USB3/DP PHY mode selection is switched back to USB3 mode before proceeding with PHY initialization. This fixes a bug when DisplayPort previously uses the PHY and does not switch it back which causes the POWER_DOWN_CONTROL register write to not take effect and results in USB3 PHY initialization failure. Change-Id: Idad0f80eda6192ccae9e824f1f76c7071806ffec Signed-off-by: Jack Pham <jackp@codeaurora.org>
* | | | | Merge "usb: qusb2: De-assert TCSR_QUSB2PHY_CLAMP_DIG_N_1P8 upon boot up"Linux Build Service Account2016-12-19
|\ \ \ \ \ | |_|/ / / |/| | | |
| * | | | usb: qusb2: De-assert TCSR_QUSB2PHY_CLAMP_DIG_N_1P8 upon boot upHemant Kumar2016-12-08
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | This prevents leakage on 1p8 power rail upon boot up when usb cable is not connect. Change-Id: I28a4f495293863361843eb30b2d20f1f57889f95 Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
* / / / usb: phy: qusb2: Add support to vote for regulator L2aHemant Kumar2016-12-08
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | L2a is required to lock the phy PLL upon bus resume when exiting from XO shutdown. This LDO powers REFGEN block which is required to be powered on so that phy PLL gets locked as part of wakeup from XO shutdown. Change-Id: Ia0e3d574de7c78534832e4f8749672eb6fcde1f0 Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
* | | usb: phy: qusb: Make sure QUSB PHY is into proper stateVijayavardhan Vennapusa2016-11-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On some platforms, QUSB PHY's DVDD related power supply (LDO) is not always ON. Hence when this power supply is switched off, QUSB PHY's register configuration is not retained. QUSB PHY state is unknown when required LDOs are turned ON with USB cable connect case and may interfere charger detection. Hence use suggested sequence which involves resetting QUSB PHY and performing few set of QUSB PHY register configuration to bring QUSB PHY into non-driving mode. Also it is required to disable QUSB2PHY level shifter by writing to TCSR_QUSB2PHY_CLAMP_DIG_N_1P8 register during disconnect to avoid leakage current. Hence add support for the same. Change-Id: I30b8488a1c19815601e6a1c5bcbdeed53715f8fa Signed-off-by: Vijayavardhan Vennapusa <vvreddy@codeaurora.org>
* | | USB: phy: qusb: Turn on vdd along with 1p8/3p3 LDOs when PMI requestsVijayavardhan Vennapusa2016-11-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QUSB PHY requires VDD, 1p8 and 3p1 regulators to remove any unwanted pull downs on DP/DM lines. These pull downs may result in incorrect charger detection by PMI. Avoid incorrect charger detection by turning on VDD, 1p8 and 3p1 whenever PMI requests DP/DM to be floating. Change-Id: Ibfecfe1846d02b959bd249acac3fe4c57b88aaf0 Signed-off-by: Vijayavardhan Vennapusa <vvreddy@codeaurora.org>
* | | usb: phy: qusb: Reset clock mux to avoid leakage on vdd railVamsi Krishna Samavedam2016-09-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | Reset the clock mux when cable is disconnected and suspended to avoid leakage on vdd rail. Also, add missing clock reset when usb cable connect is notified. Change-Id: If5485379934a222f19f5dd20b8d4f44769470e8d Signed-off-by: Vamsi Krishna Samavedam <vskrishn@codeaurora.org>
* | | usb: Add support for reset controller frameworkAmit Nischal2016-09-07
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The current api which performs the clock reset is moved to use the reset framework, so support the changes in USB driver for the same. The reset framework requires to get reset handle and perform assert/deassert of the resets. Change-Id: Ifcde1c6af624294cbd1944eaa9b526dd6dcc51de Signed-off-by: Amit Nischal <anischal@codeaurora.org>
* | | Merge "usb: phy: handle phy related regulators properly"Linux Build Service Account2016-09-02
|\ \ \
| * | | usb: phy: handle phy related regulators properlyHemant Kumar2016-08-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently driver is enabling all the regulators in probe even if usb cable is not connected which has power impact. Hence enable regulators before the phy initialization sequence and move regulator_set_voltage & enable/disable API for vdd supply in msm_ssusb_qmp_ldo_enable() to handle all the regulators from one place. Change-Id: Ibc4cf8328c209dbf968b7d6c498e1462397be351 Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
* | | | usb: phy: qusb: Update tune1 param from efuse registerVamsi Krishna Samavedam2016-08-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Tune1 HSTX_TRIM parameter varies from part to part and needs to be programmed using fused values. Update the code to read the efuse register and update tune1 parameter. On previous platforms this used to be tune2. Change-Id: I7a2efa3c2409ba5dbb1ae9581738518b9457a971 Signed-off-by: Vamsi Krishna Samavedam <vskrishn@codeaurora.org>
* | | | usb: phy: qusb: Set clamp_dig_n signal based on usb statusVamsi Krishna Samavedam2016-08-30
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Analog and digital power rails connected to the phy can be turned on/off in any order. This may result in random leakage in the phy as it expects certain power rails to be on/off in certain order. Avoid random leakage on qusb2 phy by 1. Disable pll when phy is suspended/disconnected. 2. Reset and assert clamp dig_n signal to put dp/dm lines in high impedance state. Change-Id: I1bafa7f824af8bbb3f67a71b81bf23b0a9c7164e Signed-off-by: Vamsi Krishna Samavedam <vskrishn@codeaurora.org>
* | | Merge "usb: phy: qusb: reset size to zero before getting next property size"Linux Build Service Account2016-08-19
|\ \ \
| * | | usb: phy: qusb: reset size to zero before getting next property sizeMayank Rana2016-08-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For emulation platform, there are multiple PHY init sequence passed through device tree. On some platform all PHY init sequence is not required. This results into using zero as value and offset with PHY init sequence which is not passed through device tree as of_get_property() doesn't update size variable if property is not found. Hence reset size variable to zero before querying next property size. CRs-Fixed: 1056000 Change-Id: I0c1af2e3a4f3d530af8d8bbec2f41408ab78ed96 Signed-off-by: Mayank Rana <mrana@codeaurora.org>
* | | | usb: qmp: phy: Make sure QMP PHY write completedMayank Rana2016-08-16
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add explicit write memory barrier before turning off QMP PHY clock to make sure previous POWER DOWN operation (in disconnect case) or putting PHY into autonomous mode (in suspend case) is completed. Similar way add write memory barrier after performing POWER UP operation (in connect case) or disabling PHY autonomous mode (in resume case). Change-Id: I91bb098506eb0c7d5dd6248fad71b8bb9186ea5a Signed-off-by: Mayank Rana <mrana@codeaurora.org>
* | | usb: phy: qusb: Fix typo with emulation related property nameMayank Rana2016-08-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Driver is using "qcom,emu-init-seq" for finding length of property but using "qcom,qemu-init-seq" instead of "qcom,emu-init-seq" to get passed values from device tree. With this, length of property comes as expected but values are not received. This results into programming zeros as values with offset as zero instead of expected <value, offset> passed through devicetree. CRs-Fixed: 1051115 Change-Id: I1809fcef844d275175814e636591b87e91432609 Signed-off-by: Mayank Rana <mrana@codeaurora.org>
* | | usb: phy: qusb: Remove updating VBUS status from QUSB PHY driverMayank Rana2016-07-29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change removes updating VBUS status from QUSB PHY driver using QSCRATCH register. New change would be adding same functionality from USB controller driver. - It also updates devicetree documentation and existing supported MSM platforms' USB device node property to accommodate above changes. CRs-Fixed: 1046503 Change-Id: I4573a077bb455ebe3750ab76a91d2593d7e94ea5 Signed-off-by: Mayank Rana <mrana@codeaurora.org>
* | | Merge "usb: phy: Make cfg_ahb_clk optional"Linux Build Service Account2016-07-27
|\ \ \
| * | | usb: phy: Make cfg_ahb_clk optionalHemant Kumar2016-07-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | USB qusb2 and ssusb qmp phy drivers are not required to manage gcc_usb_phy_cfg_ahb2phy_clk clock. It will stay always ON except when in XO-shutdown. RPM will manage this clock. Change-Id: I92647d8ba53bb498b1048ea920a25c04441f6e10 Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
* | | | usb: phy: qusb: Determine linestate for QUSB2 PHYDevdutt Patnaik2016-07-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Controller driver passes current speed to QUSB2 PHY driver in the flags parameter. Determine linestate using speed, mode and cable connection status. This deprecates the older mechanism where linestate was determined by reading the now obsoleted QUSB2PHY_PORT_UTMI_STATUS register. Change-Id: I682eb250964f32f93d7b31dae0291aca7fa44362 Signed-off-by: Devdutt Patnaik <dpatnaik@codeaurora.org>
* | | | usb: phy: qusb: Add support for host mode phy init seqDevdutt Patnaik2016-07-19
|/ / / | | | | | | | | | | | | | | | | | | | | | Update QUSB2 HS PHY init sequence in host mode to fix enumeration issues due to port reset operation failure. Change-Id: I95daf3e3a833f9daeac6190daa33191f9db8cf26 Signed-off-by: Devdutt Patnaik <dpatnaik@codeaurora.org>
* | | usb: phy: qusb-v2: Add USB QUSB PHY for newer platformMayank Rana2016-07-07
| | | | | | | | | | | | | | | | | | | | | | | | This change adds USB QUSB PHY v2 driver which is compatible for USB QUSB PHY having major revision as 2. Change-Id: I1751352ebbe38d4b8c7886085d15043c2e5244f5 Signed-off-by: Mayank Rana <mrana@codeaurora.org>
* | | usb: phy: qmp: Configure phy lane based on plug orientationHemant Kumar2016-05-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | In order to support super speed mode using type-c cable, phy driver needs to programe the phy with appropriate lane based upon plug orientation. Change-Id: I893c0b729015cd22791d168453309168246961e2 Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
* | | usb: phy: qmp: Add support to select usb3 phy modeHemant Kumar2016-05-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | qmp phy can run in display port mode or in usb3 mode. It is recommended to explicitly select the usb3 phy mode before programming the phy init sequence, since TCSR_USB3_DP_PHYMODE register is commonly used to select mode between display port driver as well as ssphy driver. Change-Id: I270596868762ccd4f2f2cc9b0daaca647a2bee88 Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
* | | usb: phy: qmp: Add support to use different voltage with core supplyMayank Rana2016-04-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | On newer platform USB QMP PHY needs different voltage supply as core voltage. This change adds required support for the same. CRs-Fixed: 1001463 Change-Id: If100d36bade241dedf28e3cea9e07be192bdfdc2 Signed-off-by: Mayank Rana <mrana@codeaurora.org>
* | | usb: phy: qusb: Update QUSB PHY power up functionality for major rev 2Mayank Rana2016-04-07
| | | | | | | | | | | | | | | | | | | | | | | | | | | In new platform, few set of QUSB PHY related operational registers' offset and usage is changed. This change adds QUSB PHY power up and PLL lock functionality for QUSB PHY having major revision 2. Change-Id: Id44c91481d4c184a1991768baf13adad2fae9fb3 Signed-off-by: Mayank Rana <mrana@codeaurora.org>
* | | usb: phy: qusb: Use phy_clk_scheme with ref_clk_base_addrMayank Rana2016-04-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently phy_clk_scheme related information (i.e. cml or cmos) is used to make decision about how to use ref_clk. On newer platform this functionality is not required. Hence tie phy_clk_scheme with availabiliity of ref_clk_base_addr and perform required ref_clk operation using phy_clk_scheme. Change-Id: If1f264e155a4411df5e037f9f28bc590e9465ac9 Signed-off-by: Mayank Rana <mrana@codeaurora.org>
* | | usb: qmp: phy: Make sure QMP PHY reset write is completedMayank Rana2016-04-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add explicit memory barrier after programming USB3_PHY_SW_RESET register which makes sure that above write is not cached. If this register write is cached, then phy driver is timing out with checking PCS status. In some cases, L2 cache memory error is seen when that register write is flushed whereas usb phy clock is turned off. CRs-Fixed: 990963 Change-Id: Iebe8cb4034721e76fa5ea63e33304b9dc0243797 Signed-off-by: Mayank Rana <mrana@codeaurora.org>
* | | usb: phy: qmp: Remove unused devicetree property with QMP PHYMayank Rana2016-03-23
| | | | | | | | | | | | | | | | | | | | | | | | This change removes unused devicetree property with QMP PHY as now all QMP PHY related initialization information needs to be provided through devicetree. Signed-off-by: Mayank Rana <mrana@codeaurora.org>
* | | usb: phy: qmp: Remove QMP PHY revision based phy_reg_offsetMayank Rana2016-03-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change removes QMP PHY revision based phy_reg_offset from QMP PHY driver. It makes mandatory to have required QMP PHY related register offset through devicetree. It also removes different revision ID related register offset usage and requirement. Signed-off-by: Mayank Rana <mrana@codeaurora.org>