Merge 4.19.125 into android-4.19-stable
Merge remote-tracking branch 'aosp/upstream-f2fs-stable-linux-4.19.y' into android-4.19-stable
Linux 4.19.125
rxrpc: Fix ack discard
* rxrpc: Trace discarded ACKs
include/trace/events/rxrpc.h
iio: adc: stm32-dfsdm: fix device used to request dma
iio: adc: stm32-dfsdm: Use dma_request_chan() instead dma_request_slave_channel()
iio: adc: stm32-adc: fix device used to request dma
iio: adc: stm32-adc: Use dma_request_chan() instead dma_request_slave_channel()
x86/unwind/orc: Fix unwind_get_return_address_ptr() for inactive tasks
rxrpc: Fix a memory leak in rxkad_verify_response()
rapidio: fix an error in get_user_pages_fast() error handling
ipack: tpci200: fix error return code in tpci200_register()
mei: release me_cl object reference
misc: rtsx: Add short delay after exit from ASPM
iio: dac: vf610: Fix an error handling path in 'vf610_dac_probe()'
iio: sca3000: Remove an erroneous 'get_device()'
staging: greybus: Fix uninitialized scalar variable
staging: iio: ad2s1210: Fix SPI reading
Revert "gfs2: Don't demote a glock until its revokes are written"
brcmfmac: abort and release host after error
tty: serial: qcom_geni_serial: Fix wrap around of TX buffer
cxgb4/cxgb4vf: Fix mac_hlist initialization and free
cxgb4: free mac_hlist properly
net: bcmgenet: abort suspend on error
net: bcmgenet: code movement
Revert "net/ibmvnic: Fix EOI when running in XIVE mode"
media: fdp1: Fix R-Car M3-N naming in debug message
thunderbolt: Drop duplicated get_switch_at_route()
staging: most: core: replace strcpy() by strscpy()
libnvdimm/btt: Fix LBA masking during 'free list' population
libnvdimm/btt: Remove unnecessary code in btt_freelist_init
* nfit: Add Hyper-V NVDIMM DSM command set to white list
include/uapi/linux/ndctl.h
powerpc/64s: Disable STRICT_KERNEL_RWX
powerpc: Remove STRICT_KERNEL_RWX incompatibility with RELOCATABLE
drm/i915/gvt: Init DPLL/DDI vreg for virtual display instead of inheritance.
dmaengine: owl: Use correct lock in owl_dma_get_pchan()
dmaengine: tegra210-adma: Fix an error handling path in 'tegra_adma_probe()'
apparmor: Fix aa_label refcnt leak in policy_update
apparmor: fix potential label refcnt leak in aa_change_profile
apparmor: Fix use-after-free in aa_audit_rule_init
drm/etnaviv: fix perfmon domain interation
ALSA: hda/realtek - Add more fixup entries for Clevo machines
ALSA: hda/realtek - Fix silent output on Gigabyte X570 Aorus Xtreme
* ALSA: pcm: fix incorrect hw_base increase
sound/core/pcm_lib.c
ALSA: iec1712: Initialize STDSP24 properly when using the model=staudio option
padata: purge get_cpu and reorder_via_wq from padata_do_serial
padata: initialize pd->cpu with effective cpumask
* padata: Replace delayed timer with immediate workqueue in padata_reorder
include/linux/padata.h
ARM: futex: Address build warning
platform/x86: asus-nb-wmi: Do not load on Asus T100TA and T200TA
* USB: core: Fix misleading driver bug report
drivers/usb/core/message.c
stmmac: fix pointer check after utilization in stmmac_interrupt
ceph: fix double unlock in handle_cap_export()
* HID: quirks: Add HID_QUIRK_NO_INIT_REPORTS quirk for Dell K12A keyboard-dock
drivers/hid/hid-ids.h
drivers/hid/hid-quirks.c
gtp: set NLM_F_MULTI flag in gtp_genl_dump_pdp()
x86/apic: Move TSC deadline timer debug printk
* HID: i2c-hid: reset Synaptics SYNA2393 on resume
drivers/hid/hid-ids.h
scsi: ibmvscsi: Fix WARN_ON during event pool release
* component: Silence bind error on -EPROBE_DEFER
drivers/base/component.c
aquantia: Fix the media type of AQC100 ethernet controller in the driver
vhost/vsock: fix packet delivery order to monitoring devices
* configfs: fix config_item refcnt leak in configfs_rmdir()
fs/configfs/dir.c
scsi: qla2xxx: Delete all sessions before unregister local nvme port
scsi: qla2xxx: Fix hang when issuing nvme disconnect-all in NPIV
* HID: alps: ALPS_1657 is too specific; use U1_UNICORN_LEGACY instead
drivers/hid/hid-ids.h
* HID: alps: Add AUI1657 device ID
drivers/hid/hid-ids.h
* HID: multitouch: add eGalaxTouch P80H84 support
drivers/hid/hid-ids.h
drivers/hid/hid-multitouch.c
* gcc-common.h: Update for GCC 10
scripts/gcc-plugins/gcc-common.h
ubi: Fix seq_file usage in detailed_erase_block_info debugfs file
i2c: mux: demux-pinctrl: Fix an error handling path in 'i2c_demux_pinctrl_probe()'
iommu/amd: Fix over-read of ACPI UID from IVRS table
ubifs: remove broken lazytime support
* fix multiplication overflow in copy_fdtable()
fs/file.c
mtd: spinand: Propagate ECC information to the MTD structure
ima: Fix return value of ima_write_policy()
evm: Check also if *tfm is an error pointer in init_desc()
ima: Set file->f_mode instead of file->f_flags in ima_calc_file_hash()
riscv: set max_pfn to the PFN of the last page
KVM: SVM: Fix potential memory leak in svm_cpu_init()
* i2c: dev: Fix the race between the release of i2c_dev and cdev
drivers/i2c/i2c-dev.c
* ubsan: build ubsan.c more conservatively
lib/Makefile
* x86/uaccess, ubsan: Fix UBSAN vs. SMAP
lib/Makefile
* ANDROID: scsi: ufs: Handle clocks when lrbp fails
drivers/scsi/ufs/ufshcd.c
* ANDROID: fscrypt: handle direct I/O with IV_INO_LBLK_32
fs/crypto/crypto.c
fs/crypto/inline_crypt.c
fs/direct-io.c
fs/ext4/inode.c
fs/f2fs/f2fs.h
include/linux/fscrypt.h
* BACKPORT: FROMLIST: fscrypt: add support for IV_INO_LBLK_32 policies
fs/crypto/crypto.c
fs/crypto/fscrypt_private.h
fs/crypto/inline_crypt.c
fs/crypto/keyring.c
fs/crypto/keysetup.c
fs/crypto/policy.c
include/uapi/linux/fscrypt.h
ANDROID: Update the ABI xml and qcom whitelist
ANDROID: Fix build.config.gki-debug
Merge 4.19.124 into android-4.19-stable
Linux 4.19.124
* Makefile: disallow data races on gcc-10 as well
Makefile
KVM: x86: Fix off-by-one error in kvm_vcpu_ioctl_x86_setup_mce
ARM: dts: r8a7740: Add missing extal2 to CPG node
arm64: dts: renesas: r8a77980: Fix IPMMU VIP[01] nodes
ARM: dts: r8a73a4: Add missing CMT1 interrupts
arm64: dts: rockchip: Rename dwc3 device nodes on rk3399 to make dtc happy
arm64: dts: rockchip: Replace RK805 PMIC node name with "pmic" on rk3328 boards
* clk: Unlink clock if failed to prepare or enable
drivers/clk/clk.c
Revert "ALSA: hda/realtek: Fix pop noise on ALC225"
usb: gadget: legacy: fix error return code in cdc_bind()
usb: gadget: legacy: fix error return code in gncm_bind()
usb: gadget: audio: Fix a missing error return value in audio_bind()
usb: gadget: net2272: Fix a memory leak in an error handling path in 'net2272_plat_probe()'
* dwc3: Remove check for HWO flag in dwc3_gadget_ep_reclaim_trb_sg()
drivers/usb/dwc3/gadget.c
clk: rockchip: fix incorrect configuration of rk3228 aclk_gpu* clocks
* exec: Move would_dump into flush_old_exec
fs/exec.c
x86/unwind/orc: Fix error handling in __unwind_start()
* x86: Fix early boot crash on gcc-10, third try
include/linux/compiler.h
init/main.c
cifs: fix leaked reference on requeued write
ARM: dts: imx27-phytec-phycard-s-rdk: Fix the I2C1 pinctrl entries
ARM: dts: dra7: Fix bus_dma_limit for PCIe
* usb: xhci: Fix NULL pointer dereference when enqueuing trbs from urb sg list
drivers/usb/host/xhci-ring.c
* USB: gadget: fix illegal array access in binding with UDC
drivers/usb/gadget/configfs.c
* usb: host: xhci-plat: keep runtime active when removing host
drivers/usb/host/xhci-plat.c
* usb: core: hub: limit HUB_QUIRK_DISABLE_AUTOSUSPEND to USB5534B
drivers/usb/core/hub.c
* ALSA: usb-audio: Add control message quirk delay for Kingston HyperX headset
sound/usb/quirks.c
* ALSA: rawmidi: Fix racy buffer resize under concurrent accesses
include/sound/rawmidi.h
sound/core/rawmidi.c
ALSA: hda/realtek - Limit int mic boost for Thinkpad T530
* gcc-10: avoid shadowing standard library 'free()' in crypto
crypto/xts.c
* gcc-10: disable 'restrict' warning for now
Makefile
* gcc-10: disable 'stringop-overflow' warning for now
Makefile
* gcc-10: disable 'array-bounds' warning for now
Makefile
* gcc-10: disable 'zero-length-bounds' warning for now
Makefile
* Stop the ad-hoc games with -Wno-maybe-initialized
Makefile
init/Kconfig
kernel/trace/Kconfig
* kbuild: compute false-positive -Wmaybe-uninitialized cases in Kconfig
Makefile
init/Kconfig
kernel/trace/Kconfig
* gcc-10 warnings: fix low-hanging fruit
include/linux/fs.h
include/linux/tty.h
* pnp: Use list_for_each_entry() instead of open coding
include/linux/pnp.h
hwmon: (da9052) Synchronize access with mfd
IB/mlx4: Test return value of calls to ib_get_cached_pkey
netfilter: nft_set_rbtree: Introduce and use nft_rbtree_interval_start()
arm64: fix the flush_icache_range arguments in machine_kexec
* netfilter: conntrack: avoid gcc-10 zero-length-bounds warning
include/net/netfilter/nf_conntrack.h
net/netfilter/nf_conntrack_core.c
NFSv4: Fix fscache cookie aux_data to ensure change_attr is included
nfs: fscache: use timespec64 in inode auxdata
NFS: Fix fscache super_cookie index_key from changing after umount
mmc: block: Fix request completion in the CQE timeout path
mmc: core: Check request type before completing the request
i40iw: Fix error handling in i40iw_manage_arp_cache()
pinctrl: cherryview: Add missing spinlock usage in chv_gpio_irq_handler
pinctrl: baytrail: Enable pin configuration setting for GPIO chip
gfs2: Another gfs2_walk_metadata fix
ALSA: hda/realtek - Fix S3 pop noise on Dell Wyse
ipc/util.c: sysvipc_find_ipc() incorrectly updates position index
drm/qxl: lost qxl_bo_kunmap_atomic_page in qxl_image_init_helper()
ALSA: hda/hdmi: fix race in monitor detection during probe
cpufreq: intel_pstate: Only mention the BIOS disabling turbo mode once
dmaengine: mmp_tdma: Reset channel error on release
dmaengine: pch_dma.c: Avoid data race between probe and irq handler
riscv: fix vdso build with lld
* tcp: fix SO_RCVLOWAT hangs with fat skbs
include/net/tcp.h
net/ipv4/tcp.c
net/ipv4/tcp_input.c
* net: tcp: fix rx timestamp behavior for tcp_recvmsg
net/ipv4/tcp.c
netprio_cgroup: Fix unlimited memory leak of v2 cgroups
* net: ipv4: really enforce backoff for redirects
net/ipv4/route.c
net: dsa: loop: Add module soft dependency
hinic: fix a bug of ndo_stop
virtio_net: fix lockdep warning on 32 bit
* tcp: fix error recovery in tcp_zerocopy_receive()
net/ipv4/tcp.c
* Revert "ipv6: add mtu lock check in __ip6_rt_update_pmtu"
net/ipv6/route.c
* pppoe: only process PADT targeted at local interfaces
drivers/net/ppp/pppoe.c
* net: phy: fix aneg restart in phy_ethtool_set_eee
drivers/net/phy/phy.c
* netlabel: cope with NULL catmap
net/ipv4/cipso_ipv4.c
net/ipv6/calipso.c
net/netlabel/netlabel_kapi.c
* net: fix a potential recursive NETDEV_FEAT_CHANGE
net/core/dev.c
mmc: sdhci-acpi: Add SDHCI_QUIRK2_BROKEN_64_BIT_DMA for AMDI0040
* scsi: sg: add sg_remove_request in sg_write
drivers/scsi/sg.c
virtio-blk: handle block_device_operations callbacks after hot unplug
drop_monitor: work around gcc-10 stringop-overflow warning
net: moxa: Fix a potential double 'free_irq()'
net/sonic: Fix a resource leak in an error handling path in 'jazz_sonic_probe()'
* shmem: fix possible deadlocks on shmlock_user_lock
mm/shmem.c
net: dsa: Do not make user port errors fatal
* ANDROID: rtc: class: call hctosys in resource managed registration
drivers/rtc/class.c
ANDROID: GKI: Update the ABI xml and whitelist
* ANDROID: power_supply: Add RTX power-supply property
drivers/power/supply/power_supply_sysfs.c
include/linux/power_supply.h
* f2fs: flush dirty meta pages when flushing them
fs/f2fs/checkpoint.c
* f2fs: fix checkpoint=disable:%u%%
fs/f2fs/f2fs.h
fs/f2fs/super.c
* f2fs: rework filename handling
fs/f2fs/dir.c
fs/f2fs/f2fs.h
fs/f2fs/hash.c
fs/f2fs/inline.c
fs/f2fs/namei.c
fs/f2fs/recovery.c
* f2fs: split f2fs_d_compare() from f2fs_match_name()
fs/f2fs/dir.c
fs/f2fs/f2fs.h
* f2fs: don't leak filename in f2fs_try_convert_inline_dir()
fs/f2fs/inline.c
ANDROID: clang: update to 11.0.1
FROMLIST: x86_64: fix jiffies ODR violation
* ANDROID: arm64: vdso: Fix removing SCS flags
arch/arm64/kernel/vdso/Makefile
Merge branch 'android-4.19' into android-4.19-stable
ANDROID: GKI: Update the ABI xml and whitelist
* ANDROID: Incremental fs: wake up log pollers less often
fs/incfs/data_mgmt.c
fs/incfs/data_mgmt.h
* ANDROID: Incremental fs: Fix scheduling while atomic error
fs/incfs/vfs.c
* ANDROID: Incremental fs: Avoid continually recalculating hashes
fs/incfs/data_mgmt.c
* ANDROID: export: Disable symbol trimming on modules
include/linux/export.h
ANDROID: GKI: Update the ABI xml and whitelist
* ANDROID: fscrypt: set dun_bytes more precisely
fs/crypto/inline_crypt.c
* ANDROID: dm-default-key: set dun_bytes more precisely
drivers/md/dm-default-key.c
* ANDROID: block: backport the ability to specify max_dun_bytes
block/blk-crypto.c
block/keyslot-manager.c
drivers/md/dm-default-key.c
drivers/scsi/ufs/ufshcd-crypto.c
fs/crypto/inline_crypt.c
include/linux/bio-crypt-ctx.h
include/linux/blk-crypto.h
include/linux/keyslot-manager.h
ANDROID: Revert "ANDROID: GKI: gki_defconfig: CONFIG_DM_DEFAULT_KEY=m"
Merge 4.19.123 into android-4.19
Linux 4.19.123
ipc/mqueue.c: change __do_notify() to bypass check_kill_permission()
scripts/decodecode: fix trapping instruction formatting
objtool: Fix stack offset tracking for indirect CFAs
netfilter: nf_osf: avoid passing pointer to local var
* netfilter: nat: never update the UDP checksum when it's 0
net/netfilter/nf_nat_proto_udp.c
x86/unwind/orc: Fix premature unwind stoppage due to IRET frames
x86/unwind/orc: Fix error path for bad ORC entry type
x86/unwind/orc: Prevent unwinding before ORC initialization
x86/unwind/orc: Don't skip the first frame for inactive tasks
x86/entry/64: Fix unwind hints in rewind_stack_do_exit()
x86/entry/64: Fix unwind hints in kernel exit path
x86/entry/64: Fix unwind hints in register clearing code
batman-adv: Fix refcnt leak in batadv_v_ogm_process
batman-adv: Fix refcnt leak in batadv_store_throughput_override
batman-adv: Fix refcnt leak in batadv_show_throughput_override
batman-adv: fix batadv_nc_random_weight_tq
KVM: VMX: Mark RCX, RDX and RSI as clobbered in vmx_vcpu_run()'s asm blob
KVM: VMX: Explicitly reference RCX as the vmx_vcpu pointer in asm blobs
* coredump: fix crash when umh is disabled
fs/coredump.c
kernel/umh.c
staging: gasket: Check the return value of gasket_get_bar_index()
* mm/page_alloc: fix watchdog soft lockups during set_zone_contiguous()
mm/page_alloc.c
arm64: hugetlb: avoid potential NULL dereference
KVM: arm64: Fix 32bit PC wrap-around
KVM: arm: vgic: Fix limit condition when writing to GICD_I[CS]ACTIVER
* tracing: Add a vmalloc_sync_mappings() for safe measure
kernel/trace/trace.c
USB: serial: garmin_gps: add sanity checking for data length
USB: uas: add quirk for LaCie 2Big Quadra
* HID: usbhid: Fix race between usbhid_close() and usbhid_stop()
drivers/hid/usbhid/hid-core.c
drivers/hid/usbhid/usbhid.h
* sctp: Fix bundling of SHUTDOWN with COOKIE-ACK
net/sctp/sm_statefuns.c
HID: wacom: Read HID_DG_CONTACTMAX directly for non-generic devices
* net: stricter validation of untrusted gso packets
include/linux/virtio_net.h
bnxt_en: Fix VF anti-spoof filter setup.
bnxt_en: Improve AER slot reset.
net/mlx5: Fix command entry leak in Internal Error State
net/mlx5: Fix forced completion access non initialized command entry
bnxt_en: Fix VLAN acceleration handling in bnxt_fix_features().
* tipc: fix partial topology connection closure
net/tipc/topsrv.c
sch_sfq: validate silly quantum values
sch_choke: avoid potential panic in choke_reset()
net: usb: qmi_wwan: add support for DW5816e
net_sched: sch_skbprio: add message validation to skbprio_change()
net/mlx4_core: Fix use of ENOSPC around mlx4_counter_alloc()
net: macsec: preserve ingress frame ordering
fq_codel: fix TCA_FQ_CODEL_DROP_BATCH_SIZE sanity checks
dp83640: reverse arguments to list_add_tail
vt: fix unicode console freeing with a common interface
tracing/kprobes: Fix a double initialization typo
USB: serial: qcserial: Add DW5816e support
* ANDROID: usb: gadget: Add missing inline qualifier to stub functions
include/linux/usb/gadget.h
ANDROID: Drop ABI monitoring from KASAN build config
ANDROID: Rename build.config.gki.arch_kasan
ANDROID: GKI: Enable CONFIG_STATIC_USERMODEHELPER
* ANDROID: dm-default-key: Update key size for wrapped keys
drivers/md/dm-default-key.c
ANDROID: gki_defconfig: enable CONFIG_MMC_CRYPTO
* ANDROID: mmc: MMC crypto API
drivers/mmc/core/Kconfig
include/linux/mmc/core.h
include/linux/mmc/host.h
ANDROID: GKI: Update the ABI xml and whitelist
* ANDROID: GKI: add missing exports for cam_smmu_api.ko
drivers/iommu/dma-iommu.c
Merge 4.19.122 into android-4.19
Linux 4.19.122
* drm/atomic: Take the atomic toys away from X
drivers/gpu/drm/drm_ioctl.c
cgroup, netclassid: remove double cond_resched
* mac80211: add ieee80211_is_any_nullfunc()
include/linux/ieee80211.h
platform/x86: GPD pocket fan: Fix error message when temp-limits are out of range
ALSA: hda: Match both PCI ID and SSID for driver blacklist
hexagon: define ioremap_uc
hexagon: clean up ioremap
mfd: intel-lpss: Use devm_ioremap_uc for MMIO
* lib: devres: add a helper function for ioremap_uc
include/linux/io.h
lib/devres.c
drm/amdgpu: Fix oops when pp_funcs is unset in ACPI event
* sctp: Fix SHUTDOWN CTSN Ack in the peer restart case
net/sctp/sm_make_chunk.c
net: systemport: suppress warnings on failed Rx SKB allocations
net: bcmgenet: suppress warnings on failed Rx SKB allocations
* lib/mpi: Fix building for powerpc with clang
lib/mpi/longlong.h
scripts/config: allow colons in option strings for sed
s390/ftrace: fix potential crashes when switching tracers
cifs: protect updating server->dstaddr with a spinlock
ASoC: rsnd: Fix "status check failed" spam for multi-SSI
ASoC: rsnd: Don't treat master SSI in multi SSI setup as parent
net: stmmac: Fix sub-second increment
net: stmmac: fix enabling socfpga's ptp_ref_clock
wimax/i2400m: Fix potential urb refcnt leak
drm/amdgpu: Correctly initialize thermal controller for GPUs with Powerplay table v0 (e.g Hawaii)
ASoC: codecs: hdac_hdmi: Fix incorrect use of list_for_each_entry
ASoC: rsnd: Fix HDMI channel mapping for multi-SSI mode
ASoC: rsnd: Fix parent SSI start/stop in multi-SSI mode
* usb: dwc3: gadget: Properly set maxpacket limit
drivers/usb/dwc3/core.h
drivers/usb/dwc3/gadget.c
ASoC: sgtl5000: Fix VAG power-on handling
selftests/ipc: Fix test failure seen after initial test run
ASoC: topology: Check return value of pcm_new_ver
powerpc/pci/of: Parse unassigned resources
vhost: vsock: kick send_pkt worker once device is started
ANDROID: GKI: fix build warning on 32bits due to ASoC msm change
ANDROID: GKI: fix build error on 32bits due to ASoC msm change
ANDROID: GKI: update abi definition due to FAIR_GROUP_SCHED removal
ANDROID: GKI: Remove FAIR_GROUP_SCHED
ANDROID: GKI: BULK update ABI XML representation and qcom whitelist
ANDROID: build.config.gki.aarch64: Enable WHITELIST_STRICT_MODE
ANDROID: GKI: Update the ABI xml and qcom whitelist
* ANDROID: remove unused variable
fs/f2fs/xattr.c
ANDROID: Drop ABI monitoring from KASAN build config
Merge 4.19.121 into android-4.19
Linux 4.19.121
mmc: meson-mx-sdio: remove the broken ->card_busy() op
mmc: meson-mx-sdio: Set MMC_CAP_WAIT_WHILE_BUSY
mmc: sdhci-msm: Enable host capabilities pertains to R1b response
mmc: sdhci-pci: Fix eMMC driver strength for BYT-based controllers
mmc: sdhci-xenon: fix annoying 1.8V regulator warning
mmc: cqhci: Avoid false "cqhci: CQE stuck on" by not open-coding timeout loop
btrfs: transaction: Avoid deadlock due to bad initialization timing of fs_info::journal_info
btrfs: fix partial loss of prealloc extent past i_size after fsync
* selinux: properly handle multiple messages in selinux_netlink_send()
security/selinux/hooks.c
dmaengine: dmatest: Fix iteration non-stop logic
nfs: Fix potential posix_acl refcnt leak in nfs3_set_acl
ALSA: opti9xx: shut up gcc-10 range warning
iommu/amd: Fix legacy interrupt remapping for x2APIC-enabled system
scsi: target/iblock: fix WRITE SAME zeroing
iommu/qcom: Fix local_base status check
vfio/type1: Fix VA->PA translation for PFNMAP VMAs in vaddr_get_pfn()
vfio: avoid possible overflow in vfio_iommu_type1_pin_pages
RDMA/core: Fix race between destroy and release FD object
RDMA/core: Prevent mixed use of FDs between shared ufiles
RDMA/mlx4: Initialize ib_spec on the stack
RDMA/mlx5: Set GRH fields in query QP on RoCE
scsi: qla2xxx: check UNLOADING before posting async work
scsi: qla2xxx: set UNLOADING before waiting for session deletion
dm multipath: use updated MPATHF_QUEUE_IO on mapping for bio-based mpath
dm writecache: fix data corruption when reloading the target
* dm verity fec: fix hash block number in verity_fec_decode
drivers/md/dm-verity-fec.c
PM: hibernate: Freeze kernel threads in software_resume()
PM: ACPI: Output correct message on target power state
ALSA: pcm: oss: Place the plugin buffer overflow checks correctly
ALSA: hda/hdmi: fix without unlocked before return
* ALSA: usb-audio: Correct a typo of NuPrime DAC-10 USB ID
sound/usb/quirks.c
ALSA: hda/realtek - Two front mics on a Lenovo ThinkCenter
btrfs: fix block group leak when removing fails
drm/qxl: qxl_release use after free
drm/qxl: qxl_release leak in qxl_hw_surface_alloc()
drm/qxl: qxl_release leak in qxl_draw_dirty_fb()
* drm/edid: Fix off-by-one in DispID DTD pixel clock
drivers/gpu/drm/drm_edid.c
ANDROID: GKI: Bulk update ABI XML representation
ANDROID: GKI: Enable net testing options
ANDROID: gki_defconfig: Enable CONFIG_REMOTEPROC
ANDROID: Rename build.config.gki.arch_kasan
ANDROID: GKI: Update ABI for IOMMU
* ANDROID: Incremental fs: Fix issues with very large files
fs/incfs/vfs.c
ANDROID: Correct build.config branch name
ANDROID: GKI: Bulk update ABI XML representation and whitelist.
* UPSTREAM: vdso: Fix clocksource.h macro detection
include/vdso/clocksource.h
Merge 4.19.120 into android-4.19
ANDROID: GKI: update abi definition due to added padding
* ANDROID: GKI: networking: add Android ABI padding to a lot of networking structures
include/linux/ipv6.h
include/linux/net.h
include/linux/netdevice.h
include/linux/skbuff.h
* ANDROID: GKI: dma-mapping.h: add Android ABI padding to a structure
include/linux/dma-mapping.h
* ANDROID: GKI: ioport.h: add Android ABI padding to a structure
include/linux/ioport.h
* ANDROID: GKI: iomap.h: add Android ABI padding to a structure
include/linux/iomap.h
* ANDROID: GKI: genhd.h: add Android ABI padding to some structures
include/linux/genhd.h
* ANDROID: GKI: hrtimer.h: add Android ABI padding to a structure
include/linux/hrtimer.h
* ANDROID: GKI: ethtool.h: add Android ABI padding to a structure
include/linux/ethtool.h
* ANDROID: GKI: sched: add Android ABI padding to some structures
include/linux/sched/topology.h
include/linux/sched/user.h
* ANDROID: GKI: kernfs.h: add Android ABI padding to some structures
include/linux/kernfs.h
* ANDROID: GKI: kobject.h: add Android ABI padding to some structures
include/linux/kobject.h
* ANDROID: GKI: mm.h: add Android ABI padding to a structure
include/linux/mm.h
* ANDROID: GKI: mmu_notifier.h: add Android ABI padding to some structures
include/linux/mmu_notifier.h
* ANDROID: GKI: pci: add Android ABI padding to some structures
drivers/pci/pci.h
include/linux/pci.h
* ANDROID: GKI: irqdomain.h: add Android ABI padding to a structure
include/linux/irqdomain.h
* ANDROID: GKI: blk_types.h: add Android ABI padding to a structure
include/linux/blk_types.h
* ANDROID: GKI: scsi.h: add Android ABI padding to a structure
drivers/scsi/sd.h
* ANDROID: GKI: quota.h: add Android ABI padding to some structures
include/linux/quota.h
* ANDROID: GKI: timer.h: add Android ABI padding to a structure
include/linux/timer.h
* ANDROID: GKI: user_namespace.h: add Android ABI padding to a structure
include/linux/user_namespace.h
FROMGIT: f2fs: fix missing check for f2fs_unlock_op
Linux 4.19.120
* propagate_one(): mnt_set_mountpoint() needs mount_lock
fs/pnode.c
* ext4: check for non-zero journal inum in ext4_calculate_overhead
fs/ext4/super.c
* qed: Fix use after free in qed_chain_free
include/linux/qed/qed_chain.h
bpf, x86_32: Fix clobbering of dst for BPF_JSET
hwmon: (jc42) Fix name to have no illegal characters
* ext4: convert BUG_ON's to WARN_ON's in mballoc.c
fs/ext4/mballoc.c
* ext4: increase wait time needed before reuse of deleted inode numbers
fs/ext4/ialloc.c
* ext4: use matching invalidatepage in ext4_writepage
fs/ext4/inode.c
* arm64: Delete the space separator in __emit_inst
arch/arm64/include/asm/sysreg.h
ALSA: hda: call runtime_allow() for all hda controllers
xen/xenbus: ensure xenbus_map_ring_valloc() returns proper grant status
objtool: Support Clang non-section symbols in ORC dump
objtool: Fix CONFIG_UBSAN_TRAP unreachable warnings
scsi: target: tcmu: reset_ring should reset TCMU_DEV_BIT_BROKEN
scsi: target: fix PR IN / READ FULL STATUS for FC
ALSA: hda: Explicitly permit using autosuspend if runtime PM is supported
ALSA: hda: Keep the controller initialization even if no codecs found
xfs: fix partially uninitialized structure in xfs_reflink_remap_extent
x86: hyperv: report value of misc_features
net: fec: set GPR bit on suspend by DT configuration.
bpf, x86: Fix encoding for lower 8-bit registers in BPF_STX BPF_B
xfs: clear PF_MEMALLOC before exiting xfsaild thread
* mm: shmem: disable interrupt when acquiring info->lock in userfaultfd_copy path
mm/shmem.c
bpf, x86_32: Fix incorrect encoding in BPF_LDX zero-extension
* perf/core: fix parent pid/tid in task exit events
kernel/events/core.c
net/mlx5: Fix failing fw tracer allocation on s390
* cpumap: Avoid warning when CONFIG_DEBUG_PER_CPU_MAPS is enabled
kernel/bpf/cpumap.c
ARM: dts: bcm283x: Disable dsi0 node
* PCI: Move Apex Edge TPU class quirk to fix BAR assignment
drivers/pci/quirks.c
* PCI: Avoid ASMedia XHCI USB PME# from D0 defect
drivers/pci/quirks.c
* svcrdma: Fix leak of svc_rdma_recv_ctxt objects
include/linux/sunrpc/svc_rdma.h
* svcrdma: Fix trace point use-after-free race
include/trace/events/rpcrdma.h
xfs: acquire superblock freeze protection on eofblocks scans
net/cxgb4: Check the return from t4_query_params properly
rxrpc: Fix DATA Tx to disable nofrag for UDP on AF_INET6 socket
i2c: altera: use proper variable to hold errno
nfsd: memory corruption in nfsd4_lock()
ASoC: wm8960: Fix wrong clock after suspend & resume
ASoC: tas571x: disable regulators on failed probe
ASoC: q6dsp6: q6afe-dai: add missing channels to MI2S DAIs
iio:ad7797: Use correct attribute_group
usb: gadget: udc: bdc: Remove unnecessary NULL checks in bdc_req_complete
* usb: dwc3: gadget: Do link recovery for SS and SSP
drivers/usb/dwc3/gadget.c
* binder: take read mode of mmap_sem in binder_alloc_free_page()
drivers/android/binder_alloc.c
* include/uapi/linux/swab.h: fix userspace breakage, use __BITS_PER_LONG for swap
include/uapi/linux/swab.h
mtd: cfi: fix deadloop in cfi_cmdset_0002.c do_write_buffer
remoteproc: Fix wrong rvring index computation
* FROMLIST: PM / devfreq: Restart previous governor if new governor fails to start
drivers/devfreq/devfreq.c
* ANDROID: GKI: arm64: Enable GZIP and LZ4 kernel compression modes
arch/arm64/Kconfig
ANDROID: GKI: arm64: gki_defconfig: Set arm_smmu configuration
* ANDROID: GKI: iommu/arm-smmu: Modularize ARM SMMU driver
drivers/iommu/Kconfig
drivers/iommu/arm-smmu.c
* ANDROID: GKI: iommu: Snapshot of vendor changes
arch/arm64/mm/dma-mapping.c
drivers/iommu/dma-iommu.c
drivers/iommu/io-pgtable.c
drivers/iommu/iommu.c
drivers/iommu/iova.c
include/linux/dma-iommu.h
include/linux/dma-mapping.h
include/linux/io-pgtable.h
include/linux/iommu.h
include/linux/iova.h
include/trace/events/iommu.h
* ANDROID: GKI: Additions to ARM SMMU register definitions
drivers/iommu/arm-smmu-regs.h
* ANDROID: GKI: iommu/io-pgtable-arm: LPAE related updates by vendor
drivers/iommu/io-pgtable-arm.c
* ANDROID: GKI: common: dma-mapping: make dma_common_contiguous_remap more robust
kernel/dma/mapping.c
* ANDROID: GKI: dma-coherent: Expose device base address and size
include/linux/dma-mapping.h
kernel/dma/coherent.c
* ANDROID: GKI: arm64: add support for NO_KERNEL_MAPPING and STRONGLY_ORDERED
arch/arm64/mm/dma-mapping.c
* ANDROID: GKI: dma-mapping: Add dma_remap functions
arch/arm64/mm/dma-mapping.c
include/linux/dma-mapping.h
kernel/dma/mapping.c
* ANDROID: GKI: arm64: Support early fixup for CMA
arch/arm64/include/asm/dma-contiguous.h
arch/arm64/mm/mmu.c
* ANDROID: GKI: iommu: dma-mapping-fast: Fast ARMv7/v8 Long Descriptor Format
arch/arm64/include/asm/dma-iommu.h
arch/arm64/mm/dma-mapping.c
drivers/iommu/Kconfig
drivers/iommu/Makefile
drivers/iommu/dma-mapping-fast.c
drivers/iommu/io-pgtable-fast.c
drivers/iommu/io-pgtable.c
include/linux/dma-mapping-fast.h
include/linux/io-pgtable-fast.h
include/linux/io-pgtable.h
* ANDROID: GKI: arm64: dma-mapping: add support for IOMMU mapper
arch/arm64/Kconfig
arch/arm64/include/asm/device.h
arch/arm64/include/asm/dma-iommu.h
arch/arm64/mm/dma-mapping.c
drivers/iommu/Kconfig
* ANDROID: GKI: add ARCH_NR_GPIO for ABI match
arch/arm64/Kconfig
* ANDROID: GKI: kernel: Export symbol of `cpu_do_idle`
arch/arm64/kernel/arm64ksyms.c
* ANDROID: GKI: kernel: Export symbols needed by msm_minidump.ko and minidump_log.ko (again)
arch/arm64/kernel/arm64ksyms.c
* ANDROID: GKI: add missing exports for __flush_dcache_area
arch/arm64/kernel/arm64ksyms.c
* ANDROID: GKI: arm64: Export caching APIs
arch/arm64/kernel/arm64ksyms.c
* ANDROID: GKI: arm64: provide dma cache routines with same API as 32 bit
arch/arm64/include/asm/cacheflush.h
arch/arm64/mm/cache.S
ANDROID: gki_defconfig: add FORTIFY_SOURCE, remove SPMI_MSM_PMIC_ARB
* Revert "ANDROID: GKI: spmi: pmic-arb: don't enable SPMI_MSM_PMIC_ARB by default"
drivers/spmi/Kconfig
ANDROID: GKI: update abi definitions after adding padding
* ANDROID: GKI: elevator: add Android ABI padding to some structures
include/linux/elevator.h
* ANDROID: GKI: dentry: add Android ABI padding to some structures
include/linux/dcache.h
* ANDROID: GKI: bio: add Android ABI padding to some structures
include/linux/bio.h
* ANDROID: GKI: scsi: add Android ABI padding to some structures
include/scsi/scsi_cmnd.h
include/scsi/scsi_device.h
include/scsi/scsi_host.h
* ANDROID: GKI: ufs: add Android ABI padding to some structures
drivers/scsi/ufs/ufshcd.h
* ANDROID: GKI: workqueue.h: add Android ABI padding to some structures
include/linux/workqueue.h
* ANDROID: GKI: fs.h: add Android ABI padding to some structures
include/linux/fs.h
* ANDROID: GKI: USB: add Android ABI padding to some structures
include/linux/usb.h
include/linux/usb/hcd.h
include/linux/usb/usbnet.h
* ANDROID: GKI: mm: add Android ABI padding to some structures
include/linux/mm_types.h
include/linux/mmzone.h
* ANDROID: GKI: mount.h: add Android ABI padding to some structures
include/linux/mount.h
* ANDROID: GKI: sched.h: add Android ABI padding to some structures
include/linux/sched.h
include/linux/sched/signal.h
* ANDROID: GKI: sock.h: add Android ABI padding to some structures
include/net/sock.h
* ANDROID: GKI: module.h: add Android ABI padding to some structures
include/linux/module.h
* ANDROID: GKI: device.h: add Android ABI padding to some structures
include/linux/device.h
* ANDROID: GKI: phy: add Android ABI padding to some structures
include/linux/phy.h
* ANDROID: GKI: add android_kabi.h
include/linux/android_kabi.h
ANDROID: ABI: update due to previous changes in the tree
* BACKPORT: sched/core: Fix reset-on-fork from RT with uclamp
kernel/sched/core.c
* ANDROID: GKI: Add support for missing V4L2 symbols
drivers/media/v4l2-core/v4l2-ioctl.c
include/uapi/linux/videodev2.h
ANDROID: GKI: Bulk update ABI XML representation
* ANDROID: GKI: arm64: psci: Support for OS initiated scheme
drivers/firmware/psci.c
* ANDROID: GKI: net: add counter for number of frames coalesced in GRO
include/linux/netdevice.h
* ANDROID: GKI: cfg80211: Include length of kek in rekey data
include/net/cfg80211.h
net/wireless/nl80211.c
* BACKPORT: loop: change queue block size to match when using DIO
drivers/block/loop.c
* ANDROID: Incremental fs: Add setattr call
fs/incfs/vfs.c
ANDROID: GKI: enable CONFIG_RTC_SYSTOHC
* ANDROID: GKI: ipv4: add vendor padding to __IPV4_DEVCONF_* enums
include/uapi/linux/ip.h
* Revert "ANDROID: GKI: ipv4: increase __IPV4_DEVCONF_MAX to 64"
include/uapi/linux/ip.h
* ANDROID: driver: gpu: drm: fix export symbol types
drivers/gpu/drm/drm_panel.c
* ANDROID: SoC: core: fix export symbol type
sound/soc/soc-core.c
* ANDROID: ufshcd-crypto: fix export symbol type
drivers/scsi/ufs/ufshcd-crypto.c
* ANDROID: GKI: drivers: mailbox: fix race resulting in multiple message submission
drivers/mailbox/mailbox.c
ANDROID: GKI: arm64: gki_defconfig: Enable a few thermal configs
* Revert "ANDROID: GKI: add base.h include to match MODULE_VERSIONS"
drivers/thermal/thermal_core.c
* FROMLIST: thermal: Make cooling device trip point writable from sysfs
drivers/thermal/thermal_core.c
drivers/thermal/thermal_core.h
drivers/thermal/thermal_sysfs.c
* ANDROID: GKI: drivers: thermal: cpu_cooling: Use CPU ID as cooling device ID
drivers/thermal/cpu_cooling.c
* ANDROID: GKI: PM / devfreq: Allow min freq to be 0
drivers/devfreq/devfreq.c
ANDROID: GKI: arm64: gki_defconfig: Enable REGULATOR_PROXY_CONSUMER
ANDROID: GKI: Bulk Update ABI XML representation
ANDROID: KASAN support for GKI remove CONFIG_CC_WERROR
ANDROID: KASAN support for GKI
ANDROID: virt_wifi: fix export symbol types
* ANDROID: vfs: fix export symbol type
fs/attr.c
* ANDROID: vfs: fix export symbol types
fs/namei.c
* ANDROID: fscrypt: fix export symbol type
fs/crypto/fname.c
* ANDROID: cfi: fix export symbol types
kernel/cfi.c
* ANDROID: bpf: fix export symbol type
kernel/bpf/core.c
Merge 4.19.119 into android-4.19
Linux 4.19.119
s390/mm: fix page table upgrade vs 2ndary address mode accesses
xfs: Fix deadlock between AGI and AGF with RENAME_WHITEOUT
serial: sh-sci: Make sure status register SCxSR is read in correct sequence
* xhci: prevent bus suspend if a roothub port detected a over-current condition
drivers/usb/host/xhci-hub.c
* usb: f_fs: Clear OS Extended descriptor counts to zero in ffs_data_reset()
drivers/usb/gadget/function/f_fs.c
* usb: dwc3: gadget: Fix request completion check
drivers/usb/dwc3/gadget.c
UAS: fix deadlock in error handling and PM flushing work
UAS: no use logging any details in case of ENODEV
cdc-acm: introduce a cool down
cdc-acm: close race betrween suspend() and acm_softint
staging: vt6656: Power save stop wake_up_count wrap around.
staging: vt6656: Fix pairwise key entry save.
staging: vt6656: Fix drivers TBTT timing counter.
staging: vt6656: Fix calling conditions of vnt_set_bss_mode
staging: vt6656: Don't set RCR_MULTICAST or RCR_BROADCAST by default.
vt: don't use kmalloc() for the unicode screen buffer
vt: don't hardcode the mem allocation upper bound
staging: comedi: Fix comedi_device refcnt leak in comedi_open
staging: comedi: dt2815: fix writing hi byte of analog output
powerpc/setup_64: Set cache-line-size based on cache-block-size
ARM: imx: provide v7_cpu_resume() only on ARM_CPU_SUSPEND=y
iwlwifi: mvm: beacon statistics shouldn't go backwards
iwlwifi: pcie: actually release queue memory in TVQM
* ASoC: dapm: fixup dapm kcontrol widget
sound/soc/soc-dapm.c
* audit: check the length of userspace generated audit records
kernel/audit.c
* usb-storage: Add unusual_devs entry for JMicron JMS566
drivers/usb/storage/unusual_devs.h
tty: rocket, avoid OOB access
tty: hvc: fix buffer overflow during hvc_alloc().
KVM: VMX: Enable machine check support for 32bit targets
* KVM: Check validity of resolved slot when searching memslots
include/linux/kvm_host.h
KVM: s390: Return last valid slot if approx index is out-of-bounds
tpm: ibmvtpm: retry on H_CLOSED in tpm_ibmvtpm_send()
tpm/tpm_tis: Free IRQ if probing fails
* ALSA: usb-audio: Filter out unsupported sample rates on Focusrite devices
sound/usb/format.c
* ALSA: usb-audio: Fix usb audio refcnt leak when getting spdif
sound/usb/mixer_quirks.c
ALSA: hda/realtek - Add new codec supported for ALC245
ALSA: hda/realtek - Fix unexpected init_amp override
ALSA: usx2y: Fix potential NULL dereference
tools/vm: fix cross-compile build
mm/ksm: fix NULL pointer dereference when KSM zero page is enabled
mm/hugetlb: fix a addressing exception caused by huge_pte_offset
* vmalloc: fix remap_vmalloc_range() bounds checks
include/linux/vmalloc.h
mm/vmalloc.c
* USB: hub: Fix handling of connect changes during sleep
drivers/usb/core/hub.c
* USB: core: Fix free-while-in-use bug in the USB S-Glibrary
drivers/usb/core/message.c
USB: early: Handle AMD's spec-compliant identifiers, too
* USB: Add USB_QUIRK_DELAY_CTRL_MSG and USB_QUIRK_DELAY_INIT for Corsair K70 RGB RAPIDFIRE
drivers/usb/core/quirks.c
USB: sisusbvga: Change port variable from signed to unsigned
* fs/namespace.c: fix mountpoint reference counter race
fs/namespace.c
iio: xilinx-xadc: Make sure not exceed maximum samplerate
iio: xilinx-xadc: Fix sequencer configuration for aux channels in simultaneous mode
iio: xilinx-xadc: Fix clearing interrupt when enabling trigger
iio: xilinx-xadc: Fix ADC-B powerdown
iio: adc: stm32-adc: fix sleep in atomic context
iio: st_sensors: rely on odr mask to know if odr can be set
* iio: core: remove extra semi-colon from devm_iio_device_register() macro
include/linux/iio/iio.h
* ALSA: usb-audio: Add connector notifier delegation
sound/usb/mixer.c
sound/usb/mixer.h
sound/usb/mixer_maps.c
* ALSA: usb-audio: Add static mapping table for ALC1220-VB-based mobos
sound/usb/mixer.c
sound/usb/mixer_maps.c
sound/usb/quirks-table.h
ALSA: hda: Remove ASUS ROG Zenith from the blacklist
* KEYS: Avoid false positive ENOMEM error on key read
security/keys/internal.h
security/keys/keyctl.c
mlxsw: Fix some IS_ERR() vs NULL bugs
vrf: Check skb for XFRM_TRANSFORMED flag
* xfrm: Always set XFRM_TRANSFORMED in xfrm{4,6}_output_finish
net/ipv4/xfrm4_output.c
net/ipv6/xfrm6_output.c
net: dsa: b53: b53_arl_rw_op() needs to select IVL or SVL
net: dsa: b53: Rework ARL bin logic
net: dsa: b53: Fix ARL register definitions
net: dsa: b53: Lookup VID in ARL searches when VLAN is enabled
vrf: Fix IPv6 with qdisc and xfrm
team: fix hang in team_mode_get()
* tcp: cache line align MAX_TCP_HEADER
include/net/tcp.h
sched: etf: do not assume all sockets are full blown
net/x25: Fix x25_neigh refcnt leak when receiving frame
net: stmmac: dwmac-meson8b: Add missing boundary to RGMII TX clock array
net: netrom: Fix potential nr_neigh refcnt leak in nr_add_node
net: bcmgenet: correct per TX/RX ring statistics
macvlan: fix null dereference in macvlan_device_event()
macsec: avoid to set wrong mtu
* ipv6: fix restrict IPV6_ADDRFORM operation
net/ipv6/ipv6_sockglue.c
cxgb4: fix large delays in PTP synchronization
cxgb4: fix adapter crash due to wrong MC size
x86/KVM: Clean up host's steal time structure
x86/KVM: Make sure KVM_VCPU_FLUSH_TLB flag is not missed
* x86/kvm: Cache gfn to pfn translation
include/linux/kvm_host.h
include/linux/kvm_types.h
* x86/kvm: Introduce kvm_(un)map_gfn()
include/linux/kvm_host.h
KVM: Properly check if "page" is valid in kvm_vcpu_unmap
kvm: fix compile on s390 part 2
kvm: fix compilation on s390
kvm: fix compilation on aarch64
* KVM: Introduce a new guest mapping API
include/linux/kvm_host.h
KVM: nVMX: Always sync GUEST_BNDCFGS when it comes from vmcs01
KVM: VMX: Zero out *all* general purpose registers after VM-Exit
* f2fs: fix to avoid memory leakage in f2fs_listxattr
fs/f2fs/xattr.c
* blktrace: fix dereference after null check
kernel/trace/blktrace.c
* blktrace: Protect q->blk_trace with RCU
include/linux/blkdev.h
include/linux/blktrace_api.h
kernel/trace/blktrace.c
* net: ipv6_stub: use ip6_dst_lookup_flow instead of ip6_dst_lookup
include/net/addrconf.h
net/ipv6/addrconf_core.c
net/ipv6/af_inet6.c
net/tipc/udp_media.c
* net: ipv6: add net argument to ip6_dst_lookup_flow
include/net/ipv6.h
net/ipv6/af_inet6.c
net/ipv6/datagram.c
net/ipv6/inet6_connection_sock.c
net/ipv6/ip6_output.c
net/ipv6/raw.c
net/ipv6/syncookies.c
net/ipv6/tcp_ipv6.c
net/l2tp/l2tp_ip6.c
net/sctp/ipv6.c
PCI/ASPM: Allow re-enabling Clock PM
scsi: smartpqi: fix call trace in device discovery
virtio-blk: improve virtqueue error to BLK_STS
tracing/selftests: Turn off timeout setting
drm/amd/display: Not doing optimize bandwidth if flip pending.
* xhci: Ensure link state is U3 after setting USB_SS_PORT_LS_U3
drivers/usb/host/xhci-hub.c
ASoC: Intel: bytcr_rt5640: Add quirk for MPMAN MPWIN895CL tablet
* perf/core: Disable page faults when getting phys address
kernel/events/core.c
pwm: bcm2835: Dynamically allocate base
pwm: renesas-tpu: Fix late Runtime PM enablement
Revert "powerpc/64: irq_work avoid interrupt when called with hardware irqs enabled"
* loop: Better discard support for block devices
drivers/block/loop.c
s390/cio: avoid duplicated 'ADD' uevents
kconfig: qconf: Fix a few alignment issues
ipc/util.c: sysvipc_find_ipc() should increase position index
selftests: kmod: fix handling test numbers above 9
kernel/gcov/fs.c: gcov_seq_next() should increase position index
nvme: fix deadlock caused by ANA update wrong locking
ASoC: Intel: atom: Take the drv->lock mutex before calling sst_send_slot_map()
scsi: iscsi: Report unbind session event when the target has been removed
pwm: rcar: Fix late Runtime PM enablement
ceph: don't skip updating wanted caps when cap is stale
ceph: return ceph_mdsc_do_request() errors from __get_parent()
scsi: lpfc: Fix crash in target side cable pulls hitting WAIT_FOR_UNREG
scsi: lpfc: Fix kasan slab-out-of-bounds error in lpfc_unreg_login
* watchdog: reset last_hw_keepalive time at start
drivers/watchdog/watchdog_dev.c
* arm64: Silence clang warning on mismatched value/register sizes
arch/arm64/kernel/sys_compat.c
* arm64: compat: Workaround Neoverse-N1 #1542419 for compat user-space
arch/arm64/kernel/sys_compat.c
* arm64: Fake the IminLine size on systems affected by Neoverse-N1 #1542419
arch/arm64/include/asm/cache.h
arch/arm64/kernel/traps.c
* arm64: errata: Hide CTR_EL0.DIC on systems affected by Neoverse-N1 #1542419
arch/arm64/Kconfig
arch/arm64/include/asm/cpucaps.h
arch/arm64/kernel/cpu_errata.c
arch/arm64/kernel/traps.c
* arm64: Add part number for Neoverse N1
arch/arm64/include/asm/cputype.h
* vti4: removed duplicate log message.
net/ipv4/ip_vti.c
crypto: mxs-dcp - make symbols 'sha1_null_hash' and 'sha256_null_hash' static
bpftool: Fix printing incorrect pointer in btf_dump_ptr
drm/msm: Use the correct dma_sync calls harder
* ext4: fix extent_status fragmentation for plain files
fs/ext4/extents.c
ANDROID: abi_gki_aarch64_cuttlefish_whitelist: remove stale symbols
* ANDROID: GKI: ipv4: increase __IPV4_DEVCONF_MAX to 64
include/uapi/linux/ip.h
* ANDROID: GKI: power: add missing export for POWER_RESET_QCOM=m
arch/arm64/kernel/process.c
arch/arm64/mm/init.c
* BACKPORT: cfg80211: Support key configuration for Beacon protection (BIGTK)
include/net/cfg80211.h
include/uapi/linux/nl80211.h
net/wireless/nl80211.c
net/wireless/rdev-ops.h
net/wireless/sme.c
net/wireless/trace.h
net/wireless/util.c
* BACKPORT: cfg80211: Enhance the AKM advertizement to support per interface.
include/net/cfg80211.h
include/uapi/linux/nl80211.h
net/wireless/nl80211.c
* UPSTREAM: sysrq: Use panic() to force a crash
drivers/tty/sysrq.c
* ANDROID: GKI: kernel: sound: update codec options with block size
include/uapi/sound/compress_params.h
ANDROID: add compat cross compiler
ANDROID: x86/vdso: disable LTO only for VDSO
* BACKPORT: arm64: vdso32: Enable Clang Compilation
arch/arm64/kernel/vdso32/Makefile
* UPSTREAM: arm64: compat: vdso: Expose BUILD_VDSO32
arch/arm64/include/asm/vdso/compat_gettimeofday.h
* BACKPORT: lib/vdso: Enable common headers
include/vdso/datapage.h
lib/vdso/gettimeofday.c
BACKPORT: arm: vdso: Enable arm to use common headers
BACKPORT: x86/vdso: Enable x86 to use common headers
BACKPORT: mips: vdso: Enable mips to use common headers
* UPSTREAM: arm64: vdso32: Include common headers in the vdso library
arch/arm64/include/asm/vdso/compat_gettimeofday.h
arch/arm64/kernel/vdso32/vgettimeofday.c
* UPSTREAM: arm64: vdso: Include common headers in the vdso library
arch/arm64/include/asm/vdso/gettimeofday.h
arch/arm64/kernel/vdso/vgettimeofday.c
* UPSTREAM: arm64: Introduce asm/vdso/processor.h
arch/arm64/include/asm/processor.h
arch/arm64/include/asm/vdso/processor.h
* BACKPORT: arm64: vdso32: Code clean up
arch/arm64/include/asm/vdso/compat_gettimeofday.h
arch/arm64/kernel/vdso32/vgettimeofday.c
* UPSTREAM: linux/elfnote.h: Replace elf.h with UAPI equivalent
include/linux/elfnote.h
* UPSTREAM: scripts: Fix the inclusion order in modpost
scripts/mod/modpost.c
* UPSTREAM: common: Introduce processor.h
include/vdso/processor.h
* UPSTREAM: linux/ktime.h: Extract common header for vDSO
include/linux/ktime.h
include/vdso/ktime.h
* UPSTREAM: linux/jiffies.h: Extract common header for vDSO
include/linux/jiffies.h
include/vdso/jiffies.h
* UPSTREAM: linux/time64.h: Extract common header for vDSO
include/linux/time64.h
include/vdso/time64.h
* BACKPORT: linux/time32.h: Extract common header for vDSO
include/linux/time32.h
include/vdso/time32.h
* BACKPORT: linux/time.h: Extract common header for vDSO
include/linux/time.h
include/vdso/time.h
* UPSTREAM: linux/math64.h: Extract common header for vDSO
include/linux/math64.h
include/vdso/math64.h
* BACKPORT: linux/clocksource.h: Extract common header for vDSO
include/linux/clocksource.h
include/vdso/clocksource.h
BACKPORT: mips: Introduce asm/vdso/clocksource.h
* BACKPORT: arm64: Introduce asm/vdso/clocksource.h
arch/arm64/include/asm/clocksource.h
arch/arm64/include/asm/vdso/clocksource.h
BACKPORT: arm: Introduce asm/vdso/clocksource.h
BACKPORT: x86: Introduce asm/vdso/clocksource.h
* UPSTREAM: linux/limits.h: Extract common header for vDSO
include/linux/limits.h
include/vdso/limits.h
* BACKPORT: linux/kernel.h: split *_MAX and *_MIN macros into <linux/limits.h>
include/linux/kernel.h
include/linux/limits.h
include/uapi/linux/limits.h
* BACKPORT: linux/bits.h: Extract common header for vDSO
include/linux/bits.h
include/vdso/bits.h
* UPSTREAM: linux/const.h: Extract common header for vDSO
include/linux/const.h
include/vdso/const.h
* BACKPORT: arm64: vdso: fix flip/flop vdso build bug
arch/arm64/kernel/vdso/Makefile
arch/arm64/kernel/vdso32/Makefile
* UPSTREAM: lib/vdso: Allow the high resolution parts to be compiled out
lib/vdso/gettimeofday.c
* UPSTREAM: lib/vdso: Only read hrtimer_res when needed in __cvdso_clock_getres()
lib/vdso/gettimeofday.c
* UPSTREAM: lib/vdso: Mark do_hres() and do_coarse() as __always_inline
lib/vdso/gettimeofday.c
* UPSTREAM: lib/vdso: Avoid duplication in __cvdso_clock_getres()
lib/vdso/gettimeofday.c
* UPSTREAM: lib/vdso: Let do_coarse() return 0 to simplify the callsite
lib/vdso/gettimeofday.c
* UPSTREAM: lib/vdso: Remove checks on return value for 32 bit vDSO
lib/vdso/gettimeofday.c
* UPSTREAM: lib/vdso: Build 32 bit specific functions in the right context
lib/vdso/gettimeofday.c
* UPSTREAM: lib/vdso: Make __cvdso_clock_getres() static
lib/vdso/gettimeofday.c
* UPSTREAM: lib/vdso: Make clock_getres() POSIX compliant again
lib/vdso/gettimeofday.c
* UPSTREAM: lib/vdso/32: Provide legacy syscall fallbacks
lib/vdso/gettimeofday.c
* UPSTREAM: lib/vdso: Move fallback invocation to the callers
lib/vdso/gettimeofday.c
* UPSTREAM: lib/vdso/32: Remove inconsistent NULL pointer checks
lib/vdso/gettimeofday.c
* UPSTREAM: lib/vdso: Make delta calculation work correctly
lib/vdso/gettimeofday.c
* UPSTREAM: arm64: compat: Fix syscall number of compat_clock_getres
arch/arm64/include/asm/unistd.h
* BACKPORT: arm64: lse: Fix LSE atomics with LLVM
arch/arm64/include/asm/lse.h
UPSTREAM: mips: Fix gettimeofday() in the vdso library
UPSTREAM: mips: vdso: Fix __arch_get_hw_counter()
* BACKPORT: arm64: Kconfig: Make CONFIG_COMPAT_VDSO a proper Kconfig option
arch/arm64/Kconfig
arch/arm64/Makefile
* UPSTREAM: arm64: vdso32: Rename COMPATCC to CC_COMPAT
arch/arm64/kernel/vdso32/Makefile
* UPSTREAM: arm64: vdso32: Pass '--target' option to clang via VDSO_CAFLAGS
arch/arm64/kernel/vdso32/Makefile
* UPSTREAM: arm64: vdso32: Don't use KBUILD_CPPFLAGS unconditionally
arch/arm64/kernel/vdso32/Makefile
* UPSTREAM: arm64: vdso32: Move definition of COMPATCC into vdso32/Makefile
arch/arm64/Makefile
arch/arm64/kernel/vdso32/Makefile
* UPSTREAM: arm64: Default to building compat vDSO with clang when CONFIG_CC_IS_CLANG
arch/arm64/Makefile
* UPSTREAM: lib: vdso: Remove CROSS_COMPILE_COMPAT_VDSO
lib/vdso/Kconfig
* UPSTREAM: arm64: vdso32: Remove jump label config option in Makefile
arch/arm64/kernel/vdso32/Makefile
* UPSTREAM: arm64: vdso32: Detect binutils support for dmb ishld
arch/arm64/include/asm/vdso/compat_barrier.h
arch/arm64/kernel/vdso32/Makefile
BACKPORT: arm64: vdso: Remove stale files from old assembly implementation
* UPSTREAM: arm64: vdso32: Fix broken compat vDSO build warnings
arch/arm64/Kconfig
arch/arm64/Makefile
arch/arm64/kernel/vdso32/Makefile
UPSTREAM: mips: compat: vdso: Use legacy syscalls as fallback
BACKPORT: arm64: Relax Documentation/arm64/tagged-pointers.rst
BACKPORT: arm64: Add tagged-address-abi.rst to index.rst
* UPSTREAM: arm64: vdso: Fix Makefile regression
arch/arm64/Makefile
UPSTREAM: mips: vdso: Fix flip/flop vdso building bug
UPSTREAM: mips: vdso: Fix source path
UPSTREAM: mips: Add clock_gettime64 entry point
UPSTREAM: mips: Add clock_getres entry point
BACKPORT: mips: Add support for generic vDSO
* BACKPORT: arm64: vdso: Explicitly add build-id option
arch/arm64/kernel/vdso/Makefile
* BACKPORT: arm64: vdso: use $(LD) instead of $(CC) to link VDSO
arch/arm64/kernel/vdso/Makefile
* BACKPORT: arm64: vdso: Cleanup Makefiles
arch/arm64/kernel/vdso/Makefile
arch/arm64/kernel/vdso32/Makefile
* UPSTREAM: arm64: vdso: Fix population of AT_SYSINFO_EHDR for compat vdso
arch/arm64/include/asm/elf.h
* UPSTREAM: arm64: vdso: Fix compilation with clang older than 8
arch/arm64/kernel/vdso/Makefile
* UPSTREAM: arm64: compat: Fix __arch_get_hw_counter() implementation
arch/arm64/include/asm/vdso/compat_gettimeofday.h
* UPSTREAM: arm64: Fix __arch_get_hw_counter() implementation
arch/arm64/include/asm/vdso/gettimeofday.h
UPSTREAM: x86/vdso/32: Use 32bit syscall fallback
UPSTREAM: x86/vdso: Fix flip/flop vdso build bug
UPSTREAM: x86/vdso: Give the [ph]vclock_page declarations real types
UPSTREAM: x86/vdso: Add clock_gettime64() entry point
BACKPORT: x86/vdso: Add clock_getres() entry point
BACKPORT: x86/vdso: Switch to generic vDSO implementation
UPSTREAM: x86/segments: Introduce the 'CPUNODE' naming to better document the segment limit CPU/node NR trick
UPSTREAM: x86/vdso: Initialize the CPU/node NR segment descriptor earlier
UPSTREAM: x86/vdso: Introduce helper functions for CPU and node number
UPSTREAM: x86/segments/64: Rename the GDT PER_CPU entry to CPU_NUMBER
* BACKPORT: arm64: vdso: Enable vDSO compat support
arch/arm64/Kconfig
arch/arm64/Makefile
arch/arm64/kernel/Makefile
* UPSTREAM: arm64: compat: Get sigreturn trampolines from vDSO
arch/arm64/include/asm/vdso.h
arch/arm64/kernel/signal32.c
* UPSTREAM: arm64: elf: VDSO code page discovery
arch/arm64/include/asm/elf.h
* UPSTREAM: arm64: compat: VDSO setup for compat layer
arch/arm64/kernel/vdso.c
* UPSTREAM: arm64: vdso: Refactor vDSO code
arch/arm64/kernel/vdso.c
* BACKPORT: arm64: compat: Add vDSO
arch/arm64/include/asm/vdso/compat_barrier.h
arch/arm64/include/asm/vdso/compat_gettimeofday.h
arch/arm64/kernel/vdso32/Makefile
arch/arm64/kernel/vdso32/note.c
arch/arm64/kernel/vdso32/sigreturn.S
arch/arm64/kernel/vdso32/vdso.S
arch/arm64/kernel/vdso32/vdso.lds.S
arch/arm64/kernel/vdso32/vgettimeofday.c
* UPSTREAM: arm64: compat: Generate asm offsets for signals
arch/arm64/kernel/asm-offsets.c
* UPSTREAM: arm64: compat: Expose signal related structures
arch/arm64/include/asm/signal32.h
arch/arm64/kernel/signal32.c
* UPSTREAM: arm64: compat: Add missing syscall numbers
arch/arm64/include/asm/unistd.h
* BACKPORT: arm64: vdso: Substitute gettimeofday() with C implementation
arch/arm64/Kconfig
arch/arm64/include/asm/vdso/gettimeofday.h
arch/arm64/include/asm/vdso/vsyscall.h
arch/arm64/kernel/asm-offsets.c
arch/arm64/kernel/vdso.c
arch/arm64/kernel/vdso/Makefile
arch/arm64/kernel/vdso/vgettimeofday.c
* UPSTREAM: timekeeping: Provide a generic update_vsyscall() implementation
include/asm-generic/vdso/vsyscall.h
include/vdso/vsyscall.h
kernel/time/Makefile
kernel/time/vsyscall.c
* UPSTREAM: lib/vdso: Add compat support
lib/vdso/gettimeofday.c
* UPSTREAM: lib/vdso: Provide generic VDSO implementation
include/vdso/helpers.h
lib/Kconfig
lib/vdso/Kconfig
lib/vdso/Makefile
lib/vdso/gettimeofday.c
* UPSTREAM: vdso: Define standardized vdso_datapage
include/vdso/datapage.h
* UPSTREAM: hrtimer: Split out hrtimer defines into separate header
include/linux/hrtimer.h
include/linux/hrtimer_defs.h
UPSTREAM: nds32: Fix vDSO clock_getres()
* UPSTREAM: arm64: compat: Reduce address limit for 64K pages
arch/arm64/include/asm/processor.h
* BACKPORT: arm64: compat: Add KUSER_HELPERS config option
arch/arm64/Kconfig
arch/arm64/kernel/Makefile
arch/arm64/kernel/kuser32.S
arch/arm64/kernel/vdso.c
* UPSTREAM: arm64: compat: Refactor aarch32_alloc_vdso_pages()
arch/arm64/kernel/vdso.c
* BACKPORT: arm64: compat: Split kuser32
arch/arm64/kernel/Makefile
arch/arm64/kernel/kuser32.S
* UPSTREAM: arm64: compat: Alloc separate pages for vectors and sigpage
arch/arm64/include/asm/elf.h
arch/arm64/include/asm/signal32.h
arch/arm64/kernel/signal32.c
arch/arm64/kernel/vdso.c
ANDROID: GKI: Update ABI XML representation
* ANDROID: GKI: Enable GENERIC_IRQ_CHIP
init/Kconfig.gki
* ANDROID: GKI: power_supply: Add FG_TYPE power-supply property
drivers/power/supply/power_supply_sysfs.c
include/linux/power_supply.h
* ANDROID: GKI: mm: export mm_trace_rss_stat for modules to report RSS changes
mm/memory.c
ANDROID: GKI: gki_defconfig: Enable CONFIG_LEDS_TRIGGER_TRANSIENT
ANDROID: GKI: gki_defconfig: Enable CONFIG_CPU_FREQ_STAT
ANDROID: GKI: arm64: gki_defconfig: Disable HW tracing features
ANDROID: GKI: gki_defconfig: Enable CONFIG_I2C_CHARDEV
* ANDROID: Incremental fs: Use simple compression in log buffer
fs/incfs/data_mgmt.c
fs/incfs/data_mgmt.h
fs/incfs/vfs.c
* ANDROID: GKI: usb: core: Add support to parse config summary capability descriptors
drivers/usb/core/config.c
drivers/usb/core/generic.c
include/linux/usb.h
include/uapi/linux/usb/ch9.h
ANDROID: GKI: Update ABI XML representation
ANDROID: dm-bow: Fix not to skip trim at framented range
* ANDROID: Remove VLA from uid_sys_stats.c
drivers/misc/uid_sys_stats.c
f2fs: fix missing check for f2fs_unlock_op
* ANDROID: fix wakeup reason findings
kernel/power/wakeup_reason.c
* UPSTREAM: cfg80211: fix and clean up cfg80211_gen_new_bssid()
include/net/cfg80211.h
* UPSTREAM: cfg80211: save multi-bssid properties
include/net/cfg80211.h
net/wireless/scan.c
* UPSTREAM: cfg80211: make BSSID generation function inline
include/net/cfg80211.h
net/wireless/scan.c
* UPSTREAM: cfg80211: parse multi-bssid only if HW supports it
include/net/cfg80211.h
net/wireless/scan.c
* UPSTREAM: cfg80211: Move Multiple BSS info to struct cfg80211_bss to be visible
include/net/cfg80211.h
net/wireless/core.h
net/wireless/scan.c
* UPSTREAM: cfg80211: Properly track transmitting and non-transmitting BSS
net/wireless/core.h
net/wireless/scan.c
* UPSTREAM: cfg80211: use for_each_element() for multi-bssid parsing
net/wireless/scan.c
* UPSTREAM: cfg80211: Parsing of Multiple BSSID information in scanning
net/wireless/core.h
net/wireless/scan.c
* UPSTREAM: cfg80211/nl80211: Offload OWE processing to user space in AP mode
include/net/cfg80211.h
include/uapi/linux/nl80211.h
net/wireless/nl80211.c
net/wireless/rdev-ops.h
net/wireless/trace.h
* ANDROID: GKI: cfg80211: Sync nl80211 commands/feature with upstream
include/uapi/linux/nl80211.h
ANDROID: GKI: gki_defconfig: Enable FW_LOADER_USER_HELPER*
ANDROID: GKI: arm64: gki_defconfig: Disable CONFIG_ARM64_TAGGED_ADDR_ABI
ANDROID: GKI: gki_defconfig: CONFIG_CHR_DEV_SG=y
ANDROID: GKI: gki_defconfig: CONFIG_DM_DEFAULT_KEY=m
ANDROID: update the ABI xml representation
* ANDROID: init: GKI: enable hidden configs for GPU
init/Kconfig.gki
Merge 4.19.118 into android-4.19
Linux 4.19.118
* bpf: fix buggy r0 retval refinement for tracing helpers
kernel/bpf/verifier.c
* KEYS: Don't write out to userspace while holding key semaphore
include/keys/big_key-type.h
include/keys/user-type.h
include/linux/key-type.h
net/dns_resolver/dns_key.c
security/keys/keyctl.c
security/keys/keyring.c
security/keys/request_key_auth.c
security/keys/user_defined.c
mtd: phram: fix a double free issue in error path
mtd: lpddr: Fix a double free in probe()
mtd: spinand: Explicitly use MTD_OPS_RAW to write the bad block marker to OOB
locktorture: Print ratio of acquisitions, not failures
tty: evh_bytechan: Fix out of bounds accesses
iio: si1133: read 24-bit signed integer for measurement
fbdev: potential information leak in do_fb_ioctl()
net: dsa: bcm_sf2: Fix overflow checks
* f2fs: fix to wait all node page writeback
fs/f2fs/node.c
iommu/amd: Fix the configuration of GCR3 table root pointer
libnvdimm: Out of bounds read in __nd_ioctl()
power: supply: axp288_fuel_gauge: Broaden vendor check for Intel Compute Sticks.
ext2: fix debug reference to ext2_xattr_cache
ext2: fix empty body warnings when -Wextra is used
iommu/vt-d: Fix mm reference leak
drm/vc4: Fix HDMI mode validation
* f2fs: fix NULL pointer dereference in f2fs_write_begin()
fs/f2fs/super.c
NFS: Fix memory leaks in nfs_pageio_stop_mirroring()
drm/amdkfd: kfree the wrong pointer
* x86: ACPI: fix CPU hotplug deadlock
include/acpi/processor.h
KVM: s390: vsie: Fix possible race when shadowing region 3 tables
* compiler.h: fix error in BUILD_BUG_ON() reporting
include/linux/compiler.h
* percpu_counter: fix a data race at vm_committed_as
include/linux/percpu_counter.h
* include/linux/swapops.h: correct guards for non_swap_entry()
include/linux/swapops.h
cifs: Allocate encryption header through kmalloc
um: ubd: Prevent buffer overrun on command completion
* ext4: do not commit super on read-only bdev
fs/ext4/super.c
s390/cpum_sf: Fix wrong page count in error message
powerpc/maple: Fix declaration made after definition
s390/cpuinfo: fix wrong output when CPU0 is offline
NFS: direct.c: Fix memory leak of dreq when nfs_get_lock_context fails
NFSv4/pnfs: Return valid stateids in nfs_layout_find_inode_by_stateid()
rtc: 88pm860x: fix possible race condition
soc: imx: gpc: fix power up sequencing
clk: tegra: Fix Tegra PMC clock out parents
power: supply: bq27xxx_battery: Silence deferred-probe error
clk: at91: usb: continue if clk_hw_round_rate() return zero
x86/Hyper-V: Report crash data in die() when panic_on_oops is set
x86/Hyper-V: Report crash register data when sysctl_record_panic_msg is not set
x86/Hyper-V: Trigger crash enlightenment only once during system crash.
x86/Hyper-V: Free hv_panic_page when fail to register kmsg dump
x86/Hyper-V: Unload vmbus channel in hv panic callback
xsk: Add missing check on user supplied headroom size
rbd: call rbd_dev_unprobe() after unwatching and flushing notifies
rbd: avoid a deadlock on header_rwsem when flushing notifies
video: fbdev: sis: Remove unnecessary parentheses and commented code
lib/raid6: use vdupq_n_u8 to avoid endianness warnings
x86/Hyper-V: Report crash register data or kmsg before running crash kernel
of: overlay: kmemleak in dup_and_fixup_symbol_prop()
of: unittest: kmemleak in of_unittest_overlay_high_level()
of: unittest: kmemleak in of_unittest_platform_populate()
of: unittest: kmemleak on changeset destroy
ALSA: hda: Don't release card at firmware loading error
irqchip/mbigen: Free msi_desc on device teardown
netfilter: nf_tables: report EOPNOTSUPP on unsupported flags/object type
ARM: dts: imx6: Use gpc for FEC interrupt controller to fix wake on LAN.
arm, bpf: Fix bugs with ALU64 {RSH, ARSH} BPF_K shift by 0
watchdog: sp805: fix restart handler
* ext4: use non-movable memory for superblock readahead
fs/buffer.c
fs/ext4/inode.c
fs/ext4/super.c
include/linux/buffer_head.h
* scsi: sg: add sg_remove_request in sg_common_write
drivers/scsi/sg.c
objtool: Fix switch table detection in .text.unlikely
arm, bpf: Fix offset overflow for BPF_MEM BPF_DW
ANDROID: GKI: Bulk update ABI report.
* ANDROID: GKI: qos: Register irq notify after adding the qos request
kernel/power/qos.c
* ANDROID: GKI: Add dual role mode to usb_dr_modes array
drivers/usb/common/common.c
* UPSTREAM: virtio-gpu api: comment feature flags
include/uapi/linux/virtio_gpu.h
* ANDROID: arch:arm64: Increase kernel command line size
arch/arm64/include/uapi/asm/setup.h
* ANDROID: GKI: Add special linux_banner_ptr for modules
include/linux/printk.h
init/version.c
* Revert "ANDROID: GKI: Make linux_banner a C pointer"
include/linux/printk.h
init/version.c
* ANDROID: GKI: PM / devfreq: Add new flag to do simple clock scaling
drivers/devfreq/governor_simpleondemand.c
include/linux/devfreq.h
* ANDROID: GKI: Resolve ABI diff for struct snd_usb_audio
sound/usb/card.c
sound/usb/stream.c
sound/usb/usbaudio.h
ANDROID: GKI: Bulk update ABI
ANDROID: GKI: Update the whitelist for qcom SoCs
ANDROID: GKI: arm64: gki_defconfig: Set CONFIG_SCSI_UFSHCD=m
* ANDROID: GKI: scsi: add option to override the command timeout
drivers/scsi/scsi_lib.c
drivers/scsi/sd.c
drivers/scsi/sg.c
include/scsi/scsi_device.h
* ANDROID: GKI: scsi: Adjust DBD setting in mode sense for caching mode page per LLD
drivers/scsi/sd.c
include/scsi/scsi_host.h
* ANDROID: add ion_stat tracepoint to common kernel
drivers/staging/android/ion/Makefile
drivers/staging/android/ion/ion.c
lib/vsprintf.c
* UPSTREAM: gpu/trace: add a gpu total memory usage tracepoint
drivers/Kconfig
drivers/gpu/Makefile
drivers/gpu/trace/Kconfig
drivers/gpu/trace/Makefile
drivers/gpu/trace/trace_gpu_mem.c
include/trace/events/gpu_mem.h
Merge 4.19.117 into android-4.19
Linux 4.19.117
* mm/vmalloc.c: move 'area->pages' after if statement
mm/vmalloc.c
wil6210: remove reset file from debugfs
wil6210: make sure Rx ring sizes are correlated
wil6210: add general initialization/size checks
wil6210: ignore HALP ICR if already handled
wil6210: check rx_buff_mgmt before accessing it
x86/resctrl: Fix invalid attempt at removing the default resource group
x86/resctrl: Preserve CDP enable over CPU hotplug
x86/microcode/AMD: Increase microcode PATCH_MAX_SIZE
* scsi: target: fix hang when multiple threads try to destroy the same iscsi session
include/target/iscsi/iscsi_target_core.h
scsi: target: remove boilerplate code
kvm: x86: Host feature SSBD doesn't imply guest feature SPEC_CTRL_SSBD
* ext4: do not zeroout extents beyond i_disksize
fs/ext4/extents.c
drm/amd/powerplay: force the trim of the mclk dpm_levels if OD is enabled
* usb: dwc3: gadget: Don't clear flags before transfer ended
drivers/usb/dwc3/gadget.c
* usb: dwc3: gadget: don't enable interrupt when disabling endpoint
drivers/usb/dwc3/gadget.c
mac80211_hwsim: Use kstrndup() in place of kasprintf()
btrfs: check commit root generation in should_ignore_root
* tracing: Fix the race between registering 'snapshot' event trigger and triggering 'snapshot' operation
kernel/trace/trace_events_trigger.c
* keys: Fix proc_keys_next to increase position index
security/keys/proc.c
* ALSA: usb-audio: Check mapping at creating connector controls, too
sound/usb/mixer.c
sound/usb/mixer_maps.c
* ALSA: usb-audio: Don't create jack controls for PCM terminals
sound/usb/mixer.c
* ALSA: usb-audio: Don't override ignore_ctl_error value from the map
sound/usb/mixer.c
* ALSA: usb-audio: Filter error from connector kctl ops, too
sound/usb/mixer.c
ASoC: Intel: mrfld: return error codes when an error occurs
ASoC: Intel: mrfld: fix incorrect check on p->sink
* ext4: fix incorrect inodes per group in error message
fs/ext4/super.c
* ext4: fix incorrect group count in ext4_fill_super error message
fs/ext4/super.c
pwm: pca9685: Fix PWM/GPIO inter-operation
* jbd2: improve comments about freeing data buffers whose page mapping is NULL
fs/jbd2/commit.c
* scsi: ufs: Fix ufshcd_hold() caused scheduling while atomic
drivers/scsi/ufs/ufshcd.c
* ovl: fix value of i_ino for lower hardlink corner case
fs/overlayfs/inode.c
net: dsa: mt7530: fix tagged frames pass-through in VLAN-unaware mode
net: stmmac: dwmac-sunxi: Provide TX and RX fifo sizes
* net: revert default NAPI poll timeout to 2 jiffies
net/core/dev.c
* net: qrtr: send msgs from local of same id as broadcast
net/qrtr/qrtr.c
* net: ipv6: do not consider routes via gateways for anycast address check
include/net/ip6_route.h
* net: ipv4: devinet: Fix crash when add/del multicast IP with autojoin
net/ipv4/devinet.c
hsr: check protocol version in hsr_newlink()
amd-xgbe: Use __napi_schedule() in BH context
* ANDROID: GKI: drivers: of-thermal: Relate thermal zones using same sensor
drivers/thermal/of-thermal.c
ANDROID: GKI: Bulk ABI update
* ANDROID: GKI: dma: Add set_dma_mask hook to struct dma_map_ops
include/linux/dma-mapping.h
Merge remote-tracking branch 'aosp/upstream-f2fs-stable-linux-4.19.y' into android-4.19
ANDROID: GKI: ABI update due to recent patches
Merge 4.19.116 into android-4.19
* FROMLIST: drm/prime: add support for virtio exported objects
drivers/gpu/drm/drm_prime.c
include/drm/drm_drv.h
* FROMLIST: dma-buf: add support for virtio exported objects
drivers/dma-buf/dma-buf.c
include/linux/dma-buf.h
UPSTREAM: drm/virtio: module_param_named() requires linux/moduleparam.h
UPSTREAM: drm/virtio: fix resource id creation race
UPSTREAM: drm/virtio: make resource id workaround runtime switchable.
BACKPORT: drm/virtio: Drop deprecated load/unload initialization
* ANDROID: GKI: Add DRM_TTM config to GKI
init/Kconfig.gki
ANDROID: Bulk update the ABI xml representation
* ANDROID: GKI: spmi: pmic-arb: don't enable SPMI_MSM_PMIC_ARB by default
drivers/spmi/Kconfig
* ANDROID: GKI: attribute page lock and waitqueue functions as sched
include/linux/pagemap.h
include/linux/wait.h
kernel/sched/wait.c
mm/filemap.c
* ANDROID: GKI: extcon: Fix Add usage of blocking notifier chain
drivers/extcon/extcon.c
include/linux/extcon.h
* ANDROID: GKI: USB: pd: Extcon fix for C current
include/linux/extcon.h
* ANDROID: drm/dsi: Fix byte order of DCS set/get brightness
drivers/gpu/drm/drm_mipi_dsi.c
include/drm/drm_mipi_dsi.h
* ANDROID: GKI: mm: Export symbols to modularize CONFIG_MSM_DRM
mm/vmalloc.c
* ANDROID: GKI: ALSA: compress: Add support to send codec specific data
include/sound/compress_driver.h
include/uapi/sound/compress_offload.h
sound/core/compress_offload.c
sound/soc/soc-compress.c
* ANDROID: GKI: ALSA: Compress - dont use lock for all ioctls
sound/core/compress_offload.c
* ANDROID: GKI: ASoC: msm: qdsp6v2: add support for AMR_WB_PLUS offload
include/uapi/sound/compress_params.h
* ANDROID: GKI: msm: dolby: MAT and THD audiocodec name modification
include/uapi/sound/compress_params.h
* ANDROID: GKI: asoc: msm: Add support for compressed perf mode
include/uapi/sound/compress_params.h
* ANDROID: GKI: msm: audio: support for gapless_pcm
include/uapi/sound/compress_params.h
* ANDROID: GKI: uapi: msm: dolby: Support for TrueHD and MAT decoders
include/uapi/sound/compress_params.h
* ANDROID: GKI: ASoC: msm: qdsp6v2: Add TrueHD HDMI compress pass-though
include/uapi/sound/compress_params.h
* ANDROID: GKI: ALSA: compress: Add APTX format support in ALSA
include/uapi/sound/compress_params.h
* ANDROID: GKI: msm: qdsp6v2: Add timestamp support for compress capture
include/uapi/sound/compress_params.h
* ANDROID: GKI: SoC: msm: Add support for meta data in compressed TX
include/uapi/sound/compress_params.h
* ANDROID: GKI: ALSA: compress: Add DSD format support for ALSA
include/uapi/sound/compress_params.h
* ANDROID: GKI: ASoC: msm: qdsp6v2: add support for ALAC and APE offload
include/uapi/sound/compress_params.h
* ANDROID: GKI: SoC: msm: Add compressed TX and passthrough support
include/uapi/sound/compress_offload.h
include/uapi/sound/compress_params.h
* ANDROID: GKI: ASoC: msm: qdsp6v2: Add FLAC in compress offload path
include/uapi/sound/compress_params.h
* ANDROID: GKI: ASoC: msm: add support for different compressed formats
include/uapi/sound/compress_params.h
* ANDROID: GKI: ASoC: msm: Update the encode option and sample rate
include/uapi/sound/compress_params.h
ANDROID: GKI: Enable CONFIG_SND_VERBOSE_PROCFS in gki_defconfig
* ANDROID: GKI: Add hidden CONFIG_SND_SOC_COMPRESS to gki_defconfig
init/Kconfig.gki
* ANDROID: GKI: ALSA: pcm: add locks for accessing runtime resource
include/sound/pcm.h
ANDROID: GKI: Update ABI for DRM changes
* ANDROID: GKI: Add drm_dp_send_dpcd_{read,write} accessor functions
drivers/gpu/drm/drm_dp_mst_topology.c
include/drm/drm_dp_mst_helper.h
* ANDROID: GKI: drm: Add drm_dp_mst_get_max_sdp_streams_supported accessor function
drivers/gpu/drm/drm_dp_mst_topology.c
include/drm/drm_dp_mst_helper.h
* ANDROID: GKI: drm: Add drm_dp_mst_has_fec accessor function
drivers/gpu/drm/drm_dp_mst_topology.c
include/drm/drm_dp_mst_helper.h
* ANDROID: GKI: Add 'dsc_info' to struct drm_dp_mst_port
drivers/gpu/drm/drm_dp_mst_topology.c
include/drm/drm_dp_mst_helper.h
* ANDROID: GKI: usb: Add support to handle USB SMMU S1 address
drivers/usb/core/hcd.c
drivers/usb/core/usb.c
drivers/usb/host/xhci.c
include/linux/usb.h
include/linux/usb/hcd.h
* ANDROID: GKI: usb: Add helper APIs to return xhci phys addresses
drivers/usb/core/hcd.c
drivers/usb/core/usb.c
drivers/usb/host/xhci.c
include/linux/usb.h
include/linux/usb/hcd.h
* ANDROID: Add C protos for dma_buf/drm_prime get_uuid
include/drm/drm_prime.h
include/linux/dma-buf.h
* ANDROID: GKI: Make linux_banner a C pointer
include/linux/printk.h
init/version.c
* ANDROID: GKI: Add 'refresh_rate', 'id' to struct drm_panel_notifier
include/drm/drm_panel.h
* ANDROID: GKI: Add 'i2c_mutex' to struct drm_dp_aux
include/drm/drm_dp_helper.h
* ANDROID: GKI: Add 'checksum' to struct drm_connector
include/drm/drm_connector.h
* Revert "BACKPORT: drm: Add HDR source metadata property"
drivers/gpu/drm/drm_atomic.c
drivers/gpu/drm/drm_connector.c
include/drm/drm_connector.h
include/drm/drm_mode_config.h
include/linux/hdmi.h
include/uapi/drm/drm_mode.h
* Revert "BACKPORT: drm: Parse HDR metadata info from EDID"
drivers/gpu/drm/drm_edid.c
* ANDROID: drm: Add DP colorspace property
drivers/gpu/drm/drm_connector.c
include/drm/drm_connector.h
* ANDROID: GKI: drm: Initialize display->hdmi when parsing vsdb
drivers/gpu/drm/drm_edid.c
* ANDROID: drivers: gpu: drm: add support to batch commands
drivers/gpu/drm/drm_mipi_dsi.c
include/drm/drm_mipi_dsi.h
ANDROID: ABI: update the qcom whitelist
* ANDROID: GKI: ARM64: smp: add vendor field pending_ipi
arch/arm64/kernel/smp.c
ANDROID: gki_defconfig: enable msm serial early console
* ANDROID: serial: msm_geni_serial_console : Add Earlycon support
drivers/tty/serial/Kconfig
drivers/tty/serial/Makefile
drivers/tty/serial/msm_geni_serial_console.c
* ANDROID: GKI: serial: core: export uart_console_device
drivers/tty/serial/serial_core.c
* f2fs: fix quota_sync failure due to f2fs_lock_op
fs/f2fs/data.c
* f2fs: support read iostat
fs/f2fs/checkpoint.c
fs/f2fs/data.c
fs/f2fs/f2fs.h
fs/f2fs/file.c
fs/f2fs/gc.c
fs/f2fs/node.c
fs/f2fs/sysfs.c
include/trace/events/f2fs.h
* f2fs: Fix the accounting of dcc->undiscard_blks
fs/f2fs/segment.c
* f2fs: fix to handle error path of f2fs_ra_meta_pages()
fs/f2fs/checkpoint.c
* f2fs: report the discard cmd errors properly
fs/f2fs/segment.c
* f2fs: fix long latency due to discard during umount
fs/f2fs/segment.c
* f2fs: add tracepoint for f2fs iostat
fs/f2fs/f2fs.h
fs/f2fs/super.c
fs/f2fs/sysfs.c
include/trace/events/f2fs.h
* f2fs: introduce sysfs/data_io_flag to attach REQ_META/FUA
fs/f2fs/data.c
fs/f2fs/f2fs.h
fs/f2fs/sysfs.c
ANDROID: GKI: update abi definition due to previous changes in the tree
Linux 4.19.116
efi/x86: Fix the deletion of variables in mixed mode
mfd: dln2: Fix sanity checking for endpoints
etnaviv: perfmon: fix total and idle HI cyleces readout
misc: echo: Remove unnecessary parentheses and simplify check for zero
powerpc/fsl_booke: Avoid creating duplicate tlb1 entry
ftrace/kprobe: Show the maxactive number on kprobe_events
* drm: Remove PageReserved manipulation from drm_pci_alloc
drivers/gpu/drm/drm_pci.c
* drm/dp_mst: Fix clearing payload state on topology disable
drivers/gpu/drm/drm_dp_mst_topology.c
* Revert "drm/dp_mst: Remove VCPI while disabling topology mgr"
drivers/gpu/drm/drm_dp_mst_topology.c
crypto: ccree - only try to map auth tag if needed
crypto: ccree - dec auth tag size from cryptlen map
crypto: ccree - don't mangle the request assoclen
crypto: ccree - zero out internal struct before use
crypto: ccree - improve error handling
crypto: caam - update xts sector size for large input length
dm zoned: remove duplicate nr_rnd_zones increase in dmz_init_zone()
btrfs: use nofs allocations for running delayed items
powerpc: Make setjmp/longjmp signature standard
powerpc: Add attributes for setjmp/longjmp
scsi: mpt3sas: Fix kernel panic observed on soft HBA unplug
powerpc/kprobes: Ignore traps that happened in real mode
powerpc/xive: Use XIVE_BAD_IRQ instead of zero to catch non configured IPIs
powerpc/hash64/devmap: Use H_PAGE_THP_HUGE when setting up huge devmap PTE entries
powerpc/64/tm: Don't let userspace set regs->trap via sigreturn
powerpc/powernv/idle: Restore AMR/UAMOR/AMOR after idle
xen/blkfront: fix memory allocation flags in blkfront_setup_indirect()
ipmi: fix hung processes in __get_guid()
libata: Return correct status in sata_pmp_eh_recover_pm() when ATA_DFLAG_DETACH is set
hfsplus: fix crash and filesystem corruption when deleting files
cpufreq: powernv: Fix use-after-free
* kmod: make request_module() return an error when autoloading is disabled
kernel/kmod.c
clk: ingenic/jz4770: Exit with error if CGU init failed
Input: i8042 - add Acer Aspire 5738z to nomux list
s390/diag: fix display of diagnose call statistics
perf tools: Support Python 3.8+ in Makefile
ocfs2: no need try to truncate file beyond i_size
* fs/filesystems.c: downgrade user-reachable WARN_ONCE() to pr_warn_once()
fs/filesystems.c
* ext4: fix a data race at inode->i_blocks
fs/ext4/inode.c
NFS: Fix a page leak in nfs_destroy_unlinked_subrequests()
powerpc/pseries: Avoid NULL pointer dereference when drmem is unavailable
drm/etnaviv: rework perfmon query infrastructure
rtc: omap: Use define directive for PIN_CONFIG_ACTIVE_HIGH
selftests: vm: drop dependencies on page flags from mlock2 tests
* arm64: armv8_deprecated: Fix undef_hook mask for thumb setend
arch/arm64/kernel/armv8_deprecated.c
scsi: zfcp: fix missing erp_lock in port recovery trigger for point-to-point
* dm verity fec: fix memory leak in verity_fec_dtr
drivers/md/dm-verity-fec.c
dm writecache: add cond_resched to avoid CPU hangs
arm64: dts: allwinner: h6: Fix PMU compatible
* net: qualcomm: rmnet: Allow configuration updates to existing devices
drivers/net/ethernet/qualcomm/rmnet/rmnet_config.c
* mm: Use fixed constant in page_frag_alloc instead of size + 1
mm/page_alloc.c
tools: gpio: Fix out-of-tree build regression
* x86/speculation: Remove redundant arch_smt_update() invocation
kernel/cpu.c
powerpc/pseries: Drop pointless static qualifier in vpa_debugfs_init()
erofs: correct the remaining shrink objects
crypto: mxs-dcp - fix scatterlist linearization for hash
btrfs: fix missing semaphore unlock in btrfs_sync_file
btrfs: fix missing file extent item for hole after ranged fsync
btrfs: drop block from cache on error in relocation
btrfs: set update the uuid generation as soon as possible
Btrfs: fix crash during unmount due to race with delayed inode workers
mtd: spinand: Do not erase the block before writing a bad block marker
mtd: spinand: Stop using spinand->oobbuf for buffering bad block markers
CIFS: Fix bug which the return value by asynchronous read is error
KVM: VMX: fix crash cleanup when KVM wasn't used
KVM: x86: Gracefully handle __vmalloc() failure during VM allocation
KVM: VMX: Always VMCLEAR in-use VMCSes during crash with kexec support
KVM: x86: Allocate new rmap and large page tracking when moving memslot
KVM: s390: vsie: Fix delivery of addressing exceptions
KVM: s390: vsie: Fix region 1 ASCE sanity shadow address checks
KVM: nVMX: Properly handle userspace interrupt window request
x86/entry/32: Add missing ASM_CLAC to general_protection entry
* signal: Extend exec_id to 64bits
fs/exec.c
include/linux/sched.h
kernel/signal.c
ath9k: Handle txpower changes even when TPC is disabled
MIPS: OCTEON: irq: Fix potential NULL pointer dereference
MIPS/tlbex: Fix LDDIR usage in setup_pw() for Loongson-3
* pstore: pstore_ftrace_seq_next should increase position index
fs/pstore/inode.c
irqchip/versatile-fpga: Apply clear-mask earlier
* KEYS: reaching the keys quotas correctly
security/keys/key.c
security/keys/keyctl.c
tpm: tpm2_bios_measurements_next should increase position index
tpm: tpm1_bios_measurements_next should increase position index
tpm: Don't make log failures fatal
* PCI: endpoint: Fix for concurrent memory allocation in OB address region
include/linux/pci-epc.h
* PCI: Add boot interrupt quirk mechanism for Xeon chipsets
drivers/pci/quirks.c
PCI/ASPM: Clear the correct bits when enabling L1 substates
PCI: pciehp: Fix indefinite wait on sysfs requests
nvme: Treat discovery subsystems as unique subsystems
* nvme-fc: Revert "add module to ops template to allow module references"
include/linux/nvme-fc-driver.h
* thermal: devfreq_cooling: inline all stubs for CONFIG_DEVFREQ_THERMAL=n
include/linux/devfreq_cooling.h
acpi/x86: ignore unspecified bit positions in the ACPI global lock field
media: ti-vpe: cal: fix disable_irqs to only the intended target
ALSA: hda/realtek - Add quirk for MSI GL63
ALSA: hda/realtek - Remove now-unnecessary XPS 13 headphone noise fixups
ALSA: hda/realtek - Set principled PC Beep configuration for ALC256
ALSA: doc: Document PC Beep Hidden Register on Realtek ALC256
ALSA: pcm: oss: Fix regression by buffer overflow fix
ALSA: ice1724: Fix invalid access for enumerated ctl items
ALSA: hda: Fix potential access overflow in beep helper
ALSA: hda: Add driver blacklist
* ALSA: usb-audio: Add mixer workaround for TRX40 and co
sound/usb/mixer_maps.c
* usb: gadget: composite: Inform controller driver of self-powered
drivers/usb/gadget/composite.c
* usb: gadget: f_fs: Fix use after free issue as part of queue failure
drivers/usb/gadget/function/f_fs.c
ASoC: topology: use name_prefix for new kcontrol
* ASoC: dpcm: allow start or stop during pause for backend
sound/soc/soc-pcm.c
* ASoC: dapm: connect virtual mux with default value
sound/soc/soc-dapm.c
* ASoC: fix regwmask
sound/soc/soc-ops.c
* slub: improve bit diffusion for freelist ptr obfuscation
mm/slub.c
* uapi: rename ext2_swab() to swab() and share globally in swab.h
include/linux/swab.h
include/uapi/linux/swab.h
lib/find_bit.c
* IB/mlx5: Replace tunnel mpls capability bits for tunnel_offloads
include/linux/mlx5/mlx5_ifc.h
btrfs: track reloc roots based on their commit root bytenr
btrfs: remove a BUG_ON() from merge_reloc_roots()
btrfs: qgroup: ensure qgroup_rescan_running is only set when the worker is at least queued
block, bfq: fix use-after-free in bfq_idle_slice_timer_body
locking/lockdep: Avoid recursion in lockdep_count_{for,back}ward_deps()
* firmware: fix a double abort case with fw_load_sysfs_fallback
drivers/base/firmware_loader/fallback.c
md: check arrays is suspended in mddev_detach before call quiesce operations
* irqchip/gic-v4: Provide irq_retrigger to avoid circular locking dependency
drivers/irqchip/irq-gic-v3-its.c
* usb: dwc3: core: add support for disabling SS instances in park mode
drivers/usb/dwc3/core.c
drivers/usb/dwc3/core.h
media: i2c: ov5695: Fix power on and off sequences
* block: Fix use-after-free issue accessing struct io_cq
block/blk-ioc.c
include/linux/iocontext.h
* genirq/irqdomain: Check pointer in irq_domain_alloc_irqs_hierarchy()
kernel/irq/irqdomain.c
efi/x86: Ignore the memory attributes table on i386
x86/boot: Use unsigned comparison for addresses
gfs2: Don't demote a glock until its revokes are written
* pstore/platform: fix potential mem leak if pstore_init_fs failed
fs/pstore/platform.c
libata: Remove extra scsi_host_put() in ata_scsi_add_hosts()
media: i2c: video-i2c: fix build errors due to 'imply hwmon'
PCI/switchtec: Fix init_completion race condition with poll_wait()
selftests/x86/ptrace_syscall_32: Fix no-vDSO segfault
* sched: Avoid scale real weight down to zero
kernel/sched/sched.h
irqchip/versatile-fpga: Handle chained IRQs properly
* block: keep bdi->io_pages in sync with max_sectors_kb for stacked devices
block/blk-settings.c
x86: Don't let pgprot_modify() change the page encryption bit
* xhci: bail out early if driver can't accress host in resume
drivers/usb/host/xhci.c
null_blk: fix spurious IO errors after failed past-wp access
null_blk: Handle null_add_dev() failures properly
null_blk: Fix the null_add_dev() error path
firmware: arm_sdei: fix double-lock on hibernate with shared events
media: venus: hfi_parser: Ignore HEVC encoding for V1
cpufreq: imx6q: Fixes unwanted cpu overclocking on i.MX6ULL
i2c: st: fix missing struct parameter description
qlcnic: Fix bad kzalloc null test
cxgb4/ptp: pass the sign of offset delta in FW CMD
hinic: fix wrong para of wait_for_completion_timeout
hinic: fix a bug of waitting for IO stopped
net: vxge: fix wrong __VA_ARGS__ usage
bus: sunxi-rsb: Return correct data when mixing 16-bit and 8-bit reads
ARM: dts: sun8i-a83t-tbs-a711: HM5065 doesn't like such a high voltage
ANDROID: build.config.allmodconfig: Re-enable XFS_FS
* FROMGIT: of: property: Add device link support for extcon
drivers/of/property.c
ANDROID: GKI: arm64: gki_defconfig: enable CONFIG_MM_EVENT_STAT
* ANDROID: GKI: add fields from per-process mm event tracking feature
include/linux/mm_event.h
include/linux/sched.h
mm/Kconfig
mm/Makefile
mm/mm_event.c
* ANDROID: GKI: fix ABI diffs caused by ION heap and pool vmstat additions
include/linux/mmzone.h
mm/vmstat.c
* UPSTREAM: GKI: panic/reboot: allow specifying reboot_mode for panic only
include/linux/reboot.h
kernel/panic.c
kernel/reboot.c
* ANDROID: GKI: of: property: Add device link support for phys property
drivers/of/property.c
* ANDROID: GKI: usb: phy: Fix ABI diff for usb_otg_state
include/linux/usb/phy.h
* ANDROID: GKI: usb: phy: Fix ABI diff due to usb_phy.drive_dp_pulse
include/linux/usb/phy.h
* ANDROID: GKI: usb: phy: Fix ABI diff for usb_phy_type and usb_phy.reset
include/linux/usb/phy.h
ANDROID: gki_defconfig: enable CONFIG_GPIO_SYSFS
* ANDROID: GKI: qcom: Fix compile issue when setting msm_lmh_dcvs as a module
kernel/trace/power-traces.c
* ANDROID: GKI: drivers: cpu_cooling: allow platform freq mitigation
drivers/thermal/cpu_cooling.c
include/linux/cpu_cooling.h
* ANDROID: GKI: ASoC: Add locking in DAPM widget power update
include/sound/soc.h
sound/soc/soc-core.c
sound/soc/soc-dapm.c
* ANDROID: GKI: ASoC: jack: Fix buttons enum value
include/sound/jack.h
* ANDROID: GKI: ALSA: jack: Add support to report second microphone
include/sound/jack.h
include/uapi/linux/input-event-codes.h
sound/core/jack.c
* ANDROID: GKI: ALSA: jack: Update supported jack switch types
include/linux/mod_devicetable.h
include/sound/jack.h
include/uapi/linux/input-event-codes.h
sound/core/jack.c
* ANDROID: GKI: ALSA: jack: update jack types
include/sound/jack.h
* ANDROID: GKI: Export symbols arm_cpuidle_suspend, cpuidle_dev and cpuidle_register_governor
arch/arm64/kernel/cpuidle.c
drivers/cpuidle/cpuidle.c
* ANDROID: GKI: usb: hcd: Add USB atomic notifier callback for HC died error
drivers/usb/core/hcd.c
drivers/usb/core/notify.c
drivers/usb/core/usb.h
include/linux/usb.h
* ANDROID: media: increase video max frame number
include/media/videobuf2-core.h
include/uapi/linux/videodev2.h
* BACKPORT: nvmem: core: add NVMEM_SYSFS Kconfig
drivers/nvmem/Kconfig
drivers/nvmem/Makefile
drivers/nvmem/core.c
drivers/nvmem/nvmem-sysfs.c
drivers/nvmem/nvmem.h
* UPSTREAM: nvmem: add support for cell info
drivers/nvmem/core.c
include/linux/nvmem-provider.h
* UPSTREAM: nvmem: remove the global cell list
drivers/nvmem/core.c
* UPSTREAM: nvmem: use kref
drivers/nvmem/core.c
* UPSTREAM: nvmem: use list_for_each_entry_safe in nvmem_device_remove_all_cells()
drivers/nvmem/core.c
* UPSTREAM: nvmem: provide nvmem_dev_name()
drivers/nvmem/core.c
include/linux/nvmem-consumer.h
ANDROID: GKI: Bulk ABI update
* ANDROID: GKI: cpuhotplug: adding hotplug enums for vendor code
include/linux/cpuhotplug.h
* ANDROID: Incremental fs: Fix create_file performance
fs/incfs/format.c
ANDROID: build.config.common: Add BUILDTOOLS_PREBUILT_BIN
* UPSTREAM: kheaders: include only headers into kheaders_data.tar.xz
kernel/gen_kheaders.sh
* UPSTREAM: kheaders: remove meaningless -R option of 'ls'
kernel/gen_kheaders.sh
* ANDROID: GKI: of: platform: initialize of_reserved_mem
drivers/of/platform.c
* ANDROID: driver: gpu: drm: add notifier for panel related events
drivers/gpu/drm/drm_panel.c
include/drm/drm_connector.h
include/drm/drm_panel.h
* ANDROID: include: drm: support unicasting mipi cmds to dsi ctrls
include/drm/drm_mipi_dsi.h
* ANDROID: include: drm: increase DRM max property count to 64
include/drm/drm_mode_object.h
* BACKPORT: drm: Add HDMI colorspace property
drivers/gpu/drm/drm_atomic.c
drivers/gpu/drm/drm_connector.c
include/drm/drm_connector.h
* ANDROID: drm: edid: add support for additional CEA extension blocks
drivers/gpu/drm/drm_edid.c
include/drm/drm_connector.h
include/drm/drm_edid.h
* BACKPORT: drm: Parse HDR metadata info from EDID
drivers/gpu/drm/drm_edid.c
* BACKPORT: drm: Add HDR source metadata property
drivers/gpu/drm/drm_atomic.c
drivers/gpu/drm/drm_connector.c
include/drm/drm_connector.h
include/drm/drm_mode_config.h
include/linux/hdmi.h
include/uapi/drm/drm_mode.h
* BACKPORT: drm/dp_mst: Parse FEC capability on MST ports
drivers/gpu/drm/drm_dp_mst_topology.c
include/drm/drm_dp_mst_helper.h
ANDROID: GKI: ABI update for DRM changes
ANDROID: ABI: add missing elf variables to representation
* ANDROID: GKI: power_supply: Add PROP_MOISTURE_DETECTION_ENABLED
drivers/power/supply/power_supply_sysfs.c
include/linux/power_supply.h
* ANDROID: include: drm: add the definitions for DP Link Compliance tests
include/drm/drm_dp_helper.h
* ANDROID: drivers: gpu: drm: fix bugs encountered while fuzzing
drivers/gpu/drm/drm_file.c
drivers/gpu/drm/drm_property.c
* FROMLIST: power_supply: Add additional health properties to the header
drivers/power/supply/power_supply_sysfs.c
include/linux/power_supply.h
UPSTREAM: power: supply: core: Update sysfs-class-power ABI document
* UPSTREAM: Merge remote-tracking branch 'aosp/upstream-f2fs-stable-linux-4.19.y' into android-4.19 (v5.7-rc1)
fs/f2fs/Kconfig
fs/f2fs/checkpoint.c
fs/f2fs/data.c
fs/f2fs/debug.c
fs/f2fs/dir.c
fs/f2fs/f2fs.h
fs/f2fs/file.c
fs/f2fs/gc.c
fs/f2fs/inode.c
fs/f2fs/namei.c
fs/f2fs/node.c
fs/f2fs/recovery.c
fs/f2fs/segment.c
fs/f2fs/segment.h
fs/f2fs/shrinker.c
fs/f2fs/super.c
fs/f2fs/sysfs.c
fs/f2fs/xattr.c
fs/f2fs/xattr.h
include/linux/f2fs_fs.h
include/trace/events/f2fs.h
mm/swapfile.c
* ANDROID: drivers: gpu: drm: add support for secure framebuffer
drivers/gpu/drm/drm_framebuffer.c
include/uapi/drm/drm_mode.h
* ANDROID: include: uapi: drm: add additional QCOM modifiers
include/uapi/drm/drm_fourcc.h
* ANDROID: drm: dsi: add two DSI mode flags for BLLP
include/drm/drm_mipi_dsi.h
* ANDROID: include: uapi: drm: add additional drm mode flags
include/uapi/drm/drm_mode.h
* UPSTREAM: drm: plug memory leak on drm_setup() failure
drivers/gpu/drm/drm_file.c
* UPSTREAM: drm: factor out drm_close_helper() function
drivers/gpu/drm/drm_file.c
ANDROID: GKI: Bulk ABI update
* BACKPORT: nl80211: Add per peer statistics to compute FCS error rate
include/net/cfg80211.h
include/uapi/linux/nl80211.h
net/wireless/nl80211.c
* ANDROID: GKI: sound: usb: Add snd_usb_enable_audio_stream/find_snd_usb_substream
sound/usb/card.c
sound/usb/card.h
sound/usb/pcm.c
sound/usb/pcm.h
sound/usb/usbaudio.h
* ANDROID: GKI: add dma-buf includes
drivers/dma-buf/dma-buf.c
* ANDROID: GKI: sched: struct fields for Per-Sched-domain over utilization
include/linux/sched/topology.h
* ANDROID: GKI: Add vendor fields to root_domain
kernel/sched/sched.h
ANDROID: gki_defconfig: Enable CONFIG_IRQ_TIME_ACCOUNTING
ANDROID: fix allmodconfig build to use the right toolchain
ANDROID: fix allmodconfig build to use the right toolchain
ANDROID: GKI: Update ABI
* Revert "UPSTREAM: mm, page_alloc: spread allocations across zones before introducing fragmentation"
mm/internal.h
mm/page_alloc.c
* Revert "UPSTREAM: mm: use alloc_flags to record if kswapd can wake"
mm/internal.h
mm/page_alloc.c
* Revert "BACKPORT: mm: move zone watermark accesses behind an accessor"
include/linux/mmzone.h
mm/compaction.c
mm/page_alloc.c
* Revert "BACKPORT: mm: reclaim small amounts of memory when an external fragmentation event occurs"
include/linux/mm.h
include/linux/mmzone.h
kernel/sysctl.c
mm/page_alloc.c
mm/vmscan.c
* Revert "BACKPORT: mm, compaction: be selective about what pageblocks to clear skip hints"
include/linux/mmzone.h
mm/compaction.c
* ANDROID: GKI: panic: add vendor callback function in panic()
include/linux/kernel.h
kernel/panic.c
* UPSTREAM: GKI: thermal: make device_register's type argument const
drivers/thermal/thermal_core.c
include/linux/thermal.h
* ANDROID: GKI: add base.h include to match MODULE_VERSIONS
drivers/thermal/thermal_core.c
ANDROID: update the ABI based on the new whitelist
* ANDROID: GKI: fdt: export symbols required by modules
drivers/of/fdt.c
* ANDROID: GKI: drivers: of: Add APIs to find DDR device rank, HBB
drivers/of/fdt.c
include/linux/of_fdt.h
* ANDROID: GKI: security: Add mmap export symbols for modules
security/min_addr.c
* ANDROID: GKI: arch: add stub symbols for boot_reason and cold_boot
arch/arm64/kernel/setup.c
* ANDROID: GKI: USB: Fix ABI diff for struct usb_bus
drivers/usb/core/driver.c
include/linux/usb.h
* ANDROID: GKI: USB: Resolve ABI diff for usb_gadget and usb_gadget_ops
drivers/usb/gadget/udc/core.c
include/linux/usb/gadget.h
* ANDROID: GKI: add hidden V4L2_MEM2MEM_DEV
init/Kconfig.gki
ANDROID: GKI: enable VIDEO_V4L2_SUBDEV_API
* ANDROID: GKI: export symbols from abi_gki_aarch64_qcom_whitelist
arch/arm64/mm/mmu.c
drivers/base/core.c
drivers/clocksource/arm_arch_timer.c
drivers/cpuidle/governor.c
drivers/gpu/drm/drm_atomic_helper.c
drivers/gpu/drm/drm_modes.c
fs/kernfs/symlink.c
kernel/params.c
kernel/power/main.c
kernel/power/qos.c
kernel/power/suspend.c
kernel/printk/printk.c
kernel/time/tick-sched.c
lib/ioremap.c
lib/plist.c
mm/memblock.c
mm/mmap.c
security/security.c
sound/usb/helper.c
ANDROID: Update the whitelist for qcom SoCs
* ANDROID: Incremental fs: Fix compound page usercopy crash
fs/incfs/data_mgmt.c
fs/incfs/vfs.c
ANDROID: Incremental fs: Clean up incfs_test build process
* ANDROID: Incremental fs: make remount log buffer change atomic
fs/incfs/data_mgmt.c
fs/incfs/data_mgmt.h
fs/incfs/vfs.c
* ANDROID: Incremental fs: Optimize get_filled_block
fs/incfs/data_mgmt.c
fs/incfs/format.c
* ANDROID: Incremental fs: Fix mislabeled __user ptrs
fs/incfs/data_mgmt.c
fs/incfs/integrity.c
fs/incfs/vfs.c
* ANDROID: Incremental fs: Use 64-bit int for file_size when writing hash blocks
fs/incfs/format.c
fs/incfs/format.h
Merge remote-tracking branch 'aosp/upstream-f2fs-stable-linux-4.19.y' into android-4.19 (v5.7-rc1)
Merge remote-tracking branch 'aosp/android-4.19' into android-4.19-stable
ubifs: wire up FS_IOC_GET_ENCRYPTION_NONCE
* f2fs: wire up FS_IOC_GET_ENCRYPTION_NONCE
fs/f2fs/file.c
* ext4: wire up FS_IOC_GET_ENCRYPTION_NONCE
fs/ext4/ioctl.c
* fscrypt: add FS_IOC_GET_ENCRYPTION_NONCE ioctl
fs/crypto/fscrypt_private.h
fs/crypto/keysetup.c
fs/crypto/policy.c
include/linux/fscrypt.h
include/uapi/linux/fscrypt.h
* f2fs: keep inline_data when compression conversion
fs/f2fs/file.c
* f2fs: fix to disable compression on directory
fs/f2fs/f2fs.h
fs/f2fs/file.c
* f2fs: add missing CONFIG_F2FS_FS_COMPRESSION
fs/f2fs/sysfs.c
* f2fs: switch discard_policy.timeout to bool type
fs/f2fs/f2fs.h
fs/f2fs/segment.c
f2fs: fix to verify tpage before releasing in f2fs_free_dic()
* f2fs: show compression in statx
fs/f2fs/file.c
f2fs: clean up dic->tpages assignment
* f2fs: compress: support zstd compress algorithm
fs/f2fs/Kconfig
fs/f2fs/f2fs.h
fs/f2fs/super.c
include/trace/events/f2fs.h
f2fs: compress: add .{init,destroy}_decompress_ctx callback
f2fs: compress: fix to call missing destroy_compress_ctx()
* f2fs: change default compression algorithm
fs/f2fs/super.c
f2fs: clean up {cic,dic}.ref handling
* f2fs: fix to use f2fs_readpage_limit() in f2fs_read_multi_pages()
fs/f2fs/data.c
* f2fs: xattr.h: Make stub helpers inline
fs/f2fs/xattr.h
* f2fs: fix to avoid double unlock
fs/f2fs/data.c
* f2fs: fix potential .flags overflow on 32bit architecture
fs/f2fs/f2fs.h
fs/f2fs/inode.c
* f2fs: fix NULL pointer dereference in f2fs_verity_work()
fs/f2fs/data.c
f2fs: fix to clear PG_error if fsverity failed
* f2fs: don't call fscrypt_get_encryption_info() explicitly in f2fs_tmpfile()
fs/f2fs/namei.c
* f2fs: don't trigger data flush in foreground operation
fs/f2fs/f2fs.h
fs/f2fs/gc.c
fs/f2fs/node.c
fs/f2fs/segment.c
* f2fs: fix NULL pointer dereference in f2fs_write_begin()
fs/f2fs/super.c
* f2fs: clean up f2fs_may_encrypt()
fs/f2fs/dir.c
fs/f2fs/f2fs.h
fs/f2fs/namei.c
* f2fs: fix to avoid potential deadlock
fs/f2fs/data.c
* f2fs: don't change inode status under page lock
fs/f2fs/dir.c
f2fs: fix potential deadlock on compressed quota file
* f2fs: delete DIO read lock
fs/f2fs/data.c
* f2fs: don't mark compressed inode dirty during f2fs_iget()
fs/f2fs/f2fs.h
f2fs: fix to account compressed blocks in f2fs_compressed_blocks()
* f2fs: xattr.h: Replace zero-length array with flexible-array member
fs/f2fs/xattr.h
* f2fs: fix to update f2fs_super_block fields under sb_lock
fs/f2fs/gc.c
* f2fs: Add a new CP flag to help fsck fix resize SPO issues
fs/f2fs/checkpoint.c
include/linux/f2fs_fs.h
* f2fs: Fix mount failure due to SPO after a successful online resize FS
fs/f2fs/gc.c
* f2fs: use kmem_cache pool during inline xattr lookups
fs/f2fs/f2fs.h
fs/f2fs/super.c
fs/f2fs/xattr.c
fs/f2fs/xattr.h
* f2fs: skip migration only when BG_GC is called
fs/f2fs/gc.c
* f2fs: fix to show tracepoint correctly
fs/f2fs/file.c
* f2fs: avoid __GFP_NOFAIL in f2fs_bio_alloc
fs/f2fs/data.c
fs/f2fs/f2fs.h
* f2fs: introduce F2FS_IOC_GET_COMPRESS_BLOCKS
fs/f2fs/f2fs.h
fs/f2fs/file.c
* f2fs: fix to avoid triggering IO in write path
fs/f2fs/data.c
fs/f2fs/f2fs.h
* f2fs: add prefix for f2fs slab cache name
fs/f2fs/data.c
fs/f2fs/node.c
fs/f2fs/segment.c
* f2fs: introduce DEFAULT_IO_TIMEOUT
fs/f2fs/checkpoint.c
fs/f2fs/data.c
fs/f2fs/f2fs.h
fs/f2fs/gc.c
fs/f2fs/inode.c
fs/f2fs/node.c
fs/f2fs/recovery.c
fs/f2fs/segment.c
fs/f2fs/super.c
* f2fs: skip GC when section is full
fs/f2fs/gc.c
* f2fs: add migration count iff migration happens
fs/f2fs/gc.c
* f2fs: clean up bggc mount option
fs/f2fs/f2fs.h
fs/f2fs/gc.c
fs/f2fs/super.c
* f2fs: clean up lfs/adaptive mount option
fs/f2fs/data.c
fs/f2fs/f2fs.h
fs/f2fs/file.c
fs/f2fs/gc.c
fs/f2fs/segment.c
fs/f2fs/super.c
* f2fs: fix to show norecovery mount option
fs/f2fs/f2fs.h
fs/f2fs/super.c
* f2fs: clean up parameter of macro XATTR_SIZE()
fs/f2fs/xattr.c
fs/f2fs/xattr.h
* f2fs: clean up codes with {f2fs_,}data_blkaddr()
fs/f2fs/data.c
fs/f2fs/f2fs.h
fs/f2fs/file.c
fs/f2fs/gc.c
fs/f2fs/node.c
fs/f2fs/recovery.c
* f2fs: show mounted time
fs/f2fs/debug.c
fs/f2fs/segment.c
fs/f2fs/segment.h
fs/f2fs/sysfs.c
* f2fs: Use scnprintf() for avoiding potential buffer overflow
fs/f2fs/sysfs.c
* f2fs: allow to clear F2FS_COMPR_FL flag
fs/f2fs/file.c
* f2fs: fix to check dirty pages during compressed inode conversion
fs/f2fs/f2fs.h
* f2fs: fix to account compressed inode correctly
fs/f2fs/f2fs.h
* f2fs: fix wrong check on F2FS_IOC_FSSETXATTR
fs/f2fs/file.c
f2fs: fix to avoid use-after-free in f2fs_write_multi_pages()
* f2fs: fix to avoid using uninitialized variable
fs/f2fs/file.c
* f2fs: fix inconsistent comments
fs/f2fs/checkpoint.c
fs/f2fs/data.c
fs/f2fs/f2fs.h
fs/f2fs/file.c
fs/f2fs/gc.c
fs/f2fs/inode.c
fs/f2fs/namei.c
fs/f2fs/node.c
fs/f2fs/shrinker.c
fs/f2fs/super.c
* f2fs: remove i_sem lock coverage in f2fs_setxattr()
fs/f2fs/xattr.c
* f2fs: cover last_disk_size update with spinlock
fs/f2fs/data.c
fs/f2fs/f2fs.h
fs/f2fs/file.c
fs/f2fs/super.c
* f2fs: fix to check i_compr_blocks correctly
fs/f2fs/inode.c
Merge android-4.19 into android-4.19-stable
ANDROID: GKI: Removed cuttlefish configs
f2fs: fix to avoid potential deadlock
* f2fs: add missing function name in kernel message
fs/f2fs/f2fs.h
fs/f2fs/node.c
* f2fs: recycle unused compress_data.chksum feild
fs/f2fs/f2fs.h
f2fs: fix to avoid NULL pointer dereference
f2fs: fix leaking uninitialized memory in compressed clusters
* f2fs: fix the panic in do_checkpoint()
fs/f2fs/checkpoint.c
fs/f2fs/f2fs.h
fs/f2fs/super.c
* f2fs: fix to wait all node page writeback
fs/f2fs/node.c
* mm/swapfile.c: move inode_lock out of claim_swapfile
mm/swapfile.c
* fscrypt: don't evict dirty inodes after removing key
fs/crypto/keysetup.c
Change-Id: I9ca86223eb4183aa40011ade86b74cc3beaabd4a
Signed-off-by: lucaswei <lucaswei@google.com>
246 lines
7.9 KiB
C
246 lines
7.9 KiB
C
/*
|
|
* Copyright (C) 2013, NVIDIA Corporation. All rights reserved.
|
|
*
|
|
* Permission is hereby granted, free of charge, to any person obtaining a
|
|
* copy of this software and associated documentation files (the "Software"),
|
|
* to deal in the Software without restriction, including without limitation
|
|
* the rights to use, copy, modify, merge, publish, distribute, sub license,
|
|
* and/or sell copies of the Software, and to permit persons to whom the
|
|
* Software is furnished to do so, subject to the following conditions:
|
|
*
|
|
* The above copyright notice and this permission notice (including the
|
|
* next paragraph) shall be included in all copies or substantial portions
|
|
* of the Software.
|
|
*
|
|
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
* FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL
|
|
* THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
|
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
|
* DEALINGS IN THE SOFTWARE.
|
|
*/
|
|
|
|
#ifndef __DRM_PANEL_H__
|
|
#define __DRM_PANEL_H__
|
|
|
|
#include <linux/err.h>
|
|
#include <linux/errno.h>
|
|
#include <linux/list.h>
|
|
#include <linux/notifier.h>
|
|
|
|
/* A hardware display blank change occurred */
|
|
#define DRM_PANEL_EVENT_BLANK 0x01
|
|
/* A hardware display blank early change occurred */
|
|
#define DRM_PANEL_EARLY_EVENT_BLANK 0x02
|
|
|
|
enum {
|
|
/* panel: power on */
|
|
DRM_PANEL_BLANK_UNBLANK,
|
|
/* panel: power off */
|
|
DRM_PANEL_BLANK_POWERDOWN,
|
|
/* panel: low power mode */
|
|
DRM_PANEL_BLANK_LP,
|
|
/* fps change */
|
|
DRM_PANEL_BLANK_FPS_CHANGE,
|
|
};
|
|
|
|
struct drm_panel_notifier {
|
|
int refresh_rate;
|
|
void *data;
|
|
uint32_t id;
|
|
};
|
|
|
|
struct device_node;
|
|
struct drm_connector;
|
|
struct drm_device;
|
|
struct drm_panel;
|
|
struct display_timing;
|
|
|
|
/**
|
|
* struct drm_panel_funcs - perform operations on a given panel
|
|
* @disable: disable panel (turn off back light, etc.)
|
|
* @unprepare: turn off panel
|
|
* @prepare: turn on panel and perform set up
|
|
* @enable: enable panel (turn on back light, etc.)
|
|
* @get_modes: add modes to the connector that the panel is attached to and
|
|
* return the number of modes added
|
|
* @get_timings: copy display timings into the provided array and return
|
|
* the number of display timings available
|
|
*
|
|
* The .prepare() function is typically called before the display controller
|
|
* starts to transmit video data. Panel drivers can use this to turn the panel
|
|
* on and wait for it to become ready. If additional configuration is required
|
|
* (via a control bus such as I2C, SPI or DSI for example) this is a good time
|
|
* to do that.
|
|
*
|
|
* After the display controller has started transmitting video data, it's safe
|
|
* to call the .enable() function. This will typically enable the backlight to
|
|
* make the image on screen visible. Some panels require a certain amount of
|
|
* time or frames before the image is displayed. This function is responsible
|
|
* for taking this into account before enabling the backlight to avoid visual
|
|
* glitches.
|
|
*
|
|
* Before stopping video transmission from the display controller it can be
|
|
* necessary to turn off the panel to avoid visual glitches. This is done in
|
|
* the .disable() function. Analogously to .enable() this typically involves
|
|
* turning off the backlight and waiting for some time to make sure no image
|
|
* is visible on the panel. It is then safe for the display controller to
|
|
* cease transmission of video data.
|
|
*
|
|
* To save power when no video data is transmitted, a driver can power down
|
|
* the panel. This is the job of the .unprepare() function.
|
|
*/
|
|
struct drm_panel_funcs {
|
|
int (*disable)(struct drm_panel *panel);
|
|
int (*unprepare)(struct drm_panel *panel);
|
|
int (*prepare)(struct drm_panel *panel);
|
|
int (*enable)(struct drm_panel *panel);
|
|
int (*get_modes)(struct drm_panel *panel);
|
|
int (*get_timings)(struct drm_panel *panel, unsigned int num_timings,
|
|
struct display_timing *timings);
|
|
};
|
|
|
|
/**
|
|
* struct drm_panel - DRM panel object
|
|
* @drm: DRM device owning the panel
|
|
* @connector: DRM connector that the panel is attached to
|
|
* @dev: parent device of the panel
|
|
* @funcs: operations that can be performed on the panel
|
|
* @list: panel entry in registry
|
|
* @nh: panel notifier list head
|
|
*/
|
|
struct drm_panel {
|
|
struct drm_device *drm;
|
|
struct drm_connector *connector;
|
|
struct device *dev;
|
|
|
|
const struct drm_panel_funcs *funcs;
|
|
|
|
struct list_head list;
|
|
|
|
/**
|
|
* @nh:
|
|
*
|
|
* panel notifier list head
|
|
*/
|
|
struct blocking_notifier_head nh;
|
|
};
|
|
|
|
/**
|
|
* drm_disable_unprepare - power off a panel
|
|
* @panel: DRM panel
|
|
*
|
|
* Calling this function will completely power off a panel (assert the panel's
|
|
* reset, turn off power supplies, ...). After this function has completed, it
|
|
* is usually no longer possible to communicate with the panel until another
|
|
* call to drm_panel_prepare().
|
|
*
|
|
* Return: 0 on success or a negative error code on failure.
|
|
*/
|
|
static inline int drm_panel_unprepare(struct drm_panel *panel)
|
|
{
|
|
if (panel && panel->funcs && panel->funcs->unprepare)
|
|
return panel->funcs->unprepare(panel);
|
|
|
|
return panel ? -ENOSYS : -EINVAL;
|
|
}
|
|
|
|
/**
|
|
* drm_panel_disable - disable a panel
|
|
* @panel: DRM panel
|
|
*
|
|
* This will typically turn off the panel's backlight or disable the display
|
|
* drivers. For smart panels it should still be possible to communicate with
|
|
* the integrated circuitry via any command bus after this call.
|
|
*
|
|
* Return: 0 on success or a negative error code on failure.
|
|
*/
|
|
static inline int drm_panel_disable(struct drm_panel *panel)
|
|
{
|
|
if (panel && panel->funcs && panel->funcs->disable)
|
|
return panel->funcs->disable(panel);
|
|
|
|
return panel ? -ENOSYS : -EINVAL;
|
|
}
|
|
|
|
/**
|
|
* drm_panel_prepare - power on a panel
|
|
* @panel: DRM panel
|
|
*
|
|
* Calling this function will enable power and deassert any reset signals to
|
|
* the panel. After this has completed it is possible to communicate with any
|
|
* integrated circuitry via a command bus.
|
|
*
|
|
* Return: 0 on success or a negative error code on failure.
|
|
*/
|
|
static inline int drm_panel_prepare(struct drm_panel *panel)
|
|
{
|
|
if (panel && panel->funcs && panel->funcs->prepare)
|
|
return panel->funcs->prepare(panel);
|
|
|
|
return panel ? -ENOSYS : -EINVAL;
|
|
}
|
|
|
|
/**
|
|
* drm_panel_enable - enable a panel
|
|
* @panel: DRM panel
|
|
*
|
|
* Calling this function will cause the panel display drivers to be turned on
|
|
* and the backlight to be enabled. Content will be visible on screen after
|
|
* this call completes.
|
|
*
|
|
* Return: 0 on success or a negative error code on failure.
|
|
*/
|
|
static inline int drm_panel_enable(struct drm_panel *panel)
|
|
{
|
|
if (panel && panel->funcs && panel->funcs->enable)
|
|
return panel->funcs->enable(panel);
|
|
|
|
return panel ? -ENOSYS : -EINVAL;
|
|
}
|
|
|
|
/**
|
|
* drm_panel_get_modes - probe the available display modes of a panel
|
|
* @panel: DRM panel
|
|
*
|
|
* The modes probed from the panel are automatically added to the connector
|
|
* that the panel is attached to.
|
|
*
|
|
* Return: The number of modes available from the panel on success or a
|
|
* negative error code on failure.
|
|
*/
|
|
static inline int drm_panel_get_modes(struct drm_panel *panel)
|
|
{
|
|
if (panel && panel->funcs && panel->funcs->get_modes)
|
|
return panel->funcs->get_modes(panel);
|
|
|
|
return panel ? -ENOSYS : -EINVAL;
|
|
}
|
|
|
|
void drm_panel_init(struct drm_panel *panel);
|
|
|
|
int drm_panel_add(struct drm_panel *panel);
|
|
void drm_panel_remove(struct drm_panel *panel);
|
|
|
|
int drm_panel_attach(struct drm_panel *panel, struct drm_connector *connector);
|
|
int drm_panel_detach(struct drm_panel *panel);
|
|
|
|
int drm_panel_notifier_register(struct drm_panel *panel,
|
|
struct notifier_block *nb);
|
|
int drm_panel_notifier_unregister(struct drm_panel *panel,
|
|
struct notifier_block *nb);
|
|
int drm_panel_notifier_call_chain(struct drm_panel *panel,
|
|
unsigned long val, void *v);
|
|
|
|
#if defined(CONFIG_OF) && defined(CONFIG_DRM_PANEL)
|
|
struct drm_panel *of_drm_find_panel(const struct device_node *np);
|
|
#else
|
|
static inline struct drm_panel *of_drm_find_panel(const struct device_node *np)
|
|
{
|
|
return ERR_PTR(-ENODEV);
|
|
}
|
|
#endif
|
|
|
|
#endif
|