From: Greg Kroah-Hartman Date: Wed, 12 Apr 2017 10:57:51 +0000 (+0200) Subject: Merge 4.9.22 into android-4.9 X-Git-Tag: khadas-vims-v0.9.6-release~1584^2~784 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=44e63be68cca09002f14ecd8dac94b9f29a3b5e3;p=platform%2Fkernel%2Flinux-amlogic.git Merge 4.9.22 into android-4.9 Changes in 4.9.22: ppdev: check before attaching port ppdev: fix registering same device name drm/vmwgfx: Type-check lookups of fence objects drm/vmwgfx: NULL pointer dereference in vmw_surface_define_ioctl() drm/vmwgfx: avoid calling vzalloc with a 0 size in vmw_get_cap_3d_ioctl() drm/ttm, drm/vmwgfx: Relax permission checking when opening surfaces drm/vmwgfx: Remove getparam error message drm/vmwgfx: fix integer overflow in vmw_surface_define_ioctl() sysfs: be careful of error returns from ops->show() staging: android: ashmem: lseek failed due to no FMODE_LSEEK. arm/arm64: KVM: Take mmap_sem in stage2_unmap_vm arm/arm64: KVM: Take mmap_sem in kvm_arch_prepare_memory_region kvm: arm/arm64: Fix locking for kvm_free_stage2_pgd iio: bmg160: reset chip when probing arm64: mm: unaligned access by user-land should be received as SIGBUS cfg80211: check rdev resume callback only for registered wiphy Reset TreeId to zero on SMB2 TREE_CONNECT mm/page_alloc.c: fix print order in show_free_areas() ptrace: fix PTRACE_LISTEN race corrupting task->state dm verity fec: limit error correction recursion dm verity fec: fix bufio leaks ACPI / gpio: do not fall back to parsing _CRS when we get a deferral Kbuild: use cc-disable-warning consistently for maybe-uninitialized orangefs: move features validation to fix filesystem hang xfs: Honor FALLOC_FL_KEEP_SIZE when punching ends of files ring-buffer: Fix return value check in test_ringbuffer() mac80211: unconditionally start new netdev queues with iTXQ support brcmfmac: use local iftype avoiding use-after-free of virtual interface metag/usercopy: Drop unused macros metag/usercopy: Fix alignment error checking metag/usercopy: Add early abort to copy_to_user metag/usercopy: Zero rest of buffer from copy_from_user metag/usercopy: Set flags before ADDZ metag/usercopy: Fix src fixup in from user rapf loops metag/usercopy: Add missing fixups powerpc: Disable HFSCR[TM] if TM is not supported powerpc/mm: Add missing global TLB invalidate if cxl is active powerpc/64: Fix flush_(d|i)cache_range() called from modules powerpc: Don't try to fix up misaligned load-with-reservation instructions powerpc/crypto/crc32c-vpmsum: Fix missing preempt_disable() dm raid: fix NULL pointer dereference for raid1 without bitmap nios2: reserve boot memory for device tree xtensa: make __pa work with uncached KSEG addresses s390/decompressor: fix initrd corruption caused by bss clear s390/uaccess: get_user() should zero on failure (again) MIPS: Force o32 fp64 support on 32bit MIPS64r6 kernels MIPS: ralink: Fix typos in rt3883 pinctrl MIPS: End spinlocks with .insn MIPS: Lantiq: fix missing xbar kernel panic MIPS: Check TLB before handle_ri_rdhwr() for Loongson-3 MIPS: Add MIPS_CPU_FTLB for Loongson-3A R2 MIPS: Flush wrong invalid FTLB entry for huge page MIPS: c-r4k: Fix Loongson-3's vcache/scache waysize calculation Documentation: stable-kernel-rules: fix stable-tag format mm/mempolicy.c: fix error handling in set_mempolicy and mbind. random: use chacha20 for get_random_int/long drm/sun4i: tcon: Move SoC specific quirks to a DT matched data structure drm/sun4i: Add compatible strings for A31/A31s display pipelines drm/sun4i: Add compatible string for A31/A31s TCON (timing controller) clk: lpc32xx: add a quirk for PWM and MS clock dividers HID: usbhid: Add quirks for Mayflash/Dragonrise GameCube and PS3 adapters HID: i2c-hid: add a simple quirk to fix device defects usb: dwc3: gadget: delay unmap of bounced requests ASoC: Intel: bytct_rt5640: change default capture settings arm64: dts: hisi: fix hip06 sas am-max-trans quirk net/mlx4_core: Use device ID defines clocksource/drivers/arm_arch_timer: Don't assume clock runs in suspend scsi: ufs: introduce UFSHCD_QUIRK_PRDT_BYTE_GRAN quirk HID: sensor-hub add quirk for Microsoft Surface 3 HID: sensor-hub: add quirk for Microchip MM7150 HID: multitouch: enable the Surface 3 Type Cover to report multitouch data HID: multitouch: do not retrieve all reports for all devices mmc: sdhci-msm: Enable few quirks scsi: ufs: ensure that host pa_tactivate is higher than device svcauth_gss: Close connection when dropping an incoming message x86/intel_idle: Add CPU model 0x4a (Atom Z34xx series) arm64: PCI: Manage controller-specific data on per-controller basis arm64: PCI: Add local struct device pointers PCI: thunder-pem: Factor out resource lookup scsi: ufs: add quirk to increase host PA_SaveConfigTime ALSA: usb-audio: add implicit fb quirk for Axe-Fx II PCI: Expand "VPD access disabled" quirk message ALSA: usb-audio: Add native DSD support for TEAC 501/503 DAC platform/x86: acer-wmi: Only supports AMW0_GUID1 on acer family nvme: simplify stripe quirk ACPI / sysfs: Provide quirk mechanism to prevent GPE flooding HID: usbhid: Add quirk for the Futaba TOSD-5711BB VFD HID: usbhid: Add quirk for Mayflash/Dragonrise DolphinBar. drm/edid: constify edid quirk list drm/i915: fix INTEL_BDW_IDS definition drm/i915: more .is_mobile cleanups for BDW drm/i915: actually drive the BDW reserved IDs ASoC: Intel: bytcr_rt5640: quirks for Insyde devices scsi: ufs: introduce a new ufshcd_statea UFSHCD_STATE_EH_SCHEDULED scsi: ufs: issue link starup 2 times if device isn't active usb: chipidea: msm: Rely on core to override AHBBURST serial: 8250_omap: Add OMAP_DMA_TX_KICK quirk for AM437x Input: gpio_keys - add support for GPIO descriptors ARM: davinci: PM: support da8xx DT platforms usb: xhci: add quirk flag for broken PED bits usb: host: xhci-plat: enable BROKEN_PED quirk if platform requested usb: dwc3: host: pass quirk-broken-port-ped property for known broken revisions drm/mga: remove device_is_agp callback ARM: dts: STiH407-family: set snps,dis_u3_susphy_quirk PCI: Add ACS quirk for Intel Union Point sata: ahci-da850: implement a workaround for the softreset quirk ACPI / button: Change default behavior to lid_init_state=open ASoC: rt5670: Add missing 10EC5072 ACPI ID ASoC: codecs: rt5670: add quirk for Lenovo Thinkpad 10 ASoC: Intel: Baytrail: add quirk for Lenovo Thinkpad 10 ASoC: Intel: cht_bsw_rt5645: harden ACPI device detection ASoC: Intel: cht_bsw_rt5645: add Baytrail MCLK support ACPI: save NVS memory for Lenovo G50-45 ASoC: sun4i-i2s: Add quirks to handle a31 compatible HID: wacom: don't apply generic settings to old devices arm: kernel: Add SMC structure parameter firmware: qcom: scm: Fix interrupted SCM calls drm/msm/adreno: move function declarations to header file ARM: smccc: Update HVC comment to describe new quirk parameter PCI: Add Broadcom Northstar2 PAXC quirk for device class and MPSS PCI: Disable MSI for HiSilicon Hip06/Hip07 Root Ports mmc: sdhci-of-esdhc: remove default broken-cd for ARM PCI: Sort the list of devices with D3 delay quirk by ID PCI: Add ACS quirk for Qualcomm QDF2400 and QDF2432 watchdog: s3c2410: Fix infinite interrupt in soft mode platform/x86: asus-wmi: Set specified XUSB2PR value for X550LB platform/x86: asus-wmi: Detect quirk_no_rfkill from the DSDT x86/reboot/quirks: Add ASUS EeeBook X205TA reboot quirk x86/reboot/quirks: Add ASUS EeeBook X205TA/W reboot quirk usb-storage: Add ignore-residue quirk for Initio INIC-3619 x86/reboot/quirks: Fix typo in ASUS EeeBook X205TA reboot quirk Linux 4.9.22 Signed-off-by: Greg Kroah-Hartman --- 44e63be68cca09002f14ecd8dac94b9f29a3b5e3 diff --cc drivers/scsi/ufs/ufshcd.c index 9e3177b,edb06e4..b117019e --- a/drivers/scsi/ufs/ufshcd.c +++ b/drivers/scsi/ufs/ufshcd.c @@@ -6592,13 -6644,13 +6722,15 @@@ int ufshcd_init(struct ufs_hba *hba, vo /* Hold auto suspend until async scan completes */ pm_runtime_get_sync(dev); + ufshcd_init_latency_hist(hba); + /* - * The device-initialize-sequence hasn't been invoked yet. - * Set the device to power-off state + * We are assuming that device wasn't put in sleep/power-down + * state exclusively during the boot stage before kernel. + * This assumption helps avoid doing link startup twice during + * ufshcd_probe_hba(). */ - ufshcd_set_ufs_dev_poweroff(hba); + ufshcd_set_ufs_dev_active(hba); async_schedule(ufshcd_async_scan, hba);