Merge android11-5.4.54 (261a54f) into msm-5.4
* refs/heads/tmp-261a54f:
Revert "soc: qcom: rpmh: Update dirty flag only when data changes"
Revert "soc: qcom: rpmh: Invalidate SLEEP and WAKE TCSes before flushing new data"
Revert "soc: qcom: rpmh-rsc: Clear active mode configuration for wake TCS"
Revert "soc: qcom: rpmh-rsc: Allow using free WAKE TCS for active request"
Revert "soc: qcom: rpmh: Dirt can only make you dirtier, not cleaner"
Linux 5.4.54
ath9k: Fix regression with Atheros 9271
ath9k: Fix general protection fault in ath9k_hif_usb_rx_cb
dm integrity: fix integrity recalculation that is improperly skipped
ASoC: topology: fix tlvs in error handling for widget_dmixer
ASoC: topology: fix kernel oops on route addition error
ASoC: qcom: Drop HAS_DMA dependency to fix link failure
ASoC: rt5670: Add new gpio1_is_ext_spk_en quirk and enable it on the Lenovo Miix 2 10
x86, vmlinux.lds: Page-align end of ..page_aligned sections
parisc: Add atomic64_set_release() define to avoid CPU soft lockups
drm/amd/powerplay: fix a crash when overclocking Vega M
drm/amdgpu: Fix NULL dereference in dpm sysfs handlers
mmc: sdhci-of-aspeed: Fix clock divider calculation
io-mapping: indicate mapping failure
khugepaged: fix null-pointer dereference due to race
mm: memcg/slab: fix memory leak at non-root kmem_cache destroy
mm/memcg: fix refcount error while moving and swapping
mm/mmap.c: close race between munmap() and expand_upwards()/downwards()
Makefile: Fix GCC_TOOLCHAIN_DIR prefix for Clang cross compilation
vt: Reject zero-sized screen buffer size.
fbdev: Detect integer underflow at "struct fbcon_ops"->clear_margins.
/dev/mem: Add missing memory barriers for devmem_inode
serial: 8250_mtk: Fix high-speed baud rates clamping
serial: 8250: fix null-ptr-deref in serial8250_start_tx()
serial: tegra: fix CREAD handling for PIO
staging: comedi: addi_apci_1564: check INSN_CONFIG_DIGITAL_TRIG shift
staging: comedi: addi_apci_1500: check INSN_CONFIG_DIGITAL_TRIG shift
staging: comedi: ni_6527: fix INSN_CONFIG_DIGITAL_TRIG support
staging: comedi: addi_apci_1032: check INSN_CONFIG_DIGITAL_TRIG shift
staging: wlan-ng: properly check endpoint types
tty: xilinx_uartps: Really fix id assignment
iwlwifi: mvm: don't call iwl_mvm_free_inactive_queue() under RCU
Revert "cifs: Fix the target file was deleted when rename failed."
usb: xhci: Fix ASM2142/ASM3142 DMA addressing
usb: xhci-mtk: fix the failure of bandwidth allocation
binder: Don't use mmput() from shrinker function.
RISC-V: Upgrade smp_mb__after_spinlock() to iorw,iorw
drivers/perf: Prevent forced unbinding of PMU drivers
asm-generic/mmiowb: Allow mmiowb_set_pending() when preemptible()
x86: math-emu: Fix up 'cmp' insn for clang ias
arm64: Use test_tsk_thread_flag() for checking TIF_SINGLESTEP
drivers/perf: Fix kernel panic when rmmod PMU modules during perf sampling
ALSA: hda/realtek - fixup for yet another Intel reference board
hwmon: (scmi) Fix potential buffer overflow in scmi_hwmon_probe()
platform/x86: asus-wmi: allow BAT1 battery name
platform/x86: ISST: Add new PCI device ids
hwmon: (nct6775) Accept PECI Calibration as temperature source for NCT6798D
drm/amdgpu: fix preemption unit test
drm/amdgpu/gfx10: fix race condition for kiq
hwmon: (adm1275) Make sure we are reading enough data for different chips
usb: cdns3: trace: fix some endian issues
usb: cdns3: ep0: fix some endian issues
usb: gadget: udc: gr_udc: fix memleak on error handling path in gr_ep_init()
usb: dwc3: pci: add support for the Intel Jasper Lake
usb: dwc3: pci: add support for the Intel Tiger Lake PCH -H variant
Input: elan_i2c - only increment wakeup count on touch
Input: synaptics - enable InterTouch for ThinkPad X1E 1st gen
dmaengine: ioat setting ioat timeout as module parameter
dmaengine: fsl-edma: fix wrong tcd endianness for big-endian cpu
hwmon: (aspeed-pwm-tacho) Avoid possible buffer overflow
regmap: dev_get_regmap_match(): fix string comparison
spi: mediatek: use correct SPI_CFG2_REG MACRO
ARM: dts: n900: remove mmc1 card detect gpio
Input: add `SW_MACHINE_COVER`
dmaengine: tegra210-adma: Fix runtime PM imbalance on error
HID: apple: Disable Fn-key key-re-mapping on clone keyboards
HID: steam: fixes race in handling device list.
HID: alps: support devices with report id 2
HID: i2c-hid: add Mediacom FlexBook edge13 to descriptor override
scripts/gdb: fix lx-symbols 'gdb.error' while loading modules
scripts/decode_stacktrace: strip basepath from all paths
serial: exar: Fix GPIO configuration for Sealevel cards based on XR17V35X
geneve: fix an uninitialized value in geneve_changelink()
bonding: check return value of register_netdevice() in bond_newlink()
i2c: i2c-qcom-geni: Fix DMA transfer race
i2c: rcar: always clear ICSAR to avoid side effects
enetc: Remove the mdio bus on PF probe bailout
nfsd4: fix NULL dereference in nfsd/clients display code
Revert "PCI/PM: Assume ports without DLL Link Active train links in 100 ms"
net: ethernet: ave: Fix error returns in ave_init
ipvs: fix the connection sync failed in some cases
qed: suppress false-positives interrupt error messages on HW init
qed: suppress "don't support RoCE & iWARP" flooding on HW init
netdevsim: fix unbalaced locking in nsim_create()
net: dsa: microchip: call phy_remove_link_mode during probe
net: hns3: fix error handling for desc filling
net: ag71xx: add missed clk_disable_unprepare in error path of probe
ionic: fix up filter locks and debug msgs
ionic: use offset for ethtool regs data
mlxsw: destroy workqueue when trap_register in mlxsw_emad_init
bonding: check error value of register_netdevice() immediately
net: smc91x: Fix possible memory leak in smc_drv_probe()
drm: sun4i: hdmi: Fix inverted HPD result
ieee802154: fix one possible memleak in adf7242_probe
net: dp83640: fix SIOCSHWTSTAMP to update the struct with actual configuration
ASoC: Intel: bytcht_es8316: Add missed put_device()
RDMA/mlx5: Use xa_lock_irq when access to SRQ table
ax88172a: fix ax88172a_unbind() failures
vsock/virtio: annotate 'the_virtio_vsock' RCU pointer
hippi: Fix a size used in a 'pci_free_consistent()' in an error handling path
fpga: dfl: fix bug in port reset handshake
fpga: dfl: pci: reduce the scope of variable 'ret'
bnxt_en: Fix completion ring sizing with TPA enabled.
bnxt_en: Fix race when modifying pause settings.
btrfs: fix page leaks after failure to lock page for delalloc
btrfs: fix mount failure caused by race with umount
btrfs: fix double free on ulist after backref resolution failure
ASoC: rt5670: Correct RT5670_LDO_SEL_MASK
ALSA: info: Drop WARN_ON() from buffer NULL sanity check
ALSA: hda/realtek: Fixed ALC298 sound bug by adding quirk for Samsung Notebook Pen S
uprobes: Change handle_swbp() to send SIGTRAP with si_code=SI_KERNEL, to fix GDB regression
btrfs: reloc: clear DEAD_RELOC_TREE bit for orphan roots to prevent runaway balance
btrfs: reloc: fix reloc root leak and NULL pointer dereference
SUNRPC reverting d03727b248d0 ("NFSv4 fix CLOSE not waiting for direct IO compeletion")
drm/amd/display: Check DMCU Exists Before Loading
dmabuf: use spinlock to access dmabuf->name
ARM: dts: imx6qdl-gw551x: fix audio SSI
ARM: dts: imx6qdl-gw551x: Do not use 'simple-audio-card,dai-link'
irqdomain/treewide: Keep firmware node unconditionally allocated
fuse: fix weird page warning
drivers/firmware/psci: Fix memory leakage in alloc_init_cpu_groups()
dm: use bio_uninit instead of bio_disassociate_blkg
scsi: dh: Add Fujitsu device to devinfo and dh lists
scsi: mpt3sas: Fix error returns in BRM_status_show
drm/nouveau/i2c/g94-: increase NV_PMGR_DP_AUXCTL_TRANSACTREQ timeout
net: sky2: initialize return of gm_phy_read
ALSA: hda/hdmi: fix failures at PCM open on Intel ICL and later
drivers/net/wan/lapbether: Fixed the value of hard_header_len
scsi: mpt3sas: Fix unlock imbalance
xtensa: update *pos in cpuinfo_op.next
xtensa: fix __sync_fetch_and_{and,or}_4 declarations
scsi: scsi_transport_spi: Fix function pointer check
mac80211: allow rx of mesh eapol frames with default rx key
pinctrl: amd: fix npins for uart0 in kerncz_groups
gpio: arizona: put pm_runtime in case of failure
gpio: arizona: handle pm_runtime_get_sync failure case
soc: qcom: rpmh: Dirt can only make you dirtier, not cleaner
ANDROID: build: update ABI definitions
ANDROID: update the kernel release format for GKI
ANDROID: GKI: update clocksource abi due to upstream fixes needed for VDSO backport
UPSTREAM: arm64: arch_timer: Disable the compat vdso for cores affected by ARM64_WORKAROUND_1418040
UPSTREAM: arm64: arch_timer: Allow an workaround descriptor to disable compat vdso
UPSTREAM: arm64: Introduce a way to disable the 32bit vdso
ANDROID: staging: android: ion: Fix compilation error for ion_trace.h
ANDROID: GKI: enable CONFIG_SCSI_UFS_BSG=y
ANDROID: Incremental fs: magic number compatible 32-bit
ANDROID: kbuild: don't merge .*..compoundliteral in modules
ANDROID: KABI updates for db845c (QCOM_COMMAND_DB fixups)
ANDROID: soc: qcom: cmd-db: Allow COMMAND_DB driver to be loaded as a module
ANDROID: GKI: preserve ABI for struct sock_cgroup_data
Revert "genetlink: remove genl_bind"
Revert "arm64/alternatives: use subsections for replacement sequences"
ANDROID: KABI updates for db845c (USB_EHCI_HCD, USB_EHCI_HCD_PLATFORM and DWC3 fixups)
ANDROID: db845c_gki.fragment: Remove DWC3 modules built into GKI
ANDROID: db845c_gki.fragment: Remove modules built into GKI
ANDROID: power: wakeup_reason: refine wakeup logs
ANDROID: power: wakeup_reason: export log_threaded_irq_wakeup_reason
Linux 5.4.53
gpio: pca953x: disable regmap locking for automatic address incrementing
drm/i915/gvt: Fix two CFL MMIO handling caused by regression.
iommu/vt-d: Make Intel SVM code 64-bit only
ionic: export features for vlans to use
spi: sprd: switch the sequence of setting WDG_LOAD_LOW and _HIGH
rxrpc: Fix trace string
libceph: don't omit recovery_deletes in target_copy()
block: fix get_max_segment_size() overflow on 32bit arch
block: fix splitting segments on boundary masks
drm/i915/gt: Ignore irq enabling on the virtual engines
drm/amdgpu/sdma5: fix wptr overwritten in ->get_wptr()
genirq/affinity: Handle affinity setting on inactive interrupts correctly
sched/fair: handle case of task_h_load() returning 0
sched: Fix unreliable rseq cpu_id for new tasks
arm64: compat: Ensure upper 32 bits of x0 are zero on syscall return
arm64: ptrace: Consistently use pseudo-singlestep exceptions
arm64: ptrace: Override SPSR.SS when single-stepping is enabled
thermal/drivers/cpufreq_cooling: Fix wrong frequency converted from power
thermal: int3403_thermal: Downgrade error message
misc: atmel-ssc: lock with mutex instead of spinlock
dmaengine: fsl-edma-common: correct DSIZE_32BYTE
dmaengine: mcf-edma: Fix NULL pointer exception in mcf_edma_tx_handler
dmaengine: fsl-edma: Fix NULL pointer exception in fsl_edma_tx_handler
intel_th: Fix a NULL dereference when hub driver is not loaded
intel_th: pci: Add Emmitsburg PCH support
intel_th: pci: Add Tiger Lake PCH-H support
intel_th: pci: Add Jasper Lake CPU support
powerpc/pseries/svm: Fix incorrect check for shared_lppaca_size
powerpc/book3s64/pkeys: Fix pkey_access_permitted() for execute disable pkey
hwmon: (emc2103) fix unable to change fan pwm1_enable attribute
riscv: use 16KB kernel stack on 64-bit
timer: Fix wheel index calculation on last level
timer: Prevent base->clk from moving backward
scsi: megaraid_sas: Remove undefined ENABLE_IRQ_POLL macro
uio_pdrv_genirq: fix use without device tree and no interrupt
uio_pdrv_genirq: Remove warning when irq is not specified
Input: elan_i2c - add more hardware ID for Lenovo laptops
Input: i8042 - add Lenovo XiaoXin Air 12 to i8042 nomux list
mei: bus: don't clean driver pointer
Revert "zram: convert remaining CLASS_ATTR() to CLASS_ATTR_RO()"
fuse: Fix parameter for FS_IOC_{GET,SET}FLAGS
fuse: use ->reconfigure() instead of ->remount_fs()
fuse: ignore 'data' argument of mount(..., MS_REMOUNT)
ovl: fix unneeded call to ovl_change_flags()
ovl: relax WARN_ON() when decoding lower directory file handle
ovl: inode reference leak in ovl_is_inuse true case.
ovl: fix regression with re-formatted lower squashfs
serial: mxs-auart: add missed iounmap() in probe failure and remove
virtio: virtio_console: add missing MODULE_DEVICE_TABLE() for rproc serial
Revert "tty: xilinx_uartps: Fix missing id assignment to the console"
virt: vbox: Fix guest capabilities mask check
virt: vbox: Fix VBGL_IOCTL_VMMDEV_REQUEST_BIG and _LOG req numbers to match upstream
USB: serial: option: add Quectel EG95 LTE modem
USB: serial: option: add GosunCn GM500 series
USB: serial: ch341: add new Product ID for CH340
USB: serial: cypress_m8: enable Simply Automated UPB PIM
USB: serial: iuu_phoenix: fix memory corruption
usb: gadget: function: fix missing spinlock in f_uac1_legacy
usb: chipidea: core: add wakeup support for extcon
usb: dwc2: Fix shutdown callback in platform
USB: c67x00: fix use after free in c67x00_giveback_urb
ALSA: hda/realtek - Enable Speaker for ASUS UX563
ALSA: hda/realtek - Enable Speaker for ASUS UX533 and UX534
ALSA: hda/realtek: Enable headset mic of Acer TravelMate B311R-31 with ALC256
ALSA: hda/realtek: enable headset mic of ASUS ROG Zephyrus G14(G401) series with ALC289
ALSA: hda/realtek - change to suitable link model for ASUS platform
ALSA: usb-audio: Fix race against the error recovery URB submission
ALSA: line6: Sync the pending work cancel at disconnection
ALSA: line6: Perform sanity check for each URB creation
HID: quirks: Ignore Simply Automated UPB PIM
HID: quirks: Always poll Obins Anne Pro 2 keyboard
HID: magicmouse: do not set up autorepeat
HID: logitech-hidpp: avoid repeated "multiplier = " log messages
slimbus: core: Fix mismatch in of_node_get/put
clk: qcom: gcc: Add missing UFS clocks for SM8150
clk: qcom: gcc: Add GPU and NPU clocks for SM8150
mtd: rawnand: oxnas: Release all devices in the _remove() path
mtd: rawnand: oxnas: Unregister all devices on error
mtd: rawnand: oxnas: Keep track of registered devices
mtd: rawnand: brcmnand: fix CS0 layout
mtd: rawnand: brcmnand: correctly verify erased pages
mtd: rawnand: timings: Fix default tR_max and tCCS_min timings
mtd: rawnand: marvell: Fix probe error path
mtd: rawnand: marvell: Use nand_cleanup() when the device is not yet registered
mtd: rawnand: marvell: Fix the condition on a return code
RDMA/mlx5: Verify that QP is created with RQ or SQ
soc: qcom: rpmh-rsc: Allow using free WAKE TCS for active request
soc: qcom: rpmh-rsc: Clear active mode configuration for wake TCS
soc: qcom: rpmh: Invalidate SLEEP and WAKE TCSes before flushing new data
soc: qcom: rpmh: Update dirty flag only when data changes
perf stat: Zero all the 'ena' and 'run' array slot stats for interval mode
PCI/PM: Call .bridge_d3() hook only if non-NULL
habanalabs: Align protection bits configuration of all TPCs
apparmor: ensure that dfa state tables have entries
soc: qcom: socinfo: add missing soc_id sysfs entry
arm: dts: mt7623: add phy-mode property for gmac2
copy_xstate_to_kernel: Fix typo which caused GDB regression
regmap: debugfs: Don't sleep while atomic for fast_io regmaps
keys: asymmetric: fix error return code in software_key_query()
arm64: dts: spcfpga: Align GIC, NAND and UART nodenames with dtschema
ARM: dts: socfpga: Align L2 cache-controller nodename with dtschema
xprtrdma: fix incorrect header size calculations
Revert "thermal: mediatek: fix register index error"
ARM: dts: Fix dcan driver probe failed on am437x platform
fuse: don't ignore errors from fuse_writepages_fill()
NFS: Fix interrupted slots by sending a solo SEQUENCE operation
clk: AST2600: Add mux for EMMC clock
clk: mvebu: ARMADA_AP_CPU_CLK needs to select ARMADA_AP_CP_HELPER
staging: comedi: verify array index is correct before using it
usb: gadget: udc: atmel: fix uninitialized read in debug printk
spi: spi-sun6i: sun6i_spi_transfer_one(): fix setting of clock rate
dmaengine: dmatest: stop completed threads when running without set channel
dmaengine: dw: Initialize channel before each transfer
iio: adc: ad7780: Fix a resource handling path in 'ad7780_probe()'
bus: ti-sysc: Do not disable on suspend for no-idle
bus: ti-sysc: Fix sleeping function called from invalid context for RTC quirk
bus: ti-sysc: Fix wakeirq sleeping function called from invalid context
arm64: dts: meson-gxl-s805x: reduce initial Mali450 core frequency
arm64: dts: meson: add missing gxl rng clock
phy: sun4i-usb: fix dereference of pointer phy0 before it is null checked
dmaengine: sh: usb-dmac: set tx_result parameters
soundwire: intel: fix memory leak with devm_kasprintf
iio:health:afe4404 Fix timestamp alignment and prevent data leak.
ALSA: usb-audio: Add registration quirk for Kingston HyperX Cloud Flight S
bus: ti-sysc: Use optional clocks on for enable and wait for softreset bit
ACPI: video: Use native backlight on Acer TravelMate 5735Z
Input: mms114 - add extra compatible for mms345l
ALSA: usb-audio: Add quirk for Focusrite Scarlett 2i2
ALSA: usb-audio: Add registration quirk for Kingston HyperX Cloud Alpha S
ACPI: video: Use native backlight on Acer Aspire 5783z
ALSA: usb-audio: Rewrite registration quirk handling
mmc: sdhci: do not enable card detect interrupt for gpio cd type
doc: dt: bindings: usb: dwc3: Update entries for disabling SS instances in park mode
ALSA: usb-audio: Create a registration quirk for Kingston HyperX Amp (0951:16d8)
Input: goodix - fix touch coordinates on Cube I15-TC
ALSA: usb-audio: Add support for MOTU MicroBook IIc
bus: ti-sysc: Detect EDMA and set quirk flags for tptc
arm64: dts: g12-common: add parkmode_disable_ss_quirk on DWC3 controller
bus: ti-sysc: Detect display subsystem related devices
bus: ti-sysc: Handle module unlock quirk needed for some RTC
bus: ti-sysc: Consider non-existing registers too when matching quirks
bus: ti-sysc: Rename clk related quirks to pre_reset and post_reset quirks
scsi: sr: remove references to BLK_DEV_SR_VENDOR, leave it enabled
drm/sun4i: tcon: Separate quirks for tcon0 and tcon1 on A20
ARM: at91: pm: add quirk for sam9x60's ulp1
HID: quirks: Remove ITE 8595 entry from hid_have_special_driver
mmc: mmci: Support any block sizes for ux500v2 and qcom variant
ARM: OMAP2+: use separate IOMMU pdata to fix DRA7 IPU1 boot
ARM: OMAP2+: Add workaround for DRA7 DSP MStandby errata i879
ARM: OMAP4+: remove pdata quirks for omap4+ iommus
net: sfp: add some quirks for GPON modules
net: sfp: add support for module quirks
Revert "usb/xhci-plat: Set PM runtime as active on resume"
Revert "usb/ehci-platform: Set PM runtime as active on resume"
Revert "usb/ohci-platform: Fix a warning when hibernating"
net: ethernet: mvneta: Add back interface mode validation
net: ethernet: mvneta: Do not error out in non serdes modes
net: macb: call pm_runtime_put_sync on failure path
of: of_mdio: Correct loop scanning logic
net: dsa: bcm_sf2: Fix node reference count
spi: spi-fsl-dspi: Fix lockup if device is shutdown during SPI transfer
iio:health:afe4403 Fix timestamp alignment and prevent data leak.
iio:pressure:ms5611 Fix buffer element alignment
iio:humidity:hts221 Fix alignment and data leak issues
iio: pressure: zpa2326: handle pm_runtime_get_sync failure
iio: mma8452: Add missed iio_device_unregister() call in mma8452_probe()
iio: core: add missing IIO_MOD_H2/ETHANOL string identifiers
iio: magnetometer: ak8974: Fix runtime PM imbalance on error
iio:humidity:hdc100x Fix alignment and data leak issues
iio:magnetometer:ak8974: Fix alignment and data leak issues
arm64/alternatives: don't patch up internal branches
i2c: eg20t: Load module automatically if ID matches
gfs2: read-only mounts should grab the sd_freeze_gl glock
tpm_tis: extra chip->ops check on error path in tpm_tis_core_init
arm64/alternatives: use subsections for replacement sequences
cifs: prevent truncation from long to int in wait_for_free_credits
dt-bindings: mailbox: zynqmp_ipi: fix unit address
m68k: mm: fix node memblock init
m68k: nommu: register start of the memory with memblock
blk-mq-debugfs: update blk_queue_flag_name[] accordingly for new flags
thermal/drivers: imx: Fix missing of_node_put() at probe time
x86/fpu: Reset MXCSR to default in kernel_fpu_begin()
drm/exynos: fix ref count leak in mic_pre_enable
drm/exynos: Properly propagate return value in drm_iommu_attach_device()
drm/msm/dpu: allow initialization of encoder locks during encoder init
drm/msm: fix potential memleak in error branch
arm64: arch_timer: Disable the compat vdso for cores affected by ARM64_WORKAROUND_1418040
arm64: arch_timer: Allow an workaround descriptor to disable compat vdso
arm64: Introduce a way to disable the 32bit vdso
ip: Fix SO_MARK in RST, ACK and ICMP packets
cgroup: Fix sock_cgroup_data on big-endian.
cgroup: fix cgroup_sk_alloc() for sk_clone_lock()
tcp: md5: allow changing MD5 keys in all socket states
tcp: md5: refine tcp_md5_do_add()/tcp_md5_hash_key() barriers
vlan: consolidate VLAN parsing code and limit max parsing depth
tcp: md5: do not send silly options in SYNCOOKIES
tcp: md5: add missing memory barriers in tcp_md5_do_add()/tcp_md5_hash_key()
tcp: make sure listeners don't initialize congestion-control state
tcp: fix SO_RCVLOWAT possible hangs under high mem pressure
sched: consistently handle layer3 header accesses in the presence of VLANs
net: usb: qmi_wwan: add support for Quectel EG95 LTE modem
net_sched: fix a memory leak in atm_tc_init()
net: dsa: microchip: set the correct number of ports
net: Added pointer check for dst->ops->neigh_lookup in dst_neigh_lookup_skb
llc: make sure applications use ARPHRD_ETHER
l2tp: remove skb_dst_set() from l2tp_xmit_skb()
ipv6: Fix use of anycast address with loopback
ipv6: fib6_select_path can not use out path for nexthop objects
ipv4: fill fl4_icmp_{type,code} in ping_v4_sendmsg
genetlink: remove genl_bind
bridge: mcast: Fix MLD2 Report IPv6 payload length check
net: rmnet: fix lower interface leak
net: atlantic: fix ip dst and ipv6 address filters
crypto: atmel - Fix build error of CRYPTO_AUTHENC
crypto: atmel - Fix selection of CRYPTO_AUTHENC
ANDROID: GKI: update abi symbol lists now that CONFIG_DWC3 is enabled.
ANDROID: GKI: Enable CONFIG_USB_DWC3
ANDROID: ABI: add the symbols of dwc3.ko and sprd-dma.ko to unisoc
ANDROID: ABI: Update the ABI whitelist for QCOM
ANDROID: GKI: Update CF abi list for virtio-console
UPSTREAM: lkdtm/heap: Avoid edge and middle of slabs
UPSTREAM: lkdtm: Avoid more compiler optimizations for bad writes
ANDROID: GKI: Update ABI after RPMH config change
ANDROID: GKI: Adjust symbol lists after RPMH removed from gki_defconfig
ANDROID: db845c_gki.fragment: Add QCOM_RPMH and QCOM_RPMHPD as modules
ANDROID: gki_defconfig: Remove QCOM_RPMH from the gki_defconfig
ANDROID: Kconfig.gki: Remove GKI_QCOM_CLKS_CONFIGS and QCOM_RPMHPD from GKI_HACKS config option
FROMLIST: soc: qcom: rpmh: Allow RPMH driver to be loaded as a module
UPSTREAM: soc: qcom: rpmhpd: Allow RPMHPD driver to be loaded as a module
ANDROID: GKI: Export memblock_free to drivers
ANDROID: GKI: do not export symbol_get/put()
ANDROID: add xfs back to allmodconfig build tests
FROMLIST: rpmsg: core: Add signal API support
ANDROID: GKI: Fix x86 warning on DMA_VIRTUAL_CHANNELS
ANDROID: GKI: Update ABI and export list for qcom
Revert "ANDROID: net: enable wireless core features with GKI_LEGACY_WEXT_ALLCONFIG"
Revert "ALSA: compress: fix partial_drain completion state"
Conflicts:
Documentation/devicetree/bindings
Documentation/devicetree/bindings/mailbox/xlnx,zynqmp-ipi-mailbox.txt
Documentation/devicetree/bindings/usb/dwc3.txt
android/abi_gki_aarch64_qcom
drivers/soc/qcom/Kconfig
drivers/soc/qcom/socinfo.c
drivers/usb/host/xhci-plat.c
kernel/sched/core.c
Change-Id: If4d45d5447eb2b1b86326bae8c3844fe565a0b42
Signed-off-by: Blagovest Kolenichev <bkolenichev@codeaurora.org>
This commit is contained in:
commit
40bffd325d
461 changed files with 8492 additions and 7001 deletions
10
Makefile
10
Makefile
|
|
@ -1,7 +1,7 @@
|
|||
# SPDX-License-Identifier: GPL-2.0
|
||||
VERSION = 5
|
||||
PATCHLEVEL = 4
|
||||
SUBLEVEL = 52
|
||||
SUBLEVEL = 54
|
||||
EXTRAVERSION =
|
||||
NAME = Kleptomaniac Octopus
|
||||
|
||||
|
|
@ -540,7 +540,7 @@ 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)
|
||||
CLANG_FLAGS += --prefix=$(GCC_TOOLCHAIN_DIR)$(notdir $(CROSS_COMPILE))
|
||||
GCC_TOOLCHAIN := $(realpath $(GCC_TOOLCHAIN_DIR)/..)
|
||||
endif
|
||||
ifneq ($(GCC_TOOLCHAIN),)
|
||||
|
|
@ -1163,7 +1163,8 @@ targets := vmlinux
|
|||
$(sort $(vmlinux-deps)): descend ;
|
||||
|
||||
filechk_kernel.release = \
|
||||
echo "$(KERNELVERSION)$$($(CONFIG_SHELL) $(srctree)/scripts/setlocalversion $(srctree))"
|
||||
echo "$(KERNELVERSION)$$($(CONFIG_SHELL) $(srctree)/scripts/setlocalversion \
|
||||
$(srctree) $(BRANCH) $(KMI_GENERATION))"
|
||||
|
||||
# Store (new) KERNELRELEASE string in include/config/kernel.release
|
||||
include/config/kernel.release: FORCE
|
||||
|
|
@ -1883,7 +1884,8 @@ checkstack:
|
|||
$(PERL) $(srctree)/scripts/checkstack.pl $(CHECKSTACK_ARCH)
|
||||
|
||||
kernelrelease:
|
||||
@echo "$(KERNELVERSION)$$($(CONFIG_SHELL) $(srctree)/scripts/setlocalversion $(srctree))"
|
||||
@echo "$(KERNELVERSION)$$($(CONFIG_SHELL) $(srctree)/scripts/setlocalversion \
|
||||
$(srctree) $(BRANCH) $(KMI_GENERATION))"
|
||||
|
||||
kernelversion:
|
||||
@echo $(KERNELVERSION)
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
|
@ -15,6 +15,9 @@
|
|||
cfg80211_put_bss
|
||||
__cfi_slowpath
|
||||
__check_object_size
|
||||
__class_create
|
||||
class_destroy
|
||||
complete
|
||||
__const_udelay
|
||||
consume_skb
|
||||
cpu_hwcap_keys
|
||||
|
|
@ -60,6 +63,7 @@
|
|||
kfree_skb
|
||||
__kmalloc
|
||||
kmalloc_caches
|
||||
kmalloc_order_trace
|
||||
kmem_cache_alloc
|
||||
kmem_cache_alloc_trace
|
||||
kmem_cache_create
|
||||
|
|
@ -95,6 +99,7 @@
|
|||
netif_tx_stop_all_queues
|
||||
netif_tx_wake_queue
|
||||
no_llseek
|
||||
nonseekable_open
|
||||
noop_llseek
|
||||
nr_cpu_ids
|
||||
param_ops_bool
|
||||
|
|
@ -115,6 +120,7 @@
|
|||
platform_device_unregister
|
||||
__platform_driver_register
|
||||
platform_driver_unregister
|
||||
preempt_schedule
|
||||
preempt_schedule_notrace
|
||||
prepare_to_wait_event
|
||||
printk
|
||||
|
|
@ -169,6 +175,8 @@
|
|||
strsep
|
||||
synchronize_irq
|
||||
synchronize_net
|
||||
sysfs_create_group
|
||||
sysfs_remove_group
|
||||
system_wq
|
||||
trace_define_field
|
||||
trace_event_buffer_commit
|
||||
|
|
@ -179,6 +187,7 @@
|
|||
trace_handle_return
|
||||
trace_raw_output_prep
|
||||
trace_seq_printf
|
||||
unlock_page
|
||||
unregister_netdev
|
||||
unregister_netdevice_notifier
|
||||
unregister_netdevice_queue
|
||||
|
|
@ -207,6 +216,7 @@
|
|||
vring_del_virtqueue
|
||||
vring_interrupt
|
||||
vring_transport_features
|
||||
wait_for_completion
|
||||
wait_woken
|
||||
__wake_up
|
||||
__warn_printk
|
||||
|
|
@ -305,7 +315,6 @@
|
|||
pagecache_get_page
|
||||
path_get
|
||||
path_put
|
||||
preempt_schedule
|
||||
register_filesystem
|
||||
seq_puts
|
||||
set_anon_super
|
||||
|
|
@ -315,11 +324,8 @@
|
|||
simple_statfs
|
||||
strndup_user
|
||||
sync_filesystem
|
||||
sysfs_create_group
|
||||
sysfs_remove_group
|
||||
truncate_inode_pages
|
||||
unlock_new_inode
|
||||
unlock_page
|
||||
unlock_rename
|
||||
unregister_filesystem
|
||||
user_path_at_empty
|
||||
|
|
@ -430,8 +436,6 @@
|
|||
cdev_device_add
|
||||
cdev_device_del
|
||||
cdev_init
|
||||
__class_create
|
||||
class_destroy
|
||||
__compat_only_sysfs_link_entry_to_kobj
|
||||
del_timer_sync
|
||||
device_initialize
|
||||
|
|
@ -591,7 +595,6 @@
|
|||
drm_set_preferred_mode
|
||||
drm_universal_plane_init
|
||||
__get_task_comm
|
||||
kmalloc_order_trace
|
||||
kvfree
|
||||
kvmalloc_node
|
||||
memdup_user
|
||||
|
|
@ -629,8 +632,6 @@
|
|||
ww_mutex_unlock
|
||||
|
||||
# required by virtio-rng.ko
|
||||
complete
|
||||
wait_for_completion
|
||||
wait_for_completion_killable
|
||||
|
||||
# required by virtio_blk.ko
|
||||
|
|
@ -679,6 +680,33 @@
|
|||
__sysfs_match_string
|
||||
unregister_blkdev
|
||||
|
||||
# required by virtio_console.ko
|
||||
cancel_work_sync
|
||||
cdev_add
|
||||
cdev_alloc
|
||||
cdev_del
|
||||
device_create
|
||||
device_destroy
|
||||
dma_alloc_attrs
|
||||
dma_free_attrs
|
||||
fasync_helper
|
||||
freezing_slow_path
|
||||
hvc_alloc
|
||||
hvc_instantiate
|
||||
hvc_kick
|
||||
hvc_poll
|
||||
hvc_remove
|
||||
__hvc_resize
|
||||
kill_fasync
|
||||
kobject_uevent
|
||||
pipe_lock
|
||||
pipe_unlock
|
||||
__refrigerator
|
||||
__register_chrdev
|
||||
__splice_from_pipe
|
||||
system_freezing_cnt
|
||||
__unregister_chrdev
|
||||
|
||||
# required by virtio_input.ko
|
||||
input_alloc_absinfo
|
||||
input_allocate_device
|
||||
|
|
@ -803,7 +831,6 @@
|
|||
|
||||
# required by vsock.ko
|
||||
autoremove_wake_function
|
||||
nonseekable_open
|
||||
prandom_u32
|
||||
prepare_to_wait
|
||||
proto_register
|
||||
|
|
|
|||
|
|
@ -1,8 +1,5 @@
|
|||
[abi_whitelist]
|
||||
# commonly used symbols
|
||||
add_uevent_var
|
||||
__alloc_skb
|
||||
alloc_workqueue
|
||||
__arch_copy_from_user
|
||||
__arch_copy_to_user
|
||||
arm64_const_caps_ready
|
||||
|
|
@ -10,9 +7,7 @@
|
|||
bpf_trace_run2
|
||||
bpf_trace_run3
|
||||
bpf_trace_run4
|
||||
bt_err
|
||||
bt_info
|
||||
cancel_delayed_work
|
||||
bpf_trace_run5
|
||||
cancel_delayed_work_sync
|
||||
cancel_work_sync
|
||||
__cfi_slowpath
|
||||
|
|
@ -34,8 +29,6 @@
|
|||
clk_set_rate
|
||||
clk_sync_state
|
||||
clk_unprepare
|
||||
cmd_db_read_addr
|
||||
cmd_db_read_aux_data
|
||||
complete
|
||||
complete_all
|
||||
__const_udelay
|
||||
|
|
@ -48,21 +41,12 @@
|
|||
delayed_work_timer_fn
|
||||
del_timer
|
||||
del_timer_sync
|
||||
destroy_workqueue
|
||||
dev_driver_string
|
||||
_dev_err
|
||||
dev_fwnode
|
||||
dev_get_regmap
|
||||
device_create_file
|
||||
device_init_wakeup
|
||||
device_match_fwnode
|
||||
device_property_present
|
||||
device_property_read_string
|
||||
device_property_read_u32_array
|
||||
device_register
|
||||
device_release_driver
|
||||
device_set_wakeup_capable
|
||||
device_unregister
|
||||
device_wakeup_enable
|
||||
_dev_info
|
||||
__dev_kfree_skb_any
|
||||
|
|
@ -81,23 +65,20 @@
|
|||
__devm_of_phy_provider_register
|
||||
devm_of_platform_populate
|
||||
devm_phy_create
|
||||
devm_phy_get
|
||||
devm_pinctrl_register
|
||||
__devm_regmap_init_mmio_clk
|
||||
devm_regulator_bulk_get
|
||||
devm_regulator_get
|
||||
devm_regulator_register
|
||||
devm_request_threaded_irq
|
||||
devm_reset_control_array_get
|
||||
__devm_reset_control_get
|
||||
devm_reset_controller_register
|
||||
devm_usb_get_phy_by_phandle
|
||||
devm_watchdog_register_device
|
||||
_dev_notice
|
||||
dev_pm_opp_get_level
|
||||
dev_set_name
|
||||
_dev_warn
|
||||
disable_irq
|
||||
disable_irq_nosync
|
||||
divider_get_val
|
||||
divider_recalc_rate
|
||||
divider_round_rate_parent
|
||||
|
|
@ -116,7 +97,6 @@
|
|||
dma_set_coherent_mask
|
||||
dma_set_mask
|
||||
do_SAK
|
||||
down_write
|
||||
driver_unregister
|
||||
drm_add_edid_modes
|
||||
drm_atomic_helper_connector_destroy_state
|
||||
|
|
@ -134,10 +114,6 @@
|
|||
enable_irq
|
||||
eth_validate_addr
|
||||
event_triggers_call
|
||||
extcon_get_edev_by_phandle
|
||||
extcon_get_state
|
||||
extcon_register_notifier
|
||||
extcon_unregister_notifier
|
||||
fd_install
|
||||
find_next_bit
|
||||
find_next_zero_bit
|
||||
|
|
@ -158,8 +134,6 @@
|
|||
handle_edge_irq
|
||||
handle_level_irq
|
||||
hdmi_audio_infoframe_init
|
||||
hrtimer_init
|
||||
hrtimer_start_range_ns
|
||||
i2c_add_adapter
|
||||
i2c_del_adapter
|
||||
idr_find
|
||||
|
|
@ -182,7 +156,6 @@
|
|||
irq_domain_remove
|
||||
irq_find_mapping
|
||||
irq_find_matching_fwspec
|
||||
irq_modify_status
|
||||
irq_of_parse_and_map
|
||||
irq_set_chained_handler_and_data
|
||||
irq_set_chip_and_handler_name
|
||||
|
|
@ -196,19 +169,18 @@
|
|||
__kmalloc
|
||||
kmalloc_caches
|
||||
kmem_cache_alloc_trace
|
||||
kmemdup
|
||||
kstrdup
|
||||
ktime_get
|
||||
ktime_get_mono_fast_ns
|
||||
__list_add_valid
|
||||
__list_del_entry_valid
|
||||
memcpy
|
||||
memremap
|
||||
memset
|
||||
mii_ethtool_gset
|
||||
mii_nway_restart
|
||||
mod_timer
|
||||
module_layout
|
||||
module_put
|
||||
__msecs_to_jiffies
|
||||
msleep
|
||||
__mutex_init
|
||||
|
|
@ -224,14 +196,13 @@
|
|||
of_alias_get_id
|
||||
of_clk_add_hw_provider
|
||||
of_clk_del_provider
|
||||
of_clk_get
|
||||
of_clk_hw_onecell_get
|
||||
of_clk_set_defaults
|
||||
of_device_get_match_data
|
||||
of_device_is_compatible
|
||||
of_find_device_by_node
|
||||
of_find_property
|
||||
of_fwnode_ops
|
||||
of_genpd_add_provider_onecell
|
||||
of_get_child_by_name
|
||||
of_get_next_available_child
|
||||
of_get_next_child
|
||||
|
|
@ -242,43 +213,27 @@
|
|||
of_match_node
|
||||
of_parse_phandle
|
||||
of_phy_simple_xlate
|
||||
of_platform_depopulate
|
||||
of_platform_populate
|
||||
of_property_count_elems_of_size
|
||||
of_property_read_string
|
||||
of_property_read_u32_index
|
||||
of_property_read_variable_u32_array
|
||||
of_reserved_mem_lookup
|
||||
param_ops_bool
|
||||
param_ops_int
|
||||
param_ops_uint
|
||||
pci_bus_type
|
||||
pci_dev_put
|
||||
pci_match_id
|
||||
pci_read_config_byte
|
||||
pci_read_config_dword
|
||||
pci_read_config_word
|
||||
__pci_register_driver
|
||||
pci_set_mwi
|
||||
pci_unregister_driver
|
||||
pci_write_config_byte
|
||||
perf_trace_buf_alloc
|
||||
perf_trace_run_bpf_submit
|
||||
phy_exit
|
||||
phy_init
|
||||
phy_power_off
|
||||
phy_power_on
|
||||
phy_set_mode_ext
|
||||
pinconf_generic_dt_node_to_map
|
||||
pinctrl_dev_get_drvdata
|
||||
pinctrl_pm_select_default_state
|
||||
pinctrl_pm_select_sleep_state
|
||||
pinctrl_utils_free_map
|
||||
platform_bus_type
|
||||
platform_device_add
|
||||
platform_device_add_properties
|
||||
platform_device_add_resources
|
||||
platform_device_alloc
|
||||
platform_device_put
|
||||
platform_device_register_full
|
||||
platform_device_unregister
|
||||
__platform_driver_register
|
||||
|
|
@ -287,6 +242,8 @@
|
|||
platform_get_irq_byname
|
||||
platform_get_resource
|
||||
platform_get_resource_byname
|
||||
pm_genpd_add_subdomain
|
||||
pm_genpd_init
|
||||
pm_runtime_allow
|
||||
__pm_runtime_disable
|
||||
pm_runtime_enable
|
||||
|
|
@ -331,13 +288,10 @@
|
|||
regulator_disable
|
||||
regulator_enable
|
||||
regulator_set_load
|
||||
regulator_set_voltage
|
||||
release_firmware
|
||||
request_firmware
|
||||
request_threaded_irq
|
||||
reset_control_assert
|
||||
reset_control_deassert
|
||||
rpmh_write_async
|
||||
schedule_timeout
|
||||
schedule_timeout_uninterruptible
|
||||
scnprintf
|
||||
|
|
@ -347,22 +301,19 @@
|
|||
sg_next
|
||||
skb_clone
|
||||
skb_dequeue
|
||||
skb_pull
|
||||
skb_push
|
||||
skb_put
|
||||
skb_queue_purge
|
||||
skb_queue_tail
|
||||
snprintf
|
||||
sort
|
||||
sprintf
|
||||
sscanf
|
||||
__stack_chk_fail
|
||||
__stack_chk_guard
|
||||
strcmp
|
||||
strcpy
|
||||
strlcpy
|
||||
strlen
|
||||
strncmp
|
||||
strncpy
|
||||
__sw_hweight32
|
||||
__sw_hweight64
|
||||
synchronize_irq
|
||||
|
|
@ -378,10 +329,8 @@
|
|||
trace_handle_return
|
||||
trace_raw_output_prep
|
||||
trace_seq_printf
|
||||
try_module_get
|
||||
tty_flip_buffer_push
|
||||
__tty_insert_flip_char
|
||||
tty_termios_encode_baud_rate
|
||||
uart_add_one_port
|
||||
uart_get_baud_rate
|
||||
uart_register_driver
|
||||
|
|
@ -392,19 +341,14 @@
|
|||
uart_update_timeout
|
||||
uart_write_wakeup
|
||||
unregister_reboot_notifier
|
||||
up_write
|
||||
usb_add_hcd
|
||||
usb_amd_dev_put
|
||||
usb_amd_quirk_pll_check
|
||||
usb_amd_quirk_pll_disable
|
||||
usb_amd_quirk_pll_enable
|
||||
usb_calc_bus_time
|
||||
usb_create_hcd
|
||||
usb_deregister
|
||||
usb_disabled
|
||||
usb_get_dr_mode
|
||||
usb_hcd_check_unlink_urb
|
||||
usb_hcd_end_port_resume
|
||||
usb_hcd_giveback_urb
|
||||
usb_hc_died
|
||||
usb_hcd_is_primary_hcd
|
||||
|
|
@ -416,10 +360,7 @@
|
|||
usb_hcd_platform_shutdown
|
||||
usb_hcd_poll_rh_status
|
||||
usb_hcd_resume_root_hub
|
||||
usb_hcds_loaded
|
||||
usb_hcd_start_port_resume
|
||||
usb_hcd_unlink_urb_from_ep
|
||||
usb_hub_clear_tt_buffer
|
||||
usbnet_disconnect
|
||||
usbnet_get_endpoints
|
||||
usbnet_get_msglevel
|
||||
|
|
@ -480,11 +421,8 @@
|
|||
__clk_mux_determine_rate_closest
|
||||
divider_ro_round_rate_parent
|
||||
of_find_node_opts_by_path
|
||||
of_genpd_add_provider_onecell
|
||||
of_genpd_del_provider
|
||||
of_prop_next_u32
|
||||
pm_genpd_add_subdomain
|
||||
pm_genpd_init
|
||||
pm_genpd_remove_subdomain
|
||||
|
||||
# required by clk-rpmh.ko
|
||||
|
|
@ -518,9 +456,9 @@
|
|||
regmap_multi_reg_write
|
||||
|
||||
# required by msm.ko
|
||||
alloc_workqueue
|
||||
__bitmap_andnot
|
||||
__bitmap_weight
|
||||
bpf_trace_run5
|
||||
bpf_trace_run6
|
||||
bpf_trace_run8
|
||||
clk_get
|
||||
|
|
@ -542,6 +480,7 @@
|
|||
component_master_del
|
||||
component_unbind_all
|
||||
_ctype
|
||||
destroy_workqueue
|
||||
devfreq_recommended_opp
|
||||
devfreq_resume_device
|
||||
devfreq_suspend_device
|
||||
|
|
@ -557,7 +496,6 @@
|
|||
dev_pm_opp_find_freq_ceil
|
||||
dev_pm_opp_find_freq_exact
|
||||
dev_pm_opp_find_freq_floor
|
||||
dev_pm_opp_get_level
|
||||
dev_pm_opp_get_opp_count
|
||||
dev_pm_opp_get_voltage
|
||||
dev_pm_opp_of_add_table
|
||||
|
|
@ -739,6 +677,8 @@
|
|||
gpiod_set_value
|
||||
hdmi_audio_infoframe_pack
|
||||
hdmi_infoframe_pack
|
||||
hrtimer_init
|
||||
hrtimer_start_range_ns
|
||||
i2c_transfer
|
||||
icc_put
|
||||
icc_set_bw
|
||||
|
|
@ -752,6 +692,7 @@
|
|||
iommu_unmap
|
||||
irq_domain_xlate_onecell
|
||||
kasprintf
|
||||
kmemdup
|
||||
kstrdup_quotable_cmdline
|
||||
kthread_create_on_node
|
||||
kthread_destroy_worker
|
||||
|
|
@ -763,7 +704,6 @@
|
|||
kvmalloc_node
|
||||
llist_add_batch
|
||||
memparse
|
||||
memremap
|
||||
memunmap
|
||||
mipi_dsi_create_packet
|
||||
mipi_dsi_host_register
|
||||
|
|
@ -779,6 +719,7 @@
|
|||
of_dma_configure
|
||||
of_drm_find_bridge
|
||||
of_drm_find_panel
|
||||
of_find_device_by_node
|
||||
of_find_matching_node_and_match
|
||||
of_get_compatible_child
|
||||
of_graph_get_endpoint_by_regs
|
||||
|
|
@ -786,6 +727,7 @@
|
|||
of_graph_get_remote_port_parent
|
||||
of_graph_parse_endpoint
|
||||
of_icc_get
|
||||
of_platform_depopulate
|
||||
of_property_read_string_helper
|
||||
param_ops_charp
|
||||
pm_runtime_get_if_in_use
|
||||
|
|
@ -799,13 +741,14 @@
|
|||
register_vmap_purge_notifier
|
||||
regulator_get
|
||||
regulator_put
|
||||
request_firmware
|
||||
request_firmware_direct
|
||||
reservation_ww_class
|
||||
round_jiffies_up
|
||||
sched_setscheduler
|
||||
sg_free_table
|
||||
shmem_truncate_range
|
||||
strncpy
|
||||
sscanf
|
||||
strstr
|
||||
sync_file_create
|
||||
sync_file_get_fence
|
||||
|
|
@ -835,6 +778,7 @@
|
|||
of_machine_is_compatible
|
||||
|
||||
# required by i2c-qup.ko
|
||||
param_ops_uint
|
||||
__usecs_to_jiffies
|
||||
|
||||
# required by pm8941-pwrkey.ko
|
||||
|
|
@ -852,14 +796,13 @@
|
|||
icc_provider_add
|
||||
icc_provider_del
|
||||
of_icc_xlate_onecell
|
||||
rpmh_invalidate
|
||||
rpmh_write_batch
|
||||
|
||||
# required by arm_smmu.ko
|
||||
alloc_io_pgtable_ops
|
||||
amba_bustype
|
||||
bus_set_iommu
|
||||
device_link_add
|
||||
device_match_fwnode
|
||||
devm_free_irq
|
||||
driver_find_device
|
||||
free_io_pgtable_ops
|
||||
|
|
@ -946,6 +889,7 @@
|
|||
mii_ethtool_set_link_ksettings
|
||||
netif_carrier_on
|
||||
pskb_expand_head
|
||||
skb_pull
|
||||
skb_trim
|
||||
|
||||
# required by nvmem_qfprom.ko
|
||||
|
|
@ -960,7 +904,12 @@
|
|||
devm_nvmem_cell_get
|
||||
|
||||
# required by phy-qcom-usb-hs.ko
|
||||
extcon_get_edev_by_phandle
|
||||
extcon_get_state
|
||||
extcon_register_notifier
|
||||
extcon_unregister_notifier
|
||||
of_property_read_variable_u8_array
|
||||
regulator_set_voltage
|
||||
reset_control_reset
|
||||
|
||||
# required by pinctrl-msm.ko
|
||||
|
|
@ -970,10 +919,12 @@
|
|||
gpiochip_set_chained_irqchip
|
||||
gpiochip_unlock_as_irq
|
||||
handle_bad_irq
|
||||
module_put
|
||||
pinctrl_force_default
|
||||
pinctrl_force_sleep
|
||||
pm_power_off
|
||||
register_restart_handler
|
||||
try_module_get
|
||||
unregister_restart_handler
|
||||
|
||||
# required by pinctrl-spmi-gpio.ko
|
||||
|
|
@ -991,12 +942,12 @@
|
|||
devres_release
|
||||
kfree_const
|
||||
kstrdup_const
|
||||
strncmp
|
||||
|
||||
# required by qcom-rpmh-regulator.ko
|
||||
of_get_regulator_init_data
|
||||
of_node_name_eq
|
||||
regulator_list_voltage_linear_range
|
||||
rpmh_write
|
||||
|
||||
# required by qcom_spmi-regulator.ko
|
||||
jiffies_to_usecs
|
||||
|
|
@ -1014,6 +965,12 @@
|
|||
rtc_valid_tm
|
||||
|
||||
# required by ufs-qcom.ko
|
||||
devm_phy_get
|
||||
phy_exit
|
||||
phy_init
|
||||
phy_power_off
|
||||
phy_power_on
|
||||
phy_set_mode_ext
|
||||
print_hex_dump
|
||||
ufshcd_dme_get_attr
|
||||
ufshcd_dme_set_attr
|
||||
|
|
@ -1036,6 +993,11 @@
|
|||
# required by mdt_loader.ko
|
||||
request_firmware_into_buf
|
||||
|
||||
# required by qcom_rpmh.ko
|
||||
bitmap_find_next_zero_area_off
|
||||
__bitmap_set
|
||||
of_get_property
|
||||
|
||||
# required by rmtfs_mem.ko
|
||||
alloc_chrdev_region
|
||||
cdev_device_add
|
||||
|
|
@ -1046,7 +1008,6 @@
|
|||
default_llseek
|
||||
device_initialize
|
||||
devm_memremap
|
||||
of_reserved_mem_lookup
|
||||
remap_pfn_range
|
||||
unregister_chrdev_region
|
||||
|
||||
|
|
@ -1061,6 +1022,7 @@
|
|||
# required by smsm.ko
|
||||
handle_nested_irq
|
||||
irq_domain_xlate_twocell
|
||||
irq_modify_status
|
||||
qcom_smem_state_register
|
||||
qcom_smem_state_unregister
|
||||
|
||||
|
|
@ -1075,9 +1037,11 @@
|
|||
__release_region
|
||||
__request_region
|
||||
tty_termios_baud_rate
|
||||
tty_termios_encode_baud_rate
|
||||
|
||||
# required by qcom_geni_serial.ko
|
||||
console_stop
|
||||
device_create_file
|
||||
devm_platform_ioremap_resource
|
||||
handle_sysrq
|
||||
kstrtoint
|
||||
|
|
@ -1090,58 +1054,50 @@
|
|||
uart_set_options
|
||||
|
||||
# required by ulpi.ko
|
||||
add_uevent_var
|
||||
bus_register
|
||||
bus_unregister
|
||||
device_register
|
||||
device_unregister
|
||||
driver_register
|
||||
of_device_modalias
|
||||
of_device_request_module
|
||||
of_device_uevent_modalias
|
||||
__request_module
|
||||
|
||||
# required by dwc3-qcom.ko
|
||||
devm_extcon_register_notifier
|
||||
of_clk_get_parent_count
|
||||
|
||||
# required by dwc3.ko
|
||||
device_property_read_u8_array
|
||||
devm_usb_get_phy
|
||||
extcon_find_edev_by_node
|
||||
extcon_get_extcon_dev
|
||||
of_usb_get_phy_mode
|
||||
phy_pm_runtime_get_sync
|
||||
phy_pm_runtime_put_sync
|
||||
platform_get_irq_byname_optional
|
||||
system_freezable_wq
|
||||
usb_add_gadget_udc
|
||||
usb_decode_ctrl
|
||||
usb_del_gadget_udc
|
||||
usb_ep_set_maxpacket_limit
|
||||
usb_gadget_giveback_request
|
||||
usb_gadget_map_request_by_dev
|
||||
usb_gadget_set_state
|
||||
usb_gadget_udc_reset
|
||||
usb_gadget_unmap_request_by_dev
|
||||
usb_get_maximum_speed
|
||||
|
||||
# required by ohci-hcd.ko
|
||||
flush_work
|
||||
gen_pool_dma_alloc_align
|
||||
gen_pool_dma_zalloc_align
|
||||
gen_pool_free_owner
|
||||
sb800_prefetch
|
||||
usb_calc_bus_time
|
||||
usb_hcds_loaded
|
||||
|
||||
# required by ohci-pci.ko
|
||||
pci_get_slot
|
||||
pci_match_id
|
||||
usb_amd_prefetch_quirk
|
||||
|
||||
# required by ohci-platform.ko
|
||||
devm_reset_control_array_get
|
||||
of_clk_get
|
||||
usb_create_hcd
|
||||
|
||||
# required by xhci-hcd.ko
|
||||
add_timer
|
||||
cancel_delayed_work
|
||||
mod_delayed_work_on
|
||||
__num_online_cpus
|
||||
param_ops_ullong
|
||||
pci_alloc_irq_vectors_affinity
|
||||
pci_free_irq_vectors
|
||||
pci_irq_vector
|
||||
platform_device_add
|
||||
platform_device_add_properties
|
||||
platform_device_add_resources
|
||||
platform_device_alloc
|
||||
platform_device_put
|
||||
radix_tree_maybe_preload
|
||||
sg_pcopy_from_buffer
|
||||
sg_pcopy_to_buffer
|
||||
|
|
@ -1149,38 +1105,36 @@
|
|||
usb_amd_pt_check_port
|
||||
usb_asmedia_modifyflowcontrol
|
||||
usb_disable_xhci_ports
|
||||
usb_hcd_end_port_resume
|
||||
usb_hcd_irq
|
||||
usb_hcd_map_urb_for_dma
|
||||
usb_hcd_start_port_resume
|
||||
usb_hub_clear_tt_buffer
|
||||
usb_wakeup_notification
|
||||
wait_for_completion
|
||||
|
||||
# required by xhci-pci-renesas.ko
|
||||
device_release_driver
|
||||
pci_dev_get
|
||||
pci_read_config_dword
|
||||
pci_read_config_word
|
||||
pci_write_config_byte
|
||||
pci_write_config_dword
|
||||
request_firmware_nowait
|
||||
|
||||
# required by xhci-pci.ko
|
||||
pci_d3cold_disable
|
||||
pci_set_mwi
|
||||
pci_set_power_state
|
||||
usb_create_shared_hcd
|
||||
usb_enable_intel_xhci_ports
|
||||
|
||||
# required by xhci-plat-hcd.ko
|
||||
device_property_present
|
||||
devm_usb_get_phy_by_phandle
|
||||
of_usb_host_tpl_support
|
||||
__usb_create_hcd
|
||||
|
||||
# required by roles.ko
|
||||
__class_create
|
||||
class_destroy
|
||||
class_find_device
|
||||
device_connection_find_match
|
||||
device_match_name
|
||||
fwnode_connection_find_match
|
||||
fwnode_get_parent
|
||||
fwnode_property_present
|
||||
kstrtobool
|
||||
__sysfs_match_string
|
||||
|
||||
# required by qcom-wdt.ko
|
||||
platform_get_irq_optional
|
||||
|
||||
|
|
@ -1200,6 +1154,7 @@
|
|||
dget_parent
|
||||
d_instantiate
|
||||
d_make_root
|
||||
down_write
|
||||
dput
|
||||
fget
|
||||
flush_dcache_page
|
||||
|
|
@ -1255,6 +1210,7 @@
|
|||
unlock_page
|
||||
unlock_rename
|
||||
unregister_filesystem
|
||||
up_write
|
||||
user_path_at_empty
|
||||
vfs_create
|
||||
vfs_fallocate
|
||||
|
|
@ -1275,6 +1231,7 @@
|
|||
schedule
|
||||
|
||||
# required by qrtr.ko
|
||||
__alloc_skb
|
||||
capable
|
||||
datagram_poll
|
||||
idr_alloc
|
||||
|
|
@ -1296,6 +1253,7 @@
|
|||
skb_copy_datagram_iter
|
||||
skb_free_datagram
|
||||
__skb_pad
|
||||
skb_queue_purge
|
||||
skb_recv_datagram
|
||||
skb_set_owner_w
|
||||
sk_free
|
||||
|
|
|
|||
|
|
@ -239,7 +239,6 @@
|
|||
devm_snd_dmaengine_pcm_register
|
||||
devm_snd_soc_register_card
|
||||
devm_snd_soc_register_component
|
||||
devm_usb_get_phy
|
||||
devm_usb_get_phy_by_phandle
|
||||
_dev_notice
|
||||
dev_pm_opp_add
|
||||
|
|
@ -1204,11 +1203,8 @@
|
|||
up_read
|
||||
up_write
|
||||
usb_add_function
|
||||
usb_add_gadget_udc
|
||||
usb_assign_descriptors
|
||||
usb_copy_descriptors
|
||||
usb_decode_ctrl
|
||||
usb_del_gadget_udc
|
||||
usb_ep_alloc_request
|
||||
usb_ep_autoconfig
|
||||
usb_ep_dequeue
|
||||
|
|
@ -1217,19 +1213,12 @@
|
|||
usb_ep_free_request
|
||||
usb_ep_queue
|
||||
usb_ep_set_halt
|
||||
usb_ep_set_maxpacket_limit
|
||||
usb_free_all_descriptors
|
||||
usb_function_register
|
||||
usb_function_unregister
|
||||
usb_gadget_giveback_request
|
||||
usb_gadget_map_request_by_dev
|
||||
usb_gadget_set_state
|
||||
usb_gadget_udc_reset
|
||||
usb_gadget_unmap_request_by_dev
|
||||
usb_gadget_vbus_connect
|
||||
usb_gadget_vbus_disconnect
|
||||
usb_get_dr_mode
|
||||
usb_get_maximum_speed
|
||||
usb_gstrings_attach
|
||||
usb_hub_find_child
|
||||
usb_interface_id
|
||||
|
|
|
|||
|
|
@ -474,7 +474,6 @@
|
|||
usb_calc_bus_time
|
||||
usb_create_hcd
|
||||
usb_disabled
|
||||
usb_gadget_set_state
|
||||
usb_get_dr_mode
|
||||
usb_hc_died
|
||||
usb_hub_clear_tt_buffer
|
||||
|
|
@ -1052,51 +1051,6 @@
|
|||
serial8250_suspend_port
|
||||
serial8250_unregister_port
|
||||
|
||||
# required by dwc3-haps.ko
|
||||
pcim_enable_device
|
||||
|
||||
# required by dwc3-of-simple.ko
|
||||
clk_bulk_get_all
|
||||
clk_bulk_put_all
|
||||
of_reset_control_array_get
|
||||
reset_control_put
|
||||
reset_control_reset
|
||||
|
||||
# required by dwc3-qcom.ko
|
||||
devm_extcon_register_notifier
|
||||
irq_modify_status
|
||||
of_clk_get_parent_count
|
||||
|
||||
# required by dwc3.ko
|
||||
bpf_trace_run4
|
||||
device_property_read_u8_array
|
||||
devm_clk_bulk_get_all
|
||||
devm_phy_get
|
||||
devm_usb_get_phy
|
||||
extcon_find_edev_by_node
|
||||
extcon_get_extcon_dev
|
||||
extcon_register_notifier
|
||||
extcon_unregister_notifier
|
||||
of_usb_get_phy_mode
|
||||
phy_exit
|
||||
phy_init
|
||||
phy_pm_runtime_get_sync
|
||||
phy_pm_runtime_put_sync
|
||||
phy_power_off
|
||||
phy_power_on
|
||||
phy_set_mode_ext
|
||||
platform_get_irq_byname_optional
|
||||
system_freezable_wq
|
||||
usb_add_gadget_udc
|
||||
usb_decode_ctrl
|
||||
usb_del_gadget_udc
|
||||
usb_ep_set_maxpacket_limit
|
||||
usb_gadget_giveback_request
|
||||
usb_gadget_map_request_by_dev
|
||||
usb_gadget_udc_reset
|
||||
usb_gadget_unmap_request_by_dev
|
||||
usb_get_maximum_speed
|
||||
|
||||
# required by gadgetfs.ko
|
||||
_copy_to_iter
|
||||
current_time
|
||||
|
|
|
|||
|
|
@ -222,10 +222,6 @@
|
|||
cma_alloc
|
||||
cma_get_name
|
||||
cma_release
|
||||
cmd_db_read_addr
|
||||
cmd_db_read_aux_data
|
||||
cmd_db_read_slave_id
|
||||
cmd_db_ready
|
||||
compat_alloc_user_space
|
||||
complete
|
||||
complete_all
|
||||
|
|
@ -482,6 +478,7 @@
|
|||
dev_pm_opp_find_freq_ceil
|
||||
dev_pm_opp_find_freq_exact
|
||||
dev_pm_opp_find_freq_floor
|
||||
dev_pm_opp_get_level
|
||||
dev_pm_opp_get_opp_count
|
||||
dev_pm_opp_get_opp_table
|
||||
dev_pm_opp_get_voltage
|
||||
|
|
@ -1206,6 +1203,7 @@
|
|||
irq_domain_xlate_twocell
|
||||
irq_find_mapping
|
||||
irq_find_matching_fwspec
|
||||
irq_get_irqchip_state
|
||||
irq_get_irq_data
|
||||
irq_modify_status
|
||||
irq_of_parse_and_map
|
||||
|
|
@ -1941,12 +1939,6 @@
|
|||
rndis_signal_connect
|
||||
rndis_uninit
|
||||
round_jiffies
|
||||
rpmh_flush
|
||||
rpmh_invalidate
|
||||
rpmh_mode_solver_set
|
||||
rpmh_write
|
||||
rpmh_write_async
|
||||
rpmh_write_batch
|
||||
rpmsg_create_ept
|
||||
rpmsg_destroy_ept
|
||||
rpmsg_get_signals
|
||||
|
|
@ -2751,7 +2743,6 @@
|
|||
wiphy_new_nm
|
||||
wiphy_register
|
||||
wiphy_unregister
|
||||
wireless_send_event
|
||||
woken_wake_function
|
||||
work_busy
|
||||
would_dump
|
||||
|
|
|
|||
|
|
@ -145,7 +145,6 @@
|
|||
devm_regulator_register
|
||||
devm_request_threaded_irq
|
||||
devm_spi_register_controller
|
||||
devm_usb_get_phy
|
||||
devm_usb_get_phy_by_phandle
|
||||
dev_queue_xmit
|
||||
dev_set_name
|
||||
|
|
@ -368,6 +367,7 @@
|
|||
netif_carrier_on
|
||||
netif_rx_ni
|
||||
netif_tx_wake_queue
|
||||
nf_conntrack_destroy
|
||||
nf_conntrack_find_get
|
||||
nf_ct_get_tuplepr
|
||||
nf_ct_invert_tuple
|
||||
|
|
@ -677,14 +677,12 @@
|
|||
unregister_chrdev_region
|
||||
unregister_pernet_subsys
|
||||
up
|
||||
usb_add_gadget_udc
|
||||
usb_alloc_coherent
|
||||
usb_alloc_urb
|
||||
usb_autopm_get_interface
|
||||
usb_autopm_get_interface_no_resume
|
||||
usb_autopm_put_interface
|
||||
usb_control_msg
|
||||
usb_del_gadget_udc
|
||||
usb_deregister
|
||||
usb_ep_alloc_request
|
||||
usb_ep_autoconfig
|
||||
|
|
@ -692,14 +690,11 @@
|
|||
usb_ep_enable
|
||||
usb_ep_free_request
|
||||
usb_ep_queue
|
||||
usb_ep_set_maxpacket_limit
|
||||
usb_find_common_endpoints
|
||||
usb_free_coherent
|
||||
usb_free_urb
|
||||
usb_function_register
|
||||
usb_function_unregister
|
||||
usb_gadget_giveback_request
|
||||
usb_gadget_udc_reset
|
||||
usb_get_dr_mode
|
||||
usb_get_intf
|
||||
usb_hcd_is_primary_hcd
|
||||
|
|
@ -801,48 +796,6 @@
|
|||
cpufreq_register_governor
|
||||
cpufreq_unregister_governor
|
||||
|
||||
# required by dwc3-haps.ko
|
||||
pcim_enable_device
|
||||
|
||||
# required by dwc3-of-simple.ko
|
||||
clk_bulk_get_all
|
||||
clk_bulk_put_all
|
||||
of_reset_control_array_get
|
||||
reset_control_put
|
||||
reset_control_reset
|
||||
|
||||
# required by dwc3-qcom.ko
|
||||
devm_extcon_register_notifier
|
||||
devm_reset_control_array_get
|
||||
|
||||
# required by dwc3.ko
|
||||
device_property_read_string
|
||||
device_property_read_u8_array
|
||||
devm_clk_bulk_get
|
||||
devm_phy_get
|
||||
__devm_reset_control_get
|
||||
extcon_find_edev_by_node
|
||||
extcon_get_extcon_dev
|
||||
extcon_register_notifier
|
||||
extcon_unregister_notifier
|
||||
of_usb_get_phy_mode
|
||||
phy_exit
|
||||
phy_init
|
||||
phy_pm_runtime_get_sync
|
||||
phy_pm_runtime_put_sync
|
||||
phy_power_off
|
||||
phy_power_on
|
||||
phy_set_mode_ext
|
||||
pinctrl_pm_select_default_state
|
||||
pinctrl_pm_select_sleep_state
|
||||
platform_get_irq_byname_optional
|
||||
synchronize_irq
|
||||
usb_decode_ctrl
|
||||
usb_gadget_map_request_by_dev
|
||||
usb_gadget_set_state
|
||||
usb_gadget_unmap_request_by_dev
|
||||
usb_get_maximum_speed
|
||||
|
||||
# required by exfat.ko
|
||||
__blockdev_direct_IO
|
||||
block_write_full_page
|
||||
|
|
@ -1702,6 +1655,11 @@
|
|||
of_dma_controller_free
|
||||
of_dma_controller_register
|
||||
of_dma_simple_xlate
|
||||
vchan_dma_desc_free_list
|
||||
vchan_find_desc
|
||||
vchan_init
|
||||
vchan_tx_desc_free
|
||||
vchan_tx_submit
|
||||
|
||||
# required by sprd-gsp.ko
|
||||
__kthread_init_worker
|
||||
|
|
|
|||
|
|
@ -36,7 +36,6 @@ CONFIG_BLK_DEV_CY82C693=y
|
|||
CONFIG_SCSI=y
|
||||
CONFIG_BLK_DEV_SD=y
|
||||
CONFIG_BLK_DEV_SR=y
|
||||
CONFIG_BLK_DEV_SR_VENDOR=y
|
||||
CONFIG_SCSI_AIC7XXX=m
|
||||
CONFIG_AIC7XXX_CMDS_PER_DEVICE=253
|
||||
# CONFIG_AIC7XXX_DEBUG_ENABLE is not set
|
||||
|
|
|
|||
|
|
@ -1276,6 +1276,7 @@ config HAVE_ARM_ARCH_TIMER
|
|||
depends on CPU_V7
|
||||
select ARM_ARCH_TIMER
|
||||
select GENERIC_CLOCKEVENTS
|
||||
select GENERIC_GETTIMEOFDAY
|
||||
help
|
||||
This option enables support for the ARM architected timer
|
||||
|
||||
|
|
|
|||
|
|
@ -1576,8 +1576,9 @@
|
|||
reg-names = "rev";
|
||||
ti,hwmods = "d_can0";
|
||||
/* Domains (P, C): per_pwrdm, l4ls_clkdm */
|
||||
clocks = <&l4ls_clkctrl AM4_L4LS_D_CAN0_CLKCTRL 0>;
|
||||
clock-names = "fck";
|
||||
clocks = <&l4ls_clkctrl AM4_L4LS_D_CAN0_CLKCTRL 0>,
|
||||
<&dcan0_fck>;
|
||||
clock-names = "fck", "osc";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
ranges = <0x0 0xcc000 0x2000>;
|
||||
|
|
@ -1585,6 +1586,8 @@
|
|||
dcan0: can@0 {
|
||||
compatible = "ti,am4372-d_can", "ti,am3352-d_can";
|
||||
reg = <0x0 0x2000>;
|
||||
clocks = <&dcan0_fck>;
|
||||
clock-names = "fck";
|
||||
syscon-raminit = <&scm_conf 0x644 0>;
|
||||
interrupts = <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH>;
|
||||
status = "disabled";
|
||||
|
|
@ -1597,8 +1600,9 @@
|
|||
reg-names = "rev";
|
||||
ti,hwmods = "d_can1";
|
||||
/* Domains (P, C): per_pwrdm, l4ls_clkdm */
|
||||
clocks = <&l4ls_clkctrl AM4_L4LS_D_CAN1_CLKCTRL 0>;
|
||||
clock-names = "fck";
|
||||
clocks = <&l4ls_clkctrl AM4_L4LS_D_CAN1_CLKCTRL 0>,
|
||||
<&dcan1_fck>;
|
||||
clock-names = "fck", "osc";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
ranges = <0x0 0xd0000 0x2000>;
|
||||
|
|
@ -1606,6 +1610,8 @@
|
|||
dcan1: can@0 {
|
||||
compatible = "ti,am4372-d_can", "ti,am3352-d_can";
|
||||
reg = <0x0 0x2000>;
|
||||
clocks = <&dcan1_fck>;
|
||||
clock-name = "fck";
|
||||
syscon-raminit = <&scm_conf 0x644 1>;
|
||||
interrupts = <GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>;
|
||||
status = "disabled";
|
||||
|
|
|
|||
|
|
@ -105,19 +105,16 @@
|
|||
sound-digital {
|
||||
compatible = "simple-audio-card";
|
||||
simple-audio-card,name = "tda1997x-audio";
|
||||
simple-audio-card,format = "i2s";
|
||||
simple-audio-card,bitclock-master = <&sound_codec>;
|
||||
simple-audio-card,frame-master = <&sound_codec>;
|
||||
|
||||
simple-audio-card,dai-link@0 {
|
||||
format = "i2s";
|
||||
sound_cpu: simple-audio-card,cpu {
|
||||
sound-dai = <&ssi1>;
|
||||
};
|
||||
|
||||
cpu {
|
||||
sound-dai = <&ssi2>;
|
||||
};
|
||||
|
||||
codec {
|
||||
bitclock-master;
|
||||
frame-master;
|
||||
sound-dai = <&hdmi_receiver>;
|
||||
};
|
||||
sound_codec: simple-audio-card,codec {
|
||||
sound-dai = <&hdmi_receiver>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
|
|
|||
|
|
@ -138,6 +138,7 @@
|
|||
mac@1 {
|
||||
compatible = "mediatek,eth-mac";
|
||||
reg = <1>;
|
||||
phy-mode = "rgmii";
|
||||
phy-handle = <&phy5>;
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -105,6 +105,14 @@
|
|||
linux,code = <SW_FRONT_PROXIMITY>;
|
||||
linux,can-disable;
|
||||
};
|
||||
|
||||
machine_cover {
|
||||
label = "Machine Cover";
|
||||
gpios = <&gpio6 0 GPIO_ACTIVE_LOW>; /* 160 */
|
||||
linux,input-type = <EV_SW>;
|
||||
linux,code = <SW_MACHINE_COVER>;
|
||||
linux,can-disable;
|
||||
};
|
||||
};
|
||||
|
||||
isp1707: isp1707 {
|
||||
|
|
@ -814,10 +822,6 @@
|
|||
pinctrl-0 = <&mmc1_pins>;
|
||||
vmmc-supply = <&vmmc1>;
|
||||
bus-width = <4>;
|
||||
/* For debugging, it is often good idea to remove this GPIO.
|
||||
It means you can remove back cover (to reboot by removing
|
||||
battery) and still use the MMC card. */
|
||||
cd-gpios = <&gpio6 0 GPIO_ACTIVE_LOW>; /* 160 */
|
||||
};
|
||||
|
||||
/* most boards use vaux3, only some old versions use vmmc2 instead */
|
||||
|
|
|
|||
|
|
@ -710,7 +710,7 @@
|
|||
};
|
||||
};
|
||||
|
||||
L2: l2-cache@fffef000 {
|
||||
L2: cache-controller@fffef000 {
|
||||
compatible = "arm,pl310-cache";
|
||||
reg = <0xfffef000 0x1000>;
|
||||
interrupts = <0 38 0x04>;
|
||||
|
|
|
|||
|
|
@ -636,7 +636,7 @@
|
|||
reg = <0xffcfb100 0x80>;
|
||||
};
|
||||
|
||||
L2: l2-cache@fffff000 {
|
||||
L2: cache-controller@fffff000 {
|
||||
compatible = "arm,pl310-cache";
|
||||
reg = <0xfffff000 0x1000>;
|
||||
interrupts = <0 18 IRQ_TYPE_LEVEL_HIGH>;
|
||||
|
|
|
|||
|
|
@ -32,7 +32,6 @@ CONFIG_BLK_DEV_RAM=y
|
|||
CONFIG_BLK_DEV_SD=y
|
||||
CONFIG_CHR_DEV_ST=m
|
||||
CONFIG_BLK_DEV_SR=y
|
||||
CONFIG_BLK_DEV_SR_VENDOR=y
|
||||
CONFIG_CHR_DEV_SG=y
|
||||
CONFIG_SCSI_CONSTANTS=y
|
||||
CONFIG_SCSI_LOGGING=y
|
||||
|
|
|
|||
|
|
@ -202,7 +202,6 @@ CONFIG_EEPROM_AT24=y
|
|||
CONFIG_BLK_DEV_SD=y
|
||||
CONFIG_CHR_DEV_ST=m
|
||||
CONFIG_BLK_DEV_SR=y
|
||||
CONFIG_BLK_DEV_SR_VENDOR=y
|
||||
CONFIG_CHR_DEV_SG=y
|
||||
CONFIG_CHR_DEV_SCH=m
|
||||
CONFIG_SCSI_CONSTANTS=y
|
||||
|
|
|
|||
|
|
@ -2,6 +2,11 @@
|
|||
#ifndef _ASM_CLOCKSOURCE_H
|
||||
#define _ASM_CLOCKSOURCE_H
|
||||
|
||||
#include <asm/vdso/clocksource.h>
|
||||
#include <vdso/clocksource.h>
|
||||
|
||||
struct arch_clocksource_data {
|
||||
/* Usable for direct VDSO access? */
|
||||
enum vdso_clock_mode clock_mode;
|
||||
};
|
||||
|
||||
#endif /* _ASM_CLOCKSOURCE_H */
|
||||
|
|
|
|||
|
|
@ -2,8 +2,8 @@
|
|||
#ifndef __ASM_VDSOCLOCKSOURCE_H
|
||||
#define __ASM_VDSOCLOCKSOURCE_H
|
||||
|
||||
struct arch_clocksource_data {
|
||||
bool vdso_direct; /* Usable for direct VDSO access? */
|
||||
};
|
||||
#define VDSO_ARCH_CLOCKMODES \
|
||||
VDSO_CLOCKMODE_ARCHTIMER, \
|
||||
VDSO_CLOCKMODE_ARCHTIMER_NOCOMPAT = VDSO_CLOCKMODE_ARCHTIMER
|
||||
|
||||
#endif /* __ASM_VDSOCLOCKSOURCE_H */
|
||||
|
|
|
|||
|
|
@ -281,7 +281,7 @@ static bool tk_is_cntvct(const struct timekeeper *tk)
|
|||
if (!IS_ENABLED(CONFIG_ARM_ARCH_TIMER))
|
||||
return false;
|
||||
|
||||
if (!tk->tkr_mono.clock->archdata.vdso_direct)
|
||||
if (tk->tkr_mono.clock->archdata.clock_mode != VDSO_CLOCKMODE_ARCHTIMER)
|
||||
return false;
|
||||
|
||||
return true;
|
||||
|
|
|
|||
|
|
@ -268,6 +268,10 @@ ENDPROC(at91_backup_mode)
|
|||
orr tmp1, tmp1, #AT91_PMC_KEY
|
||||
str tmp1, [pmc, #AT91_CKGR_MOR]
|
||||
|
||||
/* Quirk for SAM9X60's PMC */
|
||||
nop
|
||||
nop
|
||||
|
||||
wait_mckrdy
|
||||
|
||||
/* Enable the crystal oscillator */
|
||||
|
|
|
|||
|
|
@ -11,14 +11,43 @@
|
|||
|
||||
#include "omap_hwmod.h"
|
||||
#include "omap_device.h"
|
||||
#include "clockdomain.h"
|
||||
#include "powerdomain.h"
|
||||
|
||||
static void omap_iommu_dra7_emu_swsup_config(struct platform_device *pdev,
|
||||
bool enable)
|
||||
{
|
||||
static struct clockdomain *emu_clkdm;
|
||||
static DEFINE_SPINLOCK(emu_lock);
|
||||
static atomic_t count;
|
||||
struct device_node *np = pdev->dev.of_node;
|
||||
|
||||
if (!of_device_is_compatible(np, "ti,dra7-dsp-iommu"))
|
||||
return;
|
||||
|
||||
if (!emu_clkdm) {
|
||||
emu_clkdm = clkdm_lookup("emu_clkdm");
|
||||
if (WARN_ON_ONCE(!emu_clkdm))
|
||||
return;
|
||||
}
|
||||
|
||||
spin_lock(&emu_lock);
|
||||
|
||||
if (enable && (atomic_inc_return(&count) == 1))
|
||||
clkdm_deny_idle(emu_clkdm);
|
||||
else if (!enable && (atomic_dec_return(&count) == 0))
|
||||
clkdm_allow_idle(emu_clkdm);
|
||||
|
||||
spin_unlock(&emu_lock);
|
||||
}
|
||||
|
||||
int omap_iommu_set_pwrdm_constraint(struct platform_device *pdev, bool request,
|
||||
u8 *pwrst)
|
||||
{
|
||||
struct powerdomain *pwrdm;
|
||||
struct omap_device *od;
|
||||
u8 next_pwrst;
|
||||
int ret = 0;
|
||||
|
||||
od = to_omap_device(pdev);
|
||||
if (!od)
|
||||
|
|
@ -31,13 +60,21 @@ int omap_iommu_set_pwrdm_constraint(struct platform_device *pdev, bool request,
|
|||
if (!pwrdm)
|
||||
return -EINVAL;
|
||||
|
||||
if (request)
|
||||
if (request) {
|
||||
*pwrst = pwrdm_read_next_pwrst(pwrdm);
|
||||
omap_iommu_dra7_emu_swsup_config(pdev, true);
|
||||
}
|
||||
|
||||
if (*pwrst > PWRDM_POWER_RET)
|
||||
return 0;
|
||||
goto out;
|
||||
|
||||
next_pwrst = request ? PWRDM_POWER_ON : *pwrst;
|
||||
|
||||
return pwrdm_set_next_pwrst(pwrdm, next_pwrst);
|
||||
ret = pwrdm_set_next_pwrst(pwrdm, next_pwrst);
|
||||
|
||||
out:
|
||||
if (!request)
|
||||
omap_iommu_dra7_emu_swsup_config(pdev, false);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -44,6 +44,17 @@ struct pdata_init {
|
|||
static struct of_dev_auxdata omap_auxdata_lookup[];
|
||||
static struct twl4030_gpio_platform_data twl_gpio_auxdata;
|
||||
|
||||
#if IS_ENABLED(CONFIG_OMAP_IOMMU)
|
||||
int omap_iommu_set_pwrdm_constraint(struct platform_device *pdev, bool request,
|
||||
u8 *pwrst);
|
||||
#else
|
||||
static inline int omap_iommu_set_pwrdm_constraint(struct platform_device *pdev,
|
||||
bool request, u8 *pwrst)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_MACH_NOKIA_N8X0
|
||||
static void __init omap2420_n8x0_legacy_init(void)
|
||||
{
|
||||
|
|
@ -311,16 +322,6 @@ static void __init omap3_pandora_legacy_init(void)
|
|||
}
|
||||
#endif /* CONFIG_ARCH_OMAP3 */
|
||||
|
||||
#if defined(CONFIG_ARCH_OMAP4) || defined(CONFIG_SOC_OMAP5)
|
||||
static struct iommu_platform_data omap4_iommu_pdata = {
|
||||
.reset_name = "mmu_cache",
|
||||
.assert_reset = omap_device_assert_hardreset,
|
||||
.deassert_reset = omap_device_deassert_hardreset,
|
||||
.device_enable = omap_device_enable,
|
||||
.device_idle = omap_device_idle,
|
||||
};
|
||||
#endif
|
||||
|
||||
#if defined(CONFIG_SOC_AM33XX) || defined(CONFIG_SOC_AM43XX)
|
||||
static struct wkup_m3_platform_data wkup_m3_data = {
|
||||
.reset_name = "wkup_m3",
|
||||
|
|
@ -336,6 +337,10 @@ static void __init omap5_uevm_legacy_init(void)
|
|||
#endif
|
||||
|
||||
#ifdef CONFIG_SOC_DRA7XX
|
||||
static struct iommu_platform_data dra7_ipu1_dsp_iommu_pdata = {
|
||||
.set_pwrdm_constraint = omap_iommu_set_pwrdm_constraint,
|
||||
};
|
||||
|
||||
static struct omap_hsmmc_platform_data dra7_hsmmc_data_mmc1;
|
||||
static struct omap_hsmmc_platform_data dra7_hsmmc_data_mmc2;
|
||||
static struct omap_hsmmc_platform_data dra7_hsmmc_data_mmc3;
|
||||
|
|
@ -543,10 +548,6 @@ static struct of_dev_auxdata omap_auxdata_lookup[] = {
|
|||
&wkup_m3_data),
|
||||
#endif
|
||||
#if defined(CONFIG_ARCH_OMAP4) || defined(CONFIG_SOC_OMAP5)
|
||||
OF_DEV_AUXDATA("ti,omap4-iommu", 0x4a066000, "4a066000.mmu",
|
||||
&omap4_iommu_pdata),
|
||||
OF_DEV_AUXDATA("ti,omap4-iommu", 0x55082000, "55082000.mmu",
|
||||
&omap4_iommu_pdata),
|
||||
OF_DEV_AUXDATA("ti,omap4-smartreflex-iva", 0x4a0db000,
|
||||
"4a0db000.smartreflex", &omap_sr_pdata[OMAP_SR_IVA]),
|
||||
OF_DEV_AUXDATA("ti,omap4-smartreflex-core", 0x4a0dd000,
|
||||
|
|
@ -561,6 +562,12 @@ static struct of_dev_auxdata omap_auxdata_lookup[] = {
|
|||
&dra7_hsmmc_data_mmc2),
|
||||
OF_DEV_AUXDATA("ti,dra7-hsmmc", 0x480ad000, "480ad000.mmc",
|
||||
&dra7_hsmmc_data_mmc3),
|
||||
OF_DEV_AUXDATA("ti,dra7-dsp-iommu", 0x40d01000, "40d01000.mmu",
|
||||
&dra7_ipu1_dsp_iommu_pdata),
|
||||
OF_DEV_AUXDATA("ti,dra7-dsp-iommu", 0x41501000, "41501000.mmu",
|
||||
&dra7_ipu1_dsp_iommu_pdata),
|
||||
OF_DEV_AUXDATA("ti,dra7-iommu", 0x58882000, "58882000.mmu",
|
||||
&dra7_ipu1_dsp_iommu_pdata),
|
||||
#endif
|
||||
/* Common auxdata */
|
||||
OF_DEV_AUXDATA("ti,sysc", 0, NULL, &ti_sysc_pdata),
|
||||
|
|
|
|||
|
|
@ -77,7 +77,7 @@
|
|||
method = "smc";
|
||||
};
|
||||
|
||||
intc: intc@fffc1000 {
|
||||
intc: interrupt-controller@fffc1000 {
|
||||
compatible = "arm,gic-400", "arm,cortex-a15-gic";
|
||||
#interrupt-cells = <3>;
|
||||
interrupt-controller;
|
||||
|
|
@ -302,7 +302,7 @@
|
|||
status = "disabled";
|
||||
};
|
||||
|
||||
nand: nand@ffb90000 {
|
||||
nand: nand-controller@ffb90000 {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
compatible = "altr,socfpga-denali-nand";
|
||||
|
|
@ -445,7 +445,7 @@
|
|||
clock-names = "timer";
|
||||
};
|
||||
|
||||
uart0: serial0@ffc02000 {
|
||||
uart0: serial@ffc02000 {
|
||||
compatible = "snps,dw-apb-uart";
|
||||
reg = <0xffc02000 0x100>;
|
||||
interrupts = <0 108 4>;
|
||||
|
|
@ -456,7 +456,7 @@
|
|||
status = "disabled";
|
||||
};
|
||||
|
||||
uart1: serial1@ffc02100 {
|
||||
uart1: serial@ffc02100 {
|
||||
compatible = "snps,dw-apb-uart";
|
||||
reg = <0xffc02100 0x100>;
|
||||
interrupts = <0 109 4>;
|
||||
|
|
|
|||
|
|
@ -2381,6 +2381,7 @@
|
|||
dr_mode = "host";
|
||||
snps,dis_u2_susphy_quirk;
|
||||
snps,quirk-frame-length-adjustment;
|
||||
snps,parkmode-disable-ss-quirk;
|
||||
};
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@
|
|||
|
||||
#include <dt-bindings/input/input.h>
|
||||
|
||||
#include "meson-gxl-s905x.dtsi"
|
||||
#include "meson-gxl-s805x.dtsi"
|
||||
|
||||
/ {
|
||||
compatible = "libretech,aml-s805x-ac", "amlogic,s805x",
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@
|
|||
|
||||
#include <dt-bindings/input/input.h>
|
||||
|
||||
#include "meson-gxl-s905x.dtsi"
|
||||
#include "meson-gxl-s805x.dtsi"
|
||||
|
||||
/ {
|
||||
compatible = "amlogic,p241", "amlogic,s805x", "amlogic,meson-gxl";
|
||||
|
|
|
|||
24
arch/arm64/boot/dts/amlogic/meson-gxl-s805x.dtsi
Normal file
24
arch/arm64/boot/dts/amlogic/meson-gxl-s805x.dtsi
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
||||
/*
|
||||
* Copyright (c) 2020 BayLibre SAS
|
||||
* Author: Neil Armstrong <narmstrong@baylibre.com>
|
||||
*/
|
||||
|
||||
#include "meson-gxl-s905x.dtsi"
|
||||
|
||||
/ {
|
||||
compatible = "amlogic,s805x", "amlogic,meson-gxl";
|
||||
};
|
||||
|
||||
/* The S805X Package doesn't seem to handle the 744MHz OPP correctly */
|
||||
&mali {
|
||||
assigned-clocks = <&clkc CLKID_MALI_0_SEL>,
|
||||
<&clkc CLKID_MALI_0>,
|
||||
<&clkc CLKID_MALI>; /* Glitch free mux */
|
||||
assigned-clock-parents = <&clkc CLKID_FCLK_DIV3>,
|
||||
<0>, /* Do Nothing */
|
||||
<&clkc CLKID_MALI_0>;
|
||||
assigned-clock-rates = <0>, /* Do Nothing */
|
||||
<666666666>,
|
||||
<0>; /* Do Nothing */
|
||||
};
|
||||
|
|
@ -288,6 +288,11 @@
|
|||
};
|
||||
};
|
||||
|
||||
&hwrng {
|
||||
clocks = <&clkc CLKID_RNG0>;
|
||||
clock-names = "core";
|
||||
};
|
||||
|
||||
&i2c_A {
|
||||
clocks = <&clkc CLKID_I2C>;
|
||||
};
|
||||
|
|
|
|||
|
|
@ -18,6 +18,8 @@ CONFIG_QCOM_WDT=m
|
|||
CONFIG_PM8916_WATCHDOG=m
|
||||
CONFIG_MFD_SPMI_PMIC=m
|
||||
CONFIG_SPMI_MSM_PMIC_ARB=m
|
||||
CONFIG_QCOM_RPMH=m
|
||||
CONFIG_QCOM_RPMHPD=m
|
||||
CONFIG_REGULATOR_QCOM_RPMH=m
|
||||
CONFIG_REGULATOR_QCOM_SPMI=m
|
||||
CONFIG_DRM_MSM=m
|
||||
|
|
@ -27,16 +29,11 @@ CONFIG_DRM_MSM=m
|
|||
CONFIG_DRM_LONTIUM_LT9611=m
|
||||
CONFIG_USB_XHCI_PCI_RENESAS=m
|
||||
CONFIG_USB_XHCI_HCD=m
|
||||
CONFIG_USB_EHCI_HCD=m
|
||||
CONFIG_USB_EHCI_HCD_PLATFORM=m
|
||||
CONFIG_USB_OHCI_HCD=m
|
||||
CONFIG_USB_OHCI_HCD_PLATFORM=m
|
||||
CONFIG_USB_DWC3=m
|
||||
CONFIG_USB_DWC3_DISABLE_GADGET_SG=y
|
||||
# CONFIG_USB_DWC3_HAPS is not set
|
||||
# CONFIG_USB_DWC3_OF_SIMPLE is not set
|
||||
CONFIG_USB_GADGET_VBUS_DRAW=500
|
||||
# CONFIG_USB_DUMMY_HCD is not set
|
||||
CONFIG_USB_ROLE_SWITCH=m
|
||||
CONFIG_USB_ULPI_BUS=m
|
||||
CONFIG_MMC_SDHCI_MSM=m
|
||||
|
|
@ -68,3 +65,4 @@ CONFIG_QCOM_SCM=m
|
|||
CONFIG_ARM_SMMU=m
|
||||
CONFIG_INCREMENTAL_FS=m
|
||||
CONFIG_PINCTRL_MSM=m
|
||||
CONFIG_QCOM_COMMAND_DB=m
|
||||
|
|
|
|||
|
|
@ -244,6 +244,7 @@ CONFIG_SCSI_UFSHCD_PCI=y
|
|||
CONFIG_SCSI_UFSHCD_PLATFORM=y
|
||||
CONFIG_SCSI_UFS_DWC_TC_PLATFORM=y
|
||||
CONFIG_SCSI_UFS_HISI=y
|
||||
CONFIG_SCSI_UFS_BSG=y
|
||||
CONFIG_SCSI_UFS_CRYPTO=y
|
||||
CONFIG_MD=y
|
||||
CONFIG_BLK_DEV_DM=y
|
||||
|
|
@ -380,6 +381,7 @@ CONFIG_USB_EHCI_HCD=y
|
|||
CONFIG_USB_EHCI_HCD_PLATFORM=y
|
||||
CONFIG_USB_STORAGE=y
|
||||
CONFIG_USB_UAS=y
|
||||
CONFIG_USB_DWC3=y
|
||||
CONFIG_USB_GADGET=y
|
||||
CONFIG_USB_DUMMY_HCD=y
|
||||
CONFIG_USB_CONFIGFS=y
|
||||
|
|
@ -418,8 +420,6 @@ CONFIG_MAILBOX=y
|
|||
CONFIG_IOMMU_LIMIT_IOVA_ALIGNMENT=y
|
||||
CONFIG_REMOTEPROC=y
|
||||
CONFIG_RPMSG_CHAR=y
|
||||
CONFIG_QCOM_COMMAND_DB=y
|
||||
CONFIG_QCOM_RPMH=y
|
||||
CONFIG_DEVFREQ_GOV_PERFORMANCE=y
|
||||
CONFIG_DEVFREQ_GOV_POWERSAVE=y
|
||||
CONFIG_DEVFREQ_GOV_USERSPACE=y
|
||||
|
|
|
|||
3
arch/arm64/configs/vendor/holi_GKI.config
vendored
3
arch/arm64/configs/vendor/holi_GKI.config
vendored
|
|
@ -3,6 +3,9 @@ CONFIG_ARCH_HOLI=y
|
|||
CONFIG_TRIM_UNUSED_KSYMS=y
|
||||
CONFIG_UNUSED_KSYMS_WHITELIST="android/abi_gki_aarch64_qcom android/abi_gki_aarch64_qcom_internal"
|
||||
CONFIG_UNUSED_KSYMS_WHITELIST_ONLY=y
|
||||
CONFIG_QCOM_RPMH=m
|
||||
CONFIG_QCOM_RPMHPD=m
|
||||
CONFIG_QCOM_COMMAND_DB=m
|
||||
CONFIG_PINCTRL_HOLI=m
|
||||
CONFIG_HVC_DCC=y
|
||||
CONFIG_HVC_DCC_SERIALIZE_SMP=y
|
||||
|
|
|
|||
1
arch/arm64/configs/vendor/holi_QGKI.config
vendored
1
arch/arm64/configs/vendor/holi_QGKI.config
vendored
|
|
@ -47,7 +47,6 @@ CONFIG_BALANCE_ANON_FILE_RECLAIM=y
|
|||
# CONFIG_ZONE_DEVICE is not set
|
||||
# CONFIG_BUG_ON_HW_MEM_ONLINE_FAIL is not set
|
||||
CONFIG_MSM_BT_POWER=m
|
||||
CONFIG_MEDIA_RADIO_SUPPORT=y
|
||||
CONFIG_I2C_RTC6226_QCA=m
|
||||
CONFIG_SCSI_UFSHCD_QTI=y
|
||||
CONFIG_SCSI_UFS_BSG=y
|
||||
|
|
|
|||
3
arch/arm64/configs/vendor/lahaina_GKI.config
vendored
3
arch/arm64/configs/vendor/lahaina_GKI.config
vendored
|
|
@ -4,6 +4,9 @@ CONFIG_ARCH_SHIMA=y
|
|||
CONFIG_TRIM_UNUSED_KSYMS=y
|
||||
CONFIG_UNUSED_KSYMS_WHITELIST="android/abi_gki_aarch64_qcom android/abi_gki_aarch64_qcom_internal"
|
||||
CONFIG_UNUSED_KSYMS_WHITELIST_ONLY=y
|
||||
CONFIG_QCOM_RPMH=m
|
||||
CONFIG_QCOM_RPMHPD=m
|
||||
CONFIG_QCOM_COMMAND_DB=m
|
||||
CONFIG_REGULATOR_STUB=m
|
||||
CONFIG_REGULATOR_PROXY_CONSUMER=m
|
||||
CONFIG_PINCTRL_MSM=m
|
||||
|
|
|
|||
|
|
@ -50,7 +50,6 @@ CONFIG_LIMIT_MOVABLE_ZONE_ALLOC=y
|
|||
# CONFIG_ZONE_DEVICE is not set
|
||||
# CONFIG_BUG_ON_HW_MEM_ONLINE_FAIL is not set
|
||||
CONFIG_MSM_BT_POWER=m
|
||||
CONFIG_MEDIA_RADIO_SUPPORT=y
|
||||
CONFIG_I2C_RTC6226_QCA=m
|
||||
CONFIG_SCSI_UFSHCD_QTI=y
|
||||
CONFIG_SCSI_UFS_BSG=y
|
||||
|
|
|
|||
|
|
@ -58,6 +58,7 @@ struct arch_timer_erratum_workaround {
|
|||
u64 (*read_cntvct_el0)(void);
|
||||
int (*set_next_event_phys)(unsigned long, struct clock_event_device *);
|
||||
int (*set_next_event_virt)(unsigned long, struct clock_event_device *);
|
||||
bool disable_compat_vdso;
|
||||
};
|
||||
|
||||
DECLARE_PER_CPU(const struct arch_timer_erratum_workaround *,
|
||||
|
|
|
|||
|
|
@ -2,6 +2,11 @@
|
|||
#ifndef _ASM_CLOCKSOURCE_H
|
||||
#define _ASM_CLOCKSOURCE_H
|
||||
|
||||
#include <asm/vdso/clocksource.h>
|
||||
#include <vdso/clocksource.h>
|
||||
|
||||
struct arch_clocksource_data {
|
||||
/* Usable for direct VDSO access? */
|
||||
enum vdso_clock_mode clock_mode;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -109,6 +109,8 @@ void disable_debug_monitors(enum dbg_active_el el);
|
|||
|
||||
void user_rewind_single_step(struct task_struct *task);
|
||||
void user_fastforward_single_step(struct task_struct *task);
|
||||
void user_regs_reset_single_step(struct user_pt_regs *regs,
|
||||
struct task_struct *task);
|
||||
|
||||
void kernel_enable_single_step(struct pt_regs *regs);
|
||||
void kernel_disable_single_step(void);
|
||||
|
|
|
|||
|
|
@ -34,6 +34,10 @@ static inline long syscall_get_error(struct task_struct *task,
|
|||
struct pt_regs *regs)
|
||||
{
|
||||
unsigned long error = regs->regs[0];
|
||||
|
||||
if (is_compat_thread(task_thread_info(task)))
|
||||
error = sign_extend64(error, 31);
|
||||
|
||||
return IS_ERR_VALUE(error) ? error : 0;
|
||||
}
|
||||
|
||||
|
|
@ -47,7 +51,13 @@ static inline void syscall_set_return_value(struct task_struct *task,
|
|||
struct pt_regs *regs,
|
||||
int error, long val)
|
||||
{
|
||||
regs->regs[0] = (long) error ? error : val;
|
||||
if (error)
|
||||
val = error;
|
||||
|
||||
if (is_compat_thread(task_thread_info(task)))
|
||||
val = lower_32_bits(val);
|
||||
|
||||
regs->regs[0] = val;
|
||||
}
|
||||
|
||||
#define SYSCALL_MAX_ARGS 6
|
||||
|
|
|
|||
|
|
@ -94,6 +94,7 @@ void arch_release_task_struct(struct task_struct *tsk);
|
|||
#define _TIF_SYSCALL_EMU (1 << TIF_SYSCALL_EMU)
|
||||
#define _TIF_UPROBE (1 << TIF_UPROBE)
|
||||
#define _TIF_FSCHECK (1 << TIF_FSCHECK)
|
||||
#define _TIF_SINGLESTEP (1 << TIF_SINGLESTEP)
|
||||
#define _TIF_32BIT (1 << TIF_32BIT)
|
||||
#define _TIF_SVE (1 << TIF_SVE)
|
||||
|
||||
|
|
|
|||
|
|
@ -2,8 +2,10 @@
|
|||
#ifndef __ASM_VDSOCLOCKSOURCE_H
|
||||
#define __ASM_VDSOCLOCKSOURCE_H
|
||||
|
||||
struct arch_clocksource_data {
|
||||
bool vdso_direct; /* Usable for direct VDSO access? */
|
||||
};
|
||||
#define VDSO_ARCH_CLOCKMODES \
|
||||
/* vdso clocksource for both 32 and 64bit tasks */ \
|
||||
VDSO_CLOCKMODE_ARCHTIMER, \
|
||||
/* vdso clocksource for 64bit tasks only */ \
|
||||
VDSO_CLOCKMODE_ARCHTIMER_NOCOMPAT \
|
||||
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -10,6 +10,7 @@
|
|||
#include <asm/unistd.h>
|
||||
#include <asm/errno.h>
|
||||
|
||||
#include <asm/vdso/clocksource.h>
|
||||
#include <asm/vdso/compat_barrier.h>
|
||||
|
||||
#define __VDSO_USE_SYSCALL ULLONG_MAX
|
||||
|
|
@ -112,10 +113,10 @@ static __always_inline u64 __arch_get_hw_counter(s32 clock_mode)
|
|||
u64 res;
|
||||
|
||||
/*
|
||||
* clock_mode == 0 implies that vDSO are enabled otherwise
|
||||
* clock_mode == ARCHTIMER implies that vDSO are enabled otherwise
|
||||
* fallback on syscall.
|
||||
*/
|
||||
if (clock_mode)
|
||||
if (clock_mode != VDSO_CLOCKMODE_ARCHTIMER)
|
||||
return __VDSO_USE_SYSCALL;
|
||||
|
||||
/*
|
||||
|
|
|
|||
|
|
@ -9,6 +9,8 @@
|
|||
|
||||
#include <asm/unistd.h>
|
||||
|
||||
#include <asm/vdso/clocksource.h>
|
||||
|
||||
#define __VDSO_USE_SYSCALL ULLONG_MAX
|
||||
|
||||
#define VDSO_HAS_CLOCK_GETRES 1
|
||||
|
|
@ -72,10 +74,10 @@ static __always_inline u64 __arch_get_hw_counter(s32 clock_mode)
|
|||
u64 res;
|
||||
|
||||
/*
|
||||
* clock_mode == 0 implies that vDSO are enabled otherwise
|
||||
* clock_mode != NONE implies that vDSO are enabled otherwise
|
||||
* fallback on syscall.
|
||||
*/
|
||||
if (clock_mode)
|
||||
if (clock_mode == VDSO_CLOCKMODE_NONE)
|
||||
return __VDSO_USE_SYSCALL;
|
||||
|
||||
/*
|
||||
|
|
|
|||
|
|
@ -24,9 +24,7 @@ struct vdso_data *__arm64_get_k_vdso_data(void)
|
|||
static __always_inline
|
||||
int __arm64_get_clock_mode(struct timekeeper *tk)
|
||||
{
|
||||
u32 use_syscall = !tk->tkr_mono.clock->archdata.vdso_direct;
|
||||
|
||||
return use_syscall;
|
||||
return tk->tkr_mono.clock->archdata.clock_mode;
|
||||
}
|
||||
#define __arch_get_clock_mode __arm64_get_clock_mode
|
||||
|
||||
|
|
|
|||
|
|
@ -43,20 +43,8 @@ bool alternative_is_applied(u16 cpufeature)
|
|||
*/
|
||||
static bool branch_insn_requires_update(struct alt_instr *alt, unsigned long pc)
|
||||
{
|
||||
unsigned long replptr;
|
||||
|
||||
if (kernel_text_address(pc))
|
||||
return true;
|
||||
|
||||
replptr = (unsigned long)ALT_REPL_PTR(alt);
|
||||
if (pc >= replptr && pc <= (replptr + alt->alt_len))
|
||||
return false;
|
||||
|
||||
/*
|
||||
* Branching into *another* alternate sequence is doomed, and
|
||||
* we're not even trying to fix it up.
|
||||
*/
|
||||
BUG();
|
||||
unsigned long replptr = (unsigned long)ALT_REPL_PTR(alt);
|
||||
return !(pc >= replptr && pc <= (replptr + alt->alt_len));
|
||||
}
|
||||
|
||||
#define align_down(x, a) ((unsigned long)(x) & ~(((unsigned long)(a)) - 1))
|
||||
|
|
|
|||
|
|
@ -141,17 +141,20 @@ postcore_initcall(debug_monitors_init);
|
|||
/*
|
||||
* Single step API and exception handling.
|
||||
*/
|
||||
static void set_regs_spsr_ss(struct pt_regs *regs)
|
||||
static void set_user_regs_spsr_ss(struct user_pt_regs *regs)
|
||||
{
|
||||
regs->pstate |= DBG_SPSR_SS;
|
||||
}
|
||||
NOKPROBE_SYMBOL(set_regs_spsr_ss);
|
||||
NOKPROBE_SYMBOL(set_user_regs_spsr_ss);
|
||||
|
||||
static void clear_regs_spsr_ss(struct pt_regs *regs)
|
||||
static void clear_user_regs_spsr_ss(struct user_pt_regs *regs)
|
||||
{
|
||||
regs->pstate &= ~DBG_SPSR_SS;
|
||||
}
|
||||
NOKPROBE_SYMBOL(clear_regs_spsr_ss);
|
||||
NOKPROBE_SYMBOL(clear_user_regs_spsr_ss);
|
||||
|
||||
#define set_regs_spsr_ss(r) set_user_regs_spsr_ss(&(r)->user_regs)
|
||||
#define clear_regs_spsr_ss(r) clear_user_regs_spsr_ss(&(r)->user_regs)
|
||||
|
||||
static DEFINE_SPINLOCK(debug_hook_lock);
|
||||
static LIST_HEAD(user_step_hook);
|
||||
|
|
@ -393,17 +396,26 @@ void user_rewind_single_step(struct task_struct *task)
|
|||
* If single step is active for this thread, then set SPSR.SS
|
||||
* to 1 to avoid returning to the active-pending state.
|
||||
*/
|
||||
if (test_ti_thread_flag(task_thread_info(task), TIF_SINGLESTEP))
|
||||
if (test_tsk_thread_flag(task, TIF_SINGLESTEP))
|
||||
set_regs_spsr_ss(task_pt_regs(task));
|
||||
}
|
||||
NOKPROBE_SYMBOL(user_rewind_single_step);
|
||||
|
||||
void user_fastforward_single_step(struct task_struct *task)
|
||||
{
|
||||
if (test_ti_thread_flag(task_thread_info(task), TIF_SINGLESTEP))
|
||||
if (test_tsk_thread_flag(task, TIF_SINGLESTEP))
|
||||
clear_regs_spsr_ss(task_pt_regs(task));
|
||||
}
|
||||
|
||||
void user_regs_reset_single_step(struct user_pt_regs *regs,
|
||||
struct task_struct *task)
|
||||
{
|
||||
if (test_tsk_thread_flag(task, TIF_SINGLESTEP))
|
||||
set_user_regs_spsr_ss(regs);
|
||||
else
|
||||
clear_user_regs_spsr_ss(regs);
|
||||
}
|
||||
|
||||
/* Kernel API */
|
||||
void kernel_enable_single_step(struct pt_regs *regs)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -1819,12 +1819,23 @@ static void tracehook_report_syscall(struct pt_regs *regs,
|
|||
saved_reg = regs->regs[regno];
|
||||
regs->regs[regno] = dir;
|
||||
|
||||
if (dir == PTRACE_SYSCALL_EXIT)
|
||||
if (dir == PTRACE_SYSCALL_ENTER) {
|
||||
if (tracehook_report_syscall_entry(regs))
|
||||
forget_syscall(regs);
|
||||
regs->regs[regno] = saved_reg;
|
||||
} else if (!test_thread_flag(TIF_SINGLESTEP)) {
|
||||
tracehook_report_syscall_exit(regs, 0);
|
||||
else if (tracehook_report_syscall_entry(regs))
|
||||
forget_syscall(regs);
|
||||
regs->regs[regno] = saved_reg;
|
||||
} else {
|
||||
regs->regs[regno] = saved_reg;
|
||||
|
||||
regs->regs[regno] = saved_reg;
|
||||
/*
|
||||
* Signal a pseudo-step exception since we are stepping but
|
||||
* tracer modifications to the registers may have rewound the
|
||||
* state machine.
|
||||
*/
|
||||
tracehook_report_syscall_exit(regs, 1);
|
||||
}
|
||||
}
|
||||
|
||||
int syscall_trace_enter(struct pt_regs *regs)
|
||||
|
|
@ -1852,12 +1863,14 @@ int syscall_trace_enter(struct pt_regs *regs)
|
|||
|
||||
void syscall_trace_exit(struct pt_regs *regs)
|
||||
{
|
||||
unsigned long flags = READ_ONCE(current_thread_info()->flags);
|
||||
|
||||
audit_syscall_exit(regs);
|
||||
|
||||
if (test_thread_flag(TIF_SYSCALL_TRACEPOINT))
|
||||
if (flags & _TIF_SYSCALL_TRACEPOINT)
|
||||
trace_sys_exit(regs, regs_return_value(regs));
|
||||
|
||||
if (test_thread_flag(TIF_SYSCALL_TRACE))
|
||||
if (flags & (_TIF_SYSCALL_TRACE | _TIF_SINGLESTEP))
|
||||
tracehook_report_syscall(regs, PTRACE_SYSCALL_EXIT);
|
||||
|
||||
rseq_syscall(regs);
|
||||
|
|
@ -1935,8 +1948,8 @@ static int valid_native_regs(struct user_pt_regs *regs)
|
|||
*/
|
||||
int valid_user_regs(struct user_pt_regs *regs, struct task_struct *task)
|
||||
{
|
||||
if (!test_tsk_thread_flag(task, TIF_SINGLESTEP))
|
||||
regs->pstate &= ~DBG_SPSR_SS;
|
||||
/* https://lore.kernel.org/lkml/20191118131525.GA4180@willie-the-truck */
|
||||
user_regs_reset_single_step(regs, task);
|
||||
|
||||
if (is_compat_thread(task_thread_info(task)))
|
||||
return valid_compat_regs(regs);
|
||||
|
|
|
|||
|
|
@ -782,7 +782,6 @@ static void setup_restart_syscall(struct pt_regs *regs)
|
|||
*/
|
||||
static void handle_signal(struct ksignal *ksig, struct pt_regs *regs)
|
||||
{
|
||||
struct task_struct *tsk = current;
|
||||
sigset_t *oldset = sigmask_to_save();
|
||||
int usig = ksig->sig;
|
||||
int ret;
|
||||
|
|
@ -806,14 +805,8 @@ static void handle_signal(struct ksignal *ksig, struct pt_regs *regs)
|
|||
*/
|
||||
ret |= !valid_user_regs(®s->user_regs, current);
|
||||
|
||||
/*
|
||||
* Fast forward the stepping logic so we step into the signal
|
||||
* handler.
|
||||
*/
|
||||
if (!ret)
|
||||
user_fastforward_single_step(tsk);
|
||||
|
||||
signal_setup_done(ret, ksig, 0);
|
||||
/* Step into the signal handler if we are stepping */
|
||||
signal_setup_done(ret, ksig, test_thread_flag(TIF_SINGLESTEP));
|
||||
}
|
||||
|
||||
/*
|
||||
|
|
|
|||
|
|
@ -50,6 +50,9 @@ static void invoke_syscall(struct pt_regs *regs, unsigned int scno,
|
|||
ret = do_ni_syscall(regs, scno);
|
||||
}
|
||||
|
||||
if (is_compat_task())
|
||||
ret = lower_32_bits(ret);
|
||||
|
||||
regs->regs[0] = ret;
|
||||
}
|
||||
|
||||
|
|
@ -121,7 +124,7 @@ static void el0_svc_common(struct pt_regs *regs, int scno, int sc_nr,
|
|||
if (!has_syscall_work(flags) && !IS_ENABLED(CONFIG_DEBUG_RSEQ)) {
|
||||
local_daif_mask();
|
||||
flags = current_thread_info()->flags;
|
||||
if (!has_syscall_work(flags)) {
|
||||
if (!has_syscall_work(flags) && !(flags & _TIF_SINGLESTEP)) {
|
||||
/*
|
||||
* We're off to userspace, where interrupts are
|
||||
* always enabled after we restore the flags from
|
||||
|
|
|
|||
|
|
@ -35,7 +35,6 @@ CONFIG_BLK_DEV_SD=y
|
|||
CONFIG_CHR_DEV_ST=y
|
||||
CONFIG_CHR_DEV_OSST=y
|
||||
CONFIG_BLK_DEV_SR=y
|
||||
CONFIG_BLK_DEV_SR_VENDOR=y
|
||||
CONFIG_CHR_DEV_SG=y
|
||||
CONFIG_SCSI_CONSTANTS=y
|
||||
CONFIG_SCSI_LOGGING=y
|
||||
|
|
|
|||
|
|
@ -334,7 +334,6 @@ CONFIG_SCSI=y
|
|||
CONFIG_BLK_DEV_SD=y
|
||||
CONFIG_CHR_DEV_ST=m
|
||||
CONFIG_BLK_DEV_SR=y
|
||||
CONFIG_BLK_DEV_SR_VENDOR=y
|
||||
CONFIG_CHR_DEV_SG=m
|
||||
CONFIG_SCSI_CONSTANTS=y
|
||||
CONFIG_SCSI_SAS_ATTRS=m
|
||||
|
|
|
|||
|
|
@ -319,7 +319,6 @@ CONFIG_SCSI=y
|
|||
CONFIG_BLK_DEV_SD=y
|
||||
CONFIG_CHR_DEV_ST=m
|
||||
CONFIG_BLK_DEV_SR=y
|
||||
CONFIG_BLK_DEV_SR_VENDOR=y
|
||||
CONFIG_CHR_DEV_SG=m
|
||||
CONFIG_SCSI_CONSTANTS=y
|
||||
CONFIG_SCSI_SAS_ATTRS=m
|
||||
|
|
|
|||
|
|
@ -334,7 +334,6 @@ CONFIG_SCSI=y
|
|||
CONFIG_BLK_DEV_SD=y
|
||||
CONFIG_CHR_DEV_ST=m
|
||||
CONFIG_BLK_DEV_SR=y
|
||||
CONFIG_BLK_DEV_SR_VENDOR=y
|
||||
CONFIG_CHR_DEV_SG=m
|
||||
CONFIG_SCSI_CONSTANTS=y
|
||||
CONFIG_SCSI_SAS_ATTRS=m
|
||||
|
|
|
|||
|
|
@ -316,7 +316,6 @@ CONFIG_SCSI=y
|
|||
CONFIG_BLK_DEV_SD=y
|
||||
CONFIG_CHR_DEV_ST=m
|
||||
CONFIG_BLK_DEV_SR=y
|
||||
CONFIG_BLK_DEV_SR_VENDOR=y
|
||||
CONFIG_CHR_DEV_SG=m
|
||||
CONFIG_SCSI_CONSTANTS=y
|
||||
CONFIG_SCSI_SAS_ATTRS=m
|
||||
|
|
|
|||
|
|
@ -318,7 +318,6 @@ CONFIG_SCSI=y
|
|||
CONFIG_BLK_DEV_SD=y
|
||||
CONFIG_CHR_DEV_ST=m
|
||||
CONFIG_BLK_DEV_SR=y
|
||||
CONFIG_BLK_DEV_SR_VENDOR=y
|
||||
CONFIG_CHR_DEV_SG=m
|
||||
CONFIG_SCSI_CONSTANTS=y
|
||||
CONFIG_SCSI_SAS_ATTRS=m
|
||||
|
|
|
|||
|
|
@ -325,7 +325,6 @@ CONFIG_SCSI=y
|
|||
CONFIG_BLK_DEV_SD=y
|
||||
CONFIG_CHR_DEV_ST=m
|
||||
CONFIG_BLK_DEV_SR=y
|
||||
CONFIG_BLK_DEV_SR_VENDOR=y
|
||||
CONFIG_CHR_DEV_SG=m
|
||||
CONFIG_SCSI_CONSTANTS=y
|
||||
CONFIG_SCSI_SAS_ATTRS=m
|
||||
|
|
|
|||
|
|
@ -358,7 +358,6 @@ CONFIG_SCSI=y
|
|||
CONFIG_BLK_DEV_SD=y
|
||||
CONFIG_CHR_DEV_ST=m
|
||||
CONFIG_BLK_DEV_SR=y
|
||||
CONFIG_BLK_DEV_SR_VENDOR=y
|
||||
CONFIG_CHR_DEV_SG=m
|
||||
CONFIG_SCSI_CONSTANTS=y
|
||||
CONFIG_SCSI_SAS_ATTRS=m
|
||||
|
|
|
|||
|
|
@ -315,7 +315,6 @@ CONFIG_SCSI=y
|
|||
CONFIG_BLK_DEV_SD=y
|
||||
CONFIG_CHR_DEV_ST=m
|
||||
CONFIG_BLK_DEV_SR=y
|
||||
CONFIG_BLK_DEV_SR_VENDOR=y
|
||||
CONFIG_CHR_DEV_SG=m
|
||||
CONFIG_SCSI_CONSTANTS=y
|
||||
CONFIG_SCSI_SAS_ATTRS=m
|
||||
|
|
|
|||
|
|
@ -316,7 +316,6 @@ CONFIG_SCSI=y
|
|||
CONFIG_BLK_DEV_SD=y
|
||||
CONFIG_CHR_DEV_ST=m
|
||||
CONFIG_BLK_DEV_SR=y
|
||||
CONFIG_BLK_DEV_SR_VENDOR=y
|
||||
CONFIG_CHR_DEV_SG=m
|
||||
CONFIG_SCSI_CONSTANTS=y
|
||||
CONFIG_SCSI_SAS_ATTRS=m
|
||||
|
|
|
|||
|
|
@ -324,7 +324,6 @@ CONFIG_SCSI=y
|
|||
CONFIG_BLK_DEV_SD=y
|
||||
CONFIG_CHR_DEV_ST=m
|
||||
CONFIG_BLK_DEV_SR=y
|
||||
CONFIG_BLK_DEV_SR_VENDOR=y
|
||||
CONFIG_CHR_DEV_SG=m
|
||||
CONFIG_SCSI_CONSTANTS=y
|
||||
CONFIG_SCSI_SAS_ATTRS=m
|
||||
|
|
|
|||
|
|
@ -313,7 +313,6 @@ CONFIG_SCSI=y
|
|||
CONFIG_BLK_DEV_SD=y
|
||||
CONFIG_CHR_DEV_ST=m
|
||||
CONFIG_BLK_DEV_SR=y
|
||||
CONFIG_BLK_DEV_SR_VENDOR=y
|
||||
CONFIG_CHR_DEV_SG=m
|
||||
CONFIG_SCSI_CONSTANTS=y
|
||||
CONFIG_SCSI_SAS_ATTRS=m
|
||||
|
|
|
|||
|
|
@ -313,7 +313,6 @@ CONFIG_SCSI=y
|
|||
CONFIG_BLK_DEV_SD=y
|
||||
CONFIG_CHR_DEV_ST=m
|
||||
CONFIG_BLK_DEV_SR=y
|
||||
CONFIG_BLK_DEV_SR_VENDOR=y
|
||||
CONFIG_CHR_DEV_SG=m
|
||||
CONFIG_SCSI_CONSTANTS=y
|
||||
CONFIG_SCSI_SAS_ATTRS=m
|
||||
|
|
|
|||
|
|
@ -139,7 +139,8 @@ void __init setup_arch(char **cmdline_p)
|
|||
pr_debug("MEMORY -> ROMFS=0x%p-0x%06lx MEM=0x%06lx-0x%06lx\n ",
|
||||
__bss_stop, memory_start, memory_start, memory_end);
|
||||
|
||||
memblock_add(memory_start, memory_end - memory_start);
|
||||
memblock_add(_rambase, memory_end - _rambase);
|
||||
memblock_reserve(_rambase, memory_start - _rambase);
|
||||
|
||||
/* Keep a copy of command line */
|
||||
*cmdline_p = &command_line[0];
|
||||
|
|
|
|||
|
|
@ -164,7 +164,7 @@ void __init cf_bootmem_alloc(void)
|
|||
m68k_memory[0].addr = _rambase;
|
||||
m68k_memory[0].size = _ramend - _rambase;
|
||||
|
||||
memblock_add(m68k_memory[0].addr, m68k_memory[0].size);
|
||||
memblock_add_node(m68k_memory[0].addr, m68k_memory[0].size, 0);
|
||||
|
||||
/* compute total pages in system */
|
||||
num_pages = PFN_DOWN(_ramend - _rambase);
|
||||
|
|
|
|||
|
|
@ -112,7 +112,6 @@ CONFIG_BLK_DEV_TC86C001=m
|
|||
CONFIG_BLK_DEV_SD=y
|
||||
CONFIG_CHR_DEV_ST=y
|
||||
CONFIG_BLK_DEV_SR=y
|
||||
CONFIG_BLK_DEV_SR_VENDOR=y
|
||||
CONFIG_CHR_DEV_SG=m
|
||||
CONFIG_CHR_DEV_SCH=m
|
||||
CONFIG_ATA=y
|
||||
|
|
|
|||
|
|
@ -99,7 +99,6 @@ CONFIG_CDROM_PKTCDVD=m
|
|||
CONFIG_ATA_OVER_ETH=m
|
||||
CONFIG_BLK_DEV_SD=y
|
||||
CONFIG_BLK_DEV_SR=y
|
||||
CONFIG_BLK_DEV_SR_VENDOR=y
|
||||
CONFIG_CHR_DEV_SG=y
|
||||
CONFIG_SCSI_CONSTANTS=y
|
||||
# CONFIG_SCSI_LOWLEVEL is not set
|
||||
|
|
|
|||
|
|
@ -99,7 +99,6 @@ CONFIG_SCSI=y
|
|||
CONFIG_BLK_DEV_SD=y
|
||||
CONFIG_CHR_DEV_ST=y
|
||||
CONFIG_BLK_DEV_SR=m
|
||||
CONFIG_BLK_DEV_SR_VENDOR=y
|
||||
CONFIG_CHR_DEV_SG=m
|
||||
CONFIG_CHR_DEV_SCH=m
|
||||
CONFIG_SCSI_CONSTANTS=y
|
||||
|
|
|
|||
|
|
@ -50,7 +50,6 @@ CONFIG_RAID_ATTRS=y
|
|||
CONFIG_SCSI=y
|
||||
CONFIG_BLK_DEV_SD=y
|
||||
CONFIG_BLK_DEV_SR=y
|
||||
CONFIG_BLK_DEV_SR_VENDOR=y
|
||||
CONFIG_CHR_DEV_SG=m
|
||||
CONFIG_SCSI_CONSTANTS=y
|
||||
CONFIG_SCSI_LOGGING=y
|
||||
|
|
|
|||
|
|
@ -191,7 +191,6 @@ CONFIG_SCSI=y
|
|||
CONFIG_BLK_DEV_SD=y
|
||||
CONFIG_CHR_DEV_ST=m
|
||||
CONFIG_BLK_DEV_SR=m
|
||||
CONFIG_BLK_DEV_SR_VENDOR=y
|
||||
CONFIG_SCSI_CONSTANTS=y
|
||||
CONFIG_SCSI_SCAN_ASYNC=y
|
||||
CONFIG_SCSI_FC_ATTRS=y
|
||||
|
|
|
|||
|
|
@ -239,7 +239,6 @@ CONFIG_BLK_DEV_SD=y
|
|||
CONFIG_CHR_DEV_ST=m
|
||||
CONFIG_CHR_DEV_OSST=m
|
||||
CONFIG_BLK_DEV_SR=y
|
||||
CONFIG_BLK_DEV_SR_VENDOR=y
|
||||
CONFIG_CHR_DEV_SG=m
|
||||
CONFIG_SCSI_CONSTANTS=y
|
||||
CONFIG_SCSI_LOGGING=y
|
||||
|
|
|
|||
|
|
@ -247,7 +247,6 @@ CONFIG_BLK_DEV_SD=y
|
|||
CONFIG_CHR_DEV_ST=m
|
||||
CONFIG_CHR_DEV_OSST=m
|
||||
CONFIG_BLK_DEV_SR=y
|
||||
CONFIG_BLK_DEV_SR_VENDOR=y
|
||||
CONFIG_CHR_DEV_SG=m
|
||||
CONFIG_SCSI_CONSTANTS=y
|
||||
CONFIG_SCSI_LOGGING=y
|
||||
|
|
|
|||
|
|
@ -245,7 +245,6 @@ CONFIG_BLK_DEV_SD=y
|
|||
CONFIG_CHR_DEV_ST=m
|
||||
CONFIG_CHR_DEV_OSST=m
|
||||
CONFIG_BLK_DEV_SR=y
|
||||
CONFIG_BLK_DEV_SR_VENDOR=y
|
||||
CONFIG_CHR_DEV_SG=m
|
||||
CONFIG_SCSI_CONSTANTS=y
|
||||
CONFIG_SCSI_LOGGING=y
|
||||
|
|
|
|||
|
|
@ -245,7 +245,6 @@ CONFIG_BLK_DEV_SD=y
|
|||
CONFIG_CHR_DEV_ST=m
|
||||
CONFIG_CHR_DEV_OSST=m
|
||||
CONFIG_BLK_DEV_SR=y
|
||||
CONFIG_BLK_DEV_SR_VENDOR=y
|
||||
CONFIG_CHR_DEV_SG=m
|
||||
CONFIG_SCSI_CONSTANTS=y
|
||||
CONFIG_SCSI_LOGGING=y
|
||||
|
|
|
|||
|
|
@ -203,7 +203,6 @@ CONFIG_SCSI=y
|
|||
CONFIG_BLK_DEV_SD=y
|
||||
CONFIG_CHR_DEV_ST=m
|
||||
CONFIG_BLK_DEV_SR=m
|
||||
CONFIG_BLK_DEV_SR_VENDOR=y
|
||||
CONFIG_SCSI_CONSTANTS=y
|
||||
CONFIG_SCSI_SCAN_ASYNC=y
|
||||
CONFIG_SCSI_FC_ATTRS=y
|
||||
|
|
|
|||
|
|
@ -444,9 +444,10 @@ static int bridge_probe(struct platform_device *pdev)
|
|||
return -ENOMEM;
|
||||
domain = irq_domain_create_hierarchy(parent, 0, 8, fn,
|
||||
&bridge_domain_ops, NULL);
|
||||
irq_domain_free_fwnode(fn);
|
||||
if (!domain)
|
||||
if (!domain) {
|
||||
irq_domain_free_fwnode(fn);
|
||||
return -ENOMEM;
|
||||
}
|
||||
|
||||
pci_set_flags(PCI_PROBE_ONLY);
|
||||
|
||||
|
|
|
|||
|
|
@ -212,6 +212,8 @@ atomic64_set(atomic64_t *v, s64 i)
|
|||
_atomic_spin_unlock_irqrestore(v, flags);
|
||||
}
|
||||
|
||||
#define atomic64_set_release(v, i) atomic64_set((v), (i))
|
||||
|
||||
static __inline__ s64
|
||||
atomic64_read(const atomic64_t *v)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -2,7 +2,6 @@ CONFIG_AQUANTIA_PHY=y
|
|||
CONFIG_AT803X_PHY=y
|
||||
CONFIG_ATA=y
|
||||
CONFIG_BLK_DEV_SD=y
|
||||
CONFIG_BLK_DEV_SR_VENDOR=y
|
||||
CONFIG_BLK_DEV_SR=y
|
||||
CONFIG_BROADCOM_PHY=y
|
||||
CONFIG_C293_PCIE=y
|
||||
|
|
|
|||
|
|
@ -47,7 +47,6 @@ CONFIG_BLK_DEV_RAM=y
|
|||
CONFIG_BLK_DEV_SD=y
|
||||
CONFIG_CHR_DEV_ST=y
|
||||
CONFIG_BLK_DEV_SR=y
|
||||
CONFIG_BLK_DEV_SR_VENDOR=y
|
||||
CONFIG_CHR_DEV_SG=y
|
||||
CONFIG_SCSI_CONSTANTS=y
|
||||
CONFIG_SCSI_SYM53C8XX_2=y
|
||||
|
|
|
|||
|
|
@ -45,7 +45,6 @@ CONFIG_BLK_DEV_RAM=y
|
|||
CONFIG_BLK_DEV_SD=y
|
||||
CONFIG_CHR_DEV_ST=y
|
||||
CONFIG_BLK_DEV_SR=y
|
||||
CONFIG_BLK_DEV_SR_VENDOR=y
|
||||
CONFIG_CHR_DEV_SG=y
|
||||
CONFIG_SCSI_CONSTANTS=y
|
||||
CONFIG_SCSI_SYM53C8XX_2=y
|
||||
|
|
|
|||
|
|
@ -62,7 +62,6 @@ CONFIG_CDROM_PKTCDVD=m
|
|||
CONFIG_BLK_DEV_SD=y
|
||||
CONFIG_CHR_DEV_ST=y
|
||||
CONFIG_BLK_DEV_SR=y
|
||||
CONFIG_BLK_DEV_SR_VENDOR=y
|
||||
CONFIG_CHR_DEV_SG=y
|
||||
CONFIG_SCSI_CONSTANTS=y
|
||||
CONFIG_SCSI_SPI_ATTRS=y
|
||||
|
|
|
|||
|
|
@ -41,7 +41,6 @@ CONFIG_BLK_DEV_RAM_SIZE=8192
|
|||
# CONFIG_SCSI_PROC_FS is not set
|
||||
CONFIG_BLK_DEV_SD=y
|
||||
CONFIG_BLK_DEV_SR=y
|
||||
CONFIG_BLK_DEV_SR_VENDOR=y
|
||||
CONFIG_CHR_DEV_SG=y
|
||||
CONFIG_SCSI_IPR=y
|
||||
CONFIG_ATA=y
|
||||
|
|
|
|||
|
|
@ -60,7 +60,6 @@ CONFIG_BLK_DEV_SD=y
|
|||
CONFIG_CHR_DEV_ST=y
|
||||
CONFIG_CHR_DEV_OSST=y
|
||||
CONFIG_BLK_DEV_SR=y
|
||||
CONFIG_BLK_DEV_SR_VENDOR=y
|
||||
CONFIG_CHR_DEV_SG=y
|
||||
CONFIG_CHR_DEV_SCH=y
|
||||
CONFIG_SCSI_CONSTANTS=y
|
||||
|
|
|
|||
|
|
@ -119,7 +119,6 @@ CONFIG_BLK_DEV_RAM=y
|
|||
CONFIG_BLK_DEV_SD=y
|
||||
CONFIG_CHR_DEV_ST=y
|
||||
CONFIG_BLK_DEV_SR=y
|
||||
CONFIG_BLK_DEV_SR_VENDOR=y
|
||||
CONFIG_CHR_DEV_SG=y
|
||||
CONFIG_SCSI_CONSTANTS=y
|
||||
CONFIG_SCSI_FC_ATTRS=y
|
||||
|
|
|
|||
|
|
@ -111,7 +111,6 @@ CONFIG_BLK_DEV_NVME=y
|
|||
CONFIG_BLK_DEV_SD=y
|
||||
CONFIG_CHR_DEV_ST=m
|
||||
CONFIG_BLK_DEV_SR=m
|
||||
CONFIG_BLK_DEV_SR_VENDOR=y
|
||||
CONFIG_CHR_DEV_SG=m
|
||||
CONFIG_SCSI_CONSTANTS=y
|
||||
CONFIG_SCSI_SCAN_ASYNC=y
|
||||
|
|
|
|||
|
|
@ -110,7 +110,6 @@ CONFIG_VIRTIO_BLK=m
|
|||
CONFIG_BLK_DEV_SD=y
|
||||
CONFIG_CHR_DEV_ST=m
|
||||
CONFIG_BLK_DEV_SR=y
|
||||
CONFIG_BLK_DEV_SR_VENDOR=y
|
||||
CONFIG_CHR_DEV_SG=y
|
||||
CONFIG_SCSI_CONSTANTS=y
|
||||
CONFIG_SCSI_FC_ATTRS=y
|
||||
|
|
|
|||
|
|
@ -60,7 +60,6 @@ CONFIG_BLK_DEV_RAM_SIZE=65536
|
|||
CONFIG_BLK_DEV_SD=y
|
||||
CONFIG_CHR_DEV_ST=y
|
||||
CONFIG_BLK_DEV_SR=y
|
||||
CONFIG_BLK_DEV_SR_VENDOR=y
|
||||
CONFIG_CHR_DEV_SG=y
|
||||
CONFIG_SCSI_CONSTANTS=y
|
||||
CONFIG_SCSI_FC_ATTRS=y
|
||||
|
|
|
|||
|
|
@ -372,7 +372,6 @@ CONFIG_BLK_DEV_SD=y
|
|||
CONFIG_CHR_DEV_ST=m
|
||||
CONFIG_CHR_DEV_OSST=m
|
||||
CONFIG_BLK_DEV_SR=m
|
||||
CONFIG_BLK_DEV_SR_VENDOR=y
|
||||
CONFIG_CHR_DEV_SG=y
|
||||
CONFIG_CHR_DEV_SCH=m
|
||||
CONFIG_SCSI_ENCLOSURE=m
|
||||
|
|
|
|||
|
|
@ -97,7 +97,6 @@ CONFIG_VIRTIO_BLK=m
|
|||
CONFIG_BLK_DEV_SD=y
|
||||
CONFIG_CHR_DEV_ST=m
|
||||
CONFIG_BLK_DEV_SR=y
|
||||
CONFIG_BLK_DEV_SR_VENDOR=y
|
||||
CONFIG_CHR_DEV_SG=y
|
||||
CONFIG_SCSI_CONSTANTS=y
|
||||
CONFIG_SCSI_FC_ATTRS=y
|
||||
|
|
|
|||
|
|
@ -83,7 +83,6 @@ CONFIG_EEPROM_AT24=m
|
|||
# CONFIG_OCXL is not set
|
||||
CONFIG_BLK_DEV_SD=m
|
||||
CONFIG_BLK_DEV_SR=m
|
||||
CONFIG_BLK_DEV_SR_VENDOR=y
|
||||
CONFIG_CHR_DEV_SG=m
|
||||
CONFIG_SCSI_CONSTANTS=y
|
||||
CONFIG_SCSI_SCAN_ASYNC=y
|
||||
|
|
|
|||
|
|
@ -86,7 +86,7 @@ static void *__init alloc_shared_lppaca(unsigned long size, unsigned long align,
|
|||
* This is very early in boot, so no harm done if the kernel crashes at
|
||||
* this point.
|
||||
*/
|
||||
BUG_ON(shared_lppaca_size >= shared_lppaca_total_size);
|
||||
BUG_ON(shared_lppaca_size > shared_lppaca_total_size);
|
||||
|
||||
return ptr;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -367,12 +367,14 @@ static bool pkey_access_permitted(int pkey, bool write, bool execute)
|
|||
return true;
|
||||
|
||||
pkey_shift = pkeyshift(pkey);
|
||||
if (execute && !(read_iamr() & (IAMR_EX_BIT << pkey_shift)))
|
||||
return true;
|
||||
if (execute)
|
||||
return !(read_iamr() & (IAMR_EX_BIT << pkey_shift));
|
||||
|
||||
amr = read_amr(); /* Delay reading amr until absolutely needed */
|
||||
return ((!write && !(amr & (AMR_RD_BIT << pkey_shift))) ||
|
||||
(write && !(amr & (AMR_WR_BIT << pkey_shift))));
|
||||
amr = read_amr();
|
||||
if (write)
|
||||
return !(amr & (AMR_WR_BIT << pkey_shift));
|
||||
|
||||
return !(amr & (AMR_RD_BIT << pkey_shift));
|
||||
}
|
||||
|
||||
bool arch_pte_access_permitted(u64 pte, bool write, bool execute)
|
||||
|
|
|
|||
|
|
@ -58,8 +58,16 @@ do { \
|
|||
* The AQ/RL pair provides a RCpc critical section, but there's not really any
|
||||
* way we can take advantage of that here because the ordering is only enforced
|
||||
* on that one lock. Thus, we're just doing a full fence.
|
||||
*
|
||||
* Since we allow writeX to be called from preemptive regions we need at least
|
||||
* an "o" in the predecessor set to ensure device writes are visible before the
|
||||
* task is marked as available for scheduling on a new hart. While I don't see
|
||||
* any concrete reason we need a full IO fence, it seems safer to just upgrade
|
||||
* this in order to avoid any IO crossing a scheduling boundary. In both
|
||||
* instances the scheduler pairs this with an mb(), so nothing is necessary on
|
||||
* the new hart.
|
||||
*/
|
||||
#define smp_mb__after_spinlock() RISCV_FENCE(rw,rw)
|
||||
#define smp_mb__after_spinlock() RISCV_FENCE(iorw,iorw)
|
||||
|
||||
#include <asm-generic/barrier.h>
|
||||
|
||||
|
|
|
|||
|
|
@ -12,7 +12,11 @@
|
|||
#include <linux/const.h>
|
||||
|
||||
/* thread information allocation */
|
||||
#ifdef CONFIG_64BIT
|
||||
#define THREAD_SIZE_ORDER (2)
|
||||
#else
|
||||
#define THREAD_SIZE_ORDER (1)
|
||||
#endif
|
||||
#define THREAD_SIZE (PAGE_SIZE << THREAD_SIZE_ORDER)
|
||||
|
||||
#ifndef __ASSEMBLY__
|
||||
|
|
|
|||
|
|
@ -46,7 +46,6 @@ CONFIG_BLK_DEV_IDETAPE=m
|
|||
CONFIG_SCSI=m
|
||||
CONFIG_BLK_DEV_SD=m
|
||||
CONFIG_BLK_DEV_SR=m
|
||||
CONFIG_BLK_DEV_SR_VENDOR=y
|
||||
CONFIG_CHR_DEV_SG=m
|
||||
CONFIG_NETDEVICES=y
|
||||
CONFIG_NET_ETHERNET=y
|
||||
|
|
|
|||
|
|
@ -73,7 +73,6 @@ CONFIG_RAID_ATTRS=m
|
|||
CONFIG_SCSI=y
|
||||
CONFIG_BLK_DEV_SD=y
|
||||
CONFIG_BLK_DEV_SR=m
|
||||
CONFIG_BLK_DEV_SR_VENDOR=y
|
||||
CONFIG_CHR_DEV_SG=m
|
||||
CONFIG_SCSI_MULTI_LUN=y
|
||||
CONFIG_SCSI_CONSTANTS=y
|
||||
|
|
|
|||
|
|
@ -218,6 +218,7 @@ CONFIG_SCSI_UFSHCD=y
|
|||
CONFIG_SCSI_UFSHCD_PCI=y
|
||||
CONFIG_SCSI_UFSHCD_PLATFORM=y
|
||||
CONFIG_SCSI_UFS_DWC_TC_PLATFORM=y
|
||||
CONFIG_SCSI_UFS_BSG=y
|
||||
CONFIG_SCSI_UFS_CRYPTO=y
|
||||
CONFIG_MD=y
|
||||
CONFIG_BLK_DEV_DM=y
|
||||
|
|
@ -337,6 +338,7 @@ CONFIG_USB_EHCI_HCD=y
|
|||
CONFIG_USB_EHCI_HCD_PLATFORM=y
|
||||
CONFIG_USB_STORAGE=y
|
||||
CONFIG_USB_UAS=y
|
||||
CONFIG_USB_DWC3=y
|
||||
CONFIG_USB_GADGET=y
|
||||
CONFIG_USB_DUMMY_HCD=y
|
||||
CONFIG_USB_CONFIGFS=y
|
||||
|
|
@ -357,6 +359,7 @@ CONFIG_MMC_CRYPTO=y
|
|||
CONFIG_MMC_SDHCI=y
|
||||
CONFIG_MMC_SDHCI_PLTFM=y
|
||||
CONFIG_RTC_CLASS=y
|
||||
CONFIG_DMADEVICES=y
|
||||
CONFIG_UIO=y
|
||||
CONFIG_STAGING=y
|
||||
CONFIG_ASHMEM=y
|
||||
|
|
|
|||
|
|
@ -137,7 +137,6 @@ CONFIG_CONNECTOR=y
|
|||
CONFIG_BLK_DEV_LOOP=y
|
||||
CONFIG_BLK_DEV_SD=y
|
||||
CONFIG_BLK_DEV_SR=y
|
||||
CONFIG_BLK_DEV_SR_VENDOR=y
|
||||
CONFIG_CHR_DEV_SG=y
|
||||
CONFIG_SCSI_CONSTANTS=y
|
||||
CONFIG_SCSI_SPI_ATTRS=y
|
||||
|
|
|
|||
|
|
@ -136,7 +136,6 @@ CONFIG_CONNECTOR=y
|
|||
CONFIG_BLK_DEV_LOOP=y
|
||||
CONFIG_BLK_DEV_SD=y
|
||||
CONFIG_BLK_DEV_SR=y
|
||||
CONFIG_BLK_DEV_SR_VENDOR=y
|
||||
CONFIG_CHR_DEV_SG=y
|
||||
CONFIG_SCSI_CONSTANTS=y
|
||||
CONFIG_SCSI_SPI_ATTRS=y
|
||||
|
|
|
|||
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Reference in a new issue