android_kernel_xiaomi_sm8450/Makefile
Elliot Berman 792b143158 Merge remote-tracking branch 'origin/msm-5.4' into msm-waipio
* origin/msm-5.4 at kernel.lnx.5.4-200305.1
  soc: qcom: pmic_glink: add debugfs to filter logs
  msm: kgsl: Enable the CX GSDC before accessing IOMMU registers
  msm: kgsl: Move the IOMMU clocks to the KGSL device
  msm: kgsl: Move GMU to a component device
  msm: kgsl: Minor cleanups for kgsl bus probe
  msm: pcie: Revert "scale CX and rate change after DRV resume"
  defconfig: Enable CPU isolation cooling device for lahaina
  NFC: Add driver to configure NFC-I3C controller GPIOs
  soc: qcom: Kconfig: Fix the dependencies for minidump
  defconfig: lahaina-qgki: Move minidump to QGKI
  defconfig: lahaina: Enable qbt_handler DLKM
  qbt_handler: Make the qbt driver as DLKM for GKI
  msm: cvp: avoid OOB write while accessing memory
  clk: qcom: update the DisplayPort clocks
  scsi: ufs: crypto fix on QTI ufs
  iommu/arm-smmu: Cleanup qsmmuv500_iova_to_phys_hard()
  iommu/arm-smmu: Remove DOMAIN_ATTR_DEBUG
  iommu/arm-smmu: Cleanup arm_smmu_init()
  iommu/arm-smmu: Rationalize TLB sync timeout handling
  msm: kgsl: Make a device specific scales_bandwidth function
  msm-poweroff: Correct the SCM_DLOAD_BOTHDUMPS definition
  qcom_scm: Add entry for minidump download mode
  phy: ufs: Refactor phy_power_on and phy_calibrate callbacks
  dt-bindings: clock: Add support for clock ids for SHIMA
  drm: Add DisplayPort colorspace property creation function
  drm: Rename HDMI colorspace property creation function
  arm64: mm: improve the mem-offline device node availability check
  arm64: Honor limits set by boot parameter
  msm: cvp: Add AXI reset pulse
  msm: kgsl: Set default bus control to true
  defconfig: lahaina: Enable gpu devfreq governors on lahaina
  slim-msm-ngd: Check current state of sub system restart notifier
  slim-msm-ngd: Prevent system suspend during initialization
  defconfig: lahaina: enable QBT_HANDLER
  leds: qti-flash: Add maximum available flash current prediction
  qbt_handler: Change return type of qbt_poll
  scripts: gki: Ensure HOSTLD and HOSTAR are not changed
  scsi: ufs-qcom: Refactor phy_power_on/off calls
  scsi: ufs-qcom: Adjust the order of bus bandwidth voting and unvoting
  mm/oom-kill: Remove obsolete IS_ENABLED check
  mm/oom-kill: Add option to panic when killing foreground app
  defconfig: lahaina: Expose additional page debugging info
  mm, page_owner: set page owner info for tail pages
  mm/Kconfig: Re-add HAVE_USERSPACE_LOW_MEMORY_KILLER
  cnss2: Avoid double calling MHI force wake put
  cnss2: Add meta into as a segment to firmware RAM dump
  cnss2: Retry if PCI link training fails
  ANDROID: kbuild: avoid excessively long argument lists
  iommu/arm-smmu: Cleanup context fault logging logic
  trace/sched: Fix compilation issues on !SMP
  scsi: ufshcd-qti: Always allow vendor to configure clocks
  scsi: ufs-qcom: Get low power levels from devicetree
  scsi: ufshcd-qti: enable runtime-pm
  arm64: defconfig: Enable the pinctrl-shima driver
  pinctrl: qcom: Add support for Shima SoC pin control
  drivers: soc: qti: Add support for fingerprint driver
  ASoC: compare CPU DAI stream name to find BE DAI
  cnss2: Expose APIs to prevent and allow PCIe L1 state
  msm: pcie: add option to disable L1ss TO for DRV suspend
  msm: pcie: cache l1ss timeout in drv_info
  msm: pcie: scale CX and rate change after DRV resume
  msm: pcie: provide APIs to prevent and allow PCIe ASPM L1
  mmc: sdhci-msm: Support Retention of SDCC Regs in CX Collapse
  mmc: sdhci-msm: Add SD card DLL setting for SRD104 Mode
  mmc: sdhci-msm: Add support for bus bandwidth voting
  cnss2: Extend idle restart timeout
  msm: ADSPRPC: Enable Asynchronous RPC
  cnss2: Avoid idle restart completely if reboot is in progress
  cnss2: Add sysfs entry for system shutdown
  cnss2: Set WLAON_QFPROM_PWR_CTRL_REG during power on and off
  cnss2: Add sanity check for cnss pm runtime APIs
  cnss2: check wlfw mac before switching to mission mode
  msm: adsprpc: Initialize adsp memory region
  scsi: ufshcd-qti: Fix null pointer check
  defconfig: arm64: enable required configs for trusted VM
  defconfig: arm64: Enable data defconfigs
  Revert "mm: oom-kill: Add lmk_kill possible for ULMK"
  iommu/arm-smmu: Add support for active-only interconnect votes
  sched: walt: Improve the scheduler
  memshare: Modify the driver to be dynamically loadable
  msm: ipa: create ipa framework
  arm64: defconfig: Enable Shima platform
  arm64: Kconfig: Add config option for Shima
  slim-msm-ngd: Depend on PIL driver notification instead of qmi
  msm: kgsl: Initialize LPAC registers
  interconnect: Print the tag in the debugfs summary
  ucsi: start usb host mode when partner type is power cable/ufp
  msm: kgsl: Remove the extra recovery hop
  msm: kgsl: Set bus scaling function during gmu probe
  msm: kgsl: Keep a copy of CP INIT cmdstream
  msm: kgsl: Clear halt before gmu boot
  qseecom: change qseecom_process_listener_from_smcinvoke
  firmware: qcom_scm: fix for missing listener id
  Merge fbe changes from upstream 5.4
  msm: kgsl: Override UBWC configuration for A660 based on DDR type
  msm: kgsl: Add A660 hardware clock gating register values
  msm: ipa: Fix ipa3_wwan_xmit return type
  sched: walt: Improve the scheduler
  sched: walt: Improve the scheduler
  sched: walt: move walt_stats member in cfs_rq under CFS_BANDWIDTH
  sched: use rq_clock if WALT is not enabled
  trace: Add trace points for tasklet entry/exit
  defconfig: lahaina-qgki: Remove CONFIG_IIO config from QGKI
  defconfig: enable msm_performance driver on Lahaina
  interconnect: Move internal structs into a separate file
  interconnect: qcom: Add multiple voter support
  defconfig: Enable UFS BSG driver
  defconfig: lahaina-gki: enable the glink debug spmi controller driver
  spmi: add glink debug spmi controller driver
  haven: doorbell: Remove locks around read/send
  defconfig: arm64: Remove QTEE_SHM_BRIDGE
  scripts: gki: Add proper MAKE PATH
  pinctrl: qcom: Correctly configure the SDC2 pins
  ANDROID: Kconfig.gki: Remove most of the built in qcom clks
  include: regulator: Add header for RPM-SMD voltage levels
  dt-bindings: clock: update DisplayPort clock names for Lahaina
  drivers: llcc: Remove programming of cache override registers
  serial: msm_geni_serial: Set clock freq correctly for RUMI
  crypto: msm: add compat_qcedev to support 32bit process
  msm: adsprpc: protect access of context table
  soc: qcom: msm_perf: Add msm_performance module
  ion: don't wakeup refill threads for order-0 requests
  ion: Reduce secure system heap allocation time by stealing pages
  usb: dwc3: Do not initiate remote wakeup from core layer
  clk: qcom: remove flags for byte div clk src
  slim-msm-ngd: Add qmi deferred response check in pm resume
  slim-msm-ngd: Add wake lock to avoid race with suspend and SSR
  dt-bindings: ipcc: Add MPROC signal for TZ
  scsi: ufshcd-qti: Add quirk to disable fastauto mode
  scsi: ufshcd-qti: Fix hibern8 timeout during scaling
  clk: qcom: gpucc-lahaina: Remove CLK_IS_CRITICAL
  msm-geni-serial: Use dma_alloc_coherent to avoid dma map/unmap
  usb: gadget: f_fs: set req->num_sgs as 0 for non-sg transfer
  msm: kgsl: Enable I/O coherency on A660
  kernel_headers: Add missing mem-buf.h UAPI header file
  memshare: Add snapshot of memshare driver
  thermal: adc-tm: Fix ADC_TM channel mapping
  thermal: adc-tm: Fix compilation recipe in makefile
  iio: adc: qcom-spmi-adc5: Add SID in ADC IIO channel properties
  ion: Fix pool refill error
  dt-bindings: interconnect: Add disp specific nodes for Lahaina
  iio: adc: Add full-scale voltage for PMIC7 ADC
  msm: ipa: Update debugfs to print rules correctly
  clk: qcom: clk-alpha-pll: Remove already enabled warning in PLL configs
  msm: ipa: Update WLAN pipes to use WLAN2 clients
  cnss2: Replace "%p" with "%pK"
  iio: adc: qcom-vadc-common: Change ADC7 die_temp output unit to mC
  defconfig: arm64: Enable QCOM_SCM driver
  arm64: Kconfig: Add ARCH_QCOM dependency for ARCH_QTI_VM
  defconfig: arm64: Add ARCH_QCOM config
  haven: Pass doorbell irq number to client callback
  interconnect: qcom: Remove duplicate compatible string
  interconnect: qcom: Configure QoS when provider is sync stated
  interconnect: qcom: Enable the QoS ports
  iommu: iommu-debug: Fix race with respect to test buffer allocation
  iommu: qti: Track iommu domains
  iommu: iommu-debug: Remove CONFIG_IOMMU_DEBUG_TRACKING
  arm64: defconfig: Disable CONFIG_IOMMU_DEBUG_TRACKING
  net: wireless: Add snapshot of db.txt
  Revert "cfg80211: reg: remove support for built-in regdb"
  interconnect: qcom: Do not set any QoS for the NSP
  defconfig: msm: Enable QUPv3 drivers on Lahaina QGKI perf image
  arm64: defconfig: Enable CPUFREQ-HW for Lahaina
  leds: qti-flash: Add support for qti_flash_led_prepare()
  msm: adsprpc: Cache invalidate optimization
  Revert "pinctrl: msm: Configure interrupts as input and gpio mode"
  msm: adsprpc: Cache flush operation optimization
  arm64: defconfig: Enable the mem-buf driver on Lahaina QGKI
  soc: qcom: mem-buf: Add support for inter-VM memory sharing
  msm: kgsl: Do not mark all buffers as iocoherent
  arm64: defconfig: Enable CONFIG_PANIC_ON_OOPS
  arm64: defconfig: Add LOCALVERSION strings for Lahaina
  clk: qcom: Cache vdd vote if clk is unprepared
  arm64: defconfig: Enable QCOM watchdog for Lahaina
  radio: RTC6226: fill device capabilities in video_device
  thermal: adc-tm: Correct a macro expression for PMIC7 ADC_TM
  msm: adsprpc: Remove output buffers from cache flush logic
  msm: adsprpc: Add error handling checks
  msm: adsprpc: Add force no flush and invalidate flag
  adsprpc: use uint for counters and maintain consistency in datatypes
  msm: adsprpc: Remove remote mappings after PD is up
  clk: qcom: gcc-lahaina: Enable gpu_memnoc_gfx and gpu_snoc_dvm_gfx always
  msm: cvp: buffer managerment optimization for Lahaina
  soc: qcom: Add forever loop after non-secure bite configuration
  defconfig: lahaina: enable FSA driver on Lahaina
  sched: Provide stub definitions for WALT
  haven: Add support for MEM_NOTIFY
  haven: Add support for MEM_SHARE/MEM_LEND
  haven: Add support for the MEM_ACCEPT call
  haven: Add support for the MEM_RELEASE/MEM_RECLAIM calls
  haven: Add support for the MEM_QCOM_LOOKUP_SGL call
  haven: Add support for the mem-buf driver's message queue
  haven: Add the memparcel handle as a well known haven type
  PM / devfreq: Remove dependencies between sysfs nodes and suspend count
  soc: qcom: Remove incorrect error check from Guest VM PIL Loader
  eud: Handle multiple events with eud interrupt
  i3c: i3c-master-msm-geni: Support for 3.4 Mhz,400 Khz
  kernel_headers: Fix headers not detected in incremental builds
  dma-mapping-fast: Align memory allocation to dma_alloc_attrs expectations
  msm: cvp: Disable CVP power collapse
  leds: qti-flash: Add individual APIs to enable and disable switch
  defconfig: lahaina-gki: Enable USB Audio QMI Service driver
  sound: usb: Fix incorrect type assignments
  arm64: defconfig: Enable USB_F_FS_IPC_LOGGING for lahaina_debug, take 3
  power: supply: qti_battery_charger: Handle generic notification
  soc: qcom: qti_battery_debug: Update QBG device context dump length
  arm64: defconfig: Enable new touchscreen on Lahaina
  arm64: defconfig: Enable touchscreen on Lahaina
  defconfig: lahaina: Enable KGSL driver
  serial: msm_geni_serial: Cover console under GENI_CONSOLE config
  defconfig: lahaina: Enable DYNAMIC_DEBUG
  firmware: shmbridge: Enable shmbridge by default
  serial: msm_geni_serial: Manage HSUART clocks when read HW Ver
  arm64: defconfig: Enable QCOM EUD driver
  clk: qcom: clk-rpmh: Wait for completion when enabling clocks
  ANDROID: serdev: Fix platform device support
  msm: tsens: Add code to support thermal framework changes
  soc: qcom: rpmh: Add completion status to rpmh debug information
  msm: kgsl: Add rgmu_init() for firmware loading
  leds: qti-flash: Update interrupt names
  ASoC: Update the widgets power up/down sequence
  msm: cvp: Enable CVP auto PIL
  thermal: adc-tm: Fix match table description and Makefile
  ASoC: pcm: update the start-up sequence for playback
  msm: synx: redesign callback registration and dispatch
  ion: msm: Add support for secure allocations for the Trusted UI(TUI) VMID
  soc: qcom: secure_buffer: Add support for the Trusted UI(TUI) VMID
  lib/list_sort: fix function type mismatches
  kernel_headers: Add missing header for lahaina
  crypto: msm: Rename qcrypto module
  crypto: msm: Build qcedev and qcedev-smmu together
  crypto: msm: Fix compile errors
  crypto: msm: Fix incorrect boolean logic
  Revert "defconfig: lahaina: enable FSA driver on Lahaina"
  Add hdcp_qseecom driver snapshot for Lahaina
  mm: set the watermark_boost before updating the low and high wmarks
  mm, oom: check LMK enabled for pagefault_out_of_memory()
  mm: oom: enable the sysctl_reap_mem_on_sigkill by default
  defconfig: Enable userspace low memory killer for Lahaina
  mm, oom: Modify default value of panic_on_oom
  mm: oom-kill: Add lmk_kill possible for ULMK
  defconfig: arm64: Add SELinux configs
  defconfig: lahaina: Enable CONFIG_EDAC_QGKI flag
  drivers: edac: Avoid configuring interrupt register in polling mode
  arm64: defconfig: Enable Haven HVC Driver
  tty: Add Haven RM Console driver
  haven: rm: Add VM Services - Console APIs
  haven: rm: Add IRQ Management APIs for IRQ lending
  msm: kgsl: Fix gdsc disable timeout during reset
  msm: kgsl: Always boot GMU with default CM3 config
  ion: msm: Add support for the Trusted UI(TUI) dynamic carveout heap
  coresight-etm4x: Don't set LPOVERRIDE bit when tupwr-disable is true
  ASoC: pcm: update arch_setup_dma_ops to of_dma_configure for hostless
  mm: make faultaround produce old ptes
  wil6210: prevent ioctl access while in reset or suspend
  drivers: edac: Defer work for the polling EDAC driver
  edac: Allow the option of creating a deferrable work for polling
  ASoC: dt-bindings: update soundwire port configurations
  defconfig: lahaina: Enable hv-haptics driver
  input: qcom-hv-haptics: correct pattern source checking logic
  defconfig: lahaina: enable FSA driver on Lahaina
  defconfig: lahaina: Enable the Type-C alternate mode driver
  soc: qcom: Add Type-C alternate mode driver
  ion: Add support for dynamic carveout heaps
  i3c: i3c-master-msm-geni: Propagate tip changes from 4.19
  leds: qti-flash: Fix updating flags when disabling flash/torch device
  sound: usb: Add snapshot for usb audio qmi driver
  ion: msm: Add support for addition/removal of memory to ION heaps
  ion: msm: Add support for querying the security state of heaps
  ion: msm: Add support for mapping VMIDs to ION flags
  Bluetooth: Remove unused regulator entries
  msm: cvp: Relocate Synx init/uninit calls
  qseecom: add compat_qseecom to support 32bit process
  drivers: llcc: edac: Add a config flag for non GKI variants
  msm: cvp: Enable CVP power collapse and LLC
  defconfig: arm64: Enable wakelock feature for lahaina
  defconfig: Enable ARCH_QTI_VM config
  arm64: Kconfig: Add config option for QTI's virtual machine
  soc: qcom: ipcc: Do not reset the device during probe
  power: reset: use nvmem restart_reason
  sched/fair: bonus vruntime for task boost 3
  defconfig: Split CNSS configs to GKI and debug
  devfreq: memlat: Add CPU Hotplug and Idle awareness in memlat
  input: touchscreen: Enable new Focaltech touch driver
  soc: qcom: rpmh: Correct rpm_msg pointer offset and add list_del
  drivers: cpuidle: lpm-levels: Move local_irq_enable
  drivers: soc: qcom: rpmh: Correctly set dirty flag
  include/linux: add HDCP QSEECOM header file
  arm64: defconfig: Enable USB Mass Storage drivers on Lahaina
  arm64: defconfig: lahaina: Enable GuestVM PIL support
  soc: qcom: Add Guest VM PIL loader
  dwc3-msm: Add USB role switch handling
  ucsi: Add usage of USB role switch functionality
  scsi: ufs: Fix phy init sequence
  haven: Add VM management support for clients
  arm64: defconfig: Enable haven doorbell driver
  haven: Add haven doorbell driver
  arm64: defconfig: Enable Haven virtualization drivers
  haven: Add Haven Resource Manager Driver
  arm64: defconfig: Enable extcon USB GPIO driver on Lahaina
  msm: kgsl: Make the scratch privileged
  clk: qcom: gdsc-regulator: Add support for proxy consumers
  msm: kgsl: Set busmon driver data
  msm: kgsl: Do not call dispatcher functions directly
  drivers: thermal: Avoid trip evaluation for disabled thermal zone
  haven: Add Haven Message Queue driver
  arch: arm64: hh: Add Haven arm64 hypercall interface
  haven: hcall: Add Haven hypercall interface
  haven: Add common Haven types and macros
  Revert "rpmsg: glink: Set tail pointer to 0 at end of FIFO"
  Revert "PM / QoS: Redefine FREQ_QOS_MAX_DEFAULT_VALUE to S32_MAX"
  Revert "UPSTREAM: firmware/qcom_scm: Add scm call to handle smmu errata"
  Revert "UPSTREAM: firmware: qcom_scm-64: Add atomic version of qcom_scm_call"
  Revert "UPSTREAM: cpufreq: qcom-hw: Move driver initialization earlier"
  msm: kgsl: Dump maximum possible IB1 size in snapshot
  scsi: ufs-qti: Remove the second init in hba probe path
  ufs: ufs-qcom: Clean up UFS PHY mode and submode selection
  msm: kgsl: Handle error from nvmem_cell_read while reading speed_bin fuse
  coresight: csr: read MSR start address and size from dt
  regulator: Add snapshot of qpnp-amoled regulator driver
  msm: cvp: fix DSP probe crash
  sched: micro optimization for sched_energy_present
  extcon: usb-gpio: Add support for optional VBUS output enable GPIO
  msm: ipa4: debug patch gsi interrupt issue
  usb: ep0: complete the pending control request before soft-disconnect
  mhi: dev: uci: add support for DIAG and DCI clients
  msm: cvp: Add debug node control power collapse
  msm: pcie: always enable BDF to SID for PCIe RC mode
  msm: adsprpc: detect privileged processes based on group ID
  eud: Set pdev->id value to 0 and add set_mctrl() API
  usb: dwc3: Remove extra format specifier
  psi: Improve ftrace events
  soc: qcom: spcom: propagate print macro parameters to pr_*()
  psi: print threshold time in decimal
  psi: use proper accessor
  msm: adsprpc: Separate header and non-ion copy buffer
  sched/uclamp: Fix a bug in propagating uclamp value in new cgroups
  input: qti-hv-haptics: Add debugfs parameters to configure effects
  input: qcom,hv-haptics: Add DT definitions
  input: misc: Add initial driver to support QTI HV haptics
  clk: qcom: clk-alpha-pll: Fix zonda set_rate failure when PLL is disabled
  arm64: Call idle notifiers in CPU idle
  ANDROID: idle_notifier: Add generic idle notifiers
  defconfig: lahaina: enable QTI battery debug driver
  soc: qcom: add initial version of qti_battery_debug driver
  kernel_headers: Add missing kernel headers to lahaina
  defconfig: enable QSEECOM as a GKI module
  qseecom: use of_reserved_mem_lookup to get heap base and size
  iommu/arm-smmu: Use an atomic context when fastmap is set on GKI
  msm: pcie: remove PCI_MSM_MSI dependencies
  msm: pcie: add support to control pipe clk mux for LPM
  msm: pcie: add support for gcc_aggre_noc_pcie_*_axi_clk
  qseeecom: Fix possible unused function
  clk: qcom: gpucc: Enable cx_gmu, hub_cx_int_clk always
  usb: gadget: configfs: Add max_speed setting
  iommu-debug: allocate test_virt_addr when reading it
  iommu: iommu-debug: Fix return code for iommu_debug_dma_unmap_write
  Add support BT/FM CHK 3.2 chip
  f_fs: Return correct USB endpoint descriptor to user space daemon
  usb: gadget: Update functions for SSP descriptors
  defconfig: lahaina: correct PMIC ADC driver config enablement
  defconfig: lahaina: remove disablement of SPMI temp alarm driver
  clk: qcom: gpucc: Add support for HLOS1_VOTE_GPU_SMMU_CLK
  dt-bindings: clock: Add support for HLOS1_VOTE_SMMU_CLK
  hrtimer: fix issue during core isolation
  kernel headers: Update comparison logic
  scsi: ufs: Make crypto updates on QTI ufs
  arm64: defconfig: Enable MSM PCIe and MHI Host driver for lahaina
  msm: pcie: configure PCIe and MSI as modules in Makefile
  iommu: io-pgtable-fast: Fix IOMMU configuration usage in self-tests
  dwc3-msm: Add dwc3_msm_release_ss_lane() API
  msm: cvp: Support releasing persistent buffer
  msm: kgsl: Move secvid programming to gpudev
  msm: kgsl: Do dispatcher init at first open
  msm: kgsl: Move APRIV config to a6xx start
  msm: kgsl: Move preemption start to ringbuffer start
  msm: kgsl: Move ringbuffer global allocations to init time
  msm: kgsl: Fix memory leak in a6xx_init
  msm: kgsl: Create first_open and last_close
  msm: kgsl: Add function to get context bank number
  Revert "devfreq: bimc_bwmon: Add support to enable BWMON clks"
  arm64: defconfig: Enable memory debug configs on Lahaina
  usb: dwc3-msm: Fix out-of-bounds access in bus voting
  pwm: pwm-qti-lpg: Refactor qpnp_lpg_parse_dt() for readability
  soc: fsa4480-i2c: Register with UCSI for audio accessory notifications
  ucsi: ucsi_glink: Notify upon change in connector status
  linux: scm: Update the API for assign memory to subsys
  arm64: defconfig: enable flash LED driver on Lahaina
  leds: add support for QTI flash LED driver
  ANDROID: Re-use SUGOV_RT_MAX_FREQ to control uclamp rt behavior
  ANDROID: cpufreq/schedutil: Select frequency using util_avg for RT
  pwm: pwm-qti-lpg: Handle nvmem device lookup failure properly
  clk: qcom: clk-rpmh: Mark rfclka2 as optional for Lahaina
  tracing: rework sched_preempt_disable trace point implementation
  sched: core: reset preemption/irqsoff disable timestamp
  defconfig: enable schedutil governor on Lahaina
  msm: cvp: Use compiler data type in uapi
  sched/core: Fix size of rq::uclamp initialization
  iommu/arm-smmu: log outstanding transactions on sync timeout
  msm: gsi: Fix the WARNING for gsi_write_channel_scratch
  arm64: defconfig: Enable QRTR MHI on lahaina_debug
  interconnect: qcom: Add QoS config support
  net: qrtr: Introduce MHI transport for qrtr
  PM / devfreq: Make governor registration less verbose
  regulator: qcom_pm8008-regulator: correct chip-en chip variable type
  cpuidle: lpm-levels: update lpm_disallowed() with sched hints
  mhi: Export more symbols
  mhi: Fix compile errors
  msm: pcie: update PCIe RC and MSI driver to compile as GKI modules
  regulator: qcom_pm8008: correct parent supply voltage voting
  arm64: defconfig: Enable CFI_PERMISSIVE flag
  scripts: gki: Add LD to make args to enable CFI/LTO
  soc: qcom: glink_pkt: Fix minor version in device creation
  Revert "usb: dwc3: gadget: Fix logical condition"
  arm64: defconfig: Enable SG support in Lahaina GKI
  defconfig: lahaina: enable the battery charger driver
  power: supply: Add QTI battery charger
  defconfig: lahaina-gki: enable the qcom_pm8008-regulator driver
  regulator: qcom_pm8008: allow multiple PM8008 instances with unique names
  regulator: qcom_pm8008: change reg property format from u16 to u32
  regulator: qcom_pm8008: Add LDO OCP interrupt support
  regulator: add a regulator driver for the PM8008 PMIC
  defconfig: Add kernel hardening features
  dwc3: gadget: Fix dr_mode check with USB device mode APIs
  msm: ipa4: Fix to unmap the page if skb allocation failed
  defconfig: lahaina-gki: enable various USB CONFIGFS functions
  usb: gadget: f_cdev: Fix func_suspend
  usb: gadget: Make USB_CONFIGFS_NCM buildable as a module
  usb: gadget: f_gsi: Fix function suspend
  usb: gadget: Add function wakeup support
  cnss2: Add daemon_support dts option for QCA6390
  input: touchscreen: Add new Focaltech touch driver
  regulator: refgen: add support for proxy consumers
  regulator: rpmh-regulator: support parent supply specification in subnodes
  msm: kgsl: Remove write-only register from snapshot
  arm64: defconfig: Enable TSENS driver for lahaina
  memory_dump: add new feature for cpuss dump
  iommu/iova: Limit IOVA alignment using CONFIG_ARM64_DMA_IOMMU_ALIGNMENT
  power: reset: Add qcom_dload command to poweroff driver
  msm: ipa: clear the ipa pipeline before any ep config
  Revert "cnss2: Add support to monitor PM QOS votes"
  net: cnss2: Build generic netlink support by default
  sched/fair: consider uclamp boost while deciding the start_cpu
  NFC: Add support to get NFC interface type
  msm: ipa: split quota stat memory between q6 and ap
  Example kernel headers header_lib package
  uapi: sound: remove redundant QGKI config checks
  Revert "FROMLIST: scsi: ufs-qcom: Adjust bus bandwidth voting and unvoting"
  msm: kgsl: Remove icc path from gmu device
  msm: kgsl: Add support for multiple ddr tables
  msm: kgsl: Setup LPAC global pagetable
  msm: kgsl: Check snapshot status after snapshot
  msm: kgsl: Update a660 CP indexed register ranges
  qcom: soc_sleep_stats: Correctly read accumulated sleep length
  iommu/arm-smmu: Replace while loop with for_each_set_bit
  iommu/arm-smmu: enhance tlb sync timeout handler
  uapi: sound: remove redundant QGKI config checks
  soc: qcom: pmic_glink: add support for multiple pmic_glink devices
  psi: Use deferrable psi_avgs_work
  psi: Introduce ftrace events
  cnss2: NULL terminate FW build ID string
  arm64: defconfig: Enable CMA performance optimizations on Lahaina
  mm: Allow only __GFP_CMA allocations from Movable zone
  mm: fix the use of ALLOC_CMA
  zram: allow zram to allocate CMA pages
  mm: fix cma accounting in zone_watermark_ok
  mm: add cma pcp list
  arm64: defconfig: Re-enable USB_F_FS_IPC_LOGGING for lahaina_debug
  cma: redirect page allocation to CMA
  arm64: defconfig: Enable CMA debug configs on Lahaina
  Revert "mm: cma: make writeable CMA debugfs optional"
  ion: Make MSM pool auto refill built-in only
  soc: qcom: Add module dependence for spss_utils
  input: touchscreen: Enable FTS Touch driver
  input: touchscreen: Add STMicroelectronics Touchscreen driver
  drivers: lpm-levels: Use cpu_do_idle for shallower LPM entry
  wil6210: add ioctl interface
  wil6210: fix vendor command policy for vendor unspec commands
  wil6210: add policy for all vendor commands
  NFC: Made the QTI NFC drivers GKI compliant
  Revert "defconfig: lahaina: Enable QRNG driver"
  interconnect: qcom: Add sync_state for Lahaina QNOC
  defconfig: Lahaina: update external display module config
  soc: pil: Disable error-ready timeout
  uapi: sound: remove redundant QGKI config checks
  smp: Wake up all idle CPUs when suspending to idle
  uapi: sound: remove redundant QGKI config checks
  uapi: sound: remove redundant QGKI config checks
  uapi: sound: remove redundant QGKI config checks
  arm64: defconfig: Enable CONFIG_MODULE_SIG to allow module signing
  defconfig: lahaina: enable QTI crypto driver
  msm: cvp: Avoid overflowing the stack frame
  arm64: defconfig: Enable RTB driver
  devfreq: bwmon: Export symbols
  driver: soc: qcom: Fix function prototype
  PM / devfreq: memlat: Export symbols
  drivers: qcom: Fix a parameter for sysfs_attr_init()
  PM / devfreq: Fix CONFIG check for cache HW monitor prototype
  clocks: Add a missing header to clk/qcom/common.h
  PM /devfreq:  Fix function prototype
  PM / devfreq: memlat: Use the cpumask_pr_args macros
  msm: kgsl: Remove unused header from gpu_bwmon
  thermal: Fix trace_thermal_zone_trip
  dma-buf: Export missing dma_buf_ref_mod symbol
  iommu: dma-mapping-fast: Export symbols
  drivers: pinctrl: Export msm_qup_write
  PM / devfreq: Add MODULE_LICENSE for arm-memlat-mon
  PM / devfreq: Export tracepoint symbols
  firmware: qcom-scm: Force built in drivers to depend on QCOM SCM
  coresight: Remove duplicate Kconfig entries
  include: Fixup headers to pass KERNEL_HEADER_TEST
  soc: spcom: Add ipc logging engine
  uapi: sound: remove redundant QGKI config check
  msm: IPA: remove unsupport enum for uC debug stats
  msm: cvp: CVP DSP driver restructure for Lahaina
  arm64: defconfig: Enable USB role switch driver on lahaina
  clk: qcom: Fix accessing of clks element during the probe
  usb: gadget: Don't perform start xfer with USB BAM endpoint
  msm: cvp: FD support in fence path
  cpufreq: schedutil: fix CPU util when WALT is enabled
  drivers: thermal: Add support to change thermal zone configuration
  arm64: defconfig: Enable debug cc clock driver for Lahaina
  arm64: defconfig: Enable CONFIG_BALANCE_ANON_FILE_RECLAIM on Lahaina
  arm64: defconfig: Enable clean page reclaim tracking on Lahaina
  iommu/arm-smmu: Fix memory leak with respect to TBU data structures
  msm: cvp: Enable CVP driver on DSP
  defconfig: change default governor to performance on lahaina
  hwrng: update qrng driver copyright and license marking
  msm:ipa: Address the -Wmisleading-indentation warning
  socinfo: Avoid sysfs entry name changes between kernel versions
  clk: qcom: rcg: update the DFS macro for RCG
  msm: pcie: correct error check of wakeup source registration
  msm: kgsl: Disable GBIF_CLIENT_QOS on a660v1
  msm: kgsl: Skip the intersecting vma
  clk: qcom: debug: Remove use of hw init
  clk: qcom: Add debug cc clk measure nodes for Lahaina
  arm64: defconfig: Remove CONFIG_SPS from lahaina_debug.config
  msm: ipa4: Fix using of tag_desc
  NFC: Add NFC hardware check and get info ioctl
  cpufreq: qcom-cpufreq-hw: Initialize the data type for offsets to u16
  ASoC: core: Add compat ioctl support for listen driver
  msm: ipa: Fix using generic name for offload connect/disconnect
  msm: ipa: stop remote IPA channels if tethering is not enabled
  arm64: defconfig: Enable SMCInvoke driver for Lahaina
  SMCInvoke: Add SMCInvoke driver snapshot for Lahaina
  msm: cvp: remove version and deprecated functions
  qseecom: update interface as per new scm driver
  msm: cvp: Add flush api in uapi
  drivers: thermal: Add config sysfs entry support for thermal zones
  mm: swap: Add null pointer check
  selinux: stop flooding the log buffer
  fs/buffer.c: Revoke LRU when trying to drop buffers
  defconfig: arm64: Enable sched debug features on Lahaiana
  sched/core: Fix compilation issues when WALT is enabled
  sched/fair: skip 6% energy check when best_energy_cpu is idle
  interconnect: qcom: Change bcm voter initlevel
  clk: qcom: gcc-lahaina: Add PCIe and UFS clock muxes
  dt-bindings: clock: gcc: Add PCIe pipe and UFS symbol clocks
  clk: qcom: Fix incorrect mux_get_parent mapping
  defconfig: Lahaina: enable external display module
  msm: ipa: vote for device side through mhi for tethering use cases
  msm: ipa: tune mhip ring size shrink to 6 elements
  defconfig: lahaina-qgki: Enable thermal drivers
  msm:ipa: mhip ring size optimization
  msm:ipa: uc based flow control for UL tethering offload
  msm:ipa: stop UL IPA TX channel at the end of the probe
  msm:ipa: continue ODL  logging on MHIP post modem SSR
  coresight: csr: update programming sequence of enabling etr to bam
  coresight: fix tmc flush timeout issue
  coresight: tmc: leverage etr disable/enable when switching mode
  coresight: tmc: add usb support to etr
  platform: msm: add support for external display module
  usb: typec: ucsi: fix spelling mistake "connetor" -> "connector"
  usb: typec: ucsi: Actually enable all the interface notifications
  usb: typec: ucsi: Store the notification mask
  usb: typec: ucsi: Fix the notification bit offsets
  PM / QoS: Reorder pm_qos/freq_qos/dev_pm_qos structs
  PM / QoS: Redefine FREQ_QOS_MAX_DEFAULT_VALUE to S32_MAX
  arm64: defconfig: Enable USB QDSS and USB BAM drivers on Lahaina
  msm: kgsl: Check correct register for clamps on a660
  msm: kgsl: Set DMA Mask for gmu device
  msm: kgsl: Setup CP_CHICKEN_DBG register for a660
  msm: kgsl: Add A660 to the gpulist
  dt-bindings: clock: add MDSS clock names for Lahaina
  iommu/arm-smmu: avoid possible deadlock during map_sg
  iommu: Fixup selftests
  ion:  Fix API changes in dma-buf-ref.c
  sched: walt: Improve the scheduler
  sched: walt: improve the scheduler
  sched/fair: Don't place wakee on waker cpu if colocate enabled
  arm64: defconfig: Enable qseecom driver for Lahaina
  msm: kgsl: Don't error out if dst size is not equal to src in copy_prop
  arm64: defconfig: Enable SPS driver for lahaina
  msm:ipa: Race condition observed during client disconnect
  defconfig: Enable DCC driver for GKI
  dt-bindings: Add new port types for SWR 1.6 feature
  HID: Trace events for external sensor driver
  HID: qvr: Correct axes orientation
  HID:correct mag axis config for External viewer
  HID: qvr: wait event interruptible timeout change
  HID: qvr: Decrease wait event interruptible timeout value
  HID: qvr: Optimized Viewer Requirements
  HID: qvr: Code refactoring
  HID: Read calibration data from external sensor
  HID: Filtering mag data depending on timestamp
  HID: external sensor driver
  msm: adsprpc: HMX,Async-FastRPC capability
  sched/walt: Avoid walt irq work in offlined cpu
  sched/fair: Improve the scheduler
  interconnect: qcom: Fix MACRO fields for Lahaina
  iinterconnect: qcom: Hold high bandwidth vote for keepalive BCMs
  scsi: ufshcd-qti: Port the new crypto framework to QTI ufs
  msm: ipa: Add SMMU driver as soft dependency for IPA
  include: sound: add stub function for wcd dsp manager
  iommu/arm-smmu: Rename the ARM SMMU module
  regmap: Quit the read-loop based on position of file-offset
  arm64: qcom: Enable QTI config
  scsi: ufs-qti: Check for valid vcc before accessing
  iommu/arm-smmu: Use dev_iommu_fwspec_get() to retrieve IOMMU fwspec
  iommu/arm-smmu: Unregister TBU driver when unloading the SMMU module
  crypto: msm: Add QTI crypto drivers
  iommu/arm-smmu: Add missing iommu_device_unregister()
  msm: ipa: fix ipa_disable_apps_wan_cons_deaggr declaration
  Revert "drivers: qcom: cmd-db: modularize commandDB driver"
  msm: kgsl: Calculate the offset of context bank 0
  arm64: defconfig: Enable poweroff driver for Lahaina GKI
  power: reset: Add snapshot of msm-poweroff
  msm: kgsl: Refactor IOMMU contexts
  msm: kgsl: Support global secure memory objects
  msm: kgsl: Add a function to map global buffers
  msm: ipa3: IPA clock vote ioctl
  msm: ipa3: IPA clock vote ioctl
  msm: tsens: Add Tsens driver snapshot
  arm64: defconfig: Enable slimbus driver config for lahaina
  msm: cvp: remove additional checks in response_handler
  defconfig: lahaina: Enable ADC drivers for lahaina
  coresight: tmc: etr: Add sys interface for ETR
  thermal: adc-tm: Add support for PMIC7 ADC_TM
  thermal: adc-tm: Add ADC_TM driver snapshot
  msm: ipa : Fix KW array index issue on dbg_buff
  msm: IPA: add the missing iounmap handle
  arm64: defconfig: Enable all memory hotplug related configs on Lahaina
  soc: qcom: mem-offline: Clear page-table entries after offline
  soc: qcom: mem-offline: Set offlinable region based on minimum DDR sizes
  arm64: Update dram end address while randomizing base
  arm64: mm/memblock: Update memory limit calculation
  drivers: base: expose amount allocated per block
  dma-mapping-fast: Remap contiguous pages only when needed
  arm64: mm: Fix compilation when CONFIG_MEMORY_HOTPLUG is not enabled
  mm, oom: Try to online memory block before killing
  arm64: Make section size configurable for memory hotplug
  mm/memory_hotplug: Add hot-added memory blocks to ZONE_MOVABLE type
  arm64: Override memory limit set by boot parameter
  soc: qcom: mem-offline: Add a snapshot of the mem-offline driver
  qseecom: Add qseecom driver snapshot for Lahaina
  defconfig: Lahaina: Enable support for WLAN
  arm64: defconfig: Enable TSENS driver for lahaina
  firmware: qcom_scm: Add changes for tsens reinit
  NFC: Add NFC I2C and I3C drivers for SNxxx
  Linux 5.4.7
  iwlwifi: pcie: move power gating workaround earlier in the flow
  nbd: fix shutdown and recv work deadlock v2
  mmc: sdhci: Add a quirk for broken command queuing
  mmc: sdhci: Workaround broken command queuing on Intel GLK
  mmc: sdhci-of-esdhc: fix P2020 errata handling
  mmc: sdhci: Update the tuning failed messages to pr_debug level
  mmc: sdhci-of-esdhc: Revert "mmc: sdhci-of-esdhc: add erratum A-009204 support"
  mmc: sdhci-msm: Correct the offset and value for DDR_CONFIG register
  ocxl: Fix concurrent AFU open and device removal
  powerpc/irq: fix stack overflow verification
  powerpc/vcpu: Assume dedicated processors as non-preempt
  x86/mce: Fix possibly incorrect severity calculation on AMD
  x86/MCE/AMD: Allow Reserved types to be overwritten in smca_banks[]
  x86/MCE/AMD: Do not use rdmsr_safe_on_cpu() in smca_configure()
  x86/intel: Disable HPET on Intel Coffee Lake H platforms
  KVM: arm64: Ensure 'params' is initialised when looking up sys register
  KVM: arm/arm64: Properly handle faulting of device mappings
  kvm: x86: Host feature SSBD doesn't imply guest feature AMD_SSBD
  kvm: x86: Host feature SSBD doesn't imply guest feature SPEC_CTRL_SSBD
  KVM: PPC: Book3S HV: Fix regression on big endian hosts
  iocost: over-budget forced IOs should schedule async delay
  ext4: validate the debug_want_extra_isize mount option at parse time
  ext4: unlock on error in ext4_expand_extra_isize()
  ext4: check for directory entries too close to block end
  ext4: fix ext4_empty_dir() for directories with holes
  clk: imx: pll14xx: fix clk_pll14xx_wait_lock
  clk: imx: clk-composite-8m: add lock to gate/mux
  clk: imx: clk-imx7ulp: Add missing sentinel of ulp_div_table
  pinctrl: baytrail: Really serialize all register accesses
  serial: sprd: Add clearing break interrupt operation
  tty/serial: atmel: fix out of range clock divider handling
  staging: comedi: gsc_hpdi: check dma_alloc_coherent() return value
  platform/x86: hp-wmi: Make buffer for HPWMI_FEATURE2_QUERY 128 bytes
  intel_th: msu: Fix window switching without windows
  intel_th: Fix freeing IRQs
  intel_th: pci: Add Elkhart Lake SOC support
  intel_th: pci: Add Comet Lake PCH-V support
  USB: EHCI: Do not return -EPIPE when hub is disconnected
  mm: vmscan: protect shrinker idr replace with CONFIG_MEMCG
  KEYS: asymmetric: return ENOMEM if akcipher_request_alloc() fails
  cpufreq: Avoid leaving stale IRQ work items during CPU offline
  efi/memreserve: Register reservations as 'reserved' in /proc/iomem
  spi: fsl: use platform_get_irq() instead of of_irq_to_resource()
  spi: fsl: don't map irq during probe
  usbip: Fix error path of vhci_recv_ret_submit()
  usbip: Fix receive error in vhci-hcd when using scatter-gather
  can: flexcan: add low power enter/exit acknowledgment helper
  ARM: dts: Fix vcsi regulator to be always-on for droid4 to prevent hangs
  s390/ftrace: fix endless recursion in function_graph tracer
  md: avoid invalid memory access for array sb->dev_roles
  RDMA/siw: Fix post_recv QP state locking
  ath10k: Revert "ath10k: add cleanup in ath10k_sta_state()"
  drm/amdgpu: fix uninitialized variable pasid_mapping_needed
  usb: xhci: Fix build warning seen with CONFIG_PM=n
  spi: cadence: Correct handling of native chipselect
  spi: dw: Correct handling of native chipselect
  selftests: net: tls: remove recv_rcvbuf test
  can: kvaser_usb: kvaser_usb_leaf: Fix some info-leaks to USB devices
  can: flexcan: poll MCR_LPM_ACK instead of GPR ACK for stop mode acknowledgment
  can: flexcan: fix possible deadlock and out-of-order reception after wakeup
  can: j1939: j1939_sk_bind(): take priv after lock is held
  can: m_can: tcan4x5x: add required delay after reset
  can: xilinx_can: Fix missing Rx can packets on CANFD2.0
  iommu/vt-d: Allocate reserved region for ISA with correct permission
  iommu/vt-d: Set ISA bridge reserved region as relaxable
  iommu/vt-d: Fix dmar pte read access not set error
  iommu: set group default domain before creating direct mappings
  iommu: fix KASAN use-after-free in iommu_insert_resv_region
  tpm: fix invalid locking in NONBLOCKING mode
  tpm_tis: reserve chip for duration of tpm_tis_core_init
  mmc: mediatek: fix CMD_TA to 2 for MT8173 HS200/HS400 mode
  Revert "mmc: sdhci: Fix incorrect switch to HS mode"
  btrfs: don't prematurely free work in scrub_missing_raid56_worker()
  btrfs: don't prematurely free work in reada_start_machine_worker()
  MIPS: futex: Restore \n after sync instructions
  net: wireless: intel: iwlwifi: fix GRO_NORMAL packet stalling
  ibmvnic: Fix completion structure initialization
  RDMA/bnxt_re: Fix chip number validation Broadcom's Gen P5 series
  bpf: Provide better register bounds after jmp32 instructions
  RDMA/bnxt_re: Fix stat push into dma buffer on gen p5 devices
  RDMA/bnxt_re: Fix missing le16_to_cpu
  tools, bpf: Fix build for 'make -s tools/bpf O=<dir>'
  net: phy: initialise phydev speed and duplex sanely
  ice: Fix setting coalesce to handle DCB configuration
  ice: Only disable VF state when freeing each VF resources
  drm/amdgpu: fix bad DMA from INTERRUPT_CNTL2
  mips: fix build when "48 bits virtual memory" is enabled
  libtraceevent: Fix memory leakage in copy_filter_type
  crypto: vmx - Avoid weird build failures
  mac80211: consider QoS Null frames for STA_NULLFUNC_ACKED
  crypto: sun4i-ss - Fix 64-bit size_t warnings on sun4i-ss-hash.c
  crypto: sun4i-ss - Fix 64-bit size_t warnings
  s390/cpumf: Adjust registration of s390 PMU device drivers
  mt76: fix possible out-of-bound access in mt7615_fill_txs/mt7603_fill_txs
  net: ethernet: ti: ale: clean ale tbl on init and intf restart
  ASoC: soc-pcm: check symmetry before hw_params
  fbtft: Make sure string is NULL terminated
  iwlwifi: check kasprintf() return value
  bnxt_en: Improve RX buffer error handling.
  s390/kasan: support memcpy_real with TRACE_IRQFLAGS
  s390/crypto: Fix unsigned variable compared with zero
  perf probe: Fix to show function entry line as probe-able
  perf session: Fix decompression of PERF_RECORD_COMPRESSED records
  brcmfmac: remove monitor interface when detaching
  net-af_xdp: Use correct number of channels from ethtool
  x86/insn: Add some Intel instructions to the opcode map
  ASoC: Intel: bytcr_rt5640: Update quirk for Acer Switch 10 SW5-012 2-in-1
  firmware_loader: Fix labels with comma for builtin firmware
  net: phy: avoid matching all-ones clause 45 PHY IDs
  bnxt_en: Return proper error code for non-existent NVM variable
  selftests, bpf: Workaround an alu32 sub-register spilling issue
  selftests, bpf: Fix test_tc_tunnel hanging
  perf/core: Fix the mlock accounting, again
  ASoC: wm5100: add missed pm_runtime_disable
  spi: st-ssc4: add missed pm_runtime_disable
  ASoC: wm2200: add missed operations in remove and probe failure
  sched/uclamp: Fix overzealous type replacement
  btrfs: don't prematurely free work in run_ordered_work()
  btrfs: don't prematurely free work in end_workqueue_fn()
  mmc: tmio: Add MMC_CAP_ERASE to allow erase/discard/trim requests
  crypto: virtio - deal with unsupported input sizes
  xhci-pci: Allow host runtime PM as default also for Intel Ice Lake xHCI
  tun: fix data-race in gro_normal_list()
  spi: tegra20-slink: add missed clk_unprepare
  regulator: core: Let boot-on regulators be powered off
  ASoC: wm8904: fix regcache handling
  iwlwifi: mvm: fix unaligned read of rx_pkt_status
  bcache: fix deadlock in bcache_allocator
  tracing/kprobe: Check whether the non-suffixed symbol is notrace
  MIPS: ralink: enable PCI support only if driver for mt7621 SoC is selected
  tracing: use kvcalloc for tgid_map array allocation
  RDMA/efa: Clear the admin command buffer prior to its submission
  qtnfmac: fix using skb after free
  x86/crash: Add a forward declaration of struct kimage
  qtnfmac: fix invalid channel information output
  qtnfmac: fix debugfs support for multiple cards
  cpufreq: Register drivers only after CPU devices have been registered
  bcache: fix static checker warning in bcache_device_free()
  parport: load lowlevel driver if ports not found
  nvme: Discard workaround for non-conformant devices
  net: ethernet: ti: Add dependency for TI_DAVINCI_EMAC
  s390/disassembler: don't hide instruction addresses
  r8169: respect EEE user setting when restarting network
  net: dsa: sja1105: Disallow management xmit during switch reset
  ASoC: Intel: kbl_rt5663_rt5514_max98927: Add dmic format constraint
  bpf, testing: Workaround a verifier failure for test_progs
  iio: dac: ad5446: Add support for new AD5600 DAC
  ASoC: rt5677: Mark reg RT5677_PWR_ANLG2 as volatile
  spi: pxa2xx: Add missed security checks
  media: vim2m: media_device_cleanup was called too early
  media: vicodec: media_device_cleanup was called too early
  EDAC/ghes: Fix grain calculation
  iio: cros_ec_baro: set info_mask_shared_by_all_available field
  media: v4l2-ctrl: Lock main_hdl on operations of requests_queued.
  media: cedrus: Use helpers to access capture queue
  media: si470x-i2c: add missed operations in remove
  ice: delay less
  crypto: atmel - Fix authenc support when it is set to m
  soundwire: intel: fix PDI/stream mapping for Bulk
  media: pvrusb2: Fix oops on tear-down when radio support is not present
  selftests: net: Fix printf format warnings on arm
  fsi: core: Fix small accesses and unaligned offsets via sysfs
  ath10k: fix get invalid tx rate for Mesh metric
  media: exynos4-is: fix wrong mdev and v4l2 dev order in error path
  drm/amdgpu: Avoid accidental thread reactivation.
  selftests: proc: Make va_max 1MB
  cgroup: freezer: don't change task and cgroups status unnecessarily
  s390/bpf: Use kvcalloc for addrs array
  libbpf: Fix negative FD close() in xsk_setup_xdp_prog()
  perf probe: Filter out instances except for inlined subroutine and subprogram
  perf probe: Skip end-of-sequence and non statement lines
  perf probe: Fix to show calling lines of inlined functions
  perf probe: Return a better scope DIE if there is no best scope
  net: avoid potential false sharing in neighbor related code
  perf probe: Skip overlapped location on searching variables
  perf parse: If pmu configuration fails free terms
  xen/gntdev: Use select for DMA_SHARED_BUFFER
  ice: Check for null pointer dereference when setting rings
  drm/amdgpu: fix potential double drop fence reference
  drm/amd/powerplay: fix struct init in renoir_print_clk_levels
  drm/amdgpu: disallow direct upload save restore list from gfx driver
  perf tools: Splice events onto evlist even on error
  perf tools: Fix cross compile for ARM64
  perf probe: Fix to probe a function which has no entry pc
  libsubcmd: Use -O0 with DEBUG=1
  perf probe: Fix to show inlined function callsite without entry_pc
  perf probe: Fix to show ranges of variables in functions without entry_pc
  perf probe: Fix to probe an inline function which has no entry pc
  perf probe: Walk function lines in lexical blocks
  perf jevents: Fix resource leak in process_mapfile() and main()
  perf probe: Fix to list probe event with correct line number
  perf cs-etm: Fix definition of macro TO_CS_QUEUE_NR
  perf probe: Fix to find range-only function instance
  rtlwifi: fix memory leak in rtl92c_set_fw_rsvdpagepkt()
  drm: msm: a6xx: fix debug bus register configuration
  RDMA/core: Fix return code when modify_port isn't supported
  ALSA: timer: Limit max amount of slave instances
  spi: img-spfi: fix potential double release
  bnx2x: Fix PF-VF communication over multi-cos queues.
  spi: dw: Fix Designware SPI loopback
  media: vivid: media_device_cleanup was called too early
  ASoC: SOF: topology: set trigger order for FE DAI link
  nvmem: core: fix nvmem_cell_write inline function
  nvmem: imx-ocotp: reset error status on probe
  media: staging/imx: Use a shorter name for driver
  nvme: introduce "Command Aborted By host" status code
  media: v4l2-core: fix touch support in v4l_g_fmt
  media: rcar_drif: fix a memory disclosure
  cpufreq: sun50i: Fix CPU speed bin detection
  ixgbe: protect TX timestamping from API misuse
  pinctrl: amd: fix __iomem annotation in amd_gpio_irq_handler()
  pinctrl: qcom: sc7180: Add missing tile info in SDC_QDSD_PINGROUP/UFS_RESET
  ASoC: SOF: imx: fix reverse CONFIG_SND_SOC_SOF_OF dependency
  spi: sifive: disable clk when probe fails and remove
  ALSA: pcm: Fix missing check of the new non-cached buffer type
  Bluetooth: Fix advertising duplicated flags
  libbpf: Fix error handling in bpf_map__reuse_fd()
  iio: dln2-adc: fix iio_triggered_buffer_postenable() position
  ALSA: bebob: expand sleep just after breaking connections for protocol version 1
  pinctrl: sh-pfc: sh7734: Fix duplicate TCLK1_B
  net/mlx5e: Verify that rule has at least one fwd/drop action
  loop: fix no-unmap write-zeroes request behavior
  libata: Ensure ata_port probe has completed before detach
  net: hns3: add struct netdev_queue debug info for TX timeout
  s390/mm: add mm_pxd_folded() checks to pxd_free()
  s390: add error handling to perf_callchain_kernel
  s390/time: ensure get_clock_monotonic() returns monotonic values
  phy: qcom-usb-hs: Fix extcon double register after power cycle
  phy: renesas: phy-rcar-gen2: Fix the array off by one warning
  net: dsa: LAN9303: select REGMAP when LAN9303 enable
  gpu: host1x: Allocate gather copy for host1x
  staging: wilc1000: check if device is initialzied before changing vif
  RDMA/core: Set DMA parameters correctly
  RDMA/qedr: Fix srqs xarray initialization
  RDMA/hns: Fix memory leak on 'context' on error return path
  RDMA/qedr: Fix memory leak in user qp and mr
  ACPI: button: Add DMI quirk for Medion Akoya E2215T
  spi: sprd: adi: Add missing lock protection when rebooting
  ubsan, x86: Annotate and allow __ubsan_handle_shift_out_of_bounds() in uaccess regions
  regulator: core: Release coupled_rdevs on regulator_init_coupling() error
  drm/tegra: sor: Use correct SOR index on Tegra210
  net: phy: dp83867: enable robust auto-mdix
  i40e: Wrong 'Advertised FEC modes' after set FEC to AUTO
  drm/amd/display: correctly populate dpp refclk in fpga
  i40e: initialize ITRN registers with correct values
  drm/amd/display: setting the DIG_MODE to the correct value.
  arm64: psci: Reduce the waiting time for cpu_psci_cpu_kill()
  EDAC/amd64: Set grain per DIMM
  drm: Don't free jobs in wait_event_interruptible()
  md/bitmap: avoid race window between md_bitmap_resize and bitmap_file_clear_bit
  staging: wilc1000: potential corruption in wilc_parse_join_bss_param()
  md: no longer compare spare disk superblock events in super_load
  media: smiapp: Register sensor after enabling runtime PM on the device
  media: aspeed: clear garbage interrupts
  media: imx7-mipi-csis: Add a check for devm_regulator_get
  media: st-mipid02: add a check for devm_gpiod_get_optional
  media: ov5640: Make 2592x1944 mode only available at 15 fps
  media: ad5820: Define entity function
  media: ov6650: Fix stored frame interval not in sync with hardware
  drm/nouveau: Don't grab runtime PM refs for HPD IRQs
  media: aspeed: set hsync and vsync polarities to normal before starting mode detection
  media: cedrus: Fix undefined shift with a SHIFT_AND_MASK_BITS macro
  x86/ioapic: Prevent inconsistent state when moving an interrupt
  ipmi: Don't allow device module unload when in use
  RDMA/siw: Fix SQ/RQ drain logic
  rtl8xxxu: fix RTL8723BU connection failure issue after warm reboot
  ASoC: soc-pcm: fixup dpcm_prune_paths() loop continue
  drm/gma500: fix memory disclosures due to uninitialized bytes
  RDMA/hns: Fix wrong parameters when initial mtt of srq->idx_que
  net: hns3: log and clear hardware error after reset complete
  selftests/bpf: Make a copy of subtest name
  perf tests: Disable bp_signal testing for arm64
  power: supply: cpcap-battery: Check voltage before orderly_poweroff
  staging: iio: ad9834: add a check for devm_clk_get
  drm/amdgpu: fix amdgpu trace event print string format error
  drm/amd/display: fix header for RN clk mgr
  drm/amd/display: enable hostvm based on roimmu active for dcn2.1
  x86/mce: Lower throttling MCE messages' priority to warning
  bpf/stackmap: Fix deadlock with rq_lock in bpf_get_stack()
  Bluetooth: hci_core: fix init for HCI_USER_CHANNEL
  Bluetooth: Workaround directed advertising bug in Broadcom controllers
  Bluetooth: missed cpu_to_le16 conversion in hci_init4_req
  Bluetooth: btusb: avoid unused function warning
  iio: adc: max1027: Reset the device at probe time
  drm/amd/powerplay: avoid disabling ECC if RAS is enabled for VEGA20
  usb: usbfs: Suppress problematic bind and unbind uevents.
  perf vendor events arm64: Fix Hisi hip08 DDRC PMU eventname
  perf test: Avoid infinite loop for task exit case
  perf report: Add warning when libunwind not compiled in
  perf test: Report failure for mmap events
  drm/bridge: dw-hdmi: Restore audio when setting a mode
  rtw88: coex: Set 4 slot mode for A2DP
  ath10k: Correct error handling of dma_map_single()
  x86/mm: Use the correct function type for native_set_fixmap()
  drm/amd/display: Program DWB watermarks from correct state
  extcon: sm5502: Reset registers during initialization
  drm/amd/display: Fix dongle_caps containing stale information.
  syscalls/x86: Use the correct function type in SYSCALL_DEFINE0
  drm/amd/display: add new active dongle to existent w/a
  media: ti-vpe: vpe: fix a v4l2-compliance failure about invalid sizeimage
  drm/amd/display: wait for set pipe mcp command completion
  drm/amd/display: Properly round nominal frequency for SPD
  media: ti-vpe: vpe: ensure buffers are cleaned up properly in abort cases
  media: ti-vpe: vpe: fix a v4l2-compliance failure causing a kernel panic
  media: ti-vpe: vpe: Make sure YUYV is set as default format
  media: ti-vpe: vpe: fix a v4l2-compliance failure about frame sequence number
  media: ti-vpe: vpe: fix a v4l2-compliance warning about invalid pixel format
  media: ti-vpe: vpe: Fix Motion Vector vpdma stride
  ASoC: SOF: enable sync_write in hdac_bus
  misc: fastrpc: fix memory leak from miscdev->name
  crypto: aegis128/simd - build 32-bit ARM for v8 architecture explicitly
  crypto: inside-secure - Fix a maybe-uninitialized warning
  media: cx88: Fix some error handling path in 'cx8800_initdev()'
  team: call RCU read lock when walking the port_list
  net/smc: increase device refcount for added link group
  libbpf: Fix passing uninitialized bytes to setsockopt
  libbpf: Fix struct end padding in btf_dump
  selftests/bpf: Fix btf_dump padding test case
  drm/drm_vblank: Change EINVAL by the correct errno
  mwifiex: pcie: Fix memory leak in mwifiex_pcie_init_evt_ring
  MIPS: futex: Emit Loongson3 sync workarounds within asm
  drm/amdkfd: Fix MQD size calculation
  block: Fix writeback throttling W=1 compiler warnings
  samples: pktgen: fix proc_cmd command result check logic
  drm/bridge: dw-hdmi: Refuse DDC/CI transfers on the internal I2C controller
  media: meson/ao-cec: move cec_notifier_cec_adap_register after hw setup
  media: cec-funcs.h: add status_req checks
  media: flexcop-usb: fix NULL-ptr deref in flexcop_usb_transfer_init()
  tools/memory-model: Fix data race detection for unordered store and load
  regulator: max8907: Fix the usage of uninitialized variable in max8907_regulator_probe()
  hwrng: omap3-rom - Call clk_disable_unprepare() on exit only if not idled
  crypto: aegis128-neon - use Clang compatible cflags for ARM
  usb: renesas_usbhs: add suspend event support in gadget mode
  drm/amd/display: fix struct init in update_bounding_box
  rtw88: fix NSS of hw_cap
  media: venus: Fix occasionally failures to suspend
  drm/amd/display: set minimum abm backlight level
  selftests/bpf: Correct path to include msg + path
  drm/amd/powerplay: A workaround to GPU RESET on APU
  x86/math-emu: Check __copy_from_user() result
  drm/amdkfd: fix a potential NULL pointer dereference (v2)
  drm/sun4i: dsi: Fix TCON DRQ set bits
  pinctrl: devicetree: Avoid taking direct reference to device name string
  drm/amd/display: Set number of pipes to 1 if the second pipe was disabled
  media: vimc: Fix gpf in rmmod path when stream is active
  ath10k: fix offchannel tx failure when no ath10k_mac_tx_frm_has_freq
  media: venus: core: Fix msm8996 frequency table
  tools/power/cpupower: Fix initializer override in hsw_ext_cstates
  media: ov6650: Fix stored crop rectangle not in sync with hardware
  media: ov6650: Fix stored frame format not in sync with hardware
  media: i2c: ov2659: Fix missing 720p register config
  media: ov6650: Fix crop rectangle alignment not passed back
  media: i2c: ov2659: fix s_stream return value
  media: ov6650: Fix control handler not freed on init error
  media: max2175: Fix build error without CONFIG_REGMAP_I2C
  media: vim2m: Fix BUG_ON in vim2m_device_release()
  media: vim2m: Fix abort issue
  media: seco-cec: Add a missing 'release_region()' in an error handling path
  media: cedrus: fill in bus_info for media device
  media: am437x-vpfe: Setting STD to current value is not an error
  spi: gpio: prevent memory leak in spi_gpio_probe
  drm/komeda: Workaround for broken FLIP_COMPLETE timestamps
  IB/iser: bound protection_sg size by data_sg size
  ath10k: fix backtrace on coredump
  Revert "pinctrl: sh-pfc: r8a77990: Fix MOD_SEL1 bit31 when using SIM0_D"
  Revert "pinctrl: sh-pfc: r8a77990: Fix MOD_SEL1 bit30 when using SSI_SCK2 and SSI_WS2"
  libertas: fix a potential NULL pointer dereference
  rtlwifi: prevent memory leak in rtl_usb_probe
  staging: rtl8188eu: fix possible null dereference
  staging: rtl8192u: fix multiple memory leaks on error path
  drm/meson: vclk: use the correct G12A frac max value
  spi: Add call to spi_slave_abort() function when spidev driver is released
  ath10k: Check if station exists before forwarding tx airtime report
  drm/amd/display: Handle virtual signal type in disable_link()
  ath10k: add cleanup in ath10k_sta_state()
  drm/amd/display: Rebuild mapped resources after pipe split
  drm/ttm: return -EBUSY on pipelining with no_gpu_wait (v2)
  drm/amdgpu: grab the id mgr lock while accessing passid_mapping
  drm/amdgpu/sriov: add ring_stop before ring_create in psp v11 code
  iio: light: bh1750: Resolve compiler warning and make code more readable
  iio: max31856: add missing of_node and parent references to iio_dev
  drm/amd/display: OTC underflow fix
  drm/bridge: analogix-anx78xx: silence -EPROBE_DEFER warnings
  drm/amd/display: verify stream link before link test
  drm: Use EOPNOTSUPP, not ENOTSUPP
  drm: exynos: exynos_hdmi: use cec_notifier_conn_(un)register
  drm/panel: Add missing drm_panel_init() in panel drivers
  drm/mipi-dbi: fix a loop in debugfs code
  drm: mst: Fix query_payload ack reply struct
  drm/virtio: switch virtio_gpu_wait_ioctl() to gem helper.
  drm/vc4/vc4_hdmi: fill in connector info
  ALSA: hda/ca0132 - Fix work handling in delayed HP detection
  ALSA: hda/ca0132 - Avoid endless loop
  ALSA: hda/ca0132 - Keep power on during processing DSP response
  ALSA: pcm: Avoid possible info leaks from PCM stream buffers
  Btrfs: fix removal logic of the tree mod log that leads to use-after-free issues
  btrfs: handle ENOENT in btrfs_uuid_tree_iterate
  btrfs: do not leak reloc root if we fail to read the fs root
  btrfs: skip log replay on orphaned roots
  btrfs: abort transaction after failed inode updates in create_subvol
  btrfs: send: remove WARN_ON for readonly mount
  Btrfs: fix missing data checksums after replaying a log tree
  btrfs: return error pointer from alloc_test_extent_buffer
  Btrfs: make tree checker detect checksum items with overlapping ranges
  btrfs: do not call synchronize_srcu() in inode_tree_del
  btrfs: don't double lock the subvol_sem for rename exchange
  NFC: nxp-nci: Fix probing without ACPI
  net: dsa: b53: Fix egress flooding settings
  net: stmmac: platform: Fix MDIO init for platforms without PHY
  net: ethernet: ti: davinci_cpdma: fix warning "device driver frees DMA memory with different size"
  mlxsw: spectrum_router: Remove unlikely user-triggerable warning
  dpaa2-ptp: fix double free of the ptp_qoriq IRQ
  net: ena: fix issues in setting interrupt moderation params in ethtool
  net: ena: fix default tx interrupt moderation interval
  bonding: fix bond_neigh_init()
  neighbour: remove neigh_cleanup() method
  selftests: forwarding: Delete IPv6 address at the end
  sctp: fully initialize v4 addr in some functions
  sctp: fix memleak on err handling of stream initialization
  qede: Fix multicast mac configuration
  qede: Disable hardware gro when xdp prog is installed
  nfp: flower: fix stats id allocation
  net: usb: lan78xx: Fix suspend/resume PHY register access error
  net-sysfs: Call dev_hold always in rx_queue_add_kobject
  net: qlogic: Fix error paths in ql_alloc_large_buffers()
  net: phy: ensure that phy IDs are correctly typed
  net: nfc: nci: fix a possible sleep-in-atomic-context bug in nci_uart_tty_receive()
  net: hisilicon: Fix a BUG trigered by wrong bytes_compl
  net: gemini: Fix memory leak in gmac_setup_txqs
  net: dst: Force 4-byte alignment of dst_metrics
  mod_devicetable: fix PHY module format
  fjes: fix missed check in fjes_acpi_add
  af_packet: set defaule value for tmo
  arm64: defconfig: Enable CPUFREQ-HW for Lahaina
  arm64: Add fallback option during memory hot add
  mm/Kconfig: Enable MEMORY_HOTPLUG for arm64
  arm64: Honor limits set by bootloader
  arm64: Add "remove" probe driver for memory hot-remove
  arm64: Hot-remove implementation for arm64
  arm64: memory-hotplug: Add MEMORY_HOTPLUG, MEMORY_HOTREMOVE, MEMORY_PROBE
  arm64: Memory hotplug support for arm64 platform
  msm: IPA: uC debug stats for loadable modules
  ASoC: compress: add support for Vorbis and amrwb_plus
  ANDROID: Kconfig.gki: Add Hidden SPRD DRM configs
  defconfig: Enable MHI Host driver for lahaina
  mhi: add snapshot for MHI driver stack
  mhi: core: export symbols for references
  uapi: sound: add new meta key to get DSP render position
  Kconfig: add description for AUDIO_QGKI
  SoC: pcm: Add delay_blk feature
  include: Add snapshot of header files for wcd spi and dsp manager
  ALSA: jack: Add support to report second microphone
  defconfig: lahaina-qgki: enable CONFIG_AUDIO_QGKI
  uapi: sound: latency mode support for transcode loopback
  ASoC: msm: add support for different compressed formats
  ASoc: msm: qdspv2: Clock recovery support in compress driver
  dt-bindings: sound: Add snapshot of audio port types for soundwire
  ASoC: msm: qdsp6v2: Add TrueHD HDMI compress pass-though
  msm: dt-binding: add snapshot of audio external clockfor Lahaina
  ASoC: msm: qdsp6v2: Support to set session start delay
  arm64: defconfig: Enable CONFIG_BT_SLIM on Lahaina
  bluetooth: add change for btfm slimbus driver
  ASoC: msm: qdsp6v2: Support to configure render window
  ASoC: msm: qdsp6v2: Support to configure clk recovery mode
  ASoC: msm: qdsp6v2: Support to configure render mode
  ASoC: Cold start latency reduction
  SoC: soc-pcm: call pcm_new when creating new pcm
  ASoC: compress: update snd_soc_platform to snd_soc_component
  ANDROID: Add a tracepoint for mapping inode to full path
  Revert "drm/virtio: fix DRM_FORMAT_* handling"
  ANDROID: gki_defconfig: Disable TRANSPARENT_HUGEPAGE
  staging: android: ion: Remove unused rbtree for ion_buffer
  kasan: Zero shadow memory on memory hotplug
  defconfig: lahaina: Enable QRNG driver
  drivers: slimbus: Makefile: Correct makefile configuration
  ASoC: core: Support for compress ioctls
  ASoC: pcm: Add support for compat mode
  wil6210: notify cfg80211_new_sta upon connection before init tx ring
  wil6210: allow disabling EDMG through force_edmg_channel debugfs
  wil6210: fix update SSID when changing beacon
  Linux 5.4.6
  ALSA: hda: Fix regression by strip mask fix
  drm/amdgpu: add invalidate semaphore limit for SRIOV and picasso in gmc9
  drm/amdgpu: avoid using invalidate semaphore for picasso
  drm/i915/gvt: Fix cmd length check for MI_ATOMIC
  drm/amdgpu/gfx10: re-init clear state buffer after gpu reset
  drm/amdgpu/gfx10: explicitly wait for cp idle after halt/unhalt
  drm/amdgpu: invalidate mmhub semaphore workaround in gmc9/gmc10
  drm/amdgpu: initialize vm_inv_eng0_sem for gfxhub and mmhub
  drm/amd/display: add default clocks if not able to fetch them
  drm/amd/display: re-enable wait in pipelock, but add timeout
  drm/dp_mst: Correct the bug in drm_dp_update_payload_part1()
  drm/radeon: fix r1xx/r2xx register checker for POT textures
  drm/i915/fbc: Disable fbc by default on all glk+
  drm/nouveau/kms/nv50-: Limit MST BPC to 8
  drm/nouveau/kms/nv50-: Store the bpc we're using in nv50_head_atom
  drm/nouveau/kms/nv50-: Call outp_atomic_check_view() before handling PBN
  scsi: qla2xxx: Fix incorrect SFUB length used for Secure Flash Update MB Cmd
  scsi: qla2xxx: Correctly retrieve and interpret active flash region
  scsi: qla2xxx: Change discovery state before PLOGI
  scsi: qla2xxx: Added support for MPI and PEP regions for ISP28XX
  scsi: qla2xxx: Initialize free_work before flushing it
  scsi: qla2xxx: Ignore NULL pointer in tcm_qla2xxx_free_mcmd
  scsi: iscsi: Fix a potential deadlock in the timeout handler
  scsi: ufs: Disable autohibern8 feature in Cadence UFS
  dm thin: Flush data device before committing metadata
  dm thin metadata: Add support for a pre-commit callback
  dm clone: Flush destination device before committing metadata
  dm clone metadata: Use a two phase commit
  dm clone metadata: Track exact changes per transaction
  dm btree: increase rebalance threshold in __rebalance2()
  dm mpath: remove harmful bio-based optimization
  drm: meson: venc: cvbs: fix CVBS mode matching
  drm/mgag200: Flag all G200 SE A machines as broken wrt <startadd>
  drm/mgag200: Add workaround for HW that does not support 'startadd'
  drm/mgag200: Store flags from PCI driver data in device structure
  drm/mgag200: Extract device type from flags
  drm/panfrost: Fix a race in panfrost_gem_free_object()
  drm/panfrost: Fix a BO leak in panfrost_ioctl_mmap_bo()
  drm/panfrost: Fix a race in panfrost_ioctl_madvise()
  dma-buf: Fix memory leak in sync_file_merge()
  vfio/pci: call irq_bypass_unregister_producer() before freeing irq
  ARM: tegra: Fix FLOW_CTLR_HALT register clobbering by tegra_resume()
  ARM: dts: s3c64xx: Fix init order of clock providers
  cifs: Fix retrieval of DFS referrals in cifs_mount()
  CIFS: Fix NULL pointer dereference in mid callback
  CIFS: Do not miss cancelled OPEN responses
  CIFS: Close open handle after interrupted close
  CIFS: Respect O_SYNC and O_DIRECT flags during reconnect
  cifs: Don't display RDMA transport on reconnect
  cifs: smbd: Return -ECONNABORTED when trasnport is not in connected state
  cifs: smbd: Return -EINVAL when the number of iovs exceeds SMBDIRECT_MAX_SGE
  cifs: smbd: Add messages on RDMA session destroy and reconnection
  cifs: smbd: Only queue work for error recovery on memory registration
  cifs: smbd: Return -EAGAIN when transport is reconnecting
  rpmsg: glink: Free pending deferred work on remove
  rpmsg: glink: Don't send pending rx_done during remove
  rpmsg: glink: Fix rpmsg_register_device err handling
  rpmsg: glink: Put an extra reference during cleanup
  rpmsg: glink: Fix use after free in open_ack TIMEOUT case
  rpmsg: glink: Fix reuse intents memory leak issue
  rpmsg: glink: Set tail pointer to 0 at end of FIFO
  xtensa: fix syscall_set_return_value
  xtensa: fix TLB sanity checker
  gfs2: fix glock reference problem in gfs2_trans_remove_revoke
  gfs2: Multi-block allocations in gfs2_page_mkwrite
  xtensa: use MEMBLOCK_ALLOC_ANYWHERE for KASAN shadow map
  block: fix "check bi_size overflow before merge"
  PM / QoS: Redefine FREQ_QOS_MAX_DEFAULT_VALUE to S32_MAX
  PCI: Apply Cavium ACS quirk to ThunderX2 and ThunderX3
  PCI: rcar: Fix missing MACCTLR register setting in initialization sequence
  PCI: Do not use bus number zero from EA capability
  PCI/MSI: Fix incorrect MSI-X masking on resume
  PCI: Fix Intel ACS quirk UPDCR register address
  PCI: pciehp: Avoid returning prematurely from sysfs requests
  PCI/PM: Always return devices to D0 when thawing
  PCI/switchtec: Read all 64 bits of part_event_bitmap
  mmc: core: Re-work HW reset for SDIO cards
  mmc: core: Drop check for mmc_card_is_removable() in mmc_rescan()
  mmc: block: Add CMD13 polling for MMC IOCTLS with R1B response
  mmc: block: Make card_busy_detect() a bit more generic
  USB: Fix incorrect DMA allocations for local memory pool drivers
  ANDROID: update ABI for db845c changes
  BACKPORT: iommu: arm-smmu-impl: Add sdm845 implementation hook
  UPSTREAM: firmware/qcom_scm: Add scm call to handle smmu errata
  UPSTREAM: firmware: qcom_scm-64: Add atomic version of qcom_scm_call
  UPSTREAM: cpufreq: qcom-hw: Move driver initialization earlier
  UPSTREAM: cpufreq: Initialize cpufreq-dt driver earlier
  UPSTREAM: cpufreq: Initialize the governors in core_initcall
  ANDROID: tty: serial_core: Export uart_console_device so it can be used by modules
  ANDROID: gki_defconfig: Add qcom pcie options to gki_defconfig
  ANDROID: Kconfig.gki: Add entries for qcom clk drivers
  ANDROID: Kconfig.gki: Add PINCTRL_MSM to QCOM Hidden configs
  ANDROID: Kconfig.gki: Add hidden CONFIG_WANT_DEV_COREDUMP for DRM_MSM driver
  ANDROID: PCI: qcom: Add support for SDM845 PCIe controller
  ANDROID: PCI: qcom: Fix the fixup of PCI_VENDOR_ID_QCOM
  ANDROID: phy: qcom: qmp: Add SDM845 QHP PCIe PHY
  ANDROID: phy: qcom: qmp: Add SDM845 PCIe QMP PHY support
  ANDROID: phy: qcom: qmp: Use power_on/off ops for PCIe
  ANDROID: phy: qcom-qmp: Increase PHY ready timeout
  msm: ipa3: Fix to ignore frag status packet in lan consumer pipe
  cpufreq: qcom-cpufreq-hw: Fix incorrect type warning from sparse
  arm64: defconfig: Enable SPS driver for Lahaina
  ASoC: compress: propagate the error code from the compress framework
  ASoC: msm: Update the encode option and sample rate
  Asoc: Add audio backend to hwdep interface
  ALSA: pcm: fix blocking while loop in snd_pcm_update_hw_ptr0()
  ASoC: Compress: Check and set pcm_new driver op
  ASoC: dapm: Avoid static route b/w cpu and codec dai
  scsi: ufs-qcom: Add reset control support for host controller
  scsi: ufs-qcom: Add ioctl interface for ufs query requests
  BACKPORT: FROMLIST: scsi: ufs: Export query request interfaces
  ALSA: compress: Add support to send codec specific data
  scsi: ufs-qti: Fix overwriting model name
  ASoC: msm: qdsp6v2: Cleanup of compress offload drivers
  ALSA: PCM: User control API implementation
  ALSA: PCM: volume API implementation
  ALSA: core: Handle user defined ioctls
  coresight: tmc: Fix mem_lock dead lock
  cpufreq: record CPUFREQ stat for fast switch path
  cpufreq: Add snapshot of qcom-cpufreq driver
  arm64: defconfig: Enable debug features on Lahaina
  coresight: ost: correct the kconfig dependency
  Bluetooth: Re-initialize regulator to NULL on error
  ANDROID: gki_defconfig: Enable CONFIG_GNSS_CMDLINE_SERIAL
  ANDROID: gnss: Add command line test driver
  ANDROID: serdev: add platform device support
  ANDROID: usb: gadget: Add configfs attribuite for controling match_existing_only
  net: cnss2: Remove unsupported symbol references
  ANDROID: gki_defconfig: enable ARM64_SW_TTBR0_PAN
  ANDROID: gki_defconfig: Set BINFMT_MISC as =m
  arm64: defconfig: Enable EDAC driver support for QCOM SoCs
  msm: sps: Fix build warnings
  msm: ipa3: Fix to avoid memory out of bound access error
  wil6210: reduce ucode_debug memory region
  wil6210: enable access category queues
  wil6210: allow sending special packets when tx ring is full
  wil6210: Support ndo_select_queue in net_device_ops
  wil6210: add verification for cid upper bound
  wil6210: take mem_lock for writing in crash dump collection
  wil6210: minimize the time that mem_lock is held
  wil6210: enable AP/PCP power save
  soc: mem_dump: fix physical address mapping issue
  soc: mem_dump: Add support for CPU subsystem register dump
  soc: qcom: Update the dump table region size in imem
  soc: qcom: Unify the memory dump entries registration
  arm64: defconfig: Enable minidump driver on Lahaina GKI
  soc: qcom: Add snapshot of minidump
  FROMLIST: ARM: Remove arm_pm_restart()
  FROMLIST: ARM64: Remove arm_pm_restart()
  FROMLIST: ARM: Register with kernel restart handler
  FROMLIST: drivers: firmware: psci: Register with kernel restart handler
  FROMLIST: ARM: xen: Register with kernel restart handler
  FROMLIST: ARM: prima2: Register with kernel restart handler
  shmbridge: get bridge mem pool's DMA address with dma_map_single
  firmware: qcom_scm: Add calls to support poweroff driver
  firmware: qcom_scm: Expose qcom_scm_set_download_mode
  arm64: defconfig: Enable WALT for Lahaina
  sched: Improve the scheduler
  hwrng: Add QRNG driver snapshot for kona
  msm: sps: Add SPS driver snapshot
  ANDROID: ASoC: add hikey960-i2s DT bindings
  ANDROID: sound: Add hikey960 i2s audio driver
  ANDROID: HACK: adv7511: Add poweron delay to allow for EDID probing to work
  ANDROID: drm: kirin: Fix Makefile to correct for module builds
  ANDROID: drm: kirin960: Remove one mode-line that seems to be causing trouble
  ANDROID: drm: kirin: remove wait for VACTIVE IRQ
  ANDROID: drm: kirin: Add kirin960 dpe driver support
  ANDROID: drm: kirin: Introduce kirin960
  ANDROID: arm64: dts: hi3660: Add support for usb on Hikey960
  ANDROID: arm64: dts: hikey960: Fix bootwarning on mapping reboot reason syscon
  ANDROID: arm64: dts: hi3660: adb reboot node
  ANDROID: arm64: dts: hi3660: enable gpu
  ANDROID: arm64: dts: hi3660-hikey960: Add i2s & sound device
  ANDROID: arm64: dts: hi3660: add display driver dts
  ANDROID: arm64: dts: hikey960: Add CMA entry for ION/framebuffers
  ANDROID: mm/memory.c: export mm_trace_rss_stat
  ANDROID: update ABI for 5.4.5
  Linux 5.4.5
  r8169: add missing RX enabling for WoL on RTL8125
  net: mscc: ocelot: unregister the PTP clock on deinit
  ionic: keep users rss hash across lif reset
  xdp: obtain the mem_id mutex before trying to remove an entry.
  page_pool: do not release pool until inflight == 0.
  net/mlx5e: ethtool, Fix analysis of speed setting
  net/mlx5e: Fix translation of link mode into speed
  net/mlx5e: Fix freeing flow with kfree() and not kvfree()
  net/mlx5e: Fix SFF 8472 eeprom length
  act_ct: support asymmetric conntrack
  net/mlx5e: Fix TXQ indices to be sequential
  net: Fixed updating of ethertype in skb_mpls_push()
  hsr: fix a NULL pointer dereference in hsr_dev_xmit()
  Fixed updating of ethertype in function skb_mpls_pop
  gre: refetch erspan header from skb->data after pskb_may_pull()
  cls_flower: Fix the behavior using port ranges with hw-offload
  net: sched: allow indirect blocks to bind to clsact in TC
  net: core: rename indirect block ingress cb function
  tcp: Protect accesses to .ts_recent_stamp with {READ,WRITE}_ONCE()
  tcp: tighten acceptance of ACKs not matching a child socket
  tcp: fix rejected syncookies due to stale timestamps
  net: ipv6_stub: use ip6_dst_lookup_flow instead of ip6_dst_lookup
  net: ipv6: add net argument to ip6_dst_lookup_flow
  net/mlx5e: Query global pause state before setting prio2buffer
  tipc: fix ordering of tipc module init and exit routine
  tcp: md5: fix potential overestimation of TCP option space
  openvswitch: support asymmetric conntrack
  net/tls: Fix return values to avoid ENOTSUPP
  net: thunderx: start phy before starting autonegotiation
  net_sched: validate TCA_KIND attribute in tc_chain_tmplt_add()
  net: sched: fix dump qlen for sch_mq/sch_mqprio with NOLOCK subqueues
  net: ethernet: ti: cpsw: fix extra rx interrupt
  net: dsa: fix flow dissection on Tx path
  net: bridge: deny dev_set_mac_address() when unregistering
  mqprio: Fix out-of-bounds access in mqprio_dump
  inet: protect against too small mtu values.
  ANDROID: add initial ABI whitelist for android-5.4
  wil6210: dump Rx status message on errors
  arm64: config: Enable socinfo driver for QCOM SoCs
  coresight: Add snapshot of jtagv8 driver
  defconfig: lahaina-gki: enable ufs 7nm phy for lahaina
  phy: qcom-ufs: add 7nm UFS QMP PHY support on Lahaina
  phy: qcom-ufs: add UFS HS-G4 support
  phy: qcom-ufs: move PHY configurations after vregs and clocks are enabled
  phy: qcom-ufs: don't error out if vddp-ref-clk-supply is absent
  phy: qcom-ufs: make ref_clk as optional
  phy: qcom-ufs: separate out 2 lanes configuration
  phy: qcom-ufs: set no runtime PM callbacks flag
  phy: qcom-ufs: parse ref-clk details prior to resource request
  phy: qcom-ufs: remove warnings for optional clocks
  phy: qcom-ufs: add optional ref aux clk
  phy: qcom-ufs: don't probe for "dev_ref_clk_ctrl_mem"
  phy: qcom-ufs: remove failure when rx/tx_iface_clk are absent
  defconfig: Initial genericarmv8 defconfig
  mm: oom_kill: dump info of all tasks when the FG process is killed
  iommu/arm-smmu: restrict secure vmid update while attached
  iommu/arm-smmu: reduce tlb sync poll retry latency
  interconnect: qcom:  Build icc-rpmh with qnoc-lahaina
  kbuild: Disable the gcc-wrapper with an environment variable
  PM / devfreq: icc: add support for L3 voting
  PM / devfreq: memlat: add support for shared core-dev tables
  sched: Support Energy Aware Scheduling irrespective of governor
  sched: Add schedutil snapshot
  PM / devfreq: memlat: simplify core-dev table parsing logic
  ANDROID: abi update for 5.4.4
  ANDROID: mm: Throttle rss_stat tracepoint
  FROMLIST: vsprintf: Inline call to ptr_to_hashval
  UPSTREAM: rss_stat: Add support to detect RSS updates of external mm
  UPSTREAM: mm: emit tracepoint when RSS changes
  defconfig: Enable QCOM_RUN_QUEUE_STATS
  time: Add rq_stats snapshot
  Linux 5.4.4
  EDAC/ghes: Do not warn when incrementing refcount on 0
  r8169: fix rtl_hw_jumbo_disable for RTL8168evl
  workqueue: Fix missing kfree(rescuer) in destroy_workqueue()
  blk-mq: make sure that line break can be printed
  ext4: fix leak of quota reservations
  ext4: fix a bug in ext4_wait_for_tail_page_commit
  splice: only read in as much information as there is pipe buffer space
  rtc: disable uie before setting time and enable after
  USB: dummy-hcd: increase max number of devices to 32
  powerpc: Define arch_is_kernel_initmem_freed() for lockdep
  mm/shmem.c: cast the type of unmap_start to u64
  s390/kaslr: store KASLR offset for early dumps
  s390/smp,vdso: fix ASCE handling
  firmware: qcom: scm: Ensure 'a0' status code is treated as signed
  ext4: work around deleting a file with i_nlink == 0 safely
  mm: memcg/slab: wait for !root kmem_cache refcnt killing on root kmem_cache destruction
  mfd: rk808: Fix RK818 ID template
  mm, memfd: fix COW issue on MAP_PRIVATE and F_SEAL_FUTURE_WRITE mappings
  powerpc: Fix vDSO clock_getres()
  powerpc: Avoid clang warnings around setjmp and longjmp
  omap: pdata-quirks: remove openpandora quirks for mmc3 and wl1251
  omap: pdata-quirks: revert pandora specific gpiod additions
  iio: ad7949: fix channels mixups
  iio: ad7949: kill pointless "readback"-handling code
  Revert "scsi: qla2xxx: Fix memory leak when sending I/O fails"
  scsi: qla2xxx: Fix a dma_pool_free() call
  scsi: qla2xxx: Fix SRB leak on switch command timeout
  reiserfs: fix extended attributes on the root directory
  ext4: Fix credit estimate for final inode freeing
  quota: fix livelock in dquot_writeback_dquots
  seccomp: avoid overflow in implicit constant conversion
  ext2: check err when partial != NULL
  quota: Check that quota is not dirty before release
  video/hdmi: Fix AVI bar unpack
  powerpc/xive: Skip ioremap() of ESB pages for LSI interrupts
  powerpc: Allow flush_icache_range to work across ranges >4GB
  powerpc/xive: Prevent page fault issues in the machine crash handler
  powerpc: Allow 64bit VDSO __kernel_sync_dicache to work across ranges >4GB
  coresight: Serialize enabling/disabling a link device.
  stm class: Lose the protocol driver when dropping its reference
  ppdev: fix PPGETTIME/PPSETTIME ioctls
  RDMA/core: Fix ib_dma_max_seg_size()
  ARM: dts: omap3-tao3530: Fix incorrect MMC card detection GPIO polarity
  mmc: host: omap_hsmmc: add code for special init of wl1251 to get rid of pandora_wl1251_init_card
  pinctrl: samsung: Fix device node refcount leaks in S3C64xx wakeup controller init
  pinctrl: samsung: Fix device node refcount leaks in init code
  pinctrl: samsung: Fix device node refcount leaks in S3C24xx wakeup controller init
  pinctrl: samsung: Fix device node refcount leaks in Exynos wakeup controller init
  pinctrl: samsung: Add of_node_put() before return in error path
  pinctrl: armada-37xx: Fix irq mask access in armada_37xx_irq_set_type()
  pinctrl: rza2: Fix gpio name typos
  ACPI: PM: Avoid attaching ACPI PM domain to certain devices
  ACPI: EC: Rework flushing of pending work
  ACPI: bus: Fix NULL pointer check in acpi_bus_get_private_data()
  ACPI: OSL: only free map once in osl.c
  ACPI / hotplug / PCI: Allocate resources directly under the non-hotplug bridge
  ACPI: LPSS: Add dmi quirk for skipping _DEP check for some device-links
  ACPI: LPSS: Add LNXVIDEO -> BYT I2C1 to lpss_device_links
  ACPI: LPSS: Add LNXVIDEO -> BYT I2C7 to lpss_device_links
  ACPI / utils: Move acpi_dev_get_first_match_dev() under CONFIG_ACPI
  ALSA: hda/realtek - Line-out jack doesn't work on a Dell AIO
  ALSA: oxfw: fix return value in error path of isochronous resources reservation
  ALSA: fireface: fix return value in error path of isochronous resources reservation
  cpufreq: powernv: fix stack bloat and hard limit on number of CPUs
  PM / devfreq: Lock devfreq in trans_stat_show
  intel_th: pci: Add Tiger Lake CPU support
  intel_th: pci: Add Ice Lake CPU support
  intel_th: Fix a double put_device() in error path
  powerpc/perf: Disable trace_imc pmu
  drm/panfrost: Open/close the perfcnt BO
  perf tests: Fix out of bounds memory access
  erofs: zero out when listxattr is called with no xattr
  cpuidle: use first valid target residency as poll time
  cpuidle: teo: Fix "early hits" handling for disabled idle states
  cpuidle: teo: Consider hits and misses metrics of disabled states
  cpuidle: teo: Rename local variable in teo_select()
  cpuidle: teo: Ignore disabled idle states that are too deep
  cpuidle: Do not unset the driver if it is there already
  media: cec.h: CEC_OP_REC_FLAG_ values were swapped
  media: radio: wl1273: fix interrupt masking on release
  media: bdisp: fix memleak on release
  media: vimc: sen: remove unused kthread_sen field
  media: hantro: Fix picture order count table enable
  media: hantro: Fix motion vectors usage condition
  media: hantro: Fix s_fmt for dynamic resolution changes
  s390/mm: properly clear _PAGE_NOEXEC bit when it is not supported
  ar5523: check NULL before memcpy() in ar5523_cmd()
  wil6210: check len before memcpy() calls
  cgroup: pids: use atomic64_t for pids->limit
  blk-mq: avoid sysfs buffer overflow with too many CPU cores
  md: improve handling of bio with REQ_PREFLUSH in md_flush_request()
  ASoC: fsl_audmix: Add spin lock to protect tdms
  ASoC: Jack: Fix NULL pointer dereference in snd_soc_jack_report
  ASoC: rt5645: Fixed typo for buddy jack support.
  ASoC: rt5645: Fixed buddy jack support.
  workqueue: Fix pwq ref leak in rescuer_thread()
  workqueue: Fix spurious sanity check failures in destroy_workqueue()
  dm zoned: reduce overhead of backing device checks
  dm writecache: handle REQ_FUA
  hwrng: omap - Fix RNG wait loop timeout
  ovl: relax WARN_ON() on rename to self
  ovl: fix corner case of non-unique st_dev;st_ino
  ovl: fix lookup failure on multi lower squashfs
  lib: raid6: fix awk build warnings
  rtlwifi: rtl8192de: Fix missing enable interrupt flag
  rtlwifi: rtl8192de: Fix missing callback that tests for hw release of buffer
  rtlwifi: rtl8192de: Fix missing code to retrieve RX buffer address
  btrfs: record all roots for rename exchange on a subvol
  Btrfs: send, skip backreference walking for extents with many references
  btrfs: Remove btrfs_bio::flags member
  btrfs: Avoid getting stuck during cyclic writebacks
  Btrfs: fix negative subv_writers counter and data space leak after buffered write
  Btrfs: fix metadata space leak on fixup worker failure to set range as delalloc
  btrfs: use refcount_inc_not_zero in kill_all_nodes
  btrfs: use btrfs_block_group_cache_done in update_block_group
  btrfs: check page->mapping when loading free space cache
  iwlwifi: pcie: fix support for transmitting SKBs with fraglist
  usb: typec: fix use after free in typec_register_port()
  phy: renesas: rcar-gen3-usb2: Fix sysfs interface of "role"
  usb: dwc3: ep0: Clear started flag on completion
  usb: dwc3: gadget: Clear started flag for non-IOC
  usb: dwc3: gadget: Fix logical condition
  usb: dwc3: pci: add ID for the Intel Comet Lake -H variant
  virtio-balloon: fix managed page counts when migrating pages between zones
  virt_wifi: fix use-after-free in virt_wifi_newlink()
  mtd: rawnand: Change calculating of position page containing BBM
  mtd: spear_smi: Fix Write Burst mode
  brcmfmac: disable PCIe interrupts before bus reset
  EDAC/altera: Use fast register IO for S10 IRQs
  tpm: Switch to platform_get_irq_optional()
  tpm: add check after commands attribs tab allocation
  usb: mon: Fix a deadlock in usbmon between mmap and read
  usb: core: urb: fix URB structure initialization function
  USB: adutux: fix interface sanity check
  usb: roles: fix a potential use after free
  USB: serial: io_edgeport: fix epic endpoint lookup
  USB: idmouse: fix interface sanity checks
  USB: atm: ueagle-atm: add missing endpoint check
  iio: adc: ad7124: Enable internal reference
  iio: adc: ad7606: fix reading unnecessary data from device
  iio: imu: inv_mpu6050: fix temperature reporting using bad unit
  iio: humidity: hdc100x: fix IIO_HUMIDITYRELATIVE channel reporting
  iio: adis16480: Fix scales factors
  iio: imu: st_lsm6dsx: fix ODR check in st_lsm6dsx_write_raw
  iio: adis16480: Add debugfs_reg_access entry
  ARM: dts: pandora-common: define wl1251 as child node of mmc3
  usb: common: usb-conn-gpio: Don't log an error on probe deferral
  interconnect: qcom: qcs404: Walk the list safely on node removal
  interconnect: qcom: sdm845: Walk the list safely on node removal
  xhci: make sure interrupts are restored to correct state
  xhci: handle some XHCI_TRUST_TX_LENGTH quirks cases as default behaviour.
  xhci: Increase STS_HALT timeout in xhci_suspend()
  xhci: fix USB3 device initiated resume race with roothub autosuspend
  xhci: Fix memory leak in xhci_add_in_port()
  usb: xhci: only set D3hot for pci device
  staging: gigaset: add endpoint-type sanity check
  staging: gigaset: fix illegal free on probe errors
  staging: gigaset: fix general protection fault on probe
  staging: vchiq: call unregister_chrdev_region() when driver registration fails
  staging: rtl8712: fix interface sanity check
  staging: rtl8188eu: fix interface sanity check
  staging: exfat: fix multiple definition error of `rename_file'
  binder: fix incorrect calculation for num_valid
  usb: host: xhci-tegra: Correct phy enable sequence
  usb: Allow USB device to be warm reset in suspended state
  USB: documentation: flags on usb-storage versus UAS
  USB: uas: heed CAPACITY_HEURISTICS
  USB: uas: honor flag to avoid CAPACITY16
  media: venus: remove invalid compat_ioctl32 handler
  ceph: fix compat_ioctl for ceph_dir_operations
  compat_ioctl: add compat_ptr_ioctl()
  scsi: qla2xxx: Fix memory leak when sending I/O fails
  scsi: qla2xxx: Fix double scsi_done for abort path
  scsi: qla2xxx: Fix driver unload hang
  scsi: qla2xxx: Do command completion on abort timeout
  scsi: zfcp: trace channel log even for FCP command responses
  scsi: lpfc: Fix bad ndlp ptr in xri aborted handling
  Revert "nvme: Add quirk for Kingston NVME SSD running FW E8FK11.T"
  nvme: Namepace identification descriptor list is optional
  usb: gadget: pch_udc: fix use after free
  usb: gadget: configfs: Fix missing spin_lock_init()
  mm: vmstat: add pageoutclean
  drivers: thermal: qmi_cooling: Add snapshot of QMI cooling device driver
  drivers: thermal: Add a snapshot of bcl soc driver
  drivers: thermal: bcl_pmic5: Add snapshot of bcl driver
  drivers: thermal: qmi_sensor: Add snapshot of qmi sensor driver
  drivers: thermal: cpu_isolate: Add a snapshot of cpu isolate
  msm: cvp: Fence path for Lahaina
  cpufreq: qcom-hw: cleanup the driver for HW driver
  coresight: stm: STM master side access control
  scsi: ufs-qti: port UFS driver changes for QTI configuration
  socinfo: add socinfo driver
  uio: Kconfig: Enable msm shared memory driver
  defconfig: lahaina: enable PCIe root complex and PCIe MSI for lahaina
  msm: pcie: remove deprecated explicit clock retention support
  msm: pcie: add lahaina PCI device ID to PCI table
  msm: pcie: update deprecated wakeup_source_* API
  msm: pcie: add snapshot of PCIe root complex bus driver
  usb: xhci: Add helper API to issue stop endpoint command
  usb: xhci: Add helper APIs to return xhci dma addresses
  usb: xhci: Add support for secondary interrupters
  defconfig: enable cdsp loader on Lahaina as DLKM module
  defconfig: lahaina: enable the UCSI Glink driver
  usb: typec: ucsi: add QTI UCSI Glink driver
  sched/walt: Improve the scheduler
  sched/walt: Improve the scheduler
  sched/fair: Avoid force newly idle load balance if have iowait task
  sched/fair: Improve the scheduler
  sched/fair: Force gold cpus to do idle lb when silver has big tasks
  defconfig: enable fastrpc driver on Lahaina
  BACKPORT: FROMLIST: scsi: ufs: Export query request interfaces
  defconfig: lahaina-gki: enable qpnp-power-on driver
  input: qpnp-power-on: add support for PON_GEN3 subtype PON peripherals
  dt-bindings: input: add qpnp-power-on bindings
  input: add snapshot of qpnp-power-on driver
  defconfig: lahaina-qgki: enable regmap debugfs features
  defconfig: lahaina-gki: enable gpio-keys driver
  defconfig: lahaina-gki: enable SPMI and PMIC drivers
  defconfig: lahaina-qgki: enable CONFIG_IIO
  pinctrl: qcom: spmi-gpio: define an irqchip for each pinctrl device
  pinctrl: qcom: spmi-gpio: add support for PMR735A and PMR735B PMIC variants
  pinctrl: Add wakeup gpio register and bit information
  msm: ipa: load IPA FW after smmu CB are probed
  iio: adc: Add support for PMIC7 VADC
  dt-bindings: iio: Add PMIC7 ADC support
  soc: qcom: reserve memory in memory dump probe
  slimbus: Add snapshot of slimbus driver
  msm: ipa4: Allocate coalescing close frame command payload
  coresight: enable stm logging for trace events, marker and printk
  arm64: defconfig: Enable QUPv3 and GPI drivers on lahaina
  coresight-tmc: Re-use ETR buffer across use cases
  coresight-tmc: add support to configure flush and reset CTIs
  coresight: Add snapshot of Coresight cti driver
  coresight: Add regulator and clock vote for coresight components
  msm: ipa: add support to updated wdi3 scratch register2 alone
  msm: ipa: Fix not sending QMI sync indication
  msm: ipa: Add graceful handling to skip partial packets
  msm: ipa: Fix not to update state during pipe reset
  msm: ipa: Update IPA register offsets and fields
  wil6210: fix iommu_unmap in IPA mode
  wil6210: new NL command to get driver capabilities
  wil6210: use wigig.ini as a configuration file
  wil6210: extend bus voting support for wider bandwidth
  wil6210: ipa stop/wake queue based on outstanding packets
  wil6210: add support for spi slave reset
  wil6210: update the disconnect sequence for the IPA disconnect
  wil6210: support VR profiles
  wil6210: add support for sensing over SPI
  wil6210: support IPA offload
  wil6210: support multiple desc and status rings handling
  wil6210: support NL_60G_GEN_FW_RESET UNSPEC vendor command
  wil6210: add support for pci linkdown recovery
  wil6210: add support for headroom configuration
  arm64: defconfig: Enable spcom driver on Lahaina
  cpufreq: qcom: Update cycle counter logic for CPUFREQ HW
  cpufreq: qcom-cpufreq-hw: Initialize the spinlock before usage
  cpufreq: qcom-hw: Add register offsets for non-epss devices
  cpufreq: qcom-hw: Update freq_scale from fast_switch path
  cpufreq: qcom-hw: Add support for EPSS CPUFREQ firmware
  net: cnss2: Update CNSS2 driver
  ANDROID: update abi with unbindable_ports sysctl
  BACKPORT: FROMLIST: net: introduce ip_local_unbindable_ports sysctl
  ANDROID: update abi for 5.4.3 merge
  ANDROID: update abi_gki_aarch64.xml for ion, drm changes
  ANDROID: drivers: gpu: drm: export drm_mode_convert_umode symbol
  ANDROID: ion: flush cache before exporting non-cached buffers
  Linux 5.4.3
  kselftest: Fix NULL INSTALL_PATH for TARGETS runlist
  perf script: Fix invalid LBR/binary mismatch error
  EDAC/ghes: Fix locking and memory barrier issues
  watchdog: aspeed: Fix clock behaviour for ast2600
  drm/mcde: Fix an error handling path in 'mcde_probe()'
  md/raid0: Fix an error message in raid0_make_request()
  cpufreq: imx-cpufreq-dt: Correct i.MX8MN's default speed grade value
  ALSA: hda - Fix pending unsol events at shutdown
  KVM: x86: fix out-of-bounds write in KVM_GET_EMULATED_CPUID (CVE-2019-19332)
  binder: Handle start==NULL in binder_update_page_range()
  binder: Prevent repeated use of ->mmap() via NULL mapping
  binder: Fix race between mmap() and binder_alloc_print_pages()
  Revert "serial/8250: Add support for NI-Serial PXI/PXIe+485 devices"
  vcs: prevent write access to vcsu devices
  thermal: Fix deadlock in thermal thermal_zone_device_check
  iomap: Fix pipe page leakage during splicing
  bdev: Refresh bdev size for disks without partitioning
  bdev: Factor out bdev revalidation into a common helper
  rfkill: allocate static minor
  RDMA/qib: Validate ->show()/store() callbacks before calling them
  can: ucan: fix non-atomic allocation in completion handler
  spi: Fix NULL pointer when setting SPI_CS_HIGH for GPIO CS
  spi: Fix SPI_CS_HIGH setting when using native and GPIO CS
  spi: atmel: Fix CS high support
  spi: stm32-qspi: Fix kernel oops when unbinding driver
  spi: spi-fsl-qspi: Clear TDH bits in FLSHCR register
  crypto: user - fix memory leak in crypto_reportstat
  crypto: user - fix memory leak in crypto_report
  crypto: ecdh - fix big endian bug in ECC library
  crypto: ccp - fix uninitialized list head
  crypto: geode-aes - switch to skcipher for cbc(aes) fallback
  crypto: af_alg - cast ki_complete ternary op to int
  crypto: atmel-aes - Fix IV handling when req->nbytes < ivsize
  crypto: crypto4xx - fix double-free in crypto4xx_destroy_sdr
  KVM: x86: Grab KVM's srcu lock when setting nested state
  KVM: x86: Remove a spurious export of a static function
  KVM: x86: fix presentation of TSX feature in ARCH_CAPABILITIES
  KVM: x86: do not modify masked bits of shared MSRs
  KVM: arm/arm64: vgic: Don't rely on the wrong pending table
  KVM: nVMX: Always write vmcs02.GUEST_CR3 during nested VM-Enter
  KVM: PPC: Book3S HV: XIVE: Set kvm->arch.xive when VPs are allocated
  KVM: PPC: Book3S HV: XIVE: Fix potential page leak on error path
  KVM: PPC: Book3S HV: XIVE: Free previous EQ page when setting up a new one
  arm64: dts: exynos: Revert "Remove unneeded address space mapping for soc node"
  arm64: Validate tagged addresses in access_ok() called from kernel threads
  drm/i810: Prevent underflow in ioctl
  drm: damage_helper: Fix race checking plane->state->fb
  drm/msm: fix memleak on release
  jbd2: Fix possible overflow in jbd2_log_space_left()
  kernfs: fix ino wrap-around detection
  nfsd: restore NFSv3 ACL support
  nfsd: Ensure CLONE persists data and metadata changes to the target file
  can: slcan: Fix use-after-free Read in slcan_open
  tty: vt: keyboard: reject invalid keycodes
  CIFS: Fix SMB2 oplock break processing
  CIFS: Fix NULL-pointer dereference in smb2_push_mandatory_locks
  x86/PCI: Avoid AMD FCH XHCI USB PME# from D0 defect
  x86/mm/32: Sync only to VMALLOC_END in vmalloc_sync_all()
  media: rc: mark input device as pointing stick
  Input: Fix memory leak in psxpad_spi_probe
  coresight: etm4x: Fix input validation for sysfs.
  Input: goodix - add upside-down quirk for Teclast X89 tablet
  Input: synaptics-rmi4 - don't increment rmiaddr for SMBus transfers
  Input: synaptics-rmi4 - re-enable IRQs in f34v7_do_reflash
  Input: synaptics - switch another X1 Carbon 6 to RMI/SMbus
  soc: mediatek: cmdq: fixup wrong input order of write api
  ALSA: hda: Modify stream stripe mask only when needed
  ALSA: hda - Add mute led support for HP ProBook 645 G4
  ALSA: pcm: oss: Avoid potential buffer overflows
  ALSA: hda/realtek - Fix inverted bass GPIO pin on Acer 8951G
  ALSA: hda/realtek - Dell headphone has noise on unmute for ALC236
  ALSA: hda/realtek - Enable the headset-mic on a Xiaomi's laptop
  ALSA: hda/realtek - Enable internal speaker of ASUS UX431FLC
  SUNRPC: Avoid RPC delays when exiting suspend
  io_uring: ensure req->submit is copied when req is deferred
  io_uring: fix missing kmap() declaration on powerpc
  fuse: verify attributes
  fuse: verify write return
  fuse: verify nlink
  fuse: fix leak of fuse_io_priv
  io_uring: transform send/recvmsg() -ERESTARTSYS to -EINTR
  io_uring: fix dead-hung for non-iter fixed rw
  mwifiex: Re-work support for SDIO HW reset
  serial: ifx6x60: add missed pm_runtime_disable
  serial: 8250_dw: Avoid double error messaging when IRQ absent
  serial: stm32: fix clearing interrupt error flags
  serial: serial_core: Perform NULL checks for break_ctl ops
  serial: pl011: Fix DMA ->flush_buffer()
  tty: serial: msm_serial: Fix flow control
  tty: serial: fsl_lpuart: use the sg count from dma_map_sg
  serial: 8250-mtk: Use platform_get_irq_optional() for optional irq
  usb: gadget: u_serial: add missing port entry locking
  staging/octeon: Use stubs for MIPS && !CAVIUM_OCTEON_SOC
  mailbox: tegra: Fix superfluous IRQ error message
  time: Zero the upper 32-bits in __kernel_timespec on 32-bit
  lp: fix sparc64 LPSETTIMEOUT ioctl
  sparc64: implement ioremap_uc
  perf scripts python: exported-sql-viewer.py: Fix use of TRUE with SQLite
  arm64: tegra: Fix 'active-low' warning for Jetson Xavier regulator
  arm64: tegra: Fix 'active-low' warning for Jetson TX1 regulator
  rsi: release skb if rsi_prepare_beacon fails
  phy: phy-qcom-ufs: add receive line configuration
  ufs: qcom: port from msm-4.19
  scsi: ufs-qcom: Clock scaling code restructure
  defconfig: lahaina-gki: Enable USB Electrical and Link test support
  clk: dt-bindings: Define clock IDs supported by bolero codec
  FROMLIST: scsi: ufs: Fix ufshcd_hold() caused scheduling while atomic
  FROMLIST: scsi: ufs: Add dev ref clock gating wait time support
  FROMLIST: scsi: ufs-qcom: Adjust bus bandwidth voting and unvoting
  FROMLIST: scsi: ufs: Remove the check before call setup clock notify vops
  FROMLIST: scsi: ufs: set load before setting voltage in regulators
  FROMLIST: scsi: ufs: Flush exception event before suspend
  FROMLIST: scsi: ufs: Do not rely on prefetched data
  FROMLIST: scsi: ufs: Fix up clock scaling
  FROMGIT: scsi: ufs: Do not free irq in suspend
  FROMGIT: scsi: ufs: Do not clear the DL layer timers
  FROMGIT: scsi: ufs: Release clock if DMA map fails
  FROMGIT: scsi: ufs: Use DBD setting in mode sense
  FROMGIT: scsi: core: Adjust DBD setting in MODE SENSE for caching mode page per LLD
  FROMGIT: scsi: ufs: Complete pending requests in host reset and restore path
  FROMGIT: scsi: ufs: Avoid messing up the compl_time_stamp of lrbs
  FROMGIT: scsi: ufs: Update VCCQ2 and VCCQ min/max voltage hard codes
  FROMGIT: scsi: ufs: Recheck bkops level if bkops is disabled
  drivers: thermal: of-thermal: Add support for virtual sensor
  drivers: thermal: of-thermal: Add a snapshot of of-thermal
  drivers: thermal: Add QTI_THERMAL config
  clk: qcom: Fix orphaned sleep clocks for Lahaina
  arm64: defconfig: Remove IKHEADERS option
  drivers: thermal: cpu_cooling: Use Policy cpu as cdev ID
  thermal: Include qcom thermal drivers for CONFIG_ARCH_QCOM
  arm64: Remove cpu_soft_reset() prototype
  uapi: Fix QCOM headers to work with UAPI_HEADER_TEST
  Revert "perf: Set the DSU PMU to be readable from any CPU"
  msm: kgsl: Check the return value of sysfs functions
  dma-mapping-fast: Clean up common code
  dma-mapping-fast: Add support for DMA_ATTR_FORCE_CONTIGUOUS
  dma-mapping-fast: Do not clobber existing atomic pool
  dma-mapping-fast: Reorganize common behavior
  drivers: soc: qcom: Add snapshot of EUD driver
  msm: adsprpc: Remove IPC logging from fastrpc driver
  ANDROID: update abi_gki_aarch64.xml for LTO, CFI, and SCS
  ANDROID: gki_defconfig: enable LTO, CFI, and SCS
  wil6210: fix for "runtime PM when interface is down"
  wil6210: support FCC board file
  wil6210: force EDMG channel through debugfs
  wil6210: publish/receive WMI events/commands through nl
  wil6210: BRP antenna limit API
  wil6210: support configurable board file via sysfs
  wil6210: use country specific board file upon reg domain change
  wil6210: allow flashless boot when OTP is empty
  wil6210: drop RX probe reponses with low SNR
  wil6210: add sysfs for setting connect SNR threshold
  wil6210: support AOA in FTM session
  wil6210: potential buffer overflow in wmi_evt_aoa_meas
  wil6210: send uevent when creating sysfs files
  wil6210: add option to ignore OTA regulatory hints
  wil6210: add sysfs file for enable/disable fst link loss
  wil6210: add sysfs for thermal throttling configuration
  coresight: ost: Add snapshot of Coresight OST driver
  soc: qcom: subsys_notif: Add early SSR notifications for PCIe DRV
  ANDROID: update abi_gki_aarch64.xml for CONFIG_GNSS
  ANDROID: cuttlefish_defconfig: Enable CONFIG_GNSS
  rtc: rtc-pm8xxx: add support for PMK8350 RTC
  ANDROID: gki_defconfig: enable HID configs
  defconfig: lahaina-gki: Enable QTI Tri-LED driver
  arm64: defconfig: Enable tz_log driver for Lahaina
  firmware: qcom: Add TZ log driver snapshot for Lahaina
  Revert "soc: qcom: socinfo: Expose custom attributes"
  UPSTREAM: arm64: Validate tagged addresses in access_ok() called from kernel threads
  soc: qcom: spcom: add spcom as DLKM for GKI
  cpufreq: qcom-hw: use no_log when reading cpu counter val
  cpufreq: qcom-hw: Register child devices
  cpufreq: qcom-hw: Add ready callback to register CPU cooling device
  cpufreq: qcom-hw: add cycle counter support
  cpufreq: qcom-hw: remove check for hw enable during probe
  cpufreq: qcom-hw: Set dvfs_possible_from_any_cpu cpufreq driver flag
  cpufreq: qcom-hw: Notify the current frequency to the topology driver
  cpufreq: qcom-hw: register with Energy Model framework
  cpufreq: qcom: Read voltage LUT and populate OPP
  cpufreq: qcom-hw: use pre-defined core count for max cores
  cpufreq: qcom: Add snapshot of cpufreq-hw
  usb: host: xhci: Replace msleep with usleep_range
  usb: host: xhci: Change L1 timeout default to 128us
  usb: xhci: Add support for SINGLE_STEP_SET_FEATURE test of EHSET
  host: xhci-plat: Enable autosuspend functionality with root hub
  usb: core: Enable xhci irq after starting controller
  usb: xhci-plat: Remove system PM call backs
  xhci-plat: Use USB glue driver device as sysdev
  arm64: defconfig: Enable EPSS L3 Interconnect driver for Lahaina
  arm64: defconfig: Enable QCOM clock debug features
  firmware: qcom_scm: Export invoke callback response API
  firmware: qcom_scm: Move qseecom specific workarounds
  sched/fair: Improve the scheduler
  sched/fair: Improve the scheduler
  FROMLIST: sched/fair: Use wake_q length as a hint for wake_wide
  sched/fair: Improve the scheduler
  sched: use the CPU true capacity while sorting the min/mid/max CPUs
  cpuset: Restore tasks affinity while moving across cpusets
  PM / EM: Micro optimization in em_pd_energy
  sched: trace : Print current sched domain overutilization status
  ANDROID: sched/fair: Reduce balance interval to 1 jiffy if we have a misfit task
  ANDROID: trace/sched: Add tracepoint for sched_overutilized events
  ANDROID: sched: Per-Sched-domain over utilization
  sched: Add snapshot of task boost feature
  watchdog: use per_cpu_ptr() in watchdog_disable()
  Revert "softirq: Let ksoftirqd do its job"
  Revert "Mark HI and TASKLET softirq synchronous"
  genirq: Honour IRQ's affinity hint during migration
  softirq: Don't defer all softirq during RT task
  sched/cpupri: Exclude isolated CPUs from the lowest_mask
  softirq: defer softirq processing to ksoftirqd if CPU is busy with RT
  sched: avoid migrating when softint on tgt cpu should be short
  sched: avoid scheduling RT threads on cores currently handling softirqs
  sched/rt: Add snapshot of changes to RT class
  sched/fair: Add snapshot of load-balancing changes
  sched/fair: Add snapshot of placement changes
  sched: Add snapshot of preemption and IRQs disable callers
  sched: Add snapshot of sched_{up,down}migrate knobs
  kernel: Add snapshot of changes to support cpu isolation
  sched: Add sched_enq_deq_task trace point
  sched: Add snapshot of Window Assisted Load Tracking (WALT)
  interconnect: qcom: Prevent duplicate BCMs being added to commit list
  scripts: Makefile: Remove flags which are not support by EXT_DTC
  scripts: Makefile: add support to use external DTC
  scripts: Makefile: Add multi overlay dtbo-base apply verify
  scripts: Makefile: Change output overlay from .dtb to .tmp
  scripts: Makefile: add support to compile DT overlay blobs
  leds: Add snapshot of QTI Tri-LED driver
  soc: qcom: add secure processor communication (spcom) driver
  msm: kgsl: Remove legacy support for clock_set_flags
  msm: kgsl: Remove enhanced memory accounting
  msm: kgsl: Add an option to always enable I/O coherency
  msm: kgsl: bus dcvs fixes
  msm: kgsl: Generate TCS votes to send to the GMU
  msm: kgsl: Use bulk clock functions for GMU
  msm: kgsl: Modernize bus scaling
  msm: kgsl: Dynamically create an OPP table at runtime
  msm: kgsl: Move voltage levels to the GPU specific powerlevels
  msm: kgsl: Bring in the GPU bandwidth governor
  msm: kgsl: Fixup kernel API changes
  msm: kgsl: Bring in the GPU frequency governor
  msm: kgsl: Remove "zero" power level
  msm: kgsl: Move the system PM operations to adreno
  msm: kgsl: Re-export the UAPI header
  arm64: defconfig: Enable spss_utils driver on Lahaina
  coresight: funnel: add support for multiple output ports
  coresight: Kconfig: Add CORESIGHT_QGKI configuration
  ANDROID: kbuild: limit LTO inlining
  ANDROID: kbuild: merge module sections with LTO
  msm: adsprpc: Updating dependencies for fastrpc driver
  arm64: defconfig: Enable printing unhashed pointers on Lahaina
  arm64: defconfig: Enable devfreq drivers on Lahaina
  usb: gadget: f_fs: Add support for IPC logging
  defconfig: lahaina-gki: Enable PWM LPG driver
  pwm: Add snapshot of QTI PWM LPG driver
  defconfig: lahaina-gki: Enable MFD SPMI PMIC driver
  clk: qcom: Add additional clock debugfs support
  clk: add/modify debugfs support for clocks
  interconnect: qcom: Add EPSS L3 support for Lahaina
  dt-bindings: interconnect: Add epss l3 header for Lahaina
  drivers: llcc edac: Add Cache Error Reporting driver for llcc
  drivers: soc: qcom: Add snapshot of boot stats driver
  drivers: firmware: psci: Register with kernel restart handler
  msm: ipa: Free rx_wrapper for tmp_alloc pages
  ANDROID: f2fs: fix possible merge of unencrypted with encrypted I/O
  spi: spi-msm-geni: Add support to make SPI driver GKI compliant
  coresight: Add snapshot of remote etm driver
  coresight: Add snapshot of remote qdss driver
  wil6210: added sysfs file for FTM calibration
  wil6210: fix QCA_WLAN_VENDOR_ATTR_FREQ attribute ID
  wil6210: support FTM/AOA while unassociated
  wil6210: initial support for FTM and AOA
  ANDROID: gki_defconfig: Enable UCLAMP by default
  firmware: qcom_scm: Check for NULL before dereferencing __scm
  ANDROID: make sure proc mount options are applied
  ANDROID: sound: usb: Add helper APIs to enable audio stream
  devfreq: Do not allow tunable updates when device is suspended
  PM/devfreq: Do not switch governors from sysfs when device is suspended
  PM / devfreq: Fix race condition between suspend/resume and governor_store
  PM / devfreq: Introduce an event lock
  Revert "PM / devfreq: Modify the device name as devfreq(X) for sysfs"
  PM / devfreq: qoslat: Update voting level definitions
  devfreq: Allow bw_hwmon resume with zero resume freq
  devfreq: bwmon: Increase the IOPercentage limits to 400
  qcom-llcc-pmu: Update the LLCC PMU configurations for kona
  perf: Introduce a LLCC PMU
  PM / devfreq: Add support for memory latency QoS voting
  PM / devfreq: memlat: optimize freq and stall_pct calculations
  PM / devfreq: memlat: Aggregate memlat mons under a controller
  devfreq: detect ddr type and add frequency table accordingly
  PM / devfreq: bw_hwmon: use unsigned parameter for bytes_to_mbps
  devfreq: bimc_bwmon: Add support to enable BWMON clks
  devfreq: return error code when governor start fails
  devfreq: bw_mon: check for the return value of start_monitor
  devfreq: Do not round up bandwidth on BWMON4 devices
  PM / devfreq: bw_hwmon: Fix a race condition in hwmon stop
  devfreq: suppress platform driver bind / unbind feature
  devfreq: suppress platform driver bind / unbind feature
  devfreq: update freq variable in compute_freq function
  devfreq: memlat: Add suspend/resume for mem_latency
  PM / devfreq: icc: Switch to OPP APIs
  PM / devfreq: bw_hwmon: Reset clear bits for some hardware versions
  PM / devfreq: memlat: Add support for compute-bound logic
  msm: kgsl: Set up the adreno device at runtime
  msm: kgsl: Add dedicated boolean functions for adreno sysfs
  msm: kgsl: Make a child device just for the bwmon governor
  msm: kgsl: Remove nonsense around the a5xx and a6xx SMMU table update
  msm: kgsl: Move memory pool initialization to the KGSL core
  msm: kgsl: Cleanup the device tree probing for memory pools
  msm: kgsl: Use DMA APIs for memory pool cache maintenance
  msm: kgsl: Move kgsl_pool_allocate_pages()
  msm: kgsl: Legacy efuse doesn't need adreno_device
  msm: kgsl: Make the a6xx mbox client static
  msm: kgsl: Make switch out of secure more target specific
  msm: kgsl: Clean up preemption
  msm: kgsl: Make RGMU use the regular GPU powerlevels
  msm: kgsl: Cleanup iommu device tree probe
  msm: kgsl: Consolidate zap shader loading
  dmaengine: gpi: Add support to make GPI driver GKI compliant
  PM / devfreq: memlat: Look for min stall% in addition to ratio criteria
  devfreq: simple-dev: Make the freq-table property optional
  PM / devfreq: bw_hwmon: Add support for specifying count factor
  PM / devfreq: bw_hwmon: Add support for configuring byte MID match
  PM / devfreq: bw_hwmon: Add support for BWMON5 monitors
  PM / devfreq: bw_hwmon: Split out sw and hw paths
  PM / devfreq: bw_hwmon: Reflow some code
  PM / devfreq: bw_hwmon: irq can be negative
  PM / devfreq: bimc-bwmon: Add support for version 4
  PM / devfreq: bw_hwmon: Add HW offload support to governor
  PM / devfreq: Introduce a memory-latency governor
  PM / devfreq: bw_hwmon: Expose a throttle adjust tunable
  devfreq: devfreq_simple_dev: Add support for preparing device clock
  PM / devfreq: bw_hwmon: Update to low latency, high sampling rate algorithm
  PM / devfreq: governor_cache_hwmon: Fix race in monitor start/stop
  PM / devfreq: bimc-bwmon: set a floor_mbps for irq threshold
  PM / devfreq: cache_hwmon: Use array for reporting monitor stats
  PM / devfreq: cache_hwmon: Move IRQ handling to device drivers
  PM / devfreq: Refactor Cache HWmon governor to be more generic
  PM / devfreq: bimc-bwmon: Add support for version 2
  usb: gadget: ffs: Use local copy of descriptors for userspace copy
  soc: qcom: ssr: Export find_subsys_device function
  ALSA: compress: Add support to send codec specific data
  arm64: defconfig: Enable Lazy DMA Mapping on Lahaina GKI
  msm:ipa: changing err prints to dbg prints
  drivers: thermal: Add a snapshot of thermal framework
  usb: dwc3-msm: Add soft dependency on phy drivers
  msm: ipa3: SRAM NAT, DDR NAT, back-and-forth NAT
  iommu/arm-smmu: Reduce log spam from ECATS translation timeouts
  ANDROID: Update ABI representation
  ANDROID: Don't base allmodconfig on gki_defconfig
  ANDROID: Disable UNWINDER_ORC for allmodconfig
  ANDROID: ASoC: Fix 'allmodconfig' build break
  dmaengine: gpi: Add support for 32-bit kernel
  dmaengine: gpi: Capture GPI hardware status during GSI General interrupt
  uio: msm_sharedmem: Fix format specifier to print resource_size_t
  uio: msm_sharedmem: Use proper format to print phys_addr_t
  uio: msm_sharedmem: Add support for HYP call
  uio: Add snapshot of MSM sharedmem driver
  iommu/arm-smmu: Express fastmap domain geometries correctly
  ANDROID: sched, cpuidle: Track cpuidle state index in the scheduler
  topology: Add snapshot of possible sibling cpu mask changes
  sched: Add snapshot of affinity changes
  sched: reduce sleep duration in wait_task_inactive()
  power: em: correct increasing freq/power ratio
  sched/topology: Enable EAS on SMP systems also
  ANDROID: sched/fair: Avoid unnecessary balancing of asymmetric capacity groups
  Revert "sched/deadline: Remove cpu_active_mask from cpudl_find()"
  trace/sched: set priority to 150 for deadline tasks
  sched: turn off the TTWU_QUEUE feature
  cpu/hotplug: Ensure that sched domains are rebuilt before hotplug
  sched: Introduce PANIC_ON_SCHED_BUG
  timer: Add function to migrate timers
  hrtimer: make sure PINNED flag is cleared after removing hrtimer
  hrtimer.h: prevent pinned timer state from breaking inactive test
  hrtimer: create hrtimer_quiesce_cpu() to isolate CPU from hrtimers
  timer: create timer_quiesce_cpu() to isolate CPU from timers
  hrtimer: update timer->state with 'pinned' information
  serial: Add UART port for EUD
  Linux 5.4.2
  platform/x86: hp-wmi: Fix ACPI errors caused by passing 0 as input size
  platform/x86: hp-wmi: Fix ACPI errors caused by too small buffer
  HID: core: check whether Usage Page item is after Usage ID items
  crypto: talitos - Fix build error by selecting LIB_DES
  Revert "jffs2: Fix possible null-pointer dereferences in jffs2_add_frag_to_fragtree()"
  ext4: add more paranoia checking in ext4_expand_extra_isize handling
  r8169: fix resume on cable plug-in
  r8169: fix jumbo configuration for RTL8168evl
  selftests: pmtu: use -oneline for ip route list cache
  tipc: fix link name length check
  selftests: bpf: correct perror strings
  selftests: bpf: test_sockmap: handle file creation failures gracefully
  net/tls: use sg_next() to walk sg entries
  net/tls: remove the dead inplace_crypto code
  selftests/tls: add a test for fragmented messages
  net: skmsg: fix TLS 1.3 crash with full sk_msg
  net/tls: free the record on encryption error
  net/tls: take into account that bpf_exec_tx_verdict() may free the record
  openvswitch: remove another BUG_ON()
  openvswitch: drop unneeded BUG_ON() in ovs_flow_cmd_build_info()
  sctp: cache netns in sctp_ep_common
  slip: Fix use-after-free Read in slip_open
  sctp: Fix memory leak in sctp_sf_do_5_2_4_dupcook
  openvswitch: fix flow command message size
  net: sched: fix `tc -s class show` no bstats on class with nolock subqueues
  net: psample: fix skb_over_panic
  net: macb: add missed tasklet_kill
  net: dsa: sja1105: fix sja1105_parse_rgmii_delays()
  mdio_bus: don't use managed reset-controller
  macvlan: schedule bc_work even if error
  gve: Fix the queue page list allocated pages count
  x86/fpu: Don't cache access to fpu_fpregs_owner_ctx
  thunderbolt: Power cycle the router if NVM authentication fails
  mei: me: add comet point V device id
  mei: bus: prefix device names on bus with the bus name
  USB: serial: ftdi_sio: add device IDs for U-Blox C099-F9P
  staging: rtl8723bs: Add 024c:0525 to the list of SDIO device-ids
  staging: rtl8723bs: Drop ACPI device ids
  staging: rtl8192e: fix potential use after free
  staging: wilc1000: fix illegal memory access in wilc_parse_join_bss_param()
  usb: dwc2: use a longer core rest timeout in dwc2_core_reset()
  driver core: platform: use the correct callback type for bus_find_device
  crypto: inside-secure - Fix stability issue with Macchiatobin
  net: disallow ancillary data for __sys_{send,recv}msg_file()
  net: separate out the msghdr copy from ___sys_{send,recv}msg()
  io_uring: async workers should inherit the user creds
  PM / devfreq: icc: Add suspend/resume APIs
  PM / devfreq: governor_bw_hwmon: Add suspend/resume support
  PM / devfreq: Add MSM BIMC bwmon support for bw_hwmon governor
  msm: devfreq_icc: Add devfreq driver for device bandwidth voting
  devfreq: Add CPUBW HW monitor governor
  arm64: defconfig: Enable RPMh clock driver for Lahaina
  wil6210: add module parameter for alternate interface name
  ANDROID: Update ABI representation
  arm64: defconfig: Enable CONFIG_I2C_RTC6226_QCA on Lahaina
  defconfig: enable fastrpc driver on Lahaina
  media: v4l2-core: guard code against ABI breakage
  msm: cvp: Disabe sys cache and dsp initialization
  checkpatch: check symlinks while searching compatible strings
  UPSTREAM: of: property: Add device link support for interrupt-parent, dmas and -gpio(s)
  UPSTREAM: of: property: Fix the semantics of of_is_ancestor_of()
  UPSTREAM: i2c: of: Populate fwnode in of_i2c_get_board_info()
  UPSTREAM: regulator: core: Don't try to remove device links if add failed
  UPSTREAM: driver core: Clarify documentation for fwnode_operations.add_links()
  mm: cma: Reduce dmesg spam
  mm: cma: make writeable CMA debugfs optional
  mm: cma: restrict base_pfn exposure
  clk: qcom: add clk rpmh support for Lahaina
  dt-bindings: clock: Add rpmh header for Lahaina
  mm: cma: Print region name on failure
  dt-bindings: sound: Add GPR device tree bindings
  lib/vsprintf: Less restrictive hashed pointer printing
  firmware: qcom_scm: Add MODULE_LICENSE
  firmware: qcom-scm: Fix formatting errors in the trace string
  msm: kgsl: Make secure memory depend on QCOM_SECURE_BUFFER
  msm: kgsl: Fix context refcounting for adreno debugfs
  msm: kgsl: Fix linked sysfs files
  msm: kgsl: Replace the sorted dispatcher pending list
  msm: kgsl: Use a simpler algorithm to find SVM addresses
  msm: kgsl: Move globals to the KGSL device handle
  msm: kgsl: Reorganize the shared memory APIs
  msm: kgsl: Stop using KGSL_MEMDESC_CONTIG
  msm: kgsl: Remove unneeded static inline functions
  msm: kgsl: Make 'globals' a device level debugfs file
  msm: kgsl: Remove a few unused device tree properties
  msm: kgsl: Move always on timer reads to target specific code
  msm: kgsl: Cleanup GPU regulators
  msm: kgsl: Make coresight optional
  msm: kgsl: Add support for the Adreno GPU
  ANDROID: Update ABI representation
  ANDROID: gki_defconfig: IIO=y
  msm: ipa: Add PIL driver as soft dependency for IPA
  msm: ipa3: Fix to hold the clock until replenish the descriptors
  msm: ipa3: Fix to increase timeout value for send command
  ANDROID: Update ABI representation
  coresight: funnel: add support for duplicating funnel devices
  msm: adsprpc: Fix adsprpc info leak
  mm, page_owner: record time and pid
  iommu: arm-smmu: clear TBU halt request when halt times out
  iommu/arm-smmu: fix stale fault reporting in ecats operation
  clk: qcom: dispcc: Fix stuck on warning for disp_cc_mdss_mdp_lut_clk
  clk: qcom: gpucc: Voltage voting support for Lahaina
  clk: qcom: camcc: Voltage voting support for Lahaina
  clk: qcom: gcc: Voltage voting support for Lahaina
  ANDROID: ASoC: core - add hostless DAI support
  mm: usercopy: skip stack page span check
  ANDROID: gki_defconfig: =m's applied for virtio configs in arm64
  arm64: defconfig: Enable the MSM ION heaps on Lahaina GKI
  arm64: defconfig: Enable secure buffer driver on Lahaina GKI
  msm: ipa3: Fix to avoid buffer overread
  serial: msm_geni_serial: Ensure to set clock freq correctly
  soc: qcom: Add spss transport for Glink Probe driver
  ANDROID: Update ABI representation after 5.4.1 merge
  Linux 5.4.1
  KVM: PPC: Book3S HV: Flush link stack on guest exit to host kernel
  powerpc/book3s64: Fix link stack flush on context switch
  staging: comedi: usbduxfast: usbduxfast_ai_cmdtest rounding error
  USB: serial: option: add support for Foxconn T77W968 LTE modules
  USB: serial: option: add support for DW5821e with eSIM support
  USB: serial: mos7840: fix remote wakeup
  USB: serial: mos7720: fix remote wakeup
  USB: serial: mos7840: add USB ID to support Moxa UPort 2210
  appledisplay: fix error handling in the scheduled work
  USB: chaoskey: fix error case of a timeout
  usb-serial: cp201x: support Mark-10 digital force gauge
  usbip: Fix uninitialized symbol 'nents' in stub_recv_cmd_submit()
  usbip: tools: fix fd leakage in the function of read_attr_usbip_status
  USBIP: add config dependency for SGL_ALLOC
  ALSA: hda - Disable audio component for legacy Nvidia HDMI codecs
  media: mceusb: fix out of bounds read in MCE receiver buffer
  media: imon: invalid dereference in imon_touch_event
  media: cxusb: detect cxusb_ctrl_msg error in query
  media: b2c2-flexcop-usb: add sanity checking
  media: uvcvideo: Fix error path in control parsing failure
  futex: Prevent exit livelock
  futex: Provide distinct return value when owner is exiting
  futex: Add mutex around futex exit
  futex: Provide state handling for exec() as well
  futex: Sanitize exit state handling
  futex: Mark the begin of futex exit explicitly
  futex: Set task::futex_state to DEAD right after handling futex exit
  futex: Split futex_mm_release() for exit/exec
  exit/exec: Seperate mm_release()
  futex: Replace PF_EXITPIDONE with a state
  futex: Move futex exit handling into futex code
  cpufreq: Add NULL checks to show() and store() methods of cpufreq
  media: usbvision: Fix races among open, close, and disconnect
  media: usbvision: Fix invalid accesses after device disconnect
  media: vivid: Fix wrong locking that causes race conditions on streaming stop
  media: vivid: Set vid_cap_streaming and vid_out_streaming to true
  ALSA: usb-audio: Fix Scarlett 6i6 Gen 2 port data
  ALSA: usb-audio: Fix NULL dereference at parsing BADD
  futex: Prevent robust futex exit race
  x86/entry/32: Fix FIXUP_ESPFIX_STACK with user CR3
  x86/pti/32: Calculate the various PTI cpu_entry_area sizes correctly, make the CPU_ENTRY_AREA_PAGES assert precise
  selftests/x86/sigreturn/32: Invalidate DS and ES when abusing the kernel
  selftests/x86/mov_ss_trap: Fix the SYSENTER test
  x86/entry/32: Fix NMI vs ESPFIX
  x86/entry/32: Unwind the ESPFIX stack earlier on exception entry
  x86/entry/32: Move FIXUP_FRAME after pushing %fs in SAVE_ALL
  x86/entry/32: Use %ss segment where required
  x86/entry/32: Fix IRET exception
  x86/cpu_entry_area: Add guard page for entry stack on 32bit
  x86/pti/32: Size initial_page_table correctly
  x86/doublefault/32: Fix stack canaries in the double fault handler
  x86/xen/32: Simplify ring check in xen_iret_crit_fixup()
  x86/xen/32: Make xen_iret_crit_fixup() independent of frame layout
  x86/stackframe/32: Repair 32-bit Xen PV
  nbd: prevent memory leak
  x86/speculation: Fix redundant MDS mitigation message
  x86/speculation: Fix incorrect MDS/TAA mitigation status
  x86/insn: Fix awk regexp warnings
  md/raid10: prevent access of uninitialized resync_pages offset
  Revert "dm crypt: use WQ_HIGHPRI for the IO and crypt workqueues"
  Revert "Bluetooth: hci_ll: set operational frequency earlier"
  ath10k: restore QCA9880-AR1A (v1) detection
  ath10k: Fix HOST capability QMI incompatibility
  ath10k: Fix a NULL-ptr-deref bug in ath10k_usb_alloc_urb_from_pipe
  ath9k_hw: fix uninitialized variable data
  Bluetooth: Fix invalid-free in bcsp_close()
  serial: msm_geni_serial: Add missing changes from 4.19 kernel
  msm: ipa: Enable IPA compilation for Lahaina
  drivers: soc: qcom: Add snapshot of driver for FSA4480 I2C device
  i3c: i3c-master-qcom-geni: Add I3C GENI driver snapshot
  firmware: qcom_scm: Add trace points to scm driver
  ANDROID: gki_defconfig: enable CONFIG_REGULATOR_FIXED_VOLTAGE
  soc: qcom: Remove downstream scm driver
  FROMLIST: crypto: arm64/sha: fix function types
  ANDROID: arm64: kvm: disable CFI
  ANDROID: arm64: add __nocfi to __apply_alternatives
  ANDROID: arm64: add __pa_function
  ANDROID: arm64: add __nocfi to functions that jump to a physical address
  ANDROID: arm64: bpf: implement arch_bpf_jit_check_func
  ANDROID: bpf: validate bpf_func when BPF_JIT is enabled with CFI
  ANDROID: add support for Clang's Control Flow Integrity (CFI)
  ANDROID: arm64: allow LTO_CLANG and THINLTO to be selected
  FROMLIST: arm64: fix alternatives with LLVM's integrated assembler
  FROMLIST: arm64: lse: fix LSE atomics with LLVM's integrated assembler
  ANDROID: arm64: disable HAVE_ARCH_PREL32_RELOCATIONS with LTO_CLANG
  ANDROID: arm64: vdso: disable LTO
  ANDROID: irqchip/gic-v3: rename gic_of_init to work around a ThinLTO+CFI bug
  ANDROID: soc/tegra: disable ARCH_TEGRA_210_SOC with LTO
  ANDROID: init: ensure initcall ordering with LTO
  ANDROID: drivers/misc/lkdtm: disable LTO for rodata.o
  ANDROID: efi/libstub: disable LTO
  ANDROID: scripts/mod: disable LTO for empty.c
  ANDROID: kbuild: fix dynamic ftrace with clang LTO
  ANDROID: kbuild: add support for Clang LTO
  ANDROID: kbuild: add CONFIG_LD_IS_LLD
  FROMGIT: driver core: platform: use the correct callback type for bus_find_device
  FROMLIST: arm64: implement Shadow Call Stack
  FROMLIST: arm64: disable SCS for hypervisor code
  FROMLIST: arm64: vdso: disable Shadow Call Stack
  FROMLIST: arm64: efi: restore x18 if it was corrupted
  FROMLIST: arm64: preserve x18 when CPU is suspended
  FROMLIST: arm64: reserve x18 from general allocation with SCS
  FROMLIST: arm64: disable function graph tracing with SCS
  FROMLIST: scs: add support for stack usage debugging
  FROMLIST: scs: add accounting
  FROMLIST: add support for Clang's Shadow Call Stack (SCS)
  FROMLIST: arm64: kernel: avoid x18 in __cpu_soft_restart
  FROMLIST: arm64: kvm: stop treating register x18 as caller save
  FROMLIST: arm64/lib: copy_page: avoid x18 register in assembler code
  FROMLIST: arm64: mm: avoid x18 in idmap_kpti_install_ng_mappings
  ANDROID: clang: update to 10.0.1
  clk: qcom: dispcc: Voltage voting support for Lahaina
  clk: qcom: videocc: Voltage voting support for Lahaina
  msm: cvp: Avoid CVP loading at boot
  ANDROID: update ABI representation
  ABI: aarch64: Update ABI snapshot based on v5.4
  msm: ipa: fix ipa driver compilation issue
  iommu: dma-mapping-fast: fix iova alloc wrap
  ALSA: pcm: use lock to protect substream runtime resource
  ALSA: pcm: add locks for accessing runtime resource
  ALSA: compress: Memset timestamp structure to zero
  kconfig: add new config AUDIO_QGKI for audio
  Asoc: Add audio backend to hwdep interface
  kernel: Create and export kernel headers
  usb: dwc3-msm: Delete sysfs files on driver remove
  FROMLIST: pwm: Convert period and duty cycle to u64
  drivers: pinctrl: msm: remove redundant call to set handler
  ANDROID: gki_defconfig: FW_CACHE to no
  FROMGIT: firmware_class: make firmware caching configurable
  msm: adsprpc: Making adsprpc gki compliant
  ANDROID: gki_defconfig: removed CONFIG_PM_WAKELOCKS
  ANDROID: gki_defconfig: enable CONFIG_IKHEADERS as m
  ANDROID: update ABI representation
  FROMLIST: reboot: Export reboot_mode
  FROMLIST: iommu/arm-smmu: Update my email address in MODULE_AUTHOR()
  FROMLIST: iommu/arm-smmu: Allow building as a module
  FROMLIST: iommu/arm-smmu: Unregister IOMMU and bus ops on device removal
  FROMLIST: iommu/arm-smmu-v3: Allow building as a module
  FROMLIST: iommu/arm-smmu-v3: Unregister IOMMU and bus ops on device removal
  FROMLIST: iommu/arm-smmu: Prevent forced unbinding of Arm SMMU drivers
  FROMLIST: Revert "iommu/arm-smmu: Make arm-smmu explicitly non-modular"
  FROMLIST: Revert "iommu/arm-smmu: Make arm-smmu-v3 explicitly non-modular"
  FROMLIST: drivers/iommu: Allow IOMMU bus ops to be unregistered
  FROMLIST: iommu/of: Take a ref to the IOMMU driver during ->of_xlate()
  FROMLIST: drivers/iommu: Take a ref to the IOMMU driver prior to ->add_device()
  FROMLIST: PCI: Export pci_ats_disabled() as a GPL symbol to modules
  FROMLIST: iommu/of: Request ACS from the PCI core when configuring IOMMU linkage
  FROMLIST: drivers/iommu: Export core IOMMU API symbols to permit modular drivers
  FROMGIT: of: property: Add device link support for "iommu-map"
  Revert "FROMLIST: iommu: Export core IOMMU functions to kernel modules"
  Revert "FROMLIST: PCI: Export PCI ACS and DMA searching functions to modules"
  Revert "FROMLIST: of: Export of_phandle_iterator_args() to modules"
  usb: typec: ucsi: Optimise ucsi_unregister()
  usb: typec: ucsi: New error codes
  usb: typec: ucsi: Remove all bit-fields
  usb: typec: ucsi: Remove struct ucsi_control
  usb: typec: ucsi: Remove the old API
  usb: typec: ucsi: ccg: Move to the new API
  usb: typec: ucsi: acpi: Move to the new API
  usb: typec: ucsi: Simplified registration and I/O API
  usb: typec: Remove the callback members from struct typec_capability
  usb: typec: ucsi: Start using struct typec_operations
  usb: typec: tps6598x: Start using struct typec_operations
  usb: typec: tcpm: Start using struct typec_operations
  usb: typec: Separate the operations vector
  usb: typec: Introduce typec_get_drvdata()
  usb: typec: Copy everything from struct typec_capability during registration
  ANDROID: initial branch preparations for 5.4
  soc: qcom: spss_utils: fix emulation logic for lahaina rumi
  i2c: i2c-msm-geni: Add support to make I2C driver GKI compliant
  ALSA: uapi: add new macro SNDRV_AUDIO_QGKI
  ALSA: compress: Add APTX format support in ALSA
  uapi: sound : update audio decoder format headers
  SoC: soc-core: export function to find components
  defconfig: lahaina-gki: enable the fixed regulator driver
  regulator: fixed: add support for proxy consumers
  arm64: defconfig: Enable aop-qmp clock driver for Lahaina
  clk: qcom: clk-aop-qmp: Update CLK_ENABLE_HAND_OFF flag to 0
  clk: qcom: clk-aop-qmp: Add module support to this driver
  arm64: defconfig: Enable IPC IRQ bridge for Lahaina
  arm64: defconfig: Enable GLINK Packet driver for Lahaina
  usb: dt-bindings: Add USB QMP PHY registers definition
  arm64: defconfig: Disable hvc console for lahaina SoC
  usb: dwc3-msm: Don't use devm_ioremap when ringing GSI DB
  usb: dwc3-msm: Simplify GSI register macros
  regulator: rpmh-regulator: add support for proxy consumers
  defconfig: lahaina-gki: enable the regulator proxy consumer library
  regulator: add proxy consumer library
  mm: oom_kill: reap memory of a task that receives SIGKILL
  ion: msm: Move msm_ion probe to subsys_initcall_sync
  soc: qcom: secure_buffer: Move to subsys_initcall
  drivers: irqchip: qcom-pdc: remove SPI config in SCM
  msm: cvp: Init reserved cdsp_mem
  defconfig: Enable qcom_scm as a module
  firmware: qcom_scm: Add calls for watchdog tests
  firmware: qcom_scm: Add calls for seccam
  firmware: qcom_scm: Add calls for csptest
  firmware: qcom_smc: Add compatibility layer for qseecom
  soc: qcom: Migrate SCM calls in secure_buffer
  soc: qcom: secure_buffer: Migrate to qcom_scm usage
  firmware: qcom_scm: Add support to assign multiple memory regions
  firmware: qcom_scm: Permit early SCM calls before driver probe
  soc: qcom: Prune unused SCM calls
  soc: qcom: Migrating to upstream SCM driver in smcinvoke
  firmware: qcom_scm: Add memory protection API for MDF
  firmware: qcom_scm: Add a scm calls for displace memory protect
  thermal: qcom: Migrate SCM calls in msm_lmh_dcvs
  thermal: qcom: Migrate SCM calls in lmh_dbg
  msm: cvp: Migrate SCM calls
  firmware: qcom_scm: Add support for protecting videos
  input: touchscreen: synaptics_dsx: Migrate SCM calls
  firmware: qcom_scm: Add calls for camera
  soc: qcom: Migrate SCM calls in remoteqdss
  firmware: qcom: Migrate SCM calls in tz_log
  soc: qcom: Migrate SCM calls in PIL
  firmware: qcom_scm: Add calls for pfk_ice
  msm: kgsl: Migrate SCM calls in GPU bus governor
  coresight: tpdm: Migrate SCM calls
  soc: qcom: Migrate SCM calls in qtee_shmbridge
  soc: qcom: Migrate SCM calls in msm_tz_smmu
  msm: kgsl: Migrate SCM calls in kgsl iommu
  usb: dwc3: Issue core soft reset upon controller halt failure
  usb: dwc3: gadget: Clear pending events when stopping controller
  usb: gadget: Prevent race between composite_setup & USB disconnect
  msm: ipa4: add MAC filtering for 802_1Q packets
  platform: msm: Migrate SCM calls in IPAv3
  soc: qcom: Migrate SCM calls in jtagv8
  crypto: ice: Migrate SCM calls
  iommu/arm-smmu: Migrate SCM IO calls in arm-smmu
  soc: qcom: Migrate SCM calls in core hang
  msm: kgsl: Migrate SCM calls in adreno
  soc: qcom: Migrate SCM call to disable watchdog
  firmware: qcom_scm: Use qtee_shmbridge if available
  firmware: qcom_scm: Merge qtee_shmbridge and qcom_scm
  firmware: qcom_scm: Rename -64 -> -smc, remove -32
  msm: ipa: Update WDI3.0 specific GSI interface for Lahaina
  arm64: defconfig: Enable the ARM SMMU module on Lahaina
  iommu/arm-smmu: Allow the ARM-SMMU driver to be a module
  Revert "iommu/arm-smmu: Make arm-smmu explicitly non-modular"
  iommu/arm-smmu: Fix atomic domain handling
  iommu/arm-smmu: Use a bitmap for the SMMU domain attributes
  clk: qcom: gpucc: Fix gpll0 parent names
  usb: phy: Remove unused register offsets
  techpack: Replace xtype with type while searching for sub-dirs
  iommu/arm-smmu: Remove legacy bindings bus initialization initcall
  msm: ipa: replace dma_zalloc_coherent()
  soc: qcom: Add Kconfig dependency for SENSORS_SSC
  msm: ipa: Adapt IPA driver to several DLKMs
  msm: ipa: Update IPA driver Kconfig
  iommu/arm-smmu: Remove DOMAIN_ATTR_BITMAP_IOVA_ALLOCATOR
  usb: dwc3-msm: Fix usage of find_matching_dbm_ep()
  usb: dwc3-msm: Fix invalid usb_psy access during remove
  msm: adsprpc: fix compilation errors in fastrpc driver on lahaina
  iommu/arm-smmu: Fix atomic domain attribute check
  ANDROID: usb: gadget: configfs: Support multiple android instances
  clk: qcom: clk-dummy: convert into a platform driver
  usb: dwc3: Suppress error message about optional clks
  msm: ipa: add a thin parsing option for status packets
  msm: ipa: Added an option to enable NAPI in 11ad
  ASoC: core: add debug log for cpu dais
  msm: ipa4: Update mask and shift values for aggr force close register
  clk: qcom: gcc: Fix num_parent count for gcc_usb3 clk init data
  msm: ipa3: Fix to memory allocation failure
  arm64: defconfig: Enable CVP driver
  PM / devfreq: Add cache HW monitor governor
  soc: qcom: secure_buffer: Add missing dma_unmap_single
  firmware: qcom_scm: Support SCM calls before qcom_scm probe
  firmware: qcom_scm: Enable legacy convention in qcom_scm-64.c
  firmware: qcom_scm: Merge legacy and SMCCC conventions
  firmware: qcom_scm-32: Add device argument to atomic calls
  firmware: qcom_scm-32: Create common legacy atomic call
  firmware: qcom_scm-32: Fill SMCCC register in qcom_scm_call
  firmware: qcom_scm-32: Use qcom_scm_desc in non-atomic calls
  firmware: qcom_scm-32: Use SMC arch wrappers
  firmware: qcom_scm-64: Improve SMC convention detection
  firmware: qcom_scm-64: Fill SMC registers in qcom_scm_call_smccc
  firmware: qcom_scm-64: Remove qcom_scm_call_do_smccc
  firmware: qcom_scm-64: Add SCM results to descriptor
  firmware: qcom_scm-64: Move svc/cmd/owner into qcom_scm_desc
  firmware: qcom_scm: Remove unused qcom_scm_get_version
  firmware: qcom_scm: Order functions, definitions by svc/cmd
  firmware: qcom_scm: Apply consistent naming scheme to command IDs
  firmware: qcom_scm-64: Make SMCCC macros less magical
  firmware: qcom_scm: Add funcnum IDs
  firmware: qcom_scm: Rename macros and structures
  firmware/qcom_scm: Add scm call to handle smmu errata
  firmware: qcom_scm-64: Add atomic version of qcom_scm_call
  defconfig: Enable QCOM_SCM on Lahaina QGKI
  defconfig: lahaina: Add QTI_PMIC_GLINK driver
  soc: qcom: Add PMIC Glink driver
  PM / devfreq: Add devfreq driver for simple device
  soc: qcom: qsee_ipc_irq_bridge: Use __poll_t for qiib_poll
  msm: ipa: Bus Scaling/Interconnect Migration
  arm64: defconfig: Enable CONFIG_MSM_BT_POWER on Lahaina
  msm: ipa4: Fix to overcome KW issues
  msm: ipa: IMD command bugfixes
  msm: ipa: update ipa driver APIs for recent wakeup_source and dma
  ASoC: core: Fix possible NULL pointer dereference
  soc: qcom: Add snapshot of watchdog driver
  interconnect: qcom: add virt_clk provider and QUP nodes
  platform: msm-geni-se: Add missing fixes from msm-4.19
  ASoC: msm: Add compressed TX and passthrough support
  Subject: [PATCH 2/3] ABI: aarch64: Update ABI snapshot based on v5.4-rc6
  msm: adsprpc: update driver to latest version from msm-4.19
  msm: gsi: close coal frame before HPS CLEAR
  msm: cvp: Port CVP driver to 5.x kernel
  msm: ipa3: Fix to race condition in updating current polling state
  msm: ipa4: Fix to use common PM handle for coalescing and default pipe
  ASoC: core: update NAME_SIZE to 64
  arm64: defconfig: Enable cam cc clock driver for Lahaina
  msm:ipa: stop the UL MHIP channels  after probe
  msm: ipa: typo in ioctl ipa3_ioctl_mdfy_flt_rule_v2 function
  usb: dwc3-msm: Set vbus_active in peripheral only mode
  ALSA: core: Expose sound card online/offline state
  msm: ipa4: add generic header processing context
  defconfig: lahaina-gki: enable USB PHY drivers
  ASoC: msm: fix integer overflow for long duration offload playback
  ALSA: jack: update jack types
  spi: spi-msm-geni: Add SPI GENI driver snapshot
  clk: qcom: clk-rcg2: add callbacks to deal with voltage voting
  clk: qcom: clk-alpha-pll: add callbacks to deal with voltage voting
  clk: qcom: regmap: Add regmap support for voltage voting
  arm64: defconfig: Enable USB DIAG driver on Lahaina
  usb: phy: Make phy drivers GKI compatible
  arm64: defconfig: Enable CONFIG_ION_POOL_AUTO_REFILL on Lahaina
  arm64: defconfig: Enable QRTR on Lahaina
  soc: qcom: qpnp-pbs: replace #ifdef with #if IS_ENABLED()
  platform: msm: qpnp-revid: replace #ifdef with #if IS_ENABLED()
  soc: qcom: secure_buffer: change the way of divide
  clk: qcom: add vdd-class voltage regulator voting support
  defconfig: Lahaina: Enable support for console UART
  usb: phy: Remove reset link training related workaround
  usb: gadget: Add snapshot of USB GSI function driver
  regmap: Make regmap debugfs write optional
  regmap: improve debugfs interface to dump specific addresses
  usb: gadget: f_qdss: Fix compilation errors
  msm: ipa: Enable NAPI on IPA LAN CONS pipe
  msm: ipa3: add VLAN ID filtering
  arm64: defconfig: Enable global synx driver
  arm64: defconfig: Enable global synx driver
  usb: dwc3: Set vbus_active in peripheral-only mode
  spmi: regmap: enable userspace writes
  nvmem: Add snapshot of QTI SDAM driver
  soc: qcom: Add snapshot of QTI PBS driver
  soc: qcom: Add snapshot of GLINK_PKT Driver
  arm64: defconfig: Enable SPSS GLINK driver on Lahaina
  pinctrl: qcom: Expose ufs_reset as gpio on Lahaina
  soc: qcom: SSR: Fix registration order for wakeup source
  clk: qcom: Add cam cc clock driver for Lahaina
  platform: qpnp-revid: Add REVID support for PM8008, SMB1355 and SMB1390
  platform: qpnp-revid: Add REVID support for PM6125
  platform: qpnp-revid: Add REVID support for PM7250B
  platform: msm: Add snapshot of QPNP_REVID driver
  spmi: spmi-pmic-arb-debug: Change the probe init order
  spmi: spmi-pmic-arb-debug: add clock management support
  spmi: add SPMI PMIC arbiter debug bus driver
  mfd: introduce I2C PMIC controller
  msm: ipa : Fix update of buffer recycle stats
  thermal: qcom-spmi-temp-alarm: add support for GEN2 rev 1 PMIC peripherals
  pinctrl: qcom: spmi-gpio: add support for PM*8350* PMIC variants
  pinctrl: qcom: spmi-gpio: correct parent irqspec translation
  pinctrl: qcom: spmi-gpio: Fix the GPIO strength mapping
  pinctrl: qcom: spmi-gpio: add support to enable/disable output
  mfd: qcom-spmi-pmic: instantiate pmic peripherals at arch_initcall
  mfd: qcom-spmi-pmic: add support for slow SPMI busses
  spmi: spmi-pmic-arb: Fix hw_irq overflow
  spmi: pmic-arb: support updating interrupt type flags
  spmi: spmi-pmic-arb: increase SPMI transaction timeout delay
  spmi: spmi-pmic-arb: block access for invalid PMIC arbiter v5 SPMI writes
  spmi: spmi-pmic-arb: correct duplicate APID to PPID mapping logic
  spmi-pmic-arb: add support to dispatch interrupt based on IRQ status
  spmi: spmi-pmic-arb: check apid against limits before calling irq handler
  spmi: pmic-arb: do not ack and clear peripheral interrupts in cleanup_irq
  spmi: pmic_arb: add a print in cleanup_irq
  spmi: pmic-arb: instantiate spmi_devices at arch_initcall
  iommu/arm-smmu: Move the SMMU driver to subsys_initcall
  defconfig: lahaina-gki: enable USB_DWC3_MSM
  spmi: pmic-arb: Use asynchronous probe
  bluetooth: Add bluetooth slimbus slave drivers
  clk: qcom: Set BRANCH_HALT_SKIP for clocks controlled by PMU
  clk: dt-bindings: gcc: Add PCIE AXI clocks
  clk: qcom: Update gcc clk parent mappings and hw ctrl flag
  interconnect: Move Lahaina interconnect driver to core_initcall
  msm: ipa: Add stats for page recycling
  coresight: byte-cntr: Add support for streaming interface for ETR
  Coresight: byte-cntr: Don't read byte-cntr when etr is diasbled
  msm:ipa: unvote PCIe clock only if it was voted before
  msm: ipa: fix race condition between USB connect and modem SSR
  msm: gsi: Set cookie correctly for GCI channel TREs
  msm: ipa3: Change smmu mapping logs to low priority
  coresight: Add snapshot of Coresight byte counter driver
  msm: ipa: Disable csum offload and status for ODL pipe
  msm: ipa: Retry gsi channel stop for producer channels
  clk: dt-bindings: gcc: Add USB PIPE clocks
  clk: qcom: clk-alpha-pll: Remove zonda pll set rate delay
  clk: qcom: clk-alpha-pll: Add support for controlling zonda5lpe PLL
  arm64: defconfig: Enable gpu cc clock driver for Lahaina
  clk: qcom: Add gpu cc clock driver for Lahaina
  arm64: defconfig: Enable global synx driver
  serial: msm_geni_serial: Double clock-divider for kona based hw
  serial: msm-geni-serial: Remove usage of wakeup_source_init API
  drivers: pinctrl: msm: Add fwnode when setting up hireachy
  ASoC: msm: qdsp6v2: Get path delay support in compress path
  techpack: Fix uapi headers_install
  ion: Assume in-kernel clients for prefetch and drain
  soc: qcom: smp2p: Don't check for NULL before ipc_log_string()
  rpmsg: Don't check for NULL before ipc_log_string()
  net: cnss2: Don't check for NULL before ipc_log_string()
  mailbox: Don't check for NULL before ipc_log_string()
  msm: adsprpc: Don't check for NULL before ipc_log_string()
  usb: dwc3: Fix string format warnings
  iommu/arm-smmu: Fix string format warnings
  regulator: Fix formatting warnings in rpmh-regulator
  scsi: ufs: Fix compiler warning
  arm64: defconfig: Enable shmbridge driver
  shmbridge: GKI change for shmbridge
  cnss2: Switch to new genl structure
  cnss_genl: Use new structure for genl
  cnss_prealloc: Use new API to print stack trace
  i2c: i2c-msm-geni: Add I2C GENI driver snapshot
  media: v4l2-core: Enable VIDIOC_DQBUF ioctl functionality
  dmaengine: gpi: add GPI dmaengine driver snapshot
  usb: gadget: Add support for usb runtime pm APIs
  usb: gadget: rndis: Add packet filter handling for hw accelerated path
  USB: rndis: Honor dl_max_packet_size value sent by host
  usb: gadget: rndis: Add new rndis parameters
  usb: gadget: Add support for rndis flow control callback
  usb: Add support for rndis uplink aggregation
  usb: dwc3-msm: Allow xo_clk to be optional
  usb: dwc3-msm: Get usb power_supply from device tree
  usb: dwc3-msm: Add usb_ep_autoconfig_by_name
  usb: dwc3: Enable PHY deep low power mode in L1 suspend
  msm: ipa3: Ratelimit the error logs for pkts with invalid status
  usb: dwc3: Add DWC3 MSM driver
  coresight: tmc: migrate byte counter to new tmc framework
  coresight: tmc: Read the TMC mode register only if clk is enabled
  of: reserved-memory: Bypass rmem initialization check for carveouts
  msm: synx: Porting synx driver to 5.x kernel
  net: qrtr: Use proper endianness when logging
  usb: phy: Add snapshot of QTI USB PHY drivers
  platform: msm: Add snapshot of USB BAM driver
  usb: gadget: Add snapshot of USB CDEV function driver
  usb: gadget: Add snapshot of CCID function driver
  soc: qcom: spss_utils: add spss_utils as DLKM for GKI
  soc: qcom: add secure processor subsystem (spss) utils driver
  defconfig: enable power drivers for lahaina
  cpuidle: lpm-levels: Update functions to static
  shmbridge: Add shmbridge driver snapshot for lahaina
  coresight: csr: Add msr support
  dcc_v2: Remove duplicate function
  usb: dwc3: Allow dwc_usb31 to operate in dual-role
  usb: dwc3: Fix use after free crash from dwc3 interrupt handler
  usb: dwc3: Prevent continuous retries on error event
  usb: gadget: Add new ipc log buffer to log request and dma
  usb: dwc3: Check USB LPM status before accessing registers
  usb: dwc3: Stop active transfer on control endpoints
  usb: dwc3: Disable the irq before clearing run_stop bit
  dwc3: gadget: Take copy of dwc->gadget_driver before releasing lock
  usb: dwc3: gadget: Enable SUSPEND event after CONNECT DONE
  usb: dwc3: Check return value for debugfs_create_dir()
  usb: dwc3: gadget: Ensure no control transfers in progress when stopping
  usb: dwc3: gadget: Fix runtime PM vote from pull_up handler
  usb: dwc3: Avoid NULL pointer access
  usb: dwc3: request 2mA VBUS current when suspending
  usb: dwc3: Add support for PM suspend and hibernation in host mode
  usb: dwc3: ep0: Fail enqueue() when racing with vbus_sess disconnect
  dwc3: gadget: Don't queue USB request if pull up is getting disabled
  usb: dwc3: Fix USB gadget initialization sequence
  usb: dwc3: Avoid NULL pointer access in dwc3_calc_trbs_left
  usb: dwc3: Do not traverse list using list_for_each_safe
  usb: dwc3: gadget: delay clearing run/stop when setup just arrived
  dwc3: gadget: Stop active transfer pending on ep0 out/in during reset
  usb: dwc3: Fix incorrect ep0 state on reset
  usb: dwc3: resize txfifo of IN/INT endpoint before enabling it
  usb: dwc3: Add QTI MSM platform specific feature and other changes
  msm-geni-se : Correct the icc src/dst read logic for single path
  usb: gadget: Add snapshot of USB QDSS function driver
  arm64: Kconfig: Don't select COMMON_CLK_QCOM in ARCH_LAHAINA
  defconfig: lahaina-gki: Enable support for QCOM clock drivers
  soc: qcom: Add snapshot of IPC IRQ bridge driver
  msm: qdsp6v2: Add timestamp support for compress capture
  drivers: cpuidle: lpm-levels-of: conform to arm,idle-state definition
  drivers: soc: qcom: snapshot of sleep drivers for Lahaina
  ion: msm: Remove dentry_path() usage on heap debugfs file creation errors
  synx: Add synx cancel signaling status
  usb: gadget: Add check gadget function bind or not
  iommu/arm-smmu: bypass hypervisor and read sync/inval status register
  usb: dwc3: gadget: Keep track of IRQ timing statistics
  usb: dwc3: Keep track of interrupt statistics
  usb: dwc3: debug: Add logging APIs using IPC logging framework
  usb: xhci-plat: Add DT parameter to program xhci imod_interval
  usb: dwc3: Increase the inter packet gap for USB 2.0
  net: qrtr: Fix wakeup_source_register
  net: qrtr: Add IPC logging for qrtr
  interconnect: qcom: lahaina: Remove stub functions
  interconnect: qcom: fix up endianness for rpmh messages
  icc: qcom: Refactor icc rpmh support
  iommu/arm-smmu: report BID, PID and MID of client on context fault
  mm: cma: add trace events for CMA alloc perf testing
  mm: vmscan: support complete shrinker reclaim
  mm: vmscan: support equal reclaim for anon and file pages
  arm64: defconfig: Enable CONFIG_VM_EVENT_COUNTERS on Lahaina
  mm: run the showmem notifier in alloc failure
  mm, oom: run the showmem notifier in oom
  mm: cma: retry only on EBUSY
  mm: cma: Increase retries if less blocks available
  mm: cma: Register with show_mem notification framework
  mm: cma: sleep between retries in cma_alloc
  mm: swap: free up swap on mm reap
  iommu/io-pgtable: Deprecate IO_PGTABLE_QUIRK_NO_DMA
  iommu/arm-smmu: Use existing facilities for I/O Coherent PTWs
  ion: msm: Add support for ION heaps to implement prefetch and drain
  dma-mapping: Remove exposure of dma_get_[base/size]
  ion: Simplify carveout heap base/size retrieval/error handling
  ion: msm: Remove [cma/dma]_get_[base/size] usage
  ion: Conditionally compile page pool refill code
  usb: gadget: f_ncm: allocate/free net device upon driver bind/unbind
  msm: ADSPRPC: Fix buffer length for capability API
  msm: ipa3: Query stats from Q6 NLO PROD/CONS
  msm: ipa3: Fix to check DMA address valid or not before unmap
  msm: ipa4: Fix to increase coaleascing common event ring size
  pinctrl: qcom: lahaina: add GPIO wakeup interrupt map
  pinctrl: qcom: setup GPIO chip in hierarchy
  drivers: qcom: Add SoC sleep stats driver
  drivers: soc: qcom: Add ddr stats driver
  ASoC: Add a debug message to track widget power up/down
  ASoC: Change info logs to debug
  ABI: aarch64: Update ABI snapshot based on v5.4-rc3
  msm: IPA: mhi_proxy: correct the mhi vote for both bus and device
  msm: camera: Add camera dt binding definitions
  msm: ipa: Add IPA producer and consumer clients for AQC
  scsi: qcom-ufs: Add support for bus voting using ICB framework
  clk: dt-bindings: gpu-cc: Update gpu clock driver header for Lahaina
  defconfig: lahaina-gki: Enable DISP_CC clock driver
  clk: qcom: Add DISP_CC clock driver for Lahaina
  defconfig: lahaina-gki: Enable VIDEO_CC clock driver
  clk: qcom: Add VIDEO_CC clock driver for Lahaina
  usb: gadget: Add snapshot of USB DIAG function driver
  ABI: aarch64: Update ABI snapshot based on v5.4-rc1
  msm: ipa3: get ipa clk for issuing uc cmds
  soc: qcom: scm: Fix SCM device initialization
  mm: showmem: make the notifiers atomic
  mm: Add notifier framework for showing memory
  mm: allow page poisoning to be enabled by default
  arm64: defconfig: Enable RPMSG drivers on Lahaina
  soc: qcom: Add snapshot for Glink Probe driver
  usb: dwc3: gadget: Update chain bit correctly when using sg list
  mm: ratelimit swap write errors
  mm: slub: panic for object and slab errors
  mm: Kconfig: Add DEBUG_SLUB_PANIC_ON option
  mm/page_owner: ask users about default setting of PAGE_OWNER
  defconfig: lahaina-qgki: enable QTI regulator debugfs features
  regulator: core: add support to log enabled regulators during suspend
  regulator: core: add debugfs regulator monitoring and control features
  net: qrtr: Send HELLO message on endpoint register
  net: qrtr: Add pm_wakeup_event() support
  net: qrtr: Make qrtr rx threads as RT priorities
  net: qrtr: Move rx worker to separate worker thread
  net: qrtr: Add support to read qrtr packet size
  net: qrtr: Handle IPCR control port format of older targets
  net: qrtr: Return success if control port is not bound
  net: qrtr: Add dynamic node id configuration
  net: qrtr: Add permission rules for QTI targets
  net: qrtr: Add support for DEL_PROC control message
  net: qrtr: Add forwarding support based on net id
  net: qrtr: Add non blocking option for tx_resume
  net: qrtr: Move tx_resume handling to work context
  net: qrtr: Send BYE message for all nodes on ept
  net: qrtr: Add node assignment on new server
  net: qrtr: Rename qrtr_all_nodes to qrtr_all_epts
  net: qrtr: Add support for multiple nodes on a single ept
  net: qrtr: use alloc_skb_with_frags() in rx path
  net: qrtr: Check function pointer before calling
  net: qrtr: Prevent stale ports from sending
  net: qrtr: Detach socket from sock during release
  msm: ipa3: Fix to not remove endpoint delay if stop channel fails
  arm64: defconfig: Enable IPC IRQ driver for Lahaina
  soc: qcom: Add snapshot for QSEE IPC IRQ driver
  rpmsg: Add snapshot of RPMSG glink driver for spss
  drivers: pinctrl: Add QUP macros for read/write on Lahaina
  pinctrl: Add api to enable/disable wakeup capability for a gpio
  drivers: pinctrl: Add support for read/write of QUP registers
  msm: ipa3: remove ipa3_ctx access from wan driver and qmi service
  msm: ipa: mark the IPA clock on in virtual/emulation mode
  msm: gsi: gsi channel QoS register update
  lib: Ignore kasan errors from find_next_bit and last bit
  net: qrtr: Change port allocation to use cyclic idr
  net: qrtr: Change node mutex to a rw_semaphore
  net: qrtr: Add socket mode optimization
  net: qrtr: Do not send packets before hello negotiation
  ion: msm: Correct OF node refcount handling in error paths
  msm: ipa: Allocate pages in a wq context
  pinctrl: qcom: Add EGPIO feature support to pinctrl driver
  clk: qcom: Export clk_lucid_5lpe_pll_configure()
  msm: ipa: update mem_part table for IPA SRAM
  msm: gsi: gsi 2.9 upgrade
  msm: ipa: Configure IPA pipes and group resources for Lahaina IPA 4.9
  net: qrtr: Align header and payload
  net: qrtr: Remove receive worker
  soc: qcom: qmi_interface: Protect sk_user_data with RCU
  arm64: defconfig: Enable CONFIG_QGKI for Non GKI build
  soc: qcom: Add a config flag to know the build variant
  ion: msm: enable debugfs for ion heaps
  ion: Allow the system heap to expose debug information
  ion: msm: Expose ION API to query buffer VM information
  ion: msm: Assume devicetree support
  ion: msm: Correct msm_ion_parse_dt() error propagation
  ion: msm: Upgrade the ION ABI version
  ion: msm: Rename msm_ion_of.[c/h] to msm_ion.[c/h]
  ion: msm: Fix several errors in the MSM ION kernel header
  of: Make of_get_ddrtype module friendly
  soc: qcom: secure_buffer: Fix secure buffer device initialization
  iommu/arm-smmu: Fix context fault interrupt test
  iommu/arm-smmu: Use bitfields for the TBU debug registers
  serial: msm_geni_serial:Add snapshot of serial UART driver
  platform: msm: Add snapshot of GENI serial engine driver
  regulator: add verbose error messages for invalid voltage requests
  usb: dwc3: qcom: Use GDSC regulator if available
  defconfig: lahaina-gki: enable refgen regulator driver
  regulator: add refgen regulator driver
  arm64: defconfig: Enable gcc clock driver for Lahaina
  clk: qcom: Override clks halt check with BRANCH_HALT_VOTED
  clk: qcom: Add gcc clock driver for Lahaina
  clk: dt-bindings: gcc: Update gcc clock driver header for Lahaina
  defconfig: lahaina-gki: enable rpmh-regulator driver
  net: qrtr: Make qrtr_port_lookup() use RCU
  net: qrtr: Implement outgoing flow control
  net: qrtr: Migrate node lookup tree to spinlock
  net: qrtr: Move resume-tx transmission to recvmsg
  net: qrtr: Stop rx_worker before freeing node
  rpmsg: Add snapshot of RPMSG drivers for lahaina
  iommu: iommu-debug: check valid pfn before performing ATOS ops
  msm: ipa3: SRAM NAT, DDR NAT, back-and-forth NAT
  irqchip: qcom-pdc: Add IPC logging support
  irqchip: qcom-pdc: Additionally set type in SPI config registers
  irqchip: qcom-pdc: add irqchip set/get state calls
  drivers: qcom: rpmh-rsc: add IPC logging support for RSC driver
  soc: qcom: rpmh-rsc: log interrupt status when TCS is busy
  soc: qcom: rpmh: Fix sending incorrect data during rpmh flush
  ARM: smp: export pending IPI state
  drivers: clksource: add API to return cval
  msm: ipa4: Fix to add wake up handle for coalescing pipe
  iommu: iommu-debug: Add support for page table dump
  dma-mapping-fast: add support for atomic fastmap allocations
  defconfig: enable reserved memory check on Lahaina
  of: reserved_mem: Check that memory reserved in device tree is in use
  msm: ipa: add the version check for FnR stats ioctl
  msm: kgsl: Add the kgsl uapi header file
  ipa3: add hasting AP+STA quota/stats support
  iommu/arm-smmu: Adopt bitfield model for remaining SMMU registers
  iommu/arm-smmu: Add reset implementation hook
  iommu/arm-smmu: Add context init implementation hook
  iommu/arm-smmu: Move Secure access quirk to implementation
  iommu/arm-smmu: Add configuration implementation hook
  iommu/arm-smmu: Add implementation infrastructure
  iommu/arm-smmu: Rename arm-smmu-regs.h
  iommu/arm-smmu: Abstract GR0 accesses
  iommu/arm-smmu: Abstract context bank accesses
  iommu/arm-smmu: Abstract GR1 accesses
  iommu/arm-smmu: Get rid of weird "atomic" write
  iommu/arm-smmu: Split arm_smmu_tlb_inv_range_nosync()
  iommu/arm-smmu: Rework cb_base handling
  iommu/arm-smmu: Convert context bank registers to bitfields
  iommu/arm-smmu: Convert GR1 registers to bitfields
  iommu/arm-smmu: Convert GR0 registers to bitfields
  iommu/arm-smmu: Fix SMMU derivation in arm_smmu_power_off_atomic
  of: reserved_mem: add missing of_node_put() for proper ref-counting
  msm: ipa3: remove ipa3_ctx access from wan driver and qmi service
  msm: ipa: add additional checks to prevent use-after free errors
  soc: qcom: qmi_interface: Remove ineffective mutex lock from txn struct
  soc: qcom: qmi_interface: Release mutex lock before return
  soc: qcom: qmi_interface: Add send timeout helper
  soc: qcom: qmi_interface: Fix race between net_reset and release
  soc: qcom: qmi: Remove txn idr entry in qmi  handle release
  soc: qcom: qmi_interface: sync release and data_ready callback
  ion: msm: Correct memory-region of_node reference counting
  ion: msm: Prevent log-spam from ION dmabuf mmap failures
  Revert "staging: android: ion: Use the MSM dmabuf ops when possible"
  ion: Update the heaps to use the MSM ION dmabuf ops for CMO
  ion: msm: Update the heap IDs as per the ION core standards
  include: dt-bindings: ion: Add header for the MSM ION heap IDs
  ion: msm: Define heap IDs as constants in their own file
  clk: qcom: clk-alpha-pll: Add support for controlling Lucid5lpe PLLs
  arm64: defconfig: Enable SSR, PIL, Sysmon, and PDR drivers
  soc: qcom: Fix printk format warnings from subsystem restart
  soc: qcom: Select MSM_PIL for SUBSYSTEM_RESTART
  drivers: irqchip: add PDC irqdomain for wakeup capable GPIOs
  msm: ipa: Enable qmi send request to remove last connection
  msm: ipa: remove unneeded files
  ion: remove cpu binding of pool refill kthreads
  staging: android: ion: Ratelimit warning message
  iommu/arm-smmu: Mask TLBI address correctly
  ion: msm: Relocate MSM ION header directly to include/uapi/linux
  ion: Fail system secure heap creation if system heap is unavailable
  msm: ipa: Fix KW P1 issue
  msm:ipa : enable HOLB drop timeout on MHIP producer channels
  msm: ipa: Fix accessing coal registers when clock is off
  msm: ipa3: Fix to memory allocation failure
  msm: ipa: Decrease refcount of the pages held in cache before freeing
  msm: ipa: Fix race condition between timer expiry for wq and pipe teardown
  iommu: iommu-debug: select IOMMU_DEBUGFS for iommu tests
  msm: ipa: Enable USB DPL end point
  regulator: add rpmh-regulator driver
  dt-bindings: regulator: rpmh-regulator: add new intermediate voltage levels
  dt-bindings: regulator: rpmh-regulator: add SVS_L2 voltage level
  dt-binding: regulator: rpmh-regulator: define RPMh sets and regulator modes
  drivers: llcc-lahaina: Update the SCT table for MMUHWT
  soc: qcom: qmi_interface: Add new error enum
  msm: ipa4: Fix to update the polling mode for coalescing channel
  driver: pinctrl: Add reserved GPIOs for Lahaina
  soc: qcom: pil: Correct memory-region of_node reference counting
  msm: ipa: Fix the double unmap page recycling cleanup on ssr
  drivers: irqchip: pdc: Do not toggle IRQ_ENABLE during mask/unmask
  genirq: Introduce irq_chip_get/set_parent_state calls
  msm: IPA: mhi_proxy: correct the return for mhi unvote on ssr
  msm: ipa: Fix the missing page recycling cleanup on ssr
  coresight: Add snapshot of Coresight hwevent driver
  coresight: csr: Add multiple CSR devices support
  coresight: Add snapshot of Coresight dummy driver
  ABI: aarch64: Update ABI snapshot based on v5.3
  msm: ipa: Ignore empty ipa config file
  msm: ipa4: Set return value if coalescing frame open
  msm: ipa4: Don't decrease the client count if suspend fail
  msm: ipa4: support coalescing pipe suspend
  msm: ipa: allow abort for disable_clks
  msm: ipa4: add masked ipa_wigig debug registers values
  msm: ipa: Use Qtimer for DPL IPA timer
  techpack: Kbuild: Fix to compile the techpack completely
  arm64: defconfig: Clean the lines for unset CONFIGs
  msm: ipa4: Update endpoint prefetch config for lito
  msm: ipa4: Don't query wigig client tethering stats for all targets
  ABI: aarch64: Update ABI snapshot based on v5.3-rc6
  coresight: Add snapshot of Coresight tgu driver
  coresight-etm4x: Merge ETM changes
  radio: RTC6226: Make the rtc6226 driver compatible with QTI platform
  driver: pinctrl: Update pinctrl mappings for Lahiana
  soc: qcom: secure_buffer: Trace hyp_assign calls
  trace: secure_buffer: Introduce trace events for secure buffer
  coresight: Add snapshot of Coresight csr driver
  dcc_v2: Don't set the default value to sram when dcc is enabled
  msm: CDSP: add CDSP loader driver
  irqdomain: add bus token DOMAIN_BUS_WAKEUP
  ion: Use correct heap when freeing secure system heap buffers
  ion: msm: Remove unnecessary free when destroying an ION buffer
  ion: msm: Only check heap IDs if the heap has been initialized
  Bluetooth: btpower: Add snapshot of BT power driver
  defconfig: Add MSM Core Hang Detection as module
  drivers: soc: Add snapshot of MSM Core Hang Detection
  msm: ipa: Add snapshot of IPA driver
  msm: adsprpc: add fastrpc driver files
  ABI: Update ABI snapshot with latest kernel build tools
  scripts: Consider env vaiables while running 'make'
  techpack: replace type with xtype while searching for sub-dirs
  synx : Add snapshot for global synx driver support
  soc: qcom: configure ipcc interrupt as wakeup capable
  coresight: Add snapshot of Coresight TPDM and TPDA driver
  coresight: Add common header file
  coresight: etm: Add check of trace unit power property
  drivers: qcom: rpmh: Add standalone mode support for RPMH
  drivers: qcom: rpmh-rsc: write PDC data
  drivers: qcom: rpmh-rsc: return if the controller is idle
  drivers: qcom: rpmh-rsc: optimize redundant read to determine TCS idle
  drivers: qcom: rpmh-rsc: clear active mode configuration for waketcs
  drivers: qcom: rpmh-rsc: output debug information from RSC
  drivers: qcom: rpmh: add 'solver' state support for RSC controllers
  drivers: qcom: rpmh-rsc: do not read back the register write on trigger
  soc: qcom: dcc: Support new DCC HW feature
  soc: qcom: Add snapshot of the dcc v2 driver
  dt-bindings: Add dt bindings head file for dcc
  soc: qcom: Add snapshot of the memory dump v2 driver
  qseecom: add uapi headfile for Lahaina bring up
  clk: qcom: clk-debug: Unflatten mux tree
  clk: qcom: clk-debug: Add custom measure operators for mccc_clk
  clk: qcom: clk-debug: Add support for enable mask for debug clk
  clk: qcom: clk-debug: Disable the DEBUG clocks when not being used
  clk: clk-debug: Update file permission for clk_measure debugfs
  clk: qcom: Add support for debugfs measure clock
  clk: avoid returning local variable pointers during clock registration
  dt-bindings: clock: Add rpmh clock binding IDs for Kona
  clk: qcom: define vdd_levels enum and vdd_corner[] map
  clk: qcom: Add support for divider flags and table
  clk: qcom: common: only register reset controllers which define resets
  clk: qcom: common: add device tree consumer support for clk_hws
  clk: qcom: add clk rpmh support for Kona
  clk: qcom: clk-spmi-pmic-div: avoid potential divide-by-0
  clk: qcom: clk-spmi-pmic-div: add support for clock-output-names
  clk: qcom: clk-aop-qmp: use correct name pointer before clock registration
  clk: qcom: clk-aop-qmp: pass mbox pointer by reference in qmp_update_client
  clk: qcom: clk-aop-qmp: Fix issue with registering the clock provider
  clk: qcom: clk-aop-qmp: correct mailbox channel request logic
  clk: qcom: clk-aop-qmp: Do not send duplicate requests to AOP
  clk: qcom: Add support for AOP clock controller
  clk: qcom: gdsc: Remove global mutex lock in enable/disable callbacks
  clk: qcom: gdsc-regulator: Remove polling logic when disabling GDSC HW CTL
  clk: qcom: gdsc-regulator: refactor gdsc_probe() to reduce complexity
  clk: qcom: gdsc-regulator: add support for enabling retention registers
  clk: qcom: gdsc-regulator: Add MMCX specific logic
  clk: qcom: gdsc-regulator: Place a min operational vote on GDSC parent
  clk: qcom: Add support for regulator based GDSC control
  clk: qcom: Add support for hardware control branch clocks
  clk: qcom: clk-rcg2: correct set rate handling for FORCE_ENABLE_RCG
  clk: qcom: rcg2: Add support for hardware control mode
  clk: qcom: rcg2: Remove support for update_src_map
  clk: qcom: clk-rcg2: Read RCG source before calculating clk rate
  clk: qcom: Retrieve pre_div from freq_tbl for shared RCG
  clk: qcom: rcg2: Add DIV_ROUND_CLOSEST_ULL to roundoff RCG frequency
  clk: qcom: add null pointer checks for parent clocks
  clk: qcom: clk-rcg2: Fix QUPV3 DFSR M and N register mode overwrite
  clk: qcom: clk-rcg: update DEFINE_RCG_DFS() macro
  clk: qcom: Add support for clock dependency
  clk: Add additional checking to some clock driver functions
  clk: qcom: Add RCG support for DP source
  clk: qcom: Add support for RCGs with dynamic and fixed sources
  clk: qcom: clk-rcg2: Add support to force enable an RCG
  clk: qcom: clk-rcg2: Configure the RCGs to a safe frequency as needed
  clk: qcom: clk-alpha-pll: check pcal_done from mode register
  clk: qcom: clk-alpha-pll: add FREQ_DET support to Zonda PLL lock detection
  clk: qcom: alpha: do not configure PLL during probe if already enabled
  clk: qcom: clk-alpha-pll: add support to reconfigure PLLs during prepare
  clk: qcom: clk-alpha-pll: add support for custom register initialization
  clk: qcom: clk-alpha-pll: Remove reconfiguration of PLLs
  clk: qcom: clk-alpha-pll: Add support for controlling zonda pll
  clk: qcom: clk-alpha-pll: add additional configuration support for PLLs
  clk: qcom: clk-alpha-pll: Add support for controlling Lucid PLLs
  arm64: defconfig: Enable sensors_ssc on Lahaina
  drivers: of: Add API to find ddr device type
  radio: Add snapshot for FM radio support
  radio: RTC6226: Add support for RTC6226 FM chip
  include: rmnet_data: Add snapshot of headers
  drivers: sensors: add sensors ssc driver
  drivers: qcom: rpmh-rsc: modularize RSC controller driver
  drivers: qcom: cmd-db: Dump resource data via debugfs
  pinctrl-lahaina: Correct the pinconfig base address
  arm64: defconfig: Enable llcc perfmon drivers
  drivers: llcc_perfmon: support for dual memory controller added
  drivers: llcc_perfmon: Add llcc_perfmon support
  net: cnss_prealloc: Add snapshot of cnss_prealloc driver
  defconfig: Update test configs for debug defconfig
  drivers: GICv3: Enable logging of interrupts that triggered wakeup
  defconfig: Enable fastmap on Lahaina
  net: cnss_genl: Add snapshot of cnss_genl driver
  soc: qcom: qmi_interface: Abort pending transaction
  soc: qcom: qmi_interface: Add default send timeout
  soc: qcom: qmi_interface: Do not print error for 0 pkt
  arm64: defconfig: Enable SMP2P Sleepstate on Lahaina
  arm64: defconfig: Enable MSM QMP driver for Lahaina
  arm64: defconfig: Enable QMP DEBUGFS driver on Lahaina
  arm64: defconfig: Enable SMP2P and dependencies on Lahaina
  arm64: defconfig: Enable IPC logging driver on Lahaina
  soc: qcom: Add snapshot of smp2p sleepstate driver
  soc: qcom: smp2p: Fix two warnings
  soc: qcom: smp2p: Prevent suspend for threaded irq
  soc: qcom: smp2p: Add enable_irq_wake to SMP2P IRQ
  soc: qcom: smp2p: Add logs in smp2p_update_bits
  soc: qcom: smp2p: Add IPC logging support
  defconfig: Enable the MSM ION heaps on Lahaina
  staging: android: ion: Use the MSM dmabuf ops when possible
  staging: android: ion: Do not assign heap IDs as heaps register
  Revert "staging: android: ion: Remove file ion_carveout_heap.c"
  ion: Merge all ION related changes from msm-4.19 to msm-lahaina
  net: cnss_utils: Add snapshot of cnss_utils driver
  ABI: aarch64: Update ABI snapshot based on v5.3-rc4
  coresight: add node to reset all coresight devices
  trace: rtb: add msm_rtb tracing
  perf: Set the DSU PMU to be readable from any CPU
  qcom: soc: minidump: Add snapshot of minidump.h
  soc: qcom: Add snapshot of SSR, PIL, Sysmon, and PDR drivers
  coresight: add support to enable multiple coresight paths
  arm64: defconfig: Enable CONFIG_SPARSEMEM_VMEMMAP on Lahaina
  iommu: io-pgtable-fast: Use the DMA APIs for cache cleaning
  defconfig: arm64: Enable uncompressed kernel for Lahaina
  epoll: drop struct epoll_event definition
  drivers: qcom: cmd-db: Report if command DB is initialized as standalone
  drivers: qcom: cmd-db: modularize commandDB driver
  drivers: irqchip: enable PDC irqchip for QCOM Lahaina SoC
  spdx: Modify spdx tag from GPL-2.0 to GPL-2.0-only
  coresight: Set clk rate for all coresight devices
  soc: qcom: smp2p: Add restart ack feature
  soc: qcom: smp2p: Introduce pending state for virtual irq
  drivers: mailbox: fix race resulting in multiple message submission
  soc: qcom: smem: Update max processors in soc
  Revert "checkpatch: forbid filesystem accesses from within the kernel."
  Revert "checkpatch: close filp_open loophole."
  Revert "checkpatch: deprecate unbounded string functions."
  Revert "checkpatch: Add warnings for use of mdelay()"
  iommu: Update the offset of the extended domain attributes
  iommu/arm-smmu: Fix a few compiler warnings
  Revert "checkpatch: complain about the use of dsb()."
  Revert "checkpatch: Add exceptions for "dsb" keyword usage"
  iommu/dma-iommu: Allow dma_info_to_prot to be used globally
  mailbox: Add snapshot of MSM QMP driver
  soc: qcom: Add snapshot of MSM QMP debugfs client
  trace: Add snapshot of ipc logging driver
  ufs: ufshcd: Prevent sleeping in IRQ context
  coresight: add support for device names
  ABI: aarch64: Update ABI snapshot based on v5.3-rc1
  ARM64: smp: Fix function prototypes
  net: cnss2: Add snapshot of CNSS2 driver
  arm64: defconfig: Enable EDAC drivers
  drivers: edac: Add Cache Error Reporting driver
  edac: Allow panic on correctable errors (CE)
  sched: Add a check for cpu unbound deferrable timers
  timer: Initialize global deferrable timer
  ARM64: Flush the caches for non panicking CPUs in case of a kernel panic
  ARM64: smp: Save CPU registers before IPI_CPU_STOP processing
  arm64: msm: Add support for uncompressed kernel image
  ARM: arch_timer: force re-selection of the best clocksource
  clocksource: add API to force re-selection of the best clocksource
  defconfig: Disable ZONE_DMA32 on Lahaina
  iommu: Align QCOM_IOMMU_IO_PGTABLE_QUIRKS with other configs
  defconfig: Enable panics on TLB_SYNC timeouts on Lahaina
  defconfig: Enable all IOMMU related configs on Lahaina
  arm64: defconfig: Enable IPCC driver as a module
  kernel: rcu: Panic on RCU stall
  soc: qcom: ipcc: Add snapshot of IPCC controller
  irqdomain: Implement and expose API to clear IRQ mapping for radix tree
  drivers: irq: Add debug information for irq type warnings
  timer: Add a global deferrable timer
  dtc: add integer overflow checks in fdt header
  arm64: mm: Log the process id in the rtb
  ARM: gic-v3: Log the IRQs in RTB before handling an IRQ
  PM / wakeup: Add msm_show_resume_irq_mask to print off wakeup irq
  iommu/arm-smmu: Merge all IOMMU changes from msm-4.19 to msm-lahaina
  printk: Make the console flush configurable in hotplug path
  arm64: defconfig: Enable LLCC driver
  drivers: llcc: Add LLCC driver for Lahaina
  Revert "arm64: kill flush_cache_all()"
  Revert "arm64: Remove unused macros from assembler.h"
  Revert "arm64: Remove unused daif related functions/macros"
  cpu-hotplug: Always use real time scheduling when hotplugging a CPU
  smp: Allow booting a specific subset of CPUs
  cpu/hotplug: Add cpuhp_latency trace event
  workqueue: fix possible livelock with concurrent mod_delayed_work()
  usb : dwc3: Initialize kernel stack variables properly
  arm64: Dump stack for all CPUs on SMP CPU stop
  drivers: llcc: Add new usecase IDs
  drivers: llcc: Create child platform device for llcc_perfmon
  drivers: llcc: Support targets that can write to llcc registers
  drivers: llcc: Write to sub-cache register based on version
  drivers: llcc: Configure cache override registers
  ABI: aarch64: Update the ABI snapshot for v5.2
  irq-chip: gic-v3: remove print message in irq driver
  defconfig: lahaina-gki: enable qualcomm ufs driver
  ufs: ufs-qcom: Add support for presilicon configuration
  ufs: ufshcd: Add check for broken auto-h8 support
  defconfig: lahaina-gki: enable presilicon ufs phy driver
  ABI: aarch64: Update ABI snapshot based for v5.2
  arm64: Apply erratum 1024718 to Cortex A55 r2p0
  phy: qcom-ufs-qrbtc: Add ufs phy driver for presilicon
  defonfig: Enable QCOM UFS Phy driver
  defconfig: lahaina-gki: enable lahaina icc driver
  arm64: defconfig: Enable USB drivers on Lahaina
  usb: host: xhci-plat: Avoid unneeded internal declaration warning
  usb: phy-qcom-emu: Fix typo for memory resource name
  usb: phy: Add driver for USB PHY on QTI emulation platform
  phy: phy-qcom-ufs: Modify phy voltage limits
  rpmsg : glink: validate head and tail index before fifo read write
  soc: qcom: qmi_encdec: Restrict string length in decode
  soc: qcom: smem: validate fields of shared structures
  arm64: Add 32-bit sigcontext definition to uapi signcontext.h
  net: core: neighbour: Change the print format for addresses
  scripts: gki: Clean the generted files by hand instead of mrproper
  elf: Add elf headers helpers support
  interconnect: qcom: Add Lahaina interconnect provider driver
  icc: dt-bindings: add endpoint IDs for Lahaina interconnects
  ABI: Update ABI snapshot due to rolling kernel upgrade
  Merge remote-tracking branch 'remotes/origin/tmp-f686d9f' into msm-lahaina
  arm64: defconfig: Enable the QCOM SCM driver
  soc: qcom: scm: Add snapshot of QCOM SCM driver
  arm64: defconfig: Enable the pinctrl-lahaina driver
  pinctrl: qcom: Add lahaina pinctrl driver
  pinctrl-msm: Allow the driver to be compiled as a module
  checkpatch: Fix commit log check for a filename
  clk: qcom: clk-dummy: Add a dummy clock provider
  msm_rtb: Add _no_log variants
  msm_rtb: Add snapshot of msm_rtb.h
  defconfig: lahaina-gki: enable stub-regulator driver
  regulator: dt-bindings: rpmh-regulator: add header for voltage levels
  regulator: add stub-regulator driver
  .gitignore: Add device tree vendor directories to gitignore
  techpack: add tech package support
  scripts: gki: Fix setting of a CONFIG if it's unset in base defconfig
  ABI: Update ABI snapshot due to libabigail tool changes
  clk: dt-bindings: add clock IDs for Lahaina clock controllers
  .gitignore: Add techpack directory to gitignore
  .gitignore: Exclude the GKI generated defconfigs
  ABI: Update ABI snapshot based on new code baseline
  checkpatch: Handle continuation headers
  ABI: Update to the ABI definition file
  hvc_dcc: Disable preemption when cheking for smp_processor_id
  arm64: defconfig: Enable ARM DCC driver
  hvc_dcc: Make dcc driver read/write from CPU0
  ABI: Add initial ABI definition based on gki_defconfig
  checkpatch: Treat duplicate signatures as a different error class
  checkpatch: allow copyright statements > 80 columns
  checkpatch: Use upstream commit text length checks
  checkpatch: Excuse reverts from "summary line over 75 characters" check
  checkpatch: require commit text
  checkpatch: Don't complain about MIME headers.
  checkpatch: Fix the commit log false positive warnings
  checkpatch: warn on long summary, commit text lines
  checkpatch: complain about the use of dsb().
  checkpatch: warn on subject line not followed by blank line
  checkpatch: Add exceptions for "dsb" keyword usage
  checkpatch: close filp_open loophole.
  checkpatch: Handle long multi-line macros better.
  checkpatch: deprecate unbounded string functions.
  checkpatch: forbid implied-barrier I/O functions.
  checkpatch: forbid filesystem accesses from within the kernel.
  checkpatch: Check for illegal return codes
  checkpatch: Add warnings for use of mdelay()
  checkpatch: Exceptions for CLK_* macros and some spaces in macros
  arm64: defconfig: Enable Lahaina platform
  arm64: Kconfig: Add config option for Lahaina
  ARM: dts: qcom: Add vendor directory to the Makefile
  docs: Makefile: Don't look for Makefiles in bindings
  Documentation: devicetree: Remove devicetree bindings from kernel
  defconfig: Add initial defconfig fragments for Lahaina
  scripts: gki: Add GKI support
  scripts: snapshot of kernel build utility scripts
  Makefile: Disable undefined-optimized and add -fno-builtin
  ANDROID: HACK: arm64, LLVMLinux: use -mno-implicit-float
  kbuild: Check for 'clang' string in the entire --version output

Change-Id: Ie31e65a8b2960eca7d7e52e7a2201a656ac4825d
Signed-off-by: Venkata Narendra Kumar Gutta <vnkgutta@codeaurora.org>
Signed-off-by: Elliot Berman <eberman@codeaurora.org>
2020-06-17 09:36:24 -07:00

1897 lines
61 KiB
Makefile

# SPDX-License-Identifier: GPL-2.0
VERSION = 5
PATCHLEVEL = 6
SUBLEVEL = 0
EXTRAVERSION = -rc3
NAME = Kleptomaniac Octopus
# *DOCUMENTATION*
# To see a list of typical targets execute "make help"
# More info can be located in ./README
# Comments in this file are targeted only to the developer, do not
# expect to learn how to build the kernel reading this file.
# That's our default target when none is given on the command line
PHONY := _all
_all:
# We are using a recursive build, so we need to do a little thinking
# to get the ordering right.
#
# Most importantly: sub-Makefiles should only ever modify files in
# their own directory. If in some directory we have a dependency on
# a file in another dir (which doesn't happen often, but it's often
# unavoidable when linking the built-in.a targets which finally
# turn into vmlinux), we will call a sub make in that other dir, and
# after that we are sure that everything which is in that other dir
# is now up to date.
#
# The only cases where we need to modify files which have global
# effects are thus separated out and done before the recursive
# descending is started. They are now explicitly listed as the
# prepare rule.
ifneq ($(sub_make_done),1)
# Do not use make's built-in rules and variables
# (this increases performance and avoids hard-to-debug behaviour)
MAKEFLAGS += -rR
# Avoid funny character set dependencies
unexport LC_ALL
LC_COLLATE=C
LC_NUMERIC=C
export LC_COLLATE LC_NUMERIC
# Avoid interference with shell env settings
unexport GREP_OPTIONS
# Beautify output
# ---------------------------------------------------------------------------
#
# Normally, we echo the whole command before executing it. By making
# that echo $($(quiet)$(cmd)), we now have the possibility to set
# $(quiet) to choose other forms of output instead, e.g.
#
# quiet_cmd_cc_o_c = Compiling $(RELDIR)/$@
# cmd_cc_o_c = $(CC) $(c_flags) -c -o $@ $<
#
# If $(quiet) is empty, the whole command will be printed.
# If it is set to "quiet_", only the short version will be printed.
# If it is set to "silent_", nothing will be printed at all, since
# the variable $(silent_cmd_cc_o_c) doesn't exist.
#
# A simple variant is to prefix commands with $(Q) - that's useful
# for commands that shall be hidden in non-verbose mode.
#
# $(Q)ln $@ :<
#
# If KBUILD_VERBOSE equals 0 then the above command will be hidden.
# If KBUILD_VERBOSE equals 1 then the above command is displayed.
#
# To put more focus on warnings, be less verbose as default
# Use 'make V=1' to see the full commands
ifeq ("$(origin V)", "command line")
KBUILD_VERBOSE = $(V)
endif
ifndef KBUILD_VERBOSE
KBUILD_VERBOSE = 0
endif
ifeq ($(KBUILD_VERBOSE),1)
quiet =
Q =
else
quiet=quiet_
Q = @
endif
# If the user is running make -s (silent mode), suppress echoing of
# commands
ifneq ($(findstring s,$(filter-out --%,$(MAKEFLAGS))),)
quiet=silent_
endif
export quiet Q KBUILD_VERBOSE
# Kbuild will save output files in the current working directory.
# This does not need to match to the root of the kernel source tree.
#
# For example, you can do this:
#
# cd /dir/to/store/output/files; make -f /dir/to/kernel/source/Makefile
#
# If you want to save output files in a different location, there are
# two syntaxes to specify it.
#
# 1) O=
# Use "make O=dir/to/store/output/files/"
#
# 2) Set KBUILD_OUTPUT
# Set the environment variable KBUILD_OUTPUT to point to the output directory.
# export KBUILD_OUTPUT=dir/to/store/output/files/; make
#
# The O= assignment takes precedence over the KBUILD_OUTPUT environment
# variable.
# Do we want to change the working directory?
ifeq ("$(origin O)", "command line")
KBUILD_OUTPUT := $(O)
endif
ifneq ($(KBUILD_OUTPUT),)
# Make's built-in functions such as $(abspath ...), $(realpath ...) cannot
# expand a shell special character '~'. We use a somewhat tedious way here.
abs_objtree := $(shell mkdir -p $(KBUILD_OUTPUT) && cd $(KBUILD_OUTPUT) && pwd)
$(if $(abs_objtree),, \
$(error failed to create output directory "$(KBUILD_OUTPUT)"))
# $(realpath ...) resolves symlinks
abs_objtree := $(realpath $(abs_objtree))
else
abs_objtree := $(CURDIR)
endif # ifneq ($(KBUILD_OUTPUT),)
ifeq ($(abs_objtree),$(CURDIR))
# Suppress "Entering directory ..." unless we are changing the work directory.
MAKEFLAGS += --no-print-directory
else
need-sub-make := 1
endif
abs_srctree := $(realpath $(dir $(lastword $(MAKEFILE_LIST))))
ifneq ($(words $(subst :, ,$(abs_srctree))), 1)
$(error source directory cannot contain spaces or colons)
endif
ifneq ($(abs_srctree),$(abs_objtree))
# Look for make include files relative to root of kernel src
#
# This does not become effective immediately because MAKEFLAGS is re-parsed
# once after the Makefile is read. We need to invoke sub-make.
MAKEFLAGS += --include-dir=$(abs_srctree)
need-sub-make := 1
endif
ifneq ($(filter 3.%,$(MAKE_VERSION)),)
# 'MAKEFLAGS += -rR' does not immediately become effective for GNU Make 3.x
# We need to invoke sub-make to avoid implicit rules in the top Makefile.
need-sub-make := 1
# Cancel implicit rules for this Makefile.
$(lastword $(MAKEFILE_LIST)): ;
endif
export abs_srctree abs_objtree
export sub_make_done := 1
ifeq ($(need-sub-make),1)
PHONY += $(MAKECMDGOALS) sub-make
$(filter-out _all sub-make $(lastword $(MAKEFILE_LIST)), $(MAKECMDGOALS)) _all: sub-make
@:
# Invoke a second make in the output directory, passing relevant variables
sub-make:
$(Q)$(MAKE) -C $(abs_objtree) -f $(abs_srctree)/Makefile $(MAKECMDGOALS)
endif # need-sub-make
endif # sub_make_done
# We process the rest of the Makefile if this is the final invocation of make
ifeq ($(need-sub-make),)
# Do not print "Entering directory ...",
# but we want to display it when entering to the output directory
# so that IDEs/editors are able to understand relative filenames.
MAKEFLAGS += --no-print-directory
# Call a source code checker (by default, "sparse") as part of the
# C compilation.
#
# Use 'make C=1' to enable checking of only re-compiled files.
# Use 'make C=2' to enable checking of *all* source files, regardless
# of whether they are re-compiled or not.
#
# See the file "Documentation/dev-tools/sparse.rst" for more details,
# including where to get the "sparse" utility.
ifeq ("$(origin C)", "command line")
KBUILD_CHECKSRC = $(C)
endif
ifndef KBUILD_CHECKSRC
KBUILD_CHECKSRC = 0
endif
# Use make M=dir or set the environment variable KBUILD_EXTMOD to specify the
# directory of external module to build. Setting M= takes precedence.
ifeq ("$(origin M)", "command line")
KBUILD_EXTMOD := $(M)
endif
export KBUILD_CHECKSRC KBUILD_EXTMOD
extmod-prefix = $(if $(KBUILD_EXTMOD),$(KBUILD_EXTMOD)/)
ifeq ($(abs_srctree),$(abs_objtree))
# building in the source tree
srctree := .
building_out_of_srctree :=
else
ifeq ($(abs_srctree)/,$(dir $(abs_objtree)))
# building in a subdirectory of the source tree
srctree := ..
else
srctree := $(abs_srctree)
endif
building_out_of_srctree := 1
endif
ifneq ($(KBUILD_ABS_SRCTREE),)
srctree := $(abs_srctree)
endif
objtree := .
VPATH := $(srctree)
export building_out_of_srctree srctree objtree VPATH
# To make sure we do not include .config for any of the *config targets
# catch them early, and hand them over to scripts/kconfig/Makefile
# It is allowed to specify more targets when calling make, including
# mixing *config targets and build targets.
# For example 'make oldconfig all'.
# Detect when mixed targets is specified, and make a second invocation
# of make so .config is not included in this case either (for *config).
version_h := include/generated/uapi/linux/version.h
old_version_h := include/linux/version.h
clean-targets := %clean mrproper cleandocs
no-dot-config-targets := $(clean-targets) \
cscope gtags TAGS tags help% %docs check% coccicheck \
$(version_h) headers headers_% archheaders archscripts \
%asm-generic kernelversion %src-pkg
no-sync-config-targets := $(no-dot-config-targets) install %install \
kernelrelease
single-targets := %.a %.i %.ko %.lds %.ll %.lst %.mod %.o %.s %.symtypes %/
config-build :=
mixed-build :=
need-config := 1
may-sync-config := 1
single-build :=
ifneq ($(filter $(no-dot-config-targets), $(MAKECMDGOALS)),)
ifeq ($(filter-out $(no-dot-config-targets), $(MAKECMDGOALS)),)
need-config :=
endif
endif
ifneq ($(filter $(no-sync-config-targets), $(MAKECMDGOALS)),)
ifeq ($(filter-out $(no-sync-config-targets), $(MAKECMDGOALS)),)
may-sync-config :=
endif
endif
ifneq ($(KBUILD_EXTMOD),)
may-sync-config :=
endif
ifeq ($(KBUILD_EXTMOD),)
ifneq ($(filter config %config,$(MAKECMDGOALS)),)
config-build := 1
ifneq ($(words $(MAKECMDGOALS)),1)
mixed-build := 1
endif
endif
endif
# We cannot build single targets and the others at the same time
ifneq ($(filter $(single-targets), $(MAKECMDGOALS)),)
single-build := 1
ifneq ($(filter-out $(single-targets), $(MAKECMDGOALS)),)
mixed-build := 1
endif
endif
# For "make -j clean all", "make -j mrproper defconfig all", etc.
ifneq ($(filter $(clean-targets),$(MAKECMDGOALS)),)
ifneq ($(filter-out $(clean-targets),$(MAKECMDGOALS)),)
mixed-build := 1
endif
endif
# install and modules_install need also be processed one by one
ifneq ($(filter install,$(MAKECMDGOALS)),)
ifneq ($(filter modules_install,$(MAKECMDGOALS)),)
mixed-build := 1
endif
endif
ifdef mixed-build
# ===========================================================================
# We're called with mixed targets (*config and build targets).
# Handle them one by one.
PHONY += $(MAKECMDGOALS) __build_one_by_one
$(filter-out __build_one_by_one, $(MAKECMDGOALS)): __build_one_by_one
@:
__build_one_by_one:
$(Q)set -e; \
for i in $(MAKECMDGOALS); do \
$(MAKE) -f $(srctree)/Makefile $$i; \
done
else # !mixed-build
include scripts/Kbuild.include
# Read KERNELRELEASE from include/config/kernel.release (if it exists)
KERNELRELEASE = $(shell cat include/config/kernel.release 2> /dev/null)
KERNELVERSION = $(VERSION)$(if $(PATCHLEVEL),.$(PATCHLEVEL)$(if $(SUBLEVEL),.$(SUBLEVEL)))$(EXTRAVERSION)
export VERSION PATCHLEVEL SUBLEVEL KERNELRELEASE KERNELVERSION
include scripts/subarch.include
# Cross compiling and selecting different set of gcc/bin-utils
# ---------------------------------------------------------------------------
#
# When performing cross compilation for other architectures ARCH shall be set
# to the target architecture. (See arch/* for the possibilities).
# ARCH can be set during invocation of make:
# make ARCH=ia64
# Another way is to have ARCH set in the environment.
# The default ARCH is the host where make is executed.
# CROSS_COMPILE specify the prefix used for all executables used
# during compilation. Only gcc and related bin-utils executables
# are prefixed with $(CROSS_COMPILE).
# CROSS_COMPILE can be set on the command line
# make CROSS_COMPILE=ia64-linux-
# Alternatively CROSS_COMPILE can be set in the environment.
# Default value for CROSS_COMPILE is not to prefix executables
# Note: Some architectures assign CROSS_COMPILE in their arch/*/Makefile
ARCH ?= $(SUBARCH)
# Architecture as present in compile.h
UTS_MACHINE := $(ARCH)
SRCARCH := $(ARCH)
# Additional ARCH settings for x86
ifeq ($(ARCH),i386)
SRCARCH := x86
endif
ifeq ($(ARCH),x86_64)
SRCARCH := x86
endif
# Additional ARCH settings for sparc
ifeq ($(ARCH),sparc32)
SRCARCH := sparc
endif
ifeq ($(ARCH),sparc64)
SRCARCH := sparc
endif
# Additional ARCH settings for sh
ifeq ($(ARCH),sh64)
SRCARCH := sh
endif
KCONFIG_CONFIG ?= .config
export KCONFIG_CONFIG
# SHELL used by kbuild
CONFIG_SHELL := sh
HOST_LFS_CFLAGS := $(shell getconf LFS_CFLAGS 2>/dev/null)
HOST_LFS_LDFLAGS := $(shell getconf LFS_LDFLAGS 2>/dev/null)
HOST_LFS_LIBS := $(shell getconf LFS_LIBS 2>/dev/null)
HOSTCC = gcc
HOSTCXX = g++
KBUILD_HOSTCFLAGS := -Wall -Wmissing-prototypes -Wstrict-prototypes -O2 \
-fomit-frame-pointer -std=gnu89 $(HOST_LFS_CFLAGS) \
$(HOSTCFLAGS)
KBUILD_HOSTCXXFLAGS := -O2 $(HOST_LFS_CFLAGS) $(HOSTCXXFLAGS)
KBUILD_HOSTLDFLAGS := $(HOST_LFS_LDFLAGS) $(HOSTLDFLAGS)
KBUILD_HOSTLDLIBS := $(HOST_LFS_LIBS) $(HOSTLDLIBS)
# Make variables (CC, etc...)
AS = $(CROSS_COMPILE)as
LD = $(CROSS_COMPILE)ld
REAL_CC = $(CROSS_COMPILE)gcc
CPP = $(CC) -E
AR = $(CROSS_COMPILE)ar
NM = $(CROSS_COMPILE)nm
STRIP = $(CROSS_COMPILE)strip
OBJCOPY = $(CROSS_COMPILE)objcopy
OBJDUMP = $(CROSS_COMPILE)objdump
OBJSIZE = $(CROSS_COMPILE)size
READELF = $(CROSS_COMPILE)readelf
PAHOLE = pahole
LEX = flex
YACC = bison
AWK = awk
INSTALLKERNEL := installkernel
DEPMOD = /sbin/depmod
PERL = perl
PYTHON = python
PYTHON3 = python3
CHECK = sparse
BASH = bash
ifndef DISABLE_WRAPPER
# Use the wrapper for the compiler. This wrapper scans for new
# warnings and causes the build to stop upon encountering them
CC = $(srctree)/scripts/gcc-wrapper.py $(REAL_CC)
else
CC = $(REAL_CC)
endif
CHECKFLAGS := -D__linux__ -Dlinux -D__STDC__ -Dunix -D__unix__ \
-Wbitwise -Wno-return-void -Wno-unknown-attribute $(CF)
NOSTDINC_FLAGS :=
CFLAGS_MODULE =
AFLAGS_MODULE =
LDFLAGS_MODULE =
CFLAGS_KERNEL =
AFLAGS_KERNEL =
LDFLAGS_vmlinux =
# Use USERINCLUDE when you must reference the UAPI directories only.
USERINCLUDE := \
-I$(srctree)/arch/$(SRCARCH)/include/uapi \
-I$(objtree)/arch/$(SRCARCH)/include/generated/uapi \
-I$(srctree)/include/uapi \
-I$(objtree)/include/generated/uapi \
-include $(srctree)/include/linux/kconfig.h
# Use LINUXINCLUDE when you must reference the include/ directory.
# Needed to be compatible with the O= option
LINUXINCLUDE := \
-I$(srctree)/arch/$(SRCARCH)/include \
-I$(objtree)/arch/$(SRCARCH)/include/generated \
$(if $(building_out_of_srctree),-I$(srctree)/include) \
-I$(objtree)/include \
$(USERINCLUDE)
KBUILD_AFLAGS := -D__ASSEMBLY__ -fno-PIE
KBUILD_CFLAGS := -Wall -Wundef -Werror=strict-prototypes -Wno-trigraphs \
-fno-strict-aliasing -fno-common -fshort-wchar -fno-PIE \
-Werror=implicit-function-declaration -Werror=implicit-int \
-Wno-format-security \
-std=gnu89
KBUILD_CPPFLAGS := -D__KERNEL__
KBUILD_AFLAGS_KERNEL :=
KBUILD_CFLAGS_KERNEL :=
KBUILD_AFLAGS_MODULE := -DMODULE
KBUILD_CFLAGS_MODULE := -DMODULE
KBUILD_LDFLAGS_MODULE :=
export KBUILD_LDS_MODULE := $(srctree)/scripts/module-common.lds
KBUILD_LDFLAGS :=
GCC_PLUGINS_CFLAGS :=
CLANG_FLAGS :=
export ARCH SRCARCH CONFIG_SHELL BASH HOSTCC KBUILD_HOSTCFLAGS CROSS_COMPILE AS LD CC
export CPP AR NM STRIP OBJCOPY OBJDUMP OBJSIZE READELF PAHOLE LEX YACC AWK INSTALLKERNEL
export PERL PYTHON PYTHON3 CHECK CHECKFLAGS MAKE UTS_MACHINE HOSTCXX
export KBUILD_HOSTCXXFLAGS KBUILD_HOSTLDFLAGS KBUILD_HOSTLDLIBS LDFLAGS_MODULE
export KBUILD_CPPFLAGS NOSTDINC_FLAGS LINUXINCLUDE OBJCOPYFLAGS KBUILD_LDFLAGS
export KBUILD_CFLAGS CFLAGS_KERNEL CFLAGS_MODULE
export CFLAGS_KASAN CFLAGS_KASAN_NOSANITIZE CFLAGS_UBSAN
export KBUILD_AFLAGS AFLAGS_KERNEL AFLAGS_MODULE
export KBUILD_AFLAGS_MODULE KBUILD_CFLAGS_MODULE KBUILD_LDFLAGS_MODULE
export KBUILD_AFLAGS_KERNEL KBUILD_CFLAGS_KERNEL
# Files to ignore in find ... statements
export RCS_FIND_IGNORE := \( -name SCCS -o -name BitKeeper -o -name .svn -o \
-name CVS -o -name .pc -o -name .hg -o -name .git \) \
-prune -o
export RCS_TAR_IGNORE := --exclude SCCS --exclude BitKeeper --exclude .svn \
--exclude CVS --exclude .pc --exclude .hg --exclude .git
# ===========================================================================
# Rules shared between *config targets and build targets
# Basic helpers built in scripts/basic/
PHONY += scripts_basic
scripts_basic:
$(Q)$(MAKE) $(build)=scripts/basic
$(Q)rm -f .tmp_quiet_recordmcount
PHONY += outputmakefile
# Before starting out-of-tree build, make sure the source tree is clean.
# outputmakefile generates a Makefile in the output directory, if using a
# separate output directory. This allows convenient use of make in the
# output directory.
# At the same time when output Makefile generated, generate .gitignore to
# ignore whole output directory
outputmakefile:
ifdef building_out_of_srctree
$(Q)if [ -f $(srctree)/.config -o \
-d $(srctree)/include/config -o \
-d $(srctree)/arch/$(SRCARCH)/include/generated ]; then \
echo >&2 "***"; \
echo >&2 "*** The source tree is not clean, please run 'make$(if $(findstring command line, $(origin ARCH)), ARCH=$(ARCH)) mrproper'"; \
echo >&2 "*** in $(abs_srctree)";\
echo >&2 "***"; \
false; \
fi
$(Q)ln -fsn $(srctree) source
$(Q)$(CONFIG_SHELL) $(srctree)/scripts/mkmakefile $(srctree)
$(Q)test -e .gitignore || \
{ echo "# this is build directory, ignore it"; echo "*"; } > .gitignore
endif
ifneq ($(shell $(CC) --version 2>&1 | grep clang),)
ifneq ($(CROSS_COMPILE),)
CLANG_TRIPLE ?= $(CROSS_COMPILE)
CLANG_FLAGS += --target=$(notdir $(CLANG_TRIPLE:%-=%))
ifeq ($(shell $(srctree)/scripts/clang-android.sh $(CC) $(CLANG_FLAGS)), y)
$(error "Clang with Android --target detected. Did you specify CLANG_TRIPLE?")
endif
GCC_TOOLCHAIN_DIR := $(dir $(shell which $(CROSS_COMPILE)elfedit))
CLANG_FLAGS += --prefix=$(GCC_TOOLCHAIN_DIR)
GCC_TOOLCHAIN := $(realpath $(GCC_TOOLCHAIN_DIR)/..)
endif
ifneq ($(GCC_TOOLCHAIN),)
CLANG_FLAGS += --gcc-toolchain=$(GCC_TOOLCHAIN)
endif
ifeq ($(shell $(AS) --version 2>&1 | head -n 1 | grep clang),)
CLANG_FLAGS += -no-integrated-as
endif
CLANG_FLAGS += -Werror=unknown-warning-option
KBUILD_CFLAGS += $(CLANG_FLAGS)
KBUILD_AFLAGS += $(CLANG_FLAGS)
export CLANG_FLAGS
endif
# The expansion should be delayed until arch/$(SRCARCH)/Makefile is included.
# Some architectures define CROSS_COMPILE in arch/$(SRCARCH)/Makefile.
# CC_VERSION_TEXT is referenced from Kconfig (so it needs export),
# and from include/config/auto.conf.cmd to detect the compiler upgrade.
CC_VERSION_TEXT = $(shell $(CC) --version 2>/dev/null | head -n 1)
ifdef config-build
# ===========================================================================
# *config targets only - make sure prerequisites are updated, and descend
# in scripts/kconfig to make the *config target
# Read arch specific Makefile to set KBUILD_DEFCONFIG as needed.
# KBUILD_DEFCONFIG may point out an alternative default configuration
# used for 'make defconfig'
include arch/$(SRCARCH)/Makefile
export KBUILD_DEFCONFIG KBUILD_KCONFIG CC_VERSION_TEXT
config: outputmakefile scripts_basic FORCE
$(Q)$(MAKE) $(build)=scripts/kconfig $@
%config: outputmakefile scripts_basic FORCE
$(Q)$(MAKE) $(build)=scripts/kconfig $@
else #!config-build
# ===========================================================================
# Build targets only - this includes vmlinux, arch specific targets, clean
# targets and others. In general all targets except *config targets.
# If building an external module we do not care about the all: rule
# but instead _all depend on modules
PHONY += all
ifeq ($(KBUILD_EXTMOD),)
_all: all
else
_all: modules
endif
# Decide whether to build built-in, modular, or both.
# Normally, just do built-in.
KBUILD_MODULES :=
KBUILD_BUILTIN := 1
# If we have only "make modules", don't compile built-in objects.
# When we're building modules with modversions, we need to consider
# the built-in objects during the descend as well, in order to
# make sure the checksums are up to date before we record them.
ifeq ($(MAKECMDGOALS),modules)
KBUILD_BUILTIN := $(if $(CONFIG_MODVERSIONS),1)
endif
# If we have "make <whatever> modules", compile modules
# in addition to whatever we do anyway.
# Just "make" or "make all" shall build modules as well
ifneq ($(filter all _all modules nsdeps,$(MAKECMDGOALS)),)
KBUILD_MODULES := 1
endif
ifeq ($(MAKECMDGOALS),)
KBUILD_MODULES := 1
endif
export KBUILD_MODULES KBUILD_BUILTIN
ifdef need-config
include include/config/auto.conf
endif
ifeq ($(KBUILD_EXTMOD),)
# Objects we will link into vmlinux / subdirs we need to visit
init-y := init/
drivers-y := drivers/ sound/
drivers-$(CONFIG_SAMPLES) += samples/
net-y := net/
libs-y := lib/
core-y := usr/
virt-y := virt/
endif # KBUILD_EXTMOD
# The all: target is the default when no target is given on the
# command line.
# This allow a user to issue only 'make' to build a kernel including modules
# Defaults to vmlinux, but the arch makefile usually adds further targets
all: vmlinux
CFLAGS_GCOV := -fprofile-arcs -ftest-coverage \
$(call cc-option,-fno-tree-loop-im) \
$(call cc-disable-warning,maybe-uninitialized,)
export CFLAGS_GCOV
# The arch Makefiles can override CC_FLAGS_FTRACE. We may also append it later.
ifdef CONFIG_FUNCTION_TRACER
CC_FLAGS_FTRACE := -pg
endif
RETPOLINE_CFLAGS_GCC := -mindirect-branch=thunk-extern -mindirect-branch-register
RETPOLINE_VDSO_CFLAGS_GCC := -mindirect-branch=thunk-inline -mindirect-branch-register
RETPOLINE_CFLAGS_CLANG := -mretpoline-external-thunk
RETPOLINE_VDSO_CFLAGS_CLANG := -mretpoline
RETPOLINE_CFLAGS := $(call cc-option,$(RETPOLINE_CFLAGS_GCC),$(call cc-option,$(RETPOLINE_CFLAGS_CLANG)))
RETPOLINE_VDSO_CFLAGS := $(call cc-option,$(RETPOLINE_VDSO_CFLAGS_GCC),$(call cc-option,$(RETPOLINE_VDSO_CFLAGS_CLANG)))
export RETPOLINE_CFLAGS
export RETPOLINE_VDSO_CFLAGS
# Make toolchain changes before including arch/$(SRCARCH)/Makefile to ensure
# ar/cc/ld-* macros return correct values.
ifdef CONFIG_LTO_CLANG
# LTO produces LLVM IR instead of object files. Use llvm-ar and llvm-nm, so we
# can process these.
AR := llvm-ar
LLVM_NM := llvm-nm
export LLVM_NM
endif
include arch/$(SRCARCH)/Makefile
ifdef need-config
ifdef may-sync-config
# Read in dependencies to all Kconfig* files, make sure to run syncconfig if
# changes are detected. This should be included after arch/$(SRCARCH)/Makefile
# because some architectures define CROSS_COMPILE there.
include include/config/auto.conf.cmd
$(KCONFIG_CONFIG):
@echo >&2 '***'
@echo >&2 '*** Configuration file "$@" not found!'
@echo >&2 '***'
@echo >&2 '*** Please run some configurator (e.g. "make oldconfig" or'
@echo >&2 '*** "make menuconfig" or "make xconfig").'
@echo >&2 '***'
@/bin/false
# The actual configuration files used during the build are stored in
# include/generated/ and include/config/. Update them if .config is newer than
# include/config/auto.conf (which mirrors .config).
#
# This exploits the 'multi-target pattern rule' trick.
# The syncconfig should be executed only once to make all the targets.
%/auto.conf %/auto.conf.cmd: $(KCONFIG_CONFIG)
$(Q)$(MAKE) -f $(srctree)/Makefile syncconfig
else # !may-sync-config
# External modules and some install targets need include/generated/autoconf.h
# and include/config/auto.conf but do not care if they are up-to-date.
# Use auto.conf to trigger the test
PHONY += include/config/auto.conf
include/config/auto.conf:
$(Q)test -e include/generated/autoconf.h -a -e $@ || ( \
echo >&2; \
echo >&2 " ERROR: Kernel configuration is invalid."; \
echo >&2 " include/generated/autoconf.h or $@ are missing.";\
echo >&2 " Run 'make oldconfig && make prepare' on kernel src to fix it."; \
echo >&2 ; \
/bin/false)
endif # may-sync-config
endif # need-config
KBUILD_CFLAGS += $(call cc-option,-fno-delete-null-pointer-checks,)
KBUILD_CFLAGS += $(call cc-disable-warning,frame-address,)
KBUILD_CFLAGS += $(call cc-disable-warning, format-truncation)
KBUILD_CFLAGS += $(call cc-disable-warning, format-overflow)
KBUILD_CFLAGS += $(call cc-disable-warning, address-of-packed-member)
ifdef CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE
KBUILD_CFLAGS += -O2
else ifdef CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE_O3
KBUILD_CFLAGS += -O3
else ifdef CONFIG_CC_OPTIMIZE_FOR_SIZE
KBUILD_CFLAGS += -Os
endif
ifdef CONFIG_CC_DISABLE_WARN_MAYBE_UNINITIALIZED
KBUILD_CFLAGS += -Wno-maybe-uninitialized
endif
# Tell gcc to never replace conditional load with a non-conditional one
KBUILD_CFLAGS += $(call cc-option,--param=allow-store-data-races=0)
include scripts/Makefile.kcov
include scripts/Makefile.gcc-plugins
ifdef CONFIG_READABLE_ASM
# Disable optimizations that make assembler listings hard to read.
# reorder blocks reorders the control in the function
# ipa clone creates specialized cloned functions
# partial inlining inlines only parts of functions
KBUILD_CFLAGS += $(call cc-option,-fno-reorder-blocks,) \
$(call cc-option,-fno-ipa-cp-clone,) \
$(call cc-option,-fno-partial-inlining)
endif
ifneq ($(CONFIG_FRAME_WARN),0)
KBUILD_CFLAGS += $(call cc-option,-Wframe-larger-than=${CONFIG_FRAME_WARN})
endif
stackp-flags-$(CONFIG_CC_HAS_STACKPROTECTOR_NONE) := -fno-stack-protector
stackp-flags-$(CONFIG_STACKPROTECTOR) := -fstack-protector
stackp-flags-$(CONFIG_STACKPROTECTOR_STRONG) := -fstack-protector-strong
KBUILD_CFLAGS += $(stackp-flags-y)
ifdef CONFIG_CC_IS_CLANG
KBUILD_CPPFLAGS += -Qunused-arguments
KBUILD_CFLAGS += -Wno-format-invalid-specifier
KBUILD_CFLAGS += -Wno-gnu
# Quiet clang warning: comparison of unsigned expression < 0 is always false
KBUILD_CFLAGS += -Wno-tautological-compare
# CLANG uses a _MergedGlobals as optimization, but this breaks modpost, as the
# source of a reference will be _MergedGlobals and not on of the whitelisted names.
# See modpost pattern 2
KBUILD_CFLAGS += -mno-global-merge
else
# These warnings generated too much noise in a regular build.
# Use make W=1 to enable them (see scripts/Makefile.extrawarn)
KBUILD_CFLAGS += -Wno-unused-but-set-variable
# Warn about unmarked fall-throughs in switch statement.
# Disabled for clang while comment to attribute conversion happens and
# https://github.com/ClangBuiltLinux/linux/issues/636 is discussed.
KBUILD_CFLAGS += $(call cc-option,-Wimplicit-fallthrough,)
endif
KBUILD_CFLAGS += $(call cc-disable-warning, unused-const-variable)
ifdef CONFIG_FRAME_POINTER
KBUILD_CFLAGS += -fno-omit-frame-pointer -fno-optimize-sibling-calls
else
# Some targets (ARM with Thumb2, for example), can't be built with frame
# pointers. For those, we don't have FUNCTION_TRACER automatically
# select FRAME_POINTER. However, FUNCTION_TRACER adds -pg, and this is
# incompatible with -fomit-frame-pointer with current GCC, so we don't use
# -fomit-frame-pointer with FUNCTION_TRACER.
ifndef CONFIG_FUNCTION_TRACER
KBUILD_CFLAGS += -fomit-frame-pointer
endif
endif
# Initialize all stack variables with a pattern, if desired.
ifdef CONFIG_INIT_STACK_ALL
KBUILD_CFLAGS += -ftrivial-auto-var-init=pattern
endif
DEBUG_CFLAGS := $(call cc-option, -fno-var-tracking-assignments)
ifdef CONFIG_DEBUG_INFO
ifdef CONFIG_DEBUG_INFO_SPLIT
DEBUG_CFLAGS += -gsplit-dwarf
else
DEBUG_CFLAGS += -g
endif
KBUILD_AFLAGS += -Wa,-gdwarf-2
endif
ifdef CONFIG_DEBUG_INFO_DWARF4
DEBUG_CFLAGS += -gdwarf-4
endif
ifdef CONFIG_DEBUG_INFO_REDUCED
DEBUG_CFLAGS += $(call cc-option, -femit-struct-debug-baseonly) \
$(call cc-option,-fno-var-tracking)
endif
KBUILD_CFLAGS += $(DEBUG_CFLAGS)
export DEBUG_CFLAGS
ifdef CONFIG_FUNCTION_TRACER
ifdef CONFIG_FTRACE_MCOUNT_RECORD
# gcc 5 supports generating the mcount tables directly
ifeq ($(call cc-option-yn,-mrecord-mcount),y)
CC_FLAGS_FTRACE += -mrecord-mcount
export CC_USING_RECORD_MCOUNT := 1
endif
ifdef CONFIG_HAVE_NOP_MCOUNT
ifeq ($(call cc-option-yn, -mnop-mcount),y)
CC_FLAGS_FTRACE += -mnop-mcount
CC_FLAGS_USING += -DCC_USING_NOP_MCOUNT
endif
endif
endif
ifdef CONFIG_HAVE_FENTRY
ifeq ($(call cc-option-yn, -mfentry),y)
CC_FLAGS_FTRACE += -mfentry
CC_FLAGS_USING += -DCC_USING_FENTRY
endif
endif
export CC_FLAGS_FTRACE
KBUILD_CFLAGS += $(CC_FLAGS_FTRACE) $(CC_FLAGS_USING)
KBUILD_AFLAGS += $(CC_FLAGS_USING)
ifdef CONFIG_DYNAMIC_FTRACE
ifdef CONFIG_HAVE_C_RECORDMCOUNT
BUILD_C_RECORDMCOUNT := y
export BUILD_C_RECORDMCOUNT
endif
endif
endif
# We trigger additional mismatches with less inlining
ifdef CONFIG_DEBUG_SECTION_MISMATCH
KBUILD_CFLAGS += $(call cc-option, -fno-inline-functions-called-once)
endif
ifdef CONFIG_LD_DEAD_CODE_DATA_ELIMINATION
KBUILD_CFLAGS_KERNEL += -ffunction-sections -fdata-sections
LDFLAGS_vmlinux += --gc-sections
endif
ifdef CONFIG_LIVEPATCH
KBUILD_CFLAGS += $(call cc-option, -flive-patching=inline-clone)
endif
ifdef CONFIG_SHADOW_CALL_STACK
CC_FLAGS_SCS := -fsanitize=shadow-call-stack
KBUILD_CFLAGS += $(CC_FLAGS_SCS)
export CC_FLAGS_SCS
endif
ifdef CONFIG_LTO_CLANG
ifdef CONFIG_THINLTO
CC_FLAGS_LTO_CLANG := -flto=thin $(call cc-option, -fsplit-lto-unit)
KBUILD_LDFLAGS += --thinlto-cache-dir=.thinlto-cache
else
CC_FLAGS_LTO_CLANG := -flto
endif
CC_FLAGS_LTO_CLANG += -fvisibility=default
# Limit inlining across translation units to reduce binary size
LD_FLAGS_LTO_CLANG := -mllvm -import-instr-limit=5
KBUILD_LDFLAGS += $(LD_FLAGS_LTO_CLANG)
KBUILD_LDFLAGS_MODULE += $(LD_FLAGS_LTO_CLANG)
KBUILD_LDS_MODULE += $(srctree)/scripts/module-lto.lds
endif
ifdef CONFIG_LTO
CC_FLAGS_LTO := $(CC_FLAGS_LTO_CLANG)
KBUILD_CFLAGS += $(CC_FLAGS_LTO)
export CC_FLAGS_LTO
endif
ifdef CONFIG_CFI_CLANG
CC_FLAGS_CFI := -fsanitize=cfi \
-fno-sanitize-cfi-canonical-jump-tables
ifdef CONFIG_MODULES
CC_FLAGS_CFI += -fsanitize-cfi-cross-dso
endif
ifdef CONFIG_CFI_PERMISSIVE
CC_FLAGS_CFI += -fsanitize-recover=cfi \
-fno-sanitize-trap=cfi
endif
# If LTO flags are filtered out, we must also filter out CFI.
CC_FLAGS_LTO += $(CC_FLAGS_CFI)
KBUILD_CFLAGS += $(CC_FLAGS_CFI)
export CC_FLAGS_CFI
endif
# arch Makefile may override CC so keep this after arch Makefile is included
NOSTDINC_FLAGS += -nostdinc -isystem $(shell $(CC) -print-file-name=include)
# warn about C99 declaration after statement
KBUILD_CFLAGS += -Wdeclaration-after-statement
# Variable Length Arrays (VLAs) should not be used anywhere in the kernel
KBUILD_CFLAGS += -Wvla
# disable pointer signed / unsigned warnings in gcc 4.0
KBUILD_CFLAGS += -Wno-pointer-sign
# disable stringop warnings in gcc 8+
KBUILD_CFLAGS += $(call cc-disable-warning, stringop-truncation)
# disable invalid "can't wrap" optimizations for signed / pointers
KBUILD_CFLAGS += $(call cc-option,-fno-strict-overflow)
# clang sets -fmerge-all-constants by default as optimization, but this
# is non-conforming behavior for C and in fact breaks the kernel, so we
# need to disable it here generally.
KBUILD_CFLAGS += $(call cc-option,-fno-merge-all-constants)
# for gcc -fno-merge-all-constants disables everything, but it is fine
# to have actual conforming behavior enabled.
KBUILD_CFLAGS += $(call cc-option,-fmerge-constants)
# Make sure -fstack-check isn't enabled (like gentoo apparently did)
KBUILD_CFLAGS += $(call cc-option,-fno-stack-check,)
# conserve stack if available
KBUILD_CFLAGS += $(call cc-option,-fconserve-stack)
# Prohibit date/time macros, which would make the build non-deterministic
KBUILD_CFLAGS += $(call cc-option,-Werror=date-time)
# enforce correct pointer usage
KBUILD_CFLAGS += $(call cc-option,-Werror=incompatible-pointer-types)
# Require designated initializers for all marked structures
KBUILD_CFLAGS += $(call cc-option,-Werror=designated-init)
# change __FILE__ to the relative path from the srctree
KBUILD_CFLAGS += $(call cc-option,-fmacro-prefix-map=$(srctree)/=)
# ensure -fcf-protection is disabled when using retpoline as it is
# incompatible with -mindirect-branch=thunk-extern
ifdef CONFIG_RETPOLINE
KBUILD_CFLAGS += $(call cc-option,-fcf-protection=none)
endif
include scripts/Makefile.kasan
include scripts/Makefile.extrawarn
include scripts/Makefile.ubsan
# Add user supplied CPPFLAGS, AFLAGS and CFLAGS as the last assignments
KBUILD_CPPFLAGS += $(KCPPFLAGS)
KBUILD_AFLAGS += $(KAFLAGS)
KBUILD_CFLAGS += $(KCFLAGS)
KBUILD_LDFLAGS_MODULE += --build-id
LDFLAGS_vmlinux += --build-id
ifeq ($(CONFIG_STRIP_ASM_SYMS),y)
LDFLAGS_vmlinux += $(call ld-option, -X,)
endif
ifeq ($(CONFIG_RELR),y)
LDFLAGS_vmlinux += --pack-dyn-relocs=relr
endif
# make the checker run with the right architecture
CHECKFLAGS += --arch=$(ARCH)
# insure the checker run with the right endianness
CHECKFLAGS += $(if $(CONFIG_CPU_BIG_ENDIAN),-mbig-endian,-mlittle-endian)
# the checker needs the correct machine size
CHECKFLAGS += $(if $(CONFIG_64BIT),-m64,-m32)
# Default kernel image to build when no specific target is given.
# KBUILD_IMAGE may be overruled on the command line or
# set in the environment
# Also any assignments in arch/$(ARCH)/Makefile take precedence over
# this default value
export KBUILD_IMAGE ?= vmlinux
#
# INSTALL_PATH specifies where to place the updated kernel and system map
# images. Default is /boot, but you can set it to other values
export INSTALL_PATH ?= /boot
#
# INSTALL_DTBS_PATH specifies a prefix for relocations required by build roots.
# Like INSTALL_MOD_PATH, it isn't defined in the Makefile, but can be passed as
# an argument if needed. Otherwise it defaults to the kernel install path
#
export INSTALL_DTBS_PATH ?= $(INSTALL_PATH)/dtbs/$(KERNELRELEASE)
#
# INSTALL_MOD_PATH specifies a prefix to MODLIB for module directory
# relocations required by build roots. This is not defined in the
# makefile but the argument can be passed to make if needed.
#
MODLIB = $(INSTALL_MOD_PATH)/lib/modules/$(KERNELRELEASE)
export MODLIB
#
# INSTALL_MOD_STRIP, if defined, will cause modules to be
# stripped after they are installed. If INSTALL_MOD_STRIP is '1', then
# the default option --strip-debug will be used. Otherwise,
# INSTALL_MOD_STRIP value will be used as the options to the strip command.
ifdef INSTALL_MOD_STRIP
ifeq ($(INSTALL_MOD_STRIP),1)
mod_strip_cmd = $(STRIP) --strip-debug
else
mod_strip_cmd = $(STRIP) $(INSTALL_MOD_STRIP)
endif # INSTALL_MOD_STRIP=1
else
mod_strip_cmd = true
endif # INSTALL_MOD_STRIP
export mod_strip_cmd
# CONFIG_MODULE_COMPRESS, if defined, will cause module to be compressed
# after they are installed in agreement with CONFIG_MODULE_COMPRESS_GZIP
# or CONFIG_MODULE_COMPRESS_XZ.
mod_compress_cmd = true
ifdef CONFIG_MODULE_COMPRESS
ifdef CONFIG_MODULE_COMPRESS_GZIP
mod_compress_cmd = gzip -n -f
endif # CONFIG_MODULE_COMPRESS_GZIP
ifdef CONFIG_MODULE_COMPRESS_XZ
mod_compress_cmd = xz -f
endif # CONFIG_MODULE_COMPRESS_XZ
endif # CONFIG_MODULE_COMPRESS
export mod_compress_cmd
ifdef CONFIG_MODULE_SIG_ALL
$(eval $(call config_filename,MODULE_SIG_KEY))
mod_sign_cmd = scripts/sign-file $(CONFIG_MODULE_SIG_HASH) $(MODULE_SIG_KEY_SRCPREFIX)$(CONFIG_MODULE_SIG_KEY) certs/signing_key.x509
else
mod_sign_cmd = true
endif
export mod_sign_cmd
HOST_LIBELF_LIBS = $(shell pkg-config libelf --libs 2>/dev/null || echo -lelf)
ifdef CONFIG_STACK_VALIDATION
has_libelf := $(call try-run,\
echo "int main() {}" | $(HOSTCC) -xc -o /dev/null $(HOST_LIBELF_LIBS) -,1,0)
ifeq ($(has_libelf),1)
objtool_target := tools/objtool FORCE
else
SKIP_STACK_VALIDATION := 1
export SKIP_STACK_VALIDATION
endif
endif
PHONY += prepare0
export MODORDER := $(extmod-prefix)modules.order
export MODULES_NSDEPS := $(extmod-prefix)modules.nsdeps
ifeq ($(KBUILD_EXTMOD),)
core-y += kernel/ certs/ mm/ fs/ ipc/ security/ crypto/ block/
vmlinux-dirs := $(patsubst %/,%,$(filter %/, $(init-y) $(init-m) \
$(core-y) $(core-m) $(drivers-y) $(drivers-m) \
$(net-y) $(net-m) $(libs-y) $(libs-m) $(virt-y)))
vmlinux-alldirs := $(sort $(vmlinux-dirs) Documentation \
$(patsubst %/,%,$(filter %/, $(init-) $(core-) \
$(drivers-) $(net-) $(libs-) $(virt-))))
build-dirs := $(vmlinux-dirs)
clean-dirs := $(vmlinux-alldirs)
init-y := $(patsubst %/, %/built-in.a, $(init-y))
core-y := $(patsubst %/, %/built-in.a, $(core-y))
drivers-y := $(patsubst %/, %/built-in.a, $(drivers-y))
net-y := $(patsubst %/, %/built-in.a, $(net-y))
libs-y1 := $(patsubst %/, %/lib.a, $(libs-y))
libs-y2 := $(patsubst %/, %/built-in.a, $(filter-out %.a, $(libs-y)))
virt-y := $(patsubst %/, %/built-in.a, $(virt-y))
# Externally visible symbols (used by link-vmlinux.sh)
export KBUILD_VMLINUX_OBJS := $(head-y) $(init-y) $(core-y) $(libs-y2) \
$(drivers-y) $(net-y) $(virt-y)
export KBUILD_VMLINUX_LIBS := $(libs-y1)
export KBUILD_LDS := arch/$(SRCARCH)/kernel/vmlinux.lds
export LDFLAGS_vmlinux
# used by scripts/Makefile.package
export KBUILD_ALLDIRS := $(sort $(filter-out arch/%,$(vmlinux-alldirs)) LICENSES arch include scripts tools)
vmlinux-deps := $(KBUILD_LDS) $(KBUILD_VMLINUX_OBJS) $(KBUILD_VMLINUX_LIBS)
# Recurse until adjust_autoksyms.sh is satisfied
PHONY += autoksyms_recursive
ifdef CONFIG_TRIM_UNUSED_KSYMS
autoksyms_recursive: descend modules.order
$(Q)$(CONFIG_SHELL) $(srctree)/scripts/adjust_autoksyms.sh \
"$(MAKE) -f $(srctree)/Makefile vmlinux"
endif
# For the kernel to actually contain only the needed exported symbols,
# we have to build modules as well to determine what those symbols are.
# (this can be evaluated only once include/config/auto.conf has been included)
ifdef CONFIG_TRIM_UNUSED_KSYMS
KBUILD_MODULES := 1
endif
autoksyms_h := $(if $(CONFIG_TRIM_UNUSED_KSYMS), include/generated/autoksyms.h)
$(autoksyms_h):
$(Q)mkdir -p $(dir $@)
$(Q)touch $@
ARCH_POSTLINK := $(wildcard $(srctree)/arch/$(SRCARCH)/Makefile.postlink)
# Final link of vmlinux with optional arch pass after final link
cmd_link-vmlinux = \
$(CONFIG_SHELL) $< $(LD) $(KBUILD_LDFLAGS) $(LDFLAGS_vmlinux) ; \
$(if $(ARCH_POSTLINK), $(MAKE) -f $(ARCH_POSTLINK) $@, true)
vmlinux: scripts/link-vmlinux.sh autoksyms_recursive $(vmlinux-deps) FORCE
+$(call if_changed,link-vmlinux)
targets := vmlinux
# The actual objects are generated when descending,
# make sure no implicit rule kicks in
$(sort $(vmlinux-deps)): descend ;
filechk_kernel.release = \
echo "$(KERNELVERSION)$$($(CONFIG_SHELL) $(srctree)/scripts/setlocalversion $(srctree))"
# Store (new) KERNELRELEASE string in include/config/kernel.release
include/config/kernel.release: FORCE
$(call filechk,kernel.release)
# Additional helpers built in scripts/
# Carefully list dependencies so we do not try to build scripts twice
# in parallel
PHONY += scripts
scripts: scripts_basic scripts_dtc
$(Q)$(MAKE) $(build)=$(@)
# Things we need to do before we recursively start building the kernel
# or the modules are listed in "prepare".
# A multi level approach is used. prepareN is processed before prepareN-1.
# archprepare is used in arch Makefiles and when processed asm symlink,
# version.h and scripts_basic is processed / created.
PHONY += prepare archprepare
archprepare: outputmakefile archheaders archscripts scripts include/config/kernel.release \
asm-generic $(version_h) $(autoksyms_h) include/generated/utsrelease.h
prepare0: archprepare
$(Q)$(MAKE) $(build)=scripts/mod
$(Q)$(MAKE) $(build)=.
# All the preparing..
prepare: prepare0 prepare-objtool
# Support for using generic headers in asm-generic
asm-generic := -f $(srctree)/scripts/Makefile.asm-generic obj
PHONY += asm-generic uapi-asm-generic
asm-generic: uapi-asm-generic
$(Q)$(MAKE) $(asm-generic)=arch/$(SRCARCH)/include/generated/asm \
generic=include/asm-generic
uapi-asm-generic:
$(Q)$(MAKE) $(asm-generic)=arch/$(SRCARCH)/include/generated/uapi/asm \
generic=include/uapi/asm-generic
PHONY += prepare-objtool
prepare-objtool: $(objtool_target)
ifeq ($(SKIP_STACK_VALIDATION),1)
ifdef CONFIG_UNWINDER_ORC
@echo "error: Cannot generate ORC metadata for CONFIG_UNWINDER_ORC=y, please install libelf-dev, libelf-devel or elfutils-libelf-devel" >&2
@false
else
@echo "warning: Cannot use CONFIG_STACK_VALIDATION=y, please install libelf-dev, libelf-devel or elfutils-libelf-devel" >&2
endif
endif
# Generate some files
# ---------------------------------------------------------------------------
# KERNELRELEASE can change from a few different places, meaning version.h
# needs to be updated, so this check is forced on all builds
uts_len := 64
define filechk_utsrelease.h
if [ `echo -n "$(KERNELRELEASE)" | wc -c ` -gt $(uts_len) ]; then \
echo '"$(KERNELRELEASE)" exceeds $(uts_len) characters' >&2; \
exit 1; \
fi; \
echo \#define UTS_RELEASE \"$(KERNELRELEASE)\"
endef
define filechk_version.h
echo \#define LINUX_VERSION_CODE $(shell \
expr $(VERSION) \* 65536 + 0$(PATCHLEVEL) \* 256 + 0$(SUBLEVEL)); \
echo '#define KERNEL_VERSION(a,b,c) (((a) << 16) + ((b) << 8) + (c))'
endef
$(version_h): FORCE
$(call filechk,version.h)
$(Q)rm -f $(old_version_h)
include/generated/utsrelease.h: include/config/kernel.release FORCE
$(call filechk,utsrelease.h)
PHONY += headerdep
headerdep:
$(Q)find $(srctree)/include/ -name '*.h' | xargs --max-args 1 \
$(srctree)/scripts/headerdep.pl -I$(srctree)/include
# ---------------------------------------------------------------------------
# Kernel headers
#Default location for installed headers
export INSTALL_HDR_PATH = $(objtree)/usr
quiet_cmd_headers_install = INSTALL $(INSTALL_HDR_PATH)/include
cmd_headers_install = \
mkdir -p $(INSTALL_HDR_PATH); \
rsync -mrl --include='*/' --include='*\.h' --exclude='*' \
usr/include $(INSTALL_HDR_PATH)
PHONY += headers_install
headers_install: headers
$(call cmd,headers_install)
PHONY += archheaders archscripts
hdr-inst := -f $(srctree)/scripts/Makefile.headersinst obj
techpack-dirs := $(shell find $(srctree)/techpack -maxdepth 1 -mindepth 1 -type d -not -name ".*")
techpack-dirs := $(subst $(srctree)/,,$(techpack-dirs))
PHONY += headers
headers: $(version_h) scripts_unifdef uapi-asm-generic archheaders archscripts
$(if $(wildcard $(srctree)/arch/$(SRCARCH)/include/uapi/asm/Kbuild),, \
$(error Headers not exportable for the $(SRCARCH) architecture))
$(Q)$(MAKE) $(hdr-inst)=include/uapi
$(Q)$(MAKE) $(hdr-inst)=arch/$(SRCARCH)/include/uapi
$(Q)for d in $(techpack-dirs); do \
$(MAKE) $(hdr-inst)=$$d/include/uapi; \
done
# Deprecated. It is no-op now.
PHONY += headers_check
headers_check: headers
$(Q)$(MAKE) $(hdr-inst)=include/uapi HDRCHECK=1
$(Q)$(MAKE) $(hdr-inst)=arch/$(SRCARCH)/include/uapi HDRCHECK=1
$(Q)for d in $(techpack-dirs); do \
$(MAKE) $(hdr-inst)=$$d/include/uapi HDRCHECK=1; \
done
ifdef CONFIG_HEADERS_INSTALL
prepare: headers
endif
PHONY += scripts_unifdef
scripts_unifdef: scripts_basic
$(Q)$(MAKE) $(build)=scripts scripts/unifdef
# ---------------------------------------------------------------------------
# Kernel selftest
PHONY += kselftest
kselftest:
$(Q)$(MAKE) -C $(srctree)/tools/testing/selftests run_tests
kselftest-%: FORCE
$(Q)$(MAKE) -C $(srctree)/tools/testing/selftests $*
PHONY += kselftest-merge
kselftest-merge:
$(if $(wildcard $(objtree)/.config),, $(error No .config exists, config your kernel first!))
$(Q)find $(srctree)/tools/testing/selftests -name config | \
xargs $(srctree)/scripts/kconfig/merge_config.sh -m $(objtree)/.config
$(Q)$(MAKE) -f $(srctree)/Makefile olddefconfig
# ---------------------------------------------------------------------------
# Devicetree files
ifneq ($(wildcard $(srctree)/arch/$(SRCARCH)/boot/dts/),)
dtstree := arch/$(SRCARCH)/boot/dts
endif
ifneq ($(dtstree),)
%.dtb: include/config/kernel.release scripts_dtc
$(Q)$(MAKE) $(build)=$(dtstree) $(dtstree)/$@
PHONY += dtbs dtbs_install dt_binding_check
dtbs dtbs_check: include/config/kernel.release scripts_dtc
$(Q)$(MAKE) $(build)=$(dtstree)
dtbs_check: export CHECK_DTBS=1
dtbs_check: dt_binding_check
dtbs_install:
$(Q)$(MAKE) $(dtbinst)=$(dtstree)
ifdef CONFIG_OF_EARLY_FLATTREE
all: dtbs
endif
endif
PHONY += scripts_dtc
scripts_dtc: scripts_basic
$(Q)$(MAKE) $(build)=scripts/dtc
dt_binding_check: scripts_dtc
$(Q)$(MAKE) $(build)=Documentation/devicetree/bindings
# ---------------------------------------------------------------------------
# Modules
ifdef CONFIG_MODULES
# By default, build modules as well
all: modules
# Build modules
#
# A module can be listed more than once in obj-m resulting in
# duplicate lines in modules.order files. Those are removed
# using awk while concatenating to the final file.
PHONY += modules
modules: $(if $(KBUILD_BUILTIN),vmlinux) modules.order
$(Q)$(MAKE) -f $(srctree)/scripts/Makefile.modpost
$(Q)$(CONFIG_SHELL) $(srctree)/scripts/modules-check.sh
modules.order: descend
$(Q)$(AWK) '!x[$$0]++' $(addsuffix /$@, $(build-dirs)) > $@
# Target to prepare building external modules
PHONY += modules_prepare
modules_prepare: prepare
# Target to install modules
PHONY += modules_install
modules_install: _modinst_ _modinst_post
PHONY += _modinst_
_modinst_:
@rm -rf $(MODLIB)/kernel
@rm -f $(MODLIB)/source
@mkdir -p $(MODLIB)/kernel
@ln -s $(abspath $(srctree)) $(MODLIB)/source
@if [ ! $(objtree) -ef $(MODLIB)/build ]; then \
rm -f $(MODLIB)/build ; \
ln -s $(CURDIR) $(MODLIB)/build ; \
fi
@sed 's:^:kernel/:' modules.order > $(MODLIB)/modules.order
@cp -f modules.builtin $(MODLIB)/
@cp -f $(objtree)/modules.builtin.modinfo $(MODLIB)/
$(Q)$(MAKE) -f $(srctree)/scripts/Makefile.modinst
# This depmod is only for convenience to give the initial
# boot a modules.dep even before / is mounted read-write. However the
# boot script depmod is the master version.
PHONY += _modinst_post
_modinst_post: _modinst_
$(call cmd,depmod)
ifeq ($(CONFIG_MODULE_SIG), y)
PHONY += modules_sign
modules_sign:
$(Q)$(MAKE) -f $(srctree)/scripts/Makefile.modsign
endif
else # CONFIG_MODULES
# Modules not configured
# ---------------------------------------------------------------------------
PHONY += modules modules_install
modules modules_install:
@echo >&2
@echo >&2 "The present kernel configuration has modules disabled."
@echo >&2 "Type 'make config' and enable loadable module support."
@echo >&2 "Then build a kernel with module support enabled."
@echo >&2
@exit 1
endif # CONFIG_MODULES
###
# Cleaning is done on three levels.
# make clean Delete most generated files
# Leave enough to build external modules
# make mrproper Delete the current configuration, and all generated files
# make distclean Remove editor backup files, patch leftover files and the like
# Directories & files removed with 'make clean'
CLEAN_DIRS += include/ksym
CLEAN_FILES += modules.builtin modules.builtin.modinfo modules.nsdeps
# Directories & files removed with 'make mrproper'
MRPROPER_DIRS += include/config include/generated \
arch/$(SRCARCH)/include/generated .tmp_objdiff \
debian/ snap/ tar-install/
MRPROPER_FILES += .config .config.old .version \
Module.symvers \
signing_key.pem signing_key.priv signing_key.x509 \
x509.genkey extra_certificates signing_key.x509.keyid \
signing_key.x509.signer vmlinux-gdb.py \
*.spec
# Directories & files removed with 'make distclean'
DISTCLEAN_DIRS +=
DISTCLEAN_FILES += tags TAGS cscope* GPATH GTAGS GRTAGS GSYMS
# clean - Delete most, but leave enough to build external modules
#
clean: rm-dirs := $(CLEAN_DIRS)
clean: rm-files := $(CLEAN_FILES)
PHONY += archclean vmlinuxclean
vmlinuxclean:
$(Q)$(CONFIG_SHELL) $(srctree)/scripts/link-vmlinux.sh clean
$(Q)$(if $(ARCH_POSTLINK), $(MAKE) -f $(ARCH_POSTLINK) clean)
clean: archclean vmlinuxclean
# mrproper - Delete all generated files, including .config
#
mrproper: rm-dirs := $(wildcard $(MRPROPER_DIRS))
mrproper: rm-files := $(wildcard $(MRPROPER_FILES))
mrproper-dirs := $(addprefix _mrproper_,scripts)
PHONY += $(mrproper-dirs) mrproper
$(mrproper-dirs):
$(Q)$(MAKE) $(clean)=$(patsubst _mrproper_%,%,$@)
mrproper: clean $(mrproper-dirs)
$(call cmd,rmdirs)
$(call cmd,rmfiles)
# distclean
#
distclean: rm-dirs := $(wildcard $(DISTCLEAN_DIRS))
distclean: rm-files := $(wildcard $(DISTCLEAN_FILES))
PHONY += distclean
distclean: mrproper
$(call cmd,rmdirs)
$(call cmd,rmfiles)
@find $(srctree) $(RCS_FIND_IGNORE) \
\( -name '*.orig' -o -name '*.rej' -o -name '*~' \
-o -name '*.bak' -o -name '#*#' -o -name '*%' \
-o -name 'core' \) \
-type f -print | xargs rm -f
# Packaging of the kernel to various formats
# ---------------------------------------------------------------------------
%src-pkg: FORCE
$(Q)$(MAKE) -f $(srctree)/scripts/Makefile.package $@
%pkg: include/config/kernel.release FORCE
$(Q)$(MAKE) -f $(srctree)/scripts/Makefile.package $@
# Brief documentation of the typical targets used
# ---------------------------------------------------------------------------
boards := $(wildcard $(srctree)/arch/$(SRCARCH)/configs/*_defconfig)
boards := $(sort $(notdir $(boards)))
board-dirs := $(dir $(wildcard $(srctree)/arch/$(SRCARCH)/configs/*/*_defconfig))
board-dirs := $(sort $(notdir $(board-dirs:/=)))
PHONY += help
help:
@echo 'Cleaning targets:'
@echo ' clean - Remove most generated files but keep the config and'
@echo ' enough build support to build external modules'
@echo ' mrproper - Remove all generated files + config + various backup files'
@echo ' distclean - mrproper + remove editor backup and patch files'
@echo ''
@echo 'Configuration targets:'
@$(MAKE) -f $(srctree)/scripts/kconfig/Makefile help
@echo ''
@echo 'Other generic targets:'
@echo ' all - Build all targets marked with [*]'
@echo '* vmlinux - Build the bare kernel'
@echo '* modules - Build all modules'
@echo ' modules_install - Install all modules to INSTALL_MOD_PATH (default: /)'
@echo ' dir/ - Build all files in dir and below'
@echo ' dir/file.[ois] - Build specified target only'
@echo ' dir/file.ll - Build the LLVM assembly file'
@echo ' (requires compiler support for LLVM assembly generation)'
@echo ' dir/file.lst - Build specified mixed source/assembly target only'
@echo ' (requires a recent binutils and recent build (System.map))'
@echo ' dir/file.ko - Build module including final link'
@echo ' modules_prepare - Set up for building external modules'
@echo ' tags/TAGS - Generate tags file for editors'
@echo ' cscope - Generate cscope index'
@echo ' gtags - Generate GNU GLOBAL index'
@echo ' kernelrelease - Output the release version string (use with make -s)'
@echo ' kernelversion - Output the version stored in Makefile (use with make -s)'
@echo ' image_name - Output the image name (use with make -s)'
@echo ' headers_install - Install sanitised kernel headers to INSTALL_HDR_PATH'; \
echo ' (default: $(INSTALL_HDR_PATH))'; \
echo ''
@echo 'Static analysers:'
@echo ' checkstack - Generate a list of stack hogs'
@echo ' namespacecheck - Name space analysis on compiled kernel'
@echo ' versioncheck - Sanity check on version.h usage'
@echo ' includecheck - Check for duplicate included header files'
@echo ' export_report - List the usages of all exported symbols'
@echo ' headerdep - Detect inclusion cycles in headers'
@echo ' coccicheck - Check with Coccinelle'
@echo ''
@echo 'Tools:'
@echo ' nsdeps - Generate missing symbol namespace dependencies'
@echo ''
@echo 'Kernel selftest:'
@echo ' kselftest - Build and run kernel selftest (run as root)'
@echo ' Build, install, and boot kernel before'
@echo ' running kselftest on it'
@echo ' kselftest-clean - Remove all generated kselftest files'
@echo ' kselftest-merge - Merge all the config dependencies of kselftest to existing'
@echo ' .config.'
@echo ''
@$(if $(dtstree), \
echo 'Devicetree:'; \
echo '* dtbs - Build device tree blobs for enabled boards'; \
echo ' dtbs_install - Install dtbs to $(INSTALL_DTBS_PATH)'; \
echo ' dt_binding_check - Validate device tree binding documents'; \
echo ' dtbs_check - Validate device tree source files';\
echo '')
@echo 'Userspace tools targets:'
@echo ' use "make tools/help"'
@echo ' or "cd tools; make help"'
@echo ''
@echo 'Kernel packaging:'
@$(MAKE) -f $(srctree)/scripts/Makefile.package help
@echo ''
@echo 'Documentation targets:'
@$(MAKE) -f $(srctree)/Documentation/Makefile dochelp
@echo ''
@echo 'Architecture specific targets ($(SRCARCH)):'
@$(if $(archhelp),$(archhelp),\
echo ' No architecture specific help defined for $(SRCARCH)')
@echo ''
@$(if $(boards), \
$(foreach b, $(boards), \
printf " %-27s - Build for %s\\n" $(b) $(subst _defconfig,,$(b));) \
echo '')
@$(if $(board-dirs), \
$(foreach b, $(board-dirs), \
printf " %-16s - Show %s-specific targets\\n" help-$(b) $(b);) \
printf " %-16s - Show all of the above\\n" help-boards; \
echo '')
@echo ' make V=0|1 [targets] 0 => quiet build (default), 1 => verbose build'
@echo ' make V=2 [targets] 2 => give reason for rebuild of target'
@echo ' make O=dir [targets] Locate all output files in "dir", including .config'
@echo ' make C=1 [targets] Check re-compiled c source with $$CHECK'
@echo ' (sparse by default)'
@echo ' make C=2 [targets] Force check of all c source with $$CHECK'
@echo ' make RECORDMCOUNT_WARN=1 [targets] Warn about ignored mcount sections'
@echo ' make W=n [targets] Enable extra build checks, n=1,2,3 where'
@echo ' 1: warnings which may be relevant and do not occur too often'
@echo ' 2: warnings which occur quite often but may still be relevant'
@echo ' 3: more obscure warnings, can most likely be ignored'
@echo ' Multiple levels can be combined with W=12 or W=123'
@echo ''
@echo 'Execute "make" or "make all" to build all targets marked with [*] '
@echo 'For further info see the ./README file'
help-board-dirs := $(addprefix help-,$(board-dirs))
help-boards: $(help-board-dirs)
boards-per-dir = $(sort $(notdir $(wildcard $(srctree)/arch/$(SRCARCH)/configs/$*/*_defconfig)))
$(help-board-dirs): help-%:
@echo 'Architecture specific targets ($(SRCARCH) $*):'
@$(if $(boards-per-dir), \
$(foreach b, $(boards-per-dir), \
printf " %-24s - Build for %s\\n" $*/$(b) $(subst _defconfig,,$(b));) \
echo '')
# Documentation targets
# ---------------------------------------------------------------------------
DOC_TARGETS := xmldocs latexdocs pdfdocs htmldocs epubdocs cleandocs \
linkcheckdocs dochelp refcheckdocs
PHONY += $(DOC_TARGETS)
$(DOC_TARGETS):
$(Q)$(MAKE) $(build)=Documentation $@
# Misc
# ---------------------------------------------------------------------------
PHONY += scripts_gdb
scripts_gdb: prepare0
$(Q)$(MAKE) $(build)=scripts/gdb
$(Q)ln -fsn $(abspath $(srctree)/scripts/gdb/vmlinux-gdb.py)
ifdef CONFIG_GDB_SCRIPTS
all: scripts_gdb
endif
else # KBUILD_EXTMOD
###
# External module support.
# When building external modules the kernel used as basis is considered
# read-only, and no consistency checks are made and the make
# system is not used on the basis kernel. If updates are required
# in the basis kernel ordinary make commands (without M=...) must
# be used.
#
# The following are the only valid targets when building external
# modules.
# make M=dir clean Delete all automatically generated files
# make M=dir modules Make all modules in specified dir
# make M=dir Same as 'make M=dir modules'
# make M=dir modules_install
# Install the modules built in the module directory
# Assumes install directory is already created
# We are always building modules
KBUILD_MODULES := 1
PHONY += $(objtree)/Module.symvers
$(objtree)/Module.symvers:
@test -e $(objtree)/Module.symvers || ( \
echo; \
echo " WARNING: Symbol version dump $(objtree)/Module.symvers"; \
echo " is missing; modules will have no dependencies and modversions."; \
echo )
build-dirs := $(KBUILD_EXTMOD)
PHONY += modules
modules: descend $(objtree)/Module.symvers
$(Q)$(MAKE) -f $(srctree)/scripts/Makefile.modpost
PHONY += modules_install
modules_install: _emodinst_ _emodinst_post
install-dir := $(if $(INSTALL_MOD_DIR),$(INSTALL_MOD_DIR),extra)
PHONY += _emodinst_
_emodinst_:
$(Q)mkdir -p $(MODLIB)/$(install-dir)
$(Q)$(MAKE) -f $(srctree)/scripts/Makefile.modinst
PHONY += _emodinst_post
_emodinst_post: _emodinst_
$(call cmd,depmod)
clean-dirs := $(KBUILD_EXTMOD)
clean: rm-files := $(KBUILD_EXTMOD)/Module.symvers $(KBUILD_EXTMOD)/modules.nsdeps
PHONY += /
/:
@echo >&2 '"$(MAKE) /" is no longer supported. Please use "$(MAKE) ./" instead.'
PHONY += help
help:
@echo ' Building external modules.'
@echo ' Syntax: make -C path/to/kernel/src M=$$PWD target'
@echo ''
@echo ' modules - default target, build the module(s)'
@echo ' modules_install - install the module'
@echo ' clean - remove generated files in module directory only'
@echo ''
PHONY += prepare
endif # KBUILD_EXTMOD
# Single targets
# ---------------------------------------------------------------------------
# To build individual files in subdirectories, you can do like this:
#
# make foo/bar/baz.s
#
# The supported suffixes for single-target are listed in 'single-targets'
#
# To build only under specific subdirectories, you can do like this:
#
# make foo/bar/baz/
ifdef single-build
# .ko is special because modpost is needed
single-ko := $(sort $(filter %.ko, $(MAKECMDGOALS)))
single-no-ko := $(sort $(patsubst %.ko,%.mod, $(MAKECMDGOALS)))
$(single-ko): single_modpost
@:
$(single-no-ko): descend
@:
ifeq ($(KBUILD_EXTMOD),)
# For the single build of in-tree modules, use a temporary file to avoid
# the situation of modules_install installing an invalid modules.order.
MODORDER := .modules.tmp
endif
PHONY += single_modpost
single_modpost: $(single-no-ko)
$(Q){ $(foreach m, $(single-ko), echo $(extmod-prefix)$m;) } > $(MODORDER)
$(Q)$(MAKE) -f $(srctree)/scripts/Makefile.modpost
KBUILD_MODULES := 1
export KBUILD_SINGLE_TARGETS := $(addprefix $(extmod-prefix), $(single-no-ko))
# trim unrelated directories
build-dirs := $(foreach d, $(build-dirs), \
$(if $(filter $(d)/%, $(KBUILD_SINGLE_TARGETS)), $(d)))
endif
# Handle descending into subdirectories listed in $(build-dirs)
# Preset locale variables to speed up the build process. Limit locale
# tweaks to this spot to avoid wrong language settings when running
# make menuconfig etc.
# Error messages still appears in the original language
PHONY += descend $(build-dirs)
descend: $(build-dirs)
$(build-dirs): prepare
$(Q)$(MAKE) $(build)=$@ \
single-build=$(if $(filter-out $@/, $(filter $@/%, $(single-no-ko))),1) \
need-builtin=1 need-modorder=1
clean-dirs := $(addprefix _clean_, $(clean-dirs))
PHONY += $(clean-dirs) clean
$(clean-dirs):
$(Q)$(MAKE) $(clean)=$(patsubst _clean_%,%,$@)
clean: $(clean-dirs)
$(call cmd,rmdirs)
$(call cmd,rmfiles)
@find $(if $(KBUILD_EXTMOD), $(KBUILD_EXTMOD), .) $(RCS_FIND_IGNORE) \
\( -name '*.[aios]' -o -name '*.ko' -o -name '.*.cmd' \
-o -name '*.ko.*' \
-o -name '*.dtb' -o -name '*.dtb.S' -o -name '*.dt.yaml' \
-o -name '*.dwo' -o -name '*.lst' \
-o -name '*.su' -o -name '*.mod' \
-o -name '.*.d' -o -name '.*.tmp' -o -name '*.mod.c' \
-o -name '*.lex.c' -o -name '*.tab.[ch]' \
-o -name '*.asn1.[ch]' \
-o -name '*.symtypes' -o -name 'modules.order' \
-o -name '.tmp_*.o.*' \
-o -name '*.c.[012]*.*' \
-o -name '*.ll' \
-o -name '*.gcno' \
-o -name '*.*.symversions' \) -type f -print | xargs rm -f
# Generate tags for editors
# ---------------------------------------------------------------------------
quiet_cmd_tags = GEN $@
cmd_tags = $(BASH) $(srctree)/scripts/tags.sh $@
tags TAGS cscope gtags: FORCE
$(call cmd,tags)
# Script to generate missing namespace dependencies
# ---------------------------------------------------------------------------
PHONY += nsdeps
nsdeps: export KBUILD_NSDEPS=1
nsdeps: modules
$(Q)$(CONFIG_SHELL) $(srctree)/scripts/nsdeps
# Scripts to check various things for consistency
# ---------------------------------------------------------------------------
PHONY += includecheck versioncheck coccicheck namespacecheck export_report
includecheck:
find $(srctree)/* $(RCS_FIND_IGNORE) \
-name '*.[hcS]' -type f -print | sort \
| xargs $(PERL) -w $(srctree)/scripts/checkincludes.pl
versioncheck:
find $(srctree)/* $(RCS_FIND_IGNORE) \
-name '*.[hcS]' -type f -print | sort \
| xargs $(PERL) -w $(srctree)/scripts/checkversion.pl
coccicheck:
$(Q)$(BASH) $(srctree)/scripts/$@
namespacecheck:
$(PERL) $(srctree)/scripts/namespace.pl
export_report:
$(PERL) $(srctree)/scripts/export_report.pl
PHONY += checkstack kernelrelease kernelversion image_name
# UML needs a little special treatment here. It wants to use the host
# toolchain, so needs $(SUBARCH) passed to checkstack.pl. Everyone
# else wants $(ARCH), including people doing cross-builds, which means
# that $(SUBARCH) doesn't work here.
ifeq ($(ARCH), um)
CHECKSTACK_ARCH := $(SUBARCH)
else
CHECKSTACK_ARCH := $(ARCH)
endif
checkstack:
$(OBJDUMP) -d vmlinux $$(find . -name '*.ko') | \
$(PERL) $(srctree)/scripts/checkstack.pl $(CHECKSTACK_ARCH)
kernelrelease:
@echo "$(KERNELVERSION)$$($(CONFIG_SHELL) $(srctree)/scripts/setlocalversion $(srctree))"
kernelversion:
@echo $(KERNELVERSION)
image_name:
@echo $(KBUILD_IMAGE)
# Clear a bunch of variables before executing the submake
ifeq ($(quiet),silent_)
tools_silent=s
endif
tools/: FORCE
$(Q)mkdir -p $(objtree)/tools
$(Q)$(MAKE) LDFLAGS= MAKEFLAGS="$(tools_silent) $(filter --j% -j,$(MAKEFLAGS))" O=$(abspath $(objtree)) subdir=tools -C $(srctree)/tools/
tools/%: FORCE
$(Q)mkdir -p $(objtree)/tools
$(Q)$(MAKE) LDFLAGS= MAKEFLAGS="$(tools_silent) $(filter --j% -j,$(MAKEFLAGS))" O=$(abspath $(objtree)) subdir=tools -C $(srctree)/tools/ $*
# FIXME Should go into a make.lib or something
# ===========================================================================
quiet_cmd_rmdirs = $(if $(wildcard $(rm-dirs)),CLEAN $(wildcard $(rm-dirs)))
cmd_rmdirs = rm -rf $(rm-dirs)
quiet_cmd_rmfiles = $(if $(wildcard $(rm-files)),CLEAN $(wildcard $(rm-files)))
cmd_rmfiles = rm -f $(rm-files)
# Run depmod only if we have System.map and depmod is executable
quiet_cmd_depmod = DEPMOD $(KERNELRELEASE)
cmd_depmod = $(CONFIG_SHELL) $(srctree)/scripts/depmod.sh $(DEPMOD) \
$(KERNELRELEASE)
# read saved command lines for existing targets
existing-targets := $(wildcard $(sort $(targets)))
-include $(foreach f,$(existing-targets),$(dir $(f)).$(notdir $(f)).cmd)
endif # config-targets
endif # mixed-build
endif # need-sub-make
PHONY += FORCE
FORCE:
# Declare the contents of the PHONY variable as phony. We keep that
# information in a variable so we can use it in if_changed and friends.
.PHONY: $(PHONY)