Linux 6.1.56
Greg Kroah-Hartman
maintainerI'm announcing the release of the 6.1.56 kernel.
All users of the 6.1 kernel series must upgrade.
The updated 6.1.y git tree can be found at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git linux-6.1.y
and can be browsed at the normal kernel.org git web browser:
https://git.kernel.org/?p=linux/kernel/git/stable/linux-stable.git;a=summary
thanks,
greg k-h
------------
Documentation/admin-guide/cgroup-v1/memory.rst | 9 Makefile | 2 arch/arm/boot/dts/am335x-guardian.dts | 3 arch/arm/boot/dts/am3517-evm.dts | 2 arch/arm/boot/dts/bcm4708-linksys-ea6500-v2.dts | 3 arch/arm/boot/dts/exynos4210-i9100.dts | 4 arch/arm/boot/dts/logicpd-torpedo-baseboard.dtsi | 2 arch/arm/boot/dts/motorola-mapphone-common.dtsi | 48 - arch/arm/boot/dts/omap-gpmc-smsc911x.dtsi | 6 arch/arm/boot/dts/omap-gpmc-smsc9221.dtsi | 6 arch/arm/boot/dts/omap3-cm-t3517.dts | 12 arch/arm/boot/dts/omap3-cpu-thermal.dtsi | 3 arch/arm/boot/dts/omap3-gta04.dtsi | 8 arch/arm/boot/dts/omap3-ldp.dts | 2 arch/arm/boot/dts/omap3-n900.dts | 40 - arch/arm/boot/dts/omap3-zoom3.dts | 44 - arch/arm/boot/dts/omap4-cpu-thermal.dtsi | 29 arch/arm/boot/dts/omap4-duovero-parlor.dts | 12 arch/arm/boot/dts/omap4-duovero.dtsi | 18 arch/arm/boot/dts/omap4-kc1.dts | 14 arch/arm/boot/dts/omap4-mcpdm.dtsi | 2 arch/arm/boot/dts/omap4-panda-common.dtsi | 30 arch/arm/boot/dts/omap4-panda-es.dts | 8 arch/arm/boot/dts/omap4-sdp.dts | 36 arch/arm/boot/dts/omap4-var-om44customboard.dtsi | 24 arch/arm/boot/dts/omap4-var-som-om44-wlan.dtsi | 6 arch/arm/boot/dts/omap4-var-som-om44.dtsi | 22 arch/arm/boot/dts/omap443x.dtsi | 1 arch/arm/boot/dts/omap4460.dtsi | 1 arch/arm/boot/dts/omap5-cm-t54.dts | 64 - arch/arm/boot/dts/qcom-msm8974pro-sony-xperia-shinano-castor.dts | 8 arch/arm/boot/dts/twl6030_omap4.dtsi | 4 arch/arm64/boot/dts/freescale/Makefile | 1 arch/arm64/boot/dts/qcom/sdm845-db845c.dts | 9 arch/arm64/configs/defconfig | 1 arch/loongarch/include/asm/elf.h | 9 arch/loongarch/kernel/mem.c | 4 arch/loongarch/kernel/module.c | 2 arch/loongarch/kernel/numa.c | 2 arch/mips/alchemy/devboards/db1000.c | 4 arch/mips/alchemy/devboards/db1200.c | 6 arch/mips/alchemy/devboards/db1300.c | 4 arch/parisc/include/asm/ropes.h | 3 arch/parisc/kernel/drivers.c | 2 arch/parisc/kernel/irq.c | 2 arch/powerpc/kernel/hw_breakpoint.c | 16 arch/powerpc/kernel/hw_breakpoint_constraints.c | 7 arch/powerpc/perf/hv-24x7.c | 2 arch/riscv/include/asm/errata_list.h | 4 arch/x86/include/asm/kexec.h | 2 arch/x86/include/asm/reboot.h | 2 arch/x86/kernel/cpu/bugs.c | 4 arch/x86/kernel/cpu/common.c | 2 arch/x86/kernel/cpu/sgx/encl.c | 30 arch/x86/kernel/crash.c | 31 arch/x86/kernel/reboot.c | 22 arch/x86/kernel/setup.c | 8 arch/x86/kvm/mmu/mmu.c | 8 arch/x86/kvm/mmu/tdp_mmu.c | 31 arch/x86/kvm/mmu/tdp_mmu.h | 3 arch/x86/kvm/svm/sev.c | 34 arch/x86/kvm/svm/svm.c | 9 arch/x86/kvm/svm/svm.h | 1 arch/x86/kvm/vmx/vmx.c | 10 arch/xtensa/boot/Makefile | 3 arch/xtensa/boot/lib/zmem.c | 5 arch/xtensa/include/asm/core.h | 4 arch/xtensa/lib/umulsidi3.S | 4 arch/xtensa/platforms/iss/network.c | 4 drivers/ata/libata-core.c | 41 - drivers/ata/libata-eh.c | 13 drivers/ata/libata-scsi.c | 47 + drivers/ata/libata-transport.c | 9 drivers/ata/libata.h | 2 drivers/ata/sata_mv.c | 4 drivers/bus/ti-sysc.c | 31 drivers/char/agp/parisc-agp.c | 2 drivers/clk/sprd/ums512-clk.c | 2 drivers/clk/tegra/clk-bpmp.c | 2 drivers/firmware/arm_ffa/driver.c | 16 drivers/firmware/arm_scmi/perf.c | 93 +- drivers/firmware/cirrus/cs_dsp.c | 34 drivers/firmware/imx/imx-dsp.c | 1 drivers/gpio/gpio-pmic-eic-sprd.c | 1 drivers/gpio/gpio-tb10x.c | 6 drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c | 17 drivers/gpu/drm/amd/amdgpu/nbio_v4_3.c | 3 drivers/gpu/drm/amd/amdgpu/soc21.c | 2 drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c | 2 drivers/gpu/drm/amd/amdkfd/kfd_priv.h | 5 drivers/gpu/drm/amd/display/dc/dce110/dce110_hw_sequencer.c | 4 drivers/gpu/drm/bridge/ti-sn65dsi83.c | 4 drivers/gpu/drm/i915/gt/intel_engine_cs.c | 1 drivers/gpu/drm/i915/gt/intel_execlists_submission.c | 2 drivers/gpu/drm/i915/gt/intel_ggtt.c | 23 drivers/gpu/drm/meson/meson_encoder_hdmi.c | 2 drivers/gpu/drm/tests/drm_mm_test.c | 2 drivers/i2c/busses/i2c-i801.c | 1 drivers/i2c/busses/i2c-npcm7xx.c | 17 drivers/i2c/busses/i2c-xiic.c | 2 drivers/i2c/muxes/i2c-demux-pinctrl.c | 4 drivers/i2c/muxes/i2c-mux-gpio.c | 4 drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3-sva.c | 27 drivers/md/dm-core.h | 1 drivers/md/dm-ioctl.c | 7 drivers/md/dm-table.c | 32 drivers/media/common/videobuf2/frame_vector.c | 6 drivers/media/platform/marvell/Kconfig | 4 drivers/media/platform/via/Kconfig | 2 drivers/media/usb/em28xx/Kconfig | 4 drivers/media/usb/go7007/Kconfig | 2 drivers/media/usb/uvc/uvc_ctrl.c | 3 drivers/misc/cardreader/rts5227.c | 55 - drivers/misc/cardreader/rts5228.c | 57 - drivers/misc/cardreader/rts5249.c | 56 - drivers/misc/cardreader/rts5260.c | 43 - drivers/misc/cardreader/rts5261.c | 52 - drivers/misc/cardreader/rtsx_pcr.c | 51 + drivers/net/ethernet/amazon/ena/ena_netdev.c | 3 drivers/net/ethernet/broadcom/bnxt/bnxt.c | 5 drivers/net/ethernet/engleder/tsnep_main.c | 18 drivers/net/ethernet/hisilicon/hns3/hns3_enet.c | 9 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c | 13 drivers/net/ethernet/hisilicon/hns3/hns3vf/hclgevf_main.c | 3 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c | 8 drivers/net/ethernet/intel/iavf/iavf.h | 2 drivers/net/ethernet/intel/iavf/iavf_ethtool.c | 2 drivers/net/ethernet/intel/iavf/iavf_main.c | 17 drivers/net/ethernet/intel/igc/igc_ethtool.c | 31 drivers/net/ethernet/intel/igc/igc_main.c | 2 drivers/net/ethernet/marvell/octeon_ep/octep_main.c | 8 drivers/net/ethernet/marvell/octeon_ep/octep_tx.c | 8 drivers/net/ethernet/marvell/octeon_ep/octep_tx.h | 16 drivers/net/ethernet/marvell/octeontx2/nic/otx2_txrx.c | 19 drivers/net/ethernet/pensando/ionic/ionic_dev.h | 1 drivers/net/ethernet/pensando/ionic/ionic_txrx.c | 10 drivers/net/team/team.c | 10 drivers/net/thunderbolt.c | 3 drivers/net/wireless/ath/ath11k/dp.h | 4 drivers/net/wireless/ath/ath11k/dp_tx.c | 39 drivers/net/wireless/ath/ath11k/dp_tx.h | 1 drivers/nvme/host/fc.c | 2 drivers/nvme/host/pci.c | 121 +-- drivers/parisc/iosapic.c | 4 drivers/parisc/iosapic_private.h | 4 drivers/platform/mellanox/Kconfig | 1 drivers/platform/x86/asus-nb-wmi.c | 9 drivers/platform/x86/intel_scu_ipc.c | 66 + drivers/power/supply/ab8500_btemp.c | 9 drivers/power/supply/ab8500_chargalg.c | 2 drivers/power/supply/mt6370-charger.c | 2 drivers/power/supply/rk817_charger.c | 16 drivers/power/supply/ucs1002_power.c | 3 drivers/s390/crypto/pkey_api.c | 16 drivers/s390/crypto/zcrypt_ep11misc.c | 61 + drivers/s390/crypto/zcrypt_ep11misc.h | 3 drivers/scsi/iscsi_tcp.c | 4 drivers/scsi/pm8001/pm8001_hwi.c | 2 drivers/scsi/pm8001/pm80xx_hwi.c | 4 drivers/scsi/qedf/qedf_io.c | 10 drivers/scsi/qedf/qedf_main.c | 7 drivers/scsi/qla2xxx/qla_def.h | 3 drivers/scsi/qla2xxx/qla_init.c | 5 drivers/scsi/qla2xxx/qla_inline.h | 58 + drivers/scsi/qla2xxx/qla_isr.c | 12 drivers/scsi/qla2xxx/qla_nvme.c | 4 drivers/scsi/qla2xxx/qla_os.c | 6 drivers/scsi/qla2xxx/qla_target.c | 3 drivers/scsi/qla2xxx/tcm_qla2xxx.c | 4 drivers/soc/imx/soc-imx8m.c | 10 drivers/spi/spi-gxp.c | 2 drivers/spi/spi-intel-pci.c | 1 drivers/spi/spi-nxp-fspi.c | 7 drivers/spi/spi-stm32.c | 8 drivers/spi/spi-sun6i.c | 31 drivers/thermal/thermal_of.c | 8 drivers/tty/n_gsm.c | 4 drivers/tty/serial/8250/8250_port.c | 5 drivers/ufs/core/ufshcd.c | 13 drivers/vfio/mdev/mdev_sysfs.c | 3 drivers/video/fbdev/Kconfig | 2 fs/binfmt_elf_fdpic.c | 5 fs/btrfs/delayed-inode.c | 85 +- fs/btrfs/extent_io.c | 8 fs/btrfs/super.c | 2 fs/ceph/caps.c | 6 fs/ceph/mds_client.c | 12 fs/ceph/mds_client.h | 11 fs/ceph/quota.c | 14 fs/ceph/snap.c | 10 fs/ceph/super.c | 75 + fs/ceph/super.h | 3 fs/ext4/mballoc.c | 60 - fs/f2fs/data.c | 25 fs/f2fs/dir.c | 34 fs/f2fs/f2fs.h | 5 fs/f2fs/gc.c | 4 fs/netfs/buffered_read.c | 6 fs/nfs/direct.c | 134 ++- fs/nfs/flexfilelayout/flexfilelayout.c | 1 fs/nfs/nfs4client.c | 9 fs/nfs/nfs4proc.c | 10 fs/nfs/write.c | 23 fs/nilfs2/gcinode.c | 6 fs/proc/internal.h | 2 fs/proc/task_nommu.c | 64 - fs/smb/client/cifsglob.h | 1 fs/smb/client/fs_context.c | 1 fs/smb/client/inode.c | 2 fs/smb/client/smb2ops.c | 6 fs/smb/client/transport.c | 34 include/linux/bpf.h | 2 include/linux/btf_ids.h | 2 include/linux/if_team.h | 2 include/linux/interrupt.h | 6 include/linux/libata.h | 4 include/linux/memcontrol.h | 4 include/linux/nfs_fs_sb.h | 1 include/linux/nfs_page.h | 4 include/linux/resume_user_mode.h | 2 include/linux/seqlock.h | 2 include/net/netfilter/nf_tables.h | 127 +-- include/uapi/linux/bpf.h | 4 io_uring/fs.c | 2 kernel/bpf/queue_stack_maps.c | 21 kernel/dma/debug.c | 20 kernel/sched/core.c | 2 kernel/sched/cpupri.c | 1 kernel/sched/idle.c | 1 kernel/trace/bpf_trace.c | 16 kernel/trace/ring_buffer.c | 10 mm/damon/vaddr-test.h | 2 mm/memcontrol.c | 13 mm/slab_common.c | 12 net/bridge/br_forward.c | 4 net/bridge/br_input.c | 4 net/core/flow_dissector.c | 2 net/dccp/ipv4.c | 9 net/dccp/ipv6.c | 9 net/hsr/hsr_framereg.c | 4 net/hsr/hsr_main.h | 2 net/ipv4/route.c | 4 net/mptcp/options.c | 5 net/ncsi/ncsi-aen.c | 5 net/netfilter/ipset/ip_set_core.c | 12 net/netfilter/nf_conntrack_bpf.c | 2 net/netfilter/nf_conntrack_extend.c | 4 net/netfilter/nf_tables_api.c | 400 ++++++++-- net/netfilter/nft_set_hash.c | 87 +- net/netfilter/nft_set_pipapo.c | 69 + net/netfilter/nft_set_rbtree.c | 161 ++-- net/rds/rdma_transport.c | 12 net/smc/smc_stats.h | 3 net/sunrpc/clnt.c | 15 security/smack/smack.h | 1 security/smack/smack_lsm.c | 63 + sound/hda/intel-sdw-acpi.c | 8 sound/pci/hda/hda_intel.c | 1 sound/pci/hda/patch_realtek.c | 3 sound/soc/amd/yc/acp6x-mach.c | 21 sound/soc/codecs/cs42l42.c | 10 sound/soc/codecs/rt5640.c | 13 sound/soc/fsl/imx-audmix.c | 2 sound/soc/fsl/imx-pcm-rpmsg.c | 1 sound/soc/fsl/imx-rpmsg.c | 8 sound/soc/intel/avs/boards/hdaudio.c | 3 sound/soc/meson/axg-spdifin.c | 49 - sound/soc/sof/core.c | 3 sound/soc/sof/intel/mtl.c | 2 sound/soc/sof/intel/mtl.h | 1 tools/include/linux/btf_ids.h | 2 tools/include/linux/mm.h | 2 tools/include/linux/seq_file.h | 2 tools/include/uapi/linux/bpf.h | 4 tools/perf/util/Build | 6 tools/testing/memblock/tests/basic_api.c | 2 tools/testing/memblock/tests/common.h | 1 tools/testing/selftests/ftrace/test.d/instances/instance-event.tc | 2 tools/testing/selftests/kselftest_deps.sh | 77 + tools/testing/selftests/net/tls.c | 8 tools/testing/selftests/powerpc/Makefile | 15 tools/testing/selftests/powerpc/pmu/Makefile | 40 - 282 files changed, 2842 insertions(+), 1575 deletions(-)
Adam Ford (1):
bus: ti-sysc: Fix missing AM35xx SoC matching
Aleksey Nasibulin (1):
ARM: dts: BCM5301X: Extend RAM to full 256MB for Linksys EA6500 V2
Alex Deucher (2):
drm/amdgpu/soc21: don't remap HDP registers for SR-IOV drm/amdgpu/nbio4.3: set proper rmmio_remap.reg_offset for SR-IOV
Amit Pundir (1):
arm64: dts: qcom: sdm845-db845c: Mark cont splash memory region as reserved
Andy Shevchenko (1):
serial: 8250_port: Check IRQ data before use
Arnaldo Carvalho de Melo (1):
perf build: Define YYNOMEM as YYNOABORT for bison < 3.81
Artem Chernyshev (1):
net: rds: Fix possible NULL-pointer dereference
August Wikerfors (1):
ASoC: amd: yc: Fix non-functional mic on Lenovo 82QF and 82UG
Ben Wolsieffer (2):
proc: nommu: /proc/<pid>/maps: release mmap read lock
proc: nommu: fix empty /proc/<pid>/maps
Benjamin Gray (5):
selftests/powerpc: Use CLEAN macro to fix make warning selftests/powerpc: Pass make context to children powerpc/watchpoints: Disable preemption in thread_change_pc() powerpc/watchpoint: Disable pagefaults when getting user instruction powerpc/watchpoints: Annotate atomic context in more places
Chancel Liu (1):
ASoC: imx-rpmsg: Set ignore_pmdown_time for dai_link
Chao Yu (1):
f2fs: optimize iteration over sparse directories
Charles Kearney (1):
spi: spi-gxp: BUG: Correct spi write return value
Chen Ni (1):
ASoC: hdaudio.c: Add missing check for devm_kstrdup
Chris Morgan (1):
power: supply: rk817: Fix node refcount leak
Christoph Hellwig (3):
MIPS: Alchemy: only build mmc support helpers if au1xmmc is enabled
nvme-pci: factor the iod mempool creation into a helper
nvme-pci: factor out a nvme_pci_alloc_dev helper
Christophe JAILLET (3):
gpio: tb10x: Fix an error handling path in tb10x_gpio_probe()
firmware: imx-dsp: Fix an error handling path in imx_dsp_setup_channels()
ata: sata_mv: Fix incorrect string length computation in mv_dump_mem()
Cristian Marussi (1):
firmware: arm_scmi: Harden perf domain info access
Damien Le Moal (4):
ata: libata-scsi: link ata port and scsi device
ata: libata-core: Fix ata_port_request_pm() locking
ata: libata-core: Fix port and device removal
ata: libata-core: Do not register PM operations for SAS ports
Dan Carpenter (1):
power: supply: ucs1002: fix error code in ucs1002_get_property()
Daniel Borkmann (1):
bpf: Annotate bpf_long_memcpy with data_race
Daniel Scally (1):
i2c: xiic: Correct return value check for xiic_reinit()
Daniel Starke (1):
Revert "tty: n_gsm: fix UAF in gsm_cleanup_mux"
Dave Wysochanski (1):
netfs: Only call folio_start_fscache() one time for each folio
David Christensen (1):
ionic: fix 16bit math issue when PAGE_SIZE >= 64KB
David Francis (1):
drm/amdgpu: Handle null atom context in VBIOS info ioctl
David Thompson (1):
platform/mellanox: mlxbf-bootctl: add NET dependency into Kconfig
Eric Dumazet (3):
scsi: iscsi_tcp: restrict to TCP sockets
dccp: fix dccp_v4_err()/dccp_v6_err() again
net: bridge: use DEV_STATS_INC()
Filipe Manana (3):
btrfs: improve error message after failure to add delayed dir index item
btrfs: remove BUG() after failure to insert delayed dir index item
btrfs: assert delayed node locked when removing delayed item
Florian Westphal (7):
netfilter: nf_tables: don't skip expired elements during walk
netfilter: nf_tables: don't fail inserts if duplicate has expired
netfilter: nf_tables: defer gc run if previous batch is still pending
netfilter: nf_tables: fix memleak when more than 255 elements expired
netfilter: conntrack: fix extension size table
netfilter: nf_tables: disable toggling dormant table state more than once
netfilter: nf_tables: fix kdoc warnings after gc rework
Frederic Weisbecker (1):
timers: Tag (hr)timer softirq as hotplug safe
Gerhard Engleder (2):
tsnep: Fix NAPI scheduling
tsnep: Fix NAPI polling with budget 0
Gleb Chesnokov (1):
scsi: qla2xxx: Fix NULL pointer dereference in target mode
Greg Kroah-Hartman (1):
Linux 6.1.56
Greg Ungerer (1):
fs: binfmt_elf_efpic: fix personality for ELF-FDPIC
Guangguan Wang (1):
net/smc: bugfix for smcr v2 server connect success statistic
Haitao Huang (1):
x86/sgx: Resolves SECS reclaim vs. page fault for EAUG race
Han Xu (1):
spi: nxp-fspi: reset the FLSHxCR1 registers
Hans Verkuil (1):
media: vb2: frame_vector.c: replace WARN_ONCE with a comment
Hans de Goede (2):
ASoC: rt5640: Revert "Fix sleep in atomic context"
ASoC: rt5640: Fix IRQ not being free-ed for HDA jack detect mode
Harish Kasiviswanathan (1):
drm/amdkfd: Insert missing TLB flush on GFX10 and later
Harshit Mogalapalli (1):
power: supply: mt6370: Fix missing error code in mt6370_chg_toggle_cfo()
Heiner Kallweit (1):
i2c: i801: unregister tco_pdev in i801_probe() error path
Helge Deller (4):
parisc: sba: Fix compile warning wrt list of SBA devices
parisc: iosapic.c: Fix sparse warnings
parisc: drivers: Fix sparse warning
parisc: irq: Make irq_stack_union static to avoid sparse warning
Holger Dengler (1):
s390/pkey: fix PKEY_TYPE_EP11_AES handling in PKEY_CLR2SECK2 IOCTL
Huacai Chen (2):
LoongArch: Set all reserved memblocks on Node#0 at initialization
LoongArch: numa: Fix high_memory calculation
Icenowy Zheng (1):
riscv: errata: fix T-Head dcache.cva encoding
Ilya Leoshkevich (1):
netfilter, bpf: Adjust timeouts of non-confirmed CTs in bpf_ct_insert_entry()
Irvin Cote (1):
nvme-pci: always return an ERR_PTR from nvme_pci_alloc_dev
Ivan Vecera (1):
i40e: Fix VF VLAN offloading when port VLAN is configured
Jaegeuk Kim (1):
f2fs: get out of a repeat loop when getting a locked data page
Jan Kara (2):
ext4: move setting of trimmed bit into ext4_try_to_trim_range()
ext4: do not let fstrim block system suspend
Jani Nikula (1):
drm/meson: fix memory leak on ->hpd_notify callback
Janusz Krzysztofik (1):
drm/tests: Fix incorrect argument in drm_test_mm_insert_range
Javed Hasan (1):
scsi: qedf: Add synchronization between I/O completions and abort
Javier Pello (1):
drm/i915/gt: Fix reservation address in ggtt_reserve_guc_top
Jens Axboe (1):
io_uring/fs: remove sqe->rw_flags checking from LINKAT
Jerome Brunet (1):
ASoC: meson: spdifin: start hw on dai probe
Jian Shen (1):
net: hns3: only enable unicast promisc when mac table full
Jie Wang (3):
net: hns3: add cmdq check for vf periodic service task
net: hns3: fix GRE checksum offload issue
net: hns3: add 5ms delay before clear firmware reset irq source
Jijie Shao (1):
net: hns3: fix fail to delete tc flower rules during reset issue
Jinjie Ruan (2):
vfio/mdev: Fix a null-ptr-deref bug for mdev_unregister_parent() mm/damon/vaddr-test: fix memory leak in damon_do_test_apply_three_regions()
Jiri Olsa (2):
bpf: Add override check to kprobe multi link attach
bpf: Fix BTF_ID symbol generation collision
Joel Fernandes (Google) (1):
sched/rt: Fix live lock between select_fallback_rq() and RT push
Johannes Weiner (1):
mm: memcontrol: fix GFP_NOFS recursion in memory.high enforcement
Johnathan Mantey (1):
ncsi: Propagate carrier gain/loss events to the NCSI controller
Josef Bacik (1):
btrfs: properly report 0 avail for very full file systems
Josh Poimboeuf (2):
x86/srso: Fix srso_show_state() side effect x86/srso: Fix SBPB enablement for spec_rstack_overflow=off
Jozsef Kadlecsik (1):
netfilter: ipset: Fix race between IPSET_CMD_CREATE and IPSET_CMD_SWAP
Julia Lawall (1):
thermal/of: add missing of_node_put()
Julien Panis (1):
bus: ti-sysc: Use fsleep() instead of usleep_range() in sysc_reset()
Kailang Yang (1):
ALSA: hda: Disable power save for solving pop issue on Lenovo ThinkCentre M70q
Kajol Jain (1):
powerpc/perf/hv-24x7: Update domain value check
Kemeng Shi (1):
ext4: replace the traditional ternary conditional operator with with max()/min()
Kiwoong Kim (2):
scsi: ufs: core: Move __ufshcd_send_uic_cmd() outside host_lock
scsi: ufs: core: Poll HCS.UCRDY before issuing a UIC command
Knyazev Arseniy (1):
ALSA: hda/realtek: Splitting the UX3402 into two separate models
Krzysztof Kozlowski (4):
ARM: dts: qcom: msm8974pro-castor: correct inverted X of touchscreen
ARM: dts: qcom: msm8974pro-castor: correct touchscreen function names
ARM: dts: qcom: msm8974pro-castor: correct touchscreen syna,nosleep-mode
ARM: dts: omap: correct indentation
Kyle Zeng (1):
ipv4: fix null-deref in ipv4_link_failure
Liam R. Howlett (1):
kernel/sched: Modify initial boot task idle setup
Liang He (1):
i2c: mux: gpio: Add missing fwnode_handle_put()
Linus Walleij (1):
power: supply: ab8500: Set typing and props
Lukasz Majewski (1):
net: hsr: Properly parse HSRv1 supervisor frames.
Luke D. Jones (1):
platform/x86: asus-wmi: Support 2023 ROG X16 tablet mode
Marek Vasut (1):
drm/bridge: ti-sn65dsi83: Do not generate HFP/HBP/HSA and EOT packet
Mario Limonciello (1):
ASoC: amd: yc: Fix a non-functional mic on Lenovo 82TL
Matthias Schiffer (1):
ata: libata-sata: increase PMP SRST timeout to 10s
Max Filippov (2):
xtensa: add default definition for XCHAL_HAVE_DIV32
xtensa: boot/lib: fix function prototypes
Michael Ellerman (1):
selftests/powerpc: Fix emit_tests to work with run_kselftest.sh
Michal Grzedzicki (2):
scsi: pm80xx: Use phy-specific SAS address when sending PHY_START command
scsi: pm80xx: Avoid leaking tags when processing OPC_INB_SET_CONTROLLER_CONFIG commandMichal Hocko (2):
memcg: drop kmem.limit_in_bytes
mm, memcg: reconsider kmem.limit_in_bytes deprecation
Mika Westerberg (2):
spi: intel-pci: Add support for Granite Rapids SPI serial flash
net: thunderbolt: Fix TCPv6 GSO checksum calculation
Mike Rapoport (IBM) (2):
memblock tests: fix warning: "__ALIGN_KERNEL" redefined memblock tests: fix warning ‘struct seq_file’ declared inside parameter list
Mikko Rapeli (1):
arm64: defconfig: remove CONFIG_COMMON_CLK_NPCM8XX=y
Mikulas Patocka (1):
dm: fix a race condition in retrieve_deps
Muhammad Husaini Zulkifli (1):
igc: Expose tx-usecs coalesce setting to user
Nathan Rossi (1):
soc: imx8m: Enable OCOTP clock for imx8mm before reading registers
Nick Desaulniers (1):
bpf: Fix BTF_ID symbol generation collision in tools/
Nicolas Frattaroli (1):
power: supply: rk817: Add missing module alias
Nicolin Chen (1):
iommu/arm-smmu-v3: Fix soft lockup triggered by arm_smmu_mm_invalidate_range
Nigel Kirkland (1):
nvme-fc: Prevent null pointer dereference in nvme_fc_io_getuuid()
Niklas Cassel (2):
ata: libata-eh: do not clear ATA_PFLAG_EH_PENDING in ata_eh_reset()
ata: libata-scsi: ignore reserved bits for REPORT SUPPORTED OPERATION CODES
Nilesh Javali (1):
scsi: qla2xxx: Use raw_smp_processor_id() instead of smp_processor_id()
Olga Kornievskaia (3):
NFSv4.1: use EXCHGID4_FLAG_USE_PNFS_DS for DS server NFSv4.1: fix pnfs MDS=DS session trunking NFSv4.1: fix zero value filehandle in post open getattr
Pablo Neira Ayuso (15):
netfilter: nf_tables: GC transaction API to avoid race with control plane
netfilter: nf_tables: adapt set backend to use GC transaction API
netfilter: nft_set_hash: mark set element as dead when deleting from packet path
netfilter: nf_tables: remove busy mark and gc batch API
netfilter: nf_tables: fix GC transaction races with netns and netlink event exit path
netfilter: nf_tables: GC transaction race with netns dismantle
netfilter: nf_tables: GC transaction race with abort path
netfilter: nf_tables: use correct lock to protect gc_list
netfilter: nft_set_rbtree: skip sync GC for new elements in this transaction
netfilter: nft_set_rbtree: use read spinlock to avoid datapath contention
netfilter: nft_set_pipapo: call nft_trans_gc_queue_sync() in catchall GC
netfilter: nft_set_pipapo: stop GC iteration if GC transaction allocation fails
netfilter: nft_set_hash: try later when GC hits EAGAIN on iteration
netfilter: nf_tables: disallow element removal on anonymous sets
netfilter: nf_tables: disallow rule removal from chain binding
Pan Bian (1):
nilfs2: fix potential use after free in nilfs_gccache_submit_read_data()
Paolo Abeni (1):
mptcp: fix bogus receive window shrinkage with multiple subflows
Paolo Bonzini (2):
KVM: SVM: INTERCEPT_RDTSCP is never intercepted anyway
KVM: x86/mmu: Do not filter address spaces in for_each_tdp_mmu_root_yield_safe()
Paul Cercueil (1):
ARM: dts: samsung: exynos4210-i9100: Fix LCD screen's physical size
Peter Ujfalusi (2):
ASoC: SOF: core: Only call sof_ops_free() on remove if the probe was successful
ALSA: hda: intel-sdw-acpi: Use u8 type for link index
Petr Oros (2):
iavf: add iavf_schedule_aq_request() helper
iavf: schedule a request immediately after add/delete vlan
Philip Yang (1):
drm/amdkfd: Flush TLB after unmapping for GFX v9.4.3
Pradeep Kumar Chitrapu (1):
wifi: ath11k: fix tx status reporting in encap offload mode
Pratyush Yadav (1):
nvme-pci: do not set the NUMA node of device if it has none
Pu Wen (1):
x86/srso: Add SRSO mitigation for Hygon processors
Qu Wenruo (1):
btrfs: reset destination buffer when read_extent_buffer() gets invalid range
Quang Le (1):
fs/smb/client: Reset password pointer to NULL
Radoslaw Tyl (1):
iavf: do not process adminq tasks when __IAVF_IN_REMOVE_TASK is set
Rafael Aquini (1):
mm/slab_common: fix slab_caches list corruption after kmem_cache_destroy()
Randy Dunlap (3):
xtensa: iss/network: make functions static
xtensa: boot: don't add include-dirs
xtensa: umulsidi3: fix conditional expression
Ranjani Sridharan (1):
ASoC: SOF: Intel: MTL: Reduce the DSP init timeout
Ricardo B. Marliere (1):
selftests: fix dependency checker script
Ricardo Ribalda (1):
media: uvcvideo: Fix OOB read
Richard Fitzgerald (3):
ASoC: cs42l42: Ensure a reset pulse meets minimum pulse width.
ASoC: cs42l42: Don't rely on GPIOD_OUT_LOW to set RESET initially low
firmware: cirrus: cs_dsp: Only log list of algorithms in debug build
Ricky WU (1):
misc: rtsx: Fix some platforms can not boot and move the l1ss judgment to probe
Rik van Riel (1):
x86/mm, kexec, ima: Use memblock_free_late() from ima_free_kexec_buffer()
Rob Herring (1):
arm64: dts: imx: Add imx8mm-prt8mm.dtb to build
Roberto Sassu (2):
smack: Record transmuting in smk_transmuted
smack: Retrieve transmuting information in smack_inode_getsecurity()
Sabrina Dubroca (1):
selftests: tls: swap the TX and RX sockets in some tests
Sakari Ailus (2):
media: v4l: Use correct dependency for camera sensor drivers
media: via: Use correct dependency for camera sensor drivers
Sasha Neftin (1):
net/core: Fix ETH_P_1588 flow dissector
Sean Christopherson (2):
x86/reboot: VMCLEAR active VMCSes before emergency reboot
KVM: x86/mmu: Open code leaf invalidation from mmu_notifier
Sebastian Andrzej Siewior (5):
locking/seqlock: Do the lockdep annotation before locking in do_write_seqcount_begin_nested()
net: ena: Flush XDP packets on error.
bnxt_en: Flush XDP for bnxt_poll_nitroa0()'s NAPI
octeontx2-pf: Do xdp_do_flush() after redirects.
net: hsr: Add __packed to struct hsr_sup_tlv.
Sergey Senozhatsky (1):
dma-debug: don't call __dma_entry_alloc_check_leak() under free_entries_lock
Shengjiu Wang (2):
ASoC: imx-audmix: Fix return error with devm_clk_get()
ASoC: fsl: imx-pcm-rpmsg: Add SNDRV_PCM_INFO_BATCH flag
Shinas Rasheed (1):
octeon_ep: fix tx dma unmap len values in SG
Shreyas Deodhar (1):
scsi: qla2xxx: Select qpair depending on which CPU post_cmd() gets called
Sibi Sankar (1):
firmware: arm_scmi: Fixup perf power-cost/microwatt support
Stanislav Fomichev (1):
bpf: Clarify error expectations from bpf_clone_redirect
Stephen Boyd (4):
platform/x86: intel_scu_ipc: Check status after timeout in busy_loop() platform/x86: intel_scu_ipc: Check status upon timeout in ipc_wait_for_interrupt() platform/x86: intel_scu_ipc: Don't override scu in intel_scu_ipc_dev_simple_command() platform/x86: intel_scu_ipc: Fail IPC send if still busy
Steve French (1):
smb3: correct places where ENOTSUPP is used instead of preferred EOPNOTSUPP
Steven Rostedt (Google) (2):
ring-buffer: Do not attempt to read past "commit"
ring-buffer: Update "shortest_full" in polling
Sudeep Holla (1):
firmware: arm_ffa: Don't set the memory region attributes for MEM_LEND
Sven Eckelmann (2):
wifi: ath11k: Cleanup mac80211 references on failure during tx_complete
wifi: ath11k: Don't drop tx_status when peer cannot be found
Swapnil Patel (1):
drm/amd/display: Don't check registers, if using AUX BL control
Thomas Zimmermann (1):
fbdev/sh7760fb: Depend on FB=y
Tiezhu Yang (1):
LoongArch: Define relocation types for ABI v2.10
Timo Alho (1):
clk: tegra: fix error return case for recalc_rate
Tobias Schramm (2):
spi: sun6i: reduce DMA RX transfer width to single byte
spi: sun6i: fix race between DMA RX transfer completion and RX FIFO drain
Toke Høiland-Jørgensen (1):
bpf: Avoid deadlock when using queue and stack maps from NMI
Tom Lendacky (1):
KVM: SVM: Fix TSC_AUX virtualization setup
Tony Lindgren (5):
ARM: dts: ti: omap: Fix bandgap thermal cells addressing for omap3/4
ARM: dts: Unify pwm-omap-dmtimer node names
ARM: dts: Unify pinctrl-single pin group nodes for omap4
ARM: dts: ti: omap: motorola-mapphone: Fix abe_clkctrl warning on boot
bus: ti-sysc: Fix SYSC_QUIRK_SWSUP_SIDLE_ACT handling for uart wake-up
Trond Myklebust (8):
NFS: Fix error handling for O_DIRECT write scheduling
NFS: Fix O_DIRECT locking issues
NFS: More O_DIRECT accounting fixes for error paths
NFS: Use the correct commit info in nfs_join_page_group()
NFS: More fixes for nfs_direct_write_reschedule_io() NFS/pNFS: Report EINVAL errors from connect() to the server
SUNRPC: Mark the cred for revalidation if the server rejects it Revert "SUNRPC dont update timeout value on connection reset"
Umesh Nerlige Ramappa (1):
i915/pmu: Move execlist stats initialization to execlist specific setup
Valentin Caron (1):
spi: stm32: add a delay before SPI disable
Vinicius Costa Gomes (1):
igc: Fix infinite initialization loop with early XDP redirect
Wenhua Lin (1):
gpio: pmic-eic-sprd: Add can_sleep flag for PMIC EIC chip
William A. Kennington III (1):
i2c: npcm7xx: Fix callback completion ordering
Xiaoke Wang (1):
i2c: mux: demux-pinctrl: check the return value of devm_kstrdup()
Xiubo Li (1):
ceph: drop messages from MDS when unmounting
YuBiao Wang (1):
drm/amdkfd: Use gpu_offset for user queue's wptr
Zhang Xiaoxu (1):
cifs: Fix UAF in cifs_demultiplex_thread()
Zheng Yejian (2):
selftests/ftrace: Correctly enable event in instance-event.tc
ring-buffer: Avoid softlockup in ring_buffer_resize()
Zhifeng Tang (1):
clk: sprd: Fix thm_parents incorrect configuration
Ziyang Xuan (1):
team: fix null-ptr-deref when team device type is changed
Greg Kroah-Hartman
maintainerDocumentation/admin-guide/cgroup-v1/memory.rst +7 -2
@@ -91,8 +91,13 @@ Brief summary of control files. memory.oom_control set/show oom controls. memory.numa_stat show the number of memory usage per numa node - memory.kmem.limit_in_bytes This knob is deprecated and writing to - it will return -ENOTSUPP. + memory.kmem.limit_in_bytes Deprecated knob to set and read the kernel + memory hard limit. Kernel hard limit is not + supported since 5.16. Writing any value to + do file will not have any effect same as if + nokmem kernel parameter was specified. + Kernel memory is still charged and reported + by memory.kmem.usage_in_bytes. memory.kmem.usage_in_bytes show current kernel memory allocation memory.kmem.failcnt show the number of kernel memory usage hits limits
Makefile +1 -1
@@ -1,7 +1,7 @@ # SPDX-License-Identifier: GPL-2.0 VERSION = 6 PATCHLEVEL = 1 -SUBLEVEL = 55 +SUBLEVEL = 56 EXTRAVERSION = NAME = Curry Ramen
arch/arm/boot/dts/am335x-guardian.dts +2 -1
@@ -103,8 +103,9 @@ panel-info { }; - guardian_beeper: dmtimer-pwm@7 { + guardian_beeper: pwm-7 { compatible = "ti,omap-dmtimer-pwm"; + #pwm-cells = <3>; ti,timers = <&timer7>; pinctrl-names = "default"; pinctrl-0 = <&guardian_beeper_pins>;
arch/arm/boot/dts/am3517-evm.dts +1 -1
@@ -150,7 +150,7 @@ bl: backlight { enable-gpios = <&gpio6 22 GPIO_ACTIVE_HIGH>; /* gpio_182 */ }; - pwm11: dmtimer-pwm@11 { + pwm11: pwm-11 { compatible = "ti,omap-dmtimer-pwm"; pinctrl-names = "default"; pinctrl-0 = <&pwm_pins>;
arch/arm/boot/dts/bcm4708-linksys-ea6500-v2.dts +2 -1
@@ -19,7 +19,8 @@ chosen { memory@0 { device_type = "memory"; - reg = <0x00000000 0x08000000>; + reg = <0x00000000 0x08000000>, + <0x88000000 0x08000000>; }; gpio-keys {
arch/arm/boot/dts/exynos4210-i9100.dts +2 -2
@@ -201,8 +201,8 @@ lcd@0 { power-on-delay = <10>; reset-delay = <10>; - panel-width-mm = <90>; - panel-height-mm = <154>; + panel-width-mm = <56>; + panel-height-mm = <93>; display-timings { timing {
arch/arm/boot/dts/logicpd-torpedo-baseboard.dtsi +1 -1
@@ -59,7 +59,7 @@ led2 { }; }; - pwm10: dmtimer-pwm { + pwm10: pwm-10 { compatible = "ti,omap-dmtimer-pwm"; pinctrl-names = "default"; pinctrl-0 = <&pwm_pins>;
arch/arm/boot/dts/motorola-mapphone-common.dtsi +24 -24
186 lines not on this page · raw message
arch/arm/boot/dts/omap-gpmc-smsc911x.dtsi +3 -3
@@ -8,9 +8,9 @@ / { vddvario: regulator-vddvario { - compatible = "regulator-fixed"; - regulator-name = "vddvario"; - regulator-always-on; + compatible = "regulator-fixed"; + regulator-name = "vddvario"; + regulator-always-on; }; vdd33a: regulator-vdd33a {
arch/arm/boot/dts/omap-gpmc-smsc9221.dtsi +3 -3
@@ -12,9 +12,9 @@ / { vddvario: regulator-vddvario { - compatible = "regulator-fixed"; - regulator-name = "vddvario"; - regulator-always-on; + compatible = "regulator-fixed"; + regulator-name = "vddvario"; + regulator-always-on; }; vdd33a: regulator-vdd33a {
arch/arm/boot/dts/omap3-cm-t3517.dts +6 -6
@@ -11,12 +11,12 @@ / { model = "CompuLab CM-T3517"; compatible = "compulab,omap3-cm-t3517", "ti,am3517", "ti,omap3"; - vmmc: regulator-vmmc { - compatible = "regulator-fixed"; - regulator-name = "vmmc"; - regulator-min-microvolt = <3300000>; - regulator-max-microvolt = <3300000>; - }; + vmmc: regulator-vmmc { + compatible = "regulator-fixed"; + regulator-name = "vmmc"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + }; wl12xx_vmmc2: wl12xx_vmmc2 { compatible = "regulator-fixed";
arch/arm/boot/dts/omap3-cpu-thermal.dtsi +1 -2
@@ -12,8 +12,7 @@ cpu_thermal: cpu-thermal { polling-delay = <1000>; /* milliseconds */ coefficients = <0 20000>; - /* sensor ID */ - thermal-sensors = <&bandgap 0>; + thermal-sensors = <&bandgap>; cpu_trips: trips { cpu_alert0: cpu_alert {
arch/arm/boot/dts/omap3-gta04.dtsi +4 -4
@@ -147,7 +147,7 @@ backlight: backlight { pinctrl-0 = <&backlight_pins>; }; - pwm11: dmtimer-pwm { + pwm11: pwm-11 { compatible = "ti,omap-dmtimer-pwm"; ti,timers = <&timer11>; #pwm-cells = <3>;
@@ -332,7 +332,7 @@ OMAP3_CORE1_IOPAD(0x2106, PIN_OUTPUT | MUX_MODE0) /* dss_data21.dss_data21 */ OMAP3_CORE1_IOPAD(0x2108, PIN_OUTPUT | MUX_MODE0) /* dss_data22.dss_data22 */ OMAP3_CORE1_IOPAD(0x210a, PIN_OUTPUT | MUX_MODE0) /* dss_data23.dss_data23 */ >; - }; + }; gps_pins: pinmux_gps_pins { pinctrl-single,pins = <
@@ -869,8 +869,8 @@ &mcbsp4 { /* GSM voice PCM */ }; &hdqw1w { - pinctrl-names = "default"; - pinctrl-0 = <&hdq_pins>; + pinctrl-names = "default"; + pinctrl-0 = <&hdq_pins>; }; /* image signal processor within OMAP3 SoC */
arch/arm/boot/dts/omap3-ldp.dts +1 -1
@@ -301,5 +301,5 @@ &usb_otg_hs { &vaux1 { /* Needed for ads7846 */ - regulator-name = "vcc"; + regulator-name = "vcc"; };
arch/arm/boot/dts/omap3-n900.dts +20 -20
@@ -156,7 +156,7 @@ battery: n900-battery { io-channel-names = "temp", "bsi", "vbat"; }; - pwm9: dmtimer-pwm { + pwm9: pwm-9 { compatible = "ti,omap-dmtimer-pwm"; #pwm-cells = <3>; ti,timers = <&timer9>;
@@ -236,27 +236,27 @@ gpmc_pins: pinmux_gpmc_pins { pinctrl-single,pins = < /* address lines */ - OMAP3_CORE1_IOPAD(0x207a, PIN_OUTPUT | MUX_MODE0) /* gpmc_a1.gpmc_a1 */ - OMAP3_CORE1_IOPAD(0x207c, PIN_OUTPUT | MUX_MODE0) /* gpmc_a2.gpmc_a2 */ - OMAP3_CORE1_IOPAD(0x207e, PIN_OUTPUT | MUX_MODE0) /* gpmc_a3.gpmc_a3 */ + OMAP3_CORE1_IOPAD(0x207a, PIN_OUTPUT | MUX_MODE0) /* gpmc_a1.gpmc_a1 */ + OMAP3_CORE1_IOPAD(0x207c, PIN_OUTPUT | MUX_MODE0) /* gpmc_a2.gpmc_a2 */ + OMAP3_CORE1_IOPAD(0x207e, PIN_OUTPUT | MUX_MODE0) /* gpmc_a3.gpmc_a3 */ /* data lines, gpmc_d0..d7 not muxable according to TRM */ - OMAP3_CORE1_IOPAD(0x209e, PIN_INPUT | MUX_MODE0) /* gpmc_d8.gpmc_d8 */ - OMAP3_CORE1_IOPAD(0x20a0, PIN_INPUT | MUX_MODE0) /* gpmc_d9.gpmc_d9 */ - OMAP3_CORE1_IOPAD(0x20a2, PIN_INPUT | MUX_MODE0) /* gpmc_d10.gpmc_d10 */ - OMAP3_CORE1_IOPAD(0x20a4, PIN_INPUT | MUX_MODE0) /* gpmc_d11.gpmc_d11 */ - OMAP3_CORE1_IOPAD(0x20a6, PIN_INPUT | MUX_MODE0) /* gpmc_d12.gpmc_d12 */ - OMAP3_CORE1_IOPAD(0x20a8, PIN_INPUT | MUX_MODE0) /* gpmc_d13.gpmc_d13 */ - OMAP3_CORE1_IOPAD(0x20aa, PIN_INPUT | MUX_MODE0) /* gpmc_d14.gpmc_d14 */ - OMAP3_CORE1_IOPAD(0x20ac, PIN_INPUT | MUX_MODE0) /* gpmc_d15.gpmc_d15 */ + OMAP3_CORE1_IOPAD(0x209e, PIN_INPUT | MUX_MODE0) /* gpmc_d8.gpmc_d8 */ + OMAP3_CORE1_IOPAD(0x20a0, PIN_INPUT | MUX_MODE0) /* gpmc_d9.gpmc_d9 */ + OMAP3_CORE1_IOPAD(0x20a2, PIN_INPUT | MUX_MODE0) /* gpmc_d10.gpmc_d10 */ + OMAP3_CORE1_IOPAD(0x20a4, PIN_INPUT | MUX_MODE0) /* gpmc_d11.gpmc_d11 */ + OMAP3_CORE1_IOPAD(0x20a6, PIN_INPUT | MUX_MODE0) /* gpmc_d12.gpmc_d12 */ + OMAP3_CORE1_IOPAD(0x20a8, PIN_INPUT | MUX_MODE0) /* gpmc_d13.gpmc_d13 */ + OMAP3_CORE1_IOPAD(0x20aa, PIN_INPUT | MUX_MODE0) /* gpmc_d14.gpmc_d14 */ + OMAP3_CORE1_IOPAD(0x20ac, PIN_INPUT | MUX_MODE0) /* gpmc_d15.gpmc_d15 */ /* * gpmc_ncs0, gpmc_nadv_ale, gpmc_noe, gpmc_nwe, gpmc_wait0 not muxable * according to TRM. OneNAND seems to require PIN_INPUT on clock. */ - OMAP3_CORE1_IOPAD(0x20b0, PIN_OUTPUT | MUX_MODE0) /* gpmc_ncs1.gpmc_ncs1 */ - OMAP3_CORE1_IOPAD(0x20be, PIN_INPUT | MUX_MODE0) /* gpmc_clk.gpmc_clk */ - >; + OMAP3_CORE1_IOPAD(0x20b0, PIN_OUTPUT | MUX_MODE0) /* gpmc_ncs1.gpmc_ncs1 */ + OMAP3_CORE1_IOPAD(0x20be, PIN_INPUT | MUX_MODE0) /* gpmc_clk.gpmc_clk */ + >; }; i2c1_pins: pinmux_i2c1_pins {
@@ -738,12 +738,12 @@ tpa6130a2: tpa6130a2@60 { si4713: si4713@63 { compatible = "silabs,si4713"; - reg = <0x63>; + reg = <0x63>; - interrupts-extended = <&gpio2 21 IRQ_TYPE_EDGE_FALLING>; /* 53 */ - reset-gpios = <&gpio6 3 GPIO_ACTIVE_HIGH>; /* 163 */ - vio-supply = <&vio>; - vdd-supply = <&vaux1>; + interrupts-extended = <&gpio2 21 IRQ_TYPE_EDGE_FALLING>; /* 53 */ + reset-gpios = <&gpio6 3 GPIO_ACTIVE_HIGH>; /* 163 */ + vio-supply = <&vio>; + vdd-supply = <&vaux1>; }; bq24150a: bq24150a@6b {
arch/arm/boot/dts/omap3-zoom3.dts +22 -22
81 lines not on this page · raw message
arch/arm/boot/dts/omap4-cpu-thermal.dtsi +16 -13
@@ -12,21 +12,24 @@ cpu_thermal: cpu_thermal { polling-delay-passive = <250>; /* milliseconds */ polling-delay = <1000>; /* milliseconds */ - /* sensor ID */ - thermal-sensors = <&bandgap 0>; + /* + * See 44xx files for single sensor addressing, omap5 and dra7 need + * also sensor ID for addressing. + */ + thermal-sensors = <&bandgap 0>; cpu_trips: trips { - cpu_alert0: cpu_alert { - temperature = <100000>; /* millicelsius */ - hysteresis = <2000>; /* millicelsius */ - type = "passive"; - }; - cpu_crit: cpu_crit { - temperature = <125000>; /* millicelsius */ - hysteresis = <2000>; /* millicelsius */ - type = "critical"; - }; - }; + cpu_alert0: cpu_alert { + temperature = <100000>; /* millicelsius */ + hysteresis = <2000>; /* millicelsius */ + type = "passive"; + }; + cpu_crit: cpu_crit { + temperature = <125000>; /* millicelsius */ + hysteresis = <2000>; /* millicelsius */ + type = "critical"; + }; + }; cpu_cooling_maps: cooling-maps { map0 {
arch/arm/boot/dts/omap4-duovero-parlor.dts +6 -6
@@ -62,33 +62,33 @@ &button_pins &smsc_pins >; - led_pins: pinmux_led_pins { + led_pins: led-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x116, PIN_OUTPUT | MUX_MODE3) /* abe_dmic_din3.gpio_122 */ >; }; - button_pins: pinmux_button_pins { + button_pins: button-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x114, PIN_INPUT_PULLUP | MUX_MODE3) /* abe_dmic_din2.gpio_121 */ >; }; - i2c2_pins: pinmux_i2c2_pins { + i2c2_pins: i2c2-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x126, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c2_scl */ OMAP4_IOPAD(0x128, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c2_sda */ >; }; - i2c3_pins: pinmux_i2c3_pins { + i2c3_pins: i2c3-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x12a, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c3_scl */ OMAP4_IOPAD(0x12c, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c3_sda */ >; }; - smsc_pins: pinmux_smsc_pins { + smsc_pins: smsc-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x068, PIN_INPUT | MUX_MODE3) /* gpmc_a20.gpio_44: IRQ */ OMAP4_IOPAD(0x06a, PIN_INPUT_PULLUP | MUX_MODE3) /* gpmc_a21.gpio_45: nReset */
@@ -96,7 +96,7 @@ OMAP4_IOPAD(0x070, PIN_INPUT_PULLUP | MUX_MODE3) /* gpmc_a24.gpio_48: amdix enab >; }; - dss_hdmi_pins: pinmux_dss_hdmi_pins { + dss_hdmi_pins: dss-hdmi-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x098, PIN_INPUT | MUX_MODE3) /* hdmi_hpd.gpio_63 */ OMAP4_IOPAD(0x09a, PIN_INPUT | MUX_MODE0) /* hdmi_cec.hdmi_cec */
arch/arm/boot/dts/omap4-duovero.dtsi +9 -9
@@ -73,14 +73,14 @@ &twl6040_pins &hsusbb1_pins >; - twl6040_pins: pinmux_twl6040_pins { + twl6040_pins: twl6040-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x166, PIN_OUTPUT | MUX_MODE3) /* usbb2_ulpitll_nxt.gpio_160 */ OMAP4_IOPAD(0x1a0, PIN_INPUT | MUX_MODE0) /* sys_nirq2.sys_nirq2 */ >; }; - mcbsp1_pins: pinmux_mcbsp1_pins { + mcbsp1_pins: mcbsp1-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x0fe, PIN_INPUT | MUX_MODE0) /* abe_mcbsp1_clkx.abe_mcbsp1_clkx */ OMAP4_IOPAD(0x100, PIN_INPUT_PULLDOWN | MUX_MODE0) /* abe_mcbsp1_dr.abe_mcbsp1_dr */
@@ -89,7 +89,7 @@ OMAP4_IOPAD(0x104, PIN_INPUT | MUX_MODE0) /* abe_mcbsp1_fsx.abe_mcbsp1_fsx */ >; }; - hsusbb1_pins: pinmux_hsusbb1_pins { + hsusbb1_pins: hsusbb1-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x0c2, PIN_INPUT_PULLDOWN | MUX_MODE4) /* usbb1_ulpitll_clk.usbb1_ulpiphy_clk */ OMAP4_IOPAD(0x0c4, PIN_OUTPUT | MUX_MODE4) /* usbb1_ulpitll_stp.usbb1_ulpiphy_stp */
@@ -106,34 +106,34 @@ OMAP4_IOPAD(0x0d8, PIN_INPUT_PULLDOWN | MUX_MODE4) /* usbb1_ulpitll_dat7.usbb1_u >; }; - hsusb1phy_pins: pinmux_hsusb1phy_pins { + hsusb1phy_pins: hsusb1phy-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x08c, PIN_OUTPUT | MUX_MODE3) /* gpmc_wait1.gpio_62 */ >; }; - w2cbw0015_pins: pinmux_w2cbw0015_pins { + w2cbw0015_pins: w2cbw0015-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x066, PIN_OUTPUT | MUX_MODE3) /* gpmc_a19.gpio_43 */ OMAP4_IOPAD(0x07a, PIN_INPUT | MUX_MODE3) /* gpmc_ncs3.gpio_53 */ >; }; - i2c1_pins: pinmux_i2c1_pins { + i2c1_pins: i2c1-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x122, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c1_scl */ OMAP4_IOPAD(0x124, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c1_sda */ >; }; - i2c4_pins: pinmux_i2c4_pins { + i2c4_pins: i2c4-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x12e, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c4_scl */ OMAP4_IOPAD(0x130, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c4_sda */ >; }; - mmc1_pins: pinmux_mmc1_pins { + mmc1_pins: mmc1-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x0e2, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc1_clk */ OMAP4_IOPAD(0x0e4, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmcc1_cmd */
@@ -144,7 +144,7 @@ OMAP4_IOPAD(0x0ec, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc1_dat3 */ >; }; - mmc5_pins: pinmux_mmc5_pins { + mmc5_pins: mmc5-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x148, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc5_clk */ OMAP4_IOPAD(0x14a, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmcc5_cmd */
arch/arm/boot/dts/omap4-kc1.dts +7 -7
@@ -35,42 +35,42 @@ led-2 { &omap4_pmx_core { pinctrl-names = "default"; - uart3_pins: pinmux_uart3_pins { + uart3_pins: uart3-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x144, PIN_INPUT | MUX_MODE0) /* uart3_rx_irrx */ OMAP4_IOPAD(0x146, PIN_OUTPUT | MUX_MODE0) /* uart3_tx_irtx */ >; }; - i2c1_pins: pinmux_i2c1_pins { + i2c1_pins: i2c1-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x122, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c1_scl */ OMAP4_IOPAD(0x124, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c1_sda */ >; }; - i2c2_pins: pinmux_i2c2_pins { + i2c2_pins: i2c2-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x126, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c2_scl */ OMAP4_IOPAD(0x128, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c2_sda */ >; }; - i2c3_pins: pinmux_i2c3_pins { + i2c3_pins: i2c3-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x12a, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c3_scl */ OMAP4_IOPAD(0x12c, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c3_sda */ >; }; - i2c4_pins: pinmux_i2c4_pins { + i2c4_pins: i2c4-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x12e, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c4_scl */ OMAP4_IOPAD(0x130, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c4_sda */ >; }; - mmc2_pins: pinmux_mmc2_pins { + mmc2_pins: mmc2-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x040, PIN_INPUT_PULLUP | MUX_MODE1) /* sdmmc2_dat0 */ OMAP4_IOPAD(0x042, PIN_INPUT_PULLUP | MUX_MODE1) /* sdmmc2_dat1 */
@@ -85,7 +85,7 @@ OMAP4_IOPAD(0x084, PIN_INPUT_PULLUP | MUX_MODE1) /* sdmmc2_cmd */ >; }; - usb_otg_hs_pins: pinmux_usb_otg_hs_pins { + usb_otg_hs_pins: usb-otg-hs-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x194, PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* usba0_otg_ce */ OMAP4_IOPAD(0x196, PIN_INPUT | MUX_MODE0) /* usba0_otg_dp */
arch/arm/boot/dts/omap4-mcpdm.dtsi +1 -1
@@ -7,7 +7,7 @@ */ &omap4_pmx_core { - mcpdm_pins: pinmux_mcpdm_pins { + mcpdm_pins: mcpdm-pins { pinctrl-single,pins = < /* 0x4a100106 abe_pdm_ul_data.abe_pdm_ul_data ag25 */ OMAP4_IOPAD(0x106, PIN_INPUT_PULLDOWN | MUX_MODE0)
arch/arm/boot/dts/omap4-panda-common.dtsi +15 -15
@@ -237,14 +237,14 @@ &tpd12s015_pins &hsusbb1_pins >; - twl6040_pins: pinmux_twl6040_pins { + twl6040_pins: twl6040-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x120, PIN_OUTPUT | MUX_MODE3) /* hdq_sio.gpio_127 */ OMAP4_IOPAD(0x1a0, PIN_INPUT | MUX_MODE0) /* sys_nirq2.sys_nirq2 */ >; }; - mcbsp1_pins: pinmux_mcbsp1_pins { + mcbsp1_pins: mcbsp1-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x0fe, PIN_INPUT | MUX_MODE0) /* abe_mcbsp1_clkx.abe_mcbsp1_clkx */ OMAP4_IOPAD(0x100, PIN_INPUT_PULLDOWN | MUX_MODE0) /* abe_mcbsp1_dr.abe_mcbsp1_dr */
@@ -253,7 +253,7 @@ OMAP4_IOPAD(0x104, PIN_INPUT | MUX_MODE0) /* abe_mcbsp1_fsx.abe_mcbsp1_fsx */ >; }; - dss_dpi_pins: pinmux_dss_dpi_pins { + dss_dpi_pins: dss-dpi-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x162, PIN_OUTPUT | MUX_MODE5) /* dispc2_data23 */ OMAP4_IOPAD(0x164, PIN_OUTPUT | MUX_MODE5) /* dispc2_data22 */
@@ -288,13 +288,13 @@ OMAP4_IOPAD(0x1d4, PIN_OUTPUT | MUX_MODE5) /* dispc2_data0 */ >; }; - tfp410_pins: pinmux_tfp410_pins { + tfp410_pins: tfp410-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x184, PIN_OUTPUT | MUX_MODE3) /* gpio_0 */ >; }; - dss_hdmi_pins: pinmux_dss_hdmi_pins { + dss_hdmi_pins: dss-hdmi-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x09a, PIN_INPUT | MUX_MODE0) /* hdmi_cec.hdmi_cec */ OMAP4_IOPAD(0x09c, PIN_INPUT_PULLUP | MUX_MODE0) /* hdmi_scl.hdmi_scl */
@@ -302,7 +302,7 @@ OMAP4_IOPAD(0x09e, PIN_INPUT_PULLUP | MUX_MODE0) /* hdmi_sda.hdmi_sda */ >; }; - tpd12s015_pins: pinmux_tpd12s015_pins { + tpd12s015_pins: tpd12s015-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x062, PIN_OUTPUT | MUX_MODE3) /* gpmc_a17.gpio_41 */ OMAP4_IOPAD(0x088, PIN_OUTPUT | MUX_MODE3) /* gpmc_nbe1.gpio_60 */
@@ -310,7 +310,7 @@ OMAP4_IOPAD(0x098, PIN_INPUT_PULLDOWN | MUX_MODE3) /* hdmi_hpd.gpio_63 */ >; }; - hsusbb1_pins: pinmux_hsusbb1_pins { + hsusbb1_pins: hsusbb1-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x0c2, PIN_INPUT_PULLDOWN | MUX_MODE4) /* usbb1_ulpitll_clk.usbb1_ulpiphy_clk */ OMAP4_IOPAD(0x0c4, PIN_OUTPUT | MUX_MODE4) /* usbb1_ulpitll_stp.usbb1_ulpiphy_stp */
@@ -327,28 +327,28 @@ OMAP4_IOPAD(0x0d8, PIN_INPUT_PULLDOWN | MUX_MODE4) /* usbb1_ulpitll_dat7.usbb1_u >; }; - i2c1_pins: pinmux_i2c1_pins { + i2c1_pins: i2c1-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x122, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c1_scl */ OMAP4_IOPAD(0x124, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c1_sda */ >; }; - i2c2_pins: pinmux_i2c2_pins { + i2c2_pins: i2c2-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x126, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c2_scl */ OMAP4_IOPAD(0x128, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c2_sda */ >; }; - i2c3_pins: pinmux_i2c3_pins { + i2c3_pins: i2c3-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x12a, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c3_scl */ OMAP4_IOPAD(0x12c, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c3_sda */ >; }; - i2c4_pins: pinmux_i2c4_pins { + i2c4_pins: i2c4-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x12e, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c4_scl */ OMAP4_IOPAD(0x130, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c4_sda */
@@ -359,7 +359,7 @@ OMAP4_IOPAD(0x130, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c4_sda */ * wl12xx GPIO outputs for WLAN_EN, BT_EN, FM_EN, BT_WAKEUP * REVISIT: Are the pull-ups needed for GPIO 48 and 49? */ - wl12xx_gpio: pinmux_wl12xx_gpio { + wl12xx_gpio: wl12xx-gpio-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x066, PIN_OUTPUT | MUX_MODE3) /* gpmc_a19.gpio_43 */ OMAP4_IOPAD(0x06c, PIN_OUTPUT | MUX_MODE3) /* gpmc_a22.gpio_46 */
@@ -369,7 +369,7 @@ OMAP4_IOPAD(0x072, PIN_OUTPUT_PULLUP | MUX_MODE3) /* gpmc_a25.gpio_49 */ }; /* wl12xx GPIO inputs and SDIO pins */ - wl12xx_pins: pinmux_wl12xx_pins { + wl12xx_pins: wl12xx-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x078, PIN_INPUT | MUX_MODE3) /* gpmc_ncs2.gpio_52 */ OMAP4_IOPAD(0x07a, PIN_INPUT | MUX_MODE3) /* gpmc_ncs3.gpio_53 */
@@ -382,7 +382,7 @@ OMAP4_IOPAD(0x152, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc5_dat3.sdmmc5_dat3 */ >; }; - button_pins: pinmux_button_pins { + button_pins: button-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x114, PIN_INPUT_PULLUP | MUX_MODE3) /* gpio_121 */ >;
@@ -390,7 +390,7 @@ OMAP4_IOPAD(0x114, PIN_INPUT_PULLUP | MUX_MODE3) /* gpio_121 */ }; &omap4_pmx_wkup { - led_wkgpio_pins: pinmux_leds_wkpins { + led_wkgpio_pins: leds-wkpins-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x05a, PIN_OUTPUT | MUX_MODE3) /* gpio_wk7 */ OMAP4_IOPAD(0x05c, PIN_OUTPUT | MUX_MODE3) /* gpio_wk8 */
arch/arm/boot/dts/omap4-panda-es.dts +4 -4
@@ -38,26 +38,26 @@ OMAP4_IOPAD(0x09e, PIN_INPUT | MUX_MODE0) /* hdmi_sda.hdmi_sda */ }; &omap4_pmx_core { - led_gpio_pins: gpio_led_pmx { + led_gpio_pins: gpio-led-pmx-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x0f6, PIN_OUTPUT | MUX_MODE3) /* gpio_110 */ >; }; - button_pins: pinmux_button_pins { + button_pins: button-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x0fc, PIN_INPUT_PULLUP | MUX_MODE3) /* gpio_113 */ >; }; - bt_pins: pinmux_bt_pins { + bt_pins: bt-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x06c, PIN_OUTPUT | MUX_MODE3) /* gpmc_a22.gpio_46 - BTEN */ OMAP4_IOPAD(0x072, PIN_OUTPUT_PULLUP | MUX_MODE3) /* gpmc_a25.gpio_49 - BTWAKEUP */ >; }; - uart2_pins: pinmux_uart2_pins { + uart2_pins: uart2-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x118, PIN_INPUT_PULLUP | MUX_MODE0) /* uart2_cts.uart2_cts - HCI */ OMAP4_IOPAD(0x11a, PIN_OUTPUT | MUX_MODE0) /* uart2_rts.uart2_rts */
arch/arm/boot/dts/omap4-sdp.dts +18 -18
@@ -214,7 +214,7 @@ &dss_hdmi_pins &tpd12s015_pins >; - uart2_pins: pinmux_uart2_pins { + uart2_pins: uart2-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x118, PIN_INPUT_PULLUP | MUX_MODE0) /* uart2_cts.uart2_cts */ OMAP4_IOPAD(0x11a, PIN_OUTPUT | MUX_MODE0) /* uart2_rts.uart2_rts */
@@ -223,7 +223,7 @@ OMAP4_IOPAD(0x11e, PIN_OUTPUT | MUX_MODE0) /* uart2_tx.uart2_tx */ >; }; - uart3_pins: pinmux_uart3_pins { + uart3_pins: uart3-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x140, PIN_INPUT_PULLUP | MUX_MODE0) /* uart3_cts_rctx.uart3_cts_rctx */ OMAP4_IOPAD(0x142, PIN_OUTPUT | MUX_MODE0) /* uart3_rts_sd.uart3_rts_sd */
@@ -232,21 +232,21 @@ OMAP4_IOPAD(0x146, PIN_OUTPUT | MUX_MODE0) /* uart3_tx_irtx.uart3_tx_irtx */ >; }; - uart4_pins: pinmux_uart4_pins { + uart4_pins: uart4-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x15c, PIN_INPUT | MUX_MODE0) /* uart4_rx.uart4_rx */ OMAP4_IOPAD(0x15e, PIN_OUTPUT | MUX_MODE0) /* uart4_tx.uart4_tx */ >; }; - twl6040_pins: pinmux_twl6040_pins { + twl6040_pins: twl6040-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x120, PIN_OUTPUT | MUX_MODE3) /* hdq_sio.gpio_127 */ OMAP4_IOPAD(0x1a0, PIN_INPUT | MUX_MODE0) /* sys_nirq2.sys_nirq2 */ >; }; - dmic_pins: pinmux_dmic_pins { + dmic_pins: dmic-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x110, PIN_OUTPUT | MUX_MODE0) /* abe_dmic_clk1.abe_dmic_clk1 */ OMAP4_IOPAD(0x112, PIN_INPUT | MUX_MODE0) /* abe_dmic_din1.abe_dmic_din1 */
@@ -255,7 +255,7 @@ OMAP4_IOPAD(0x116, PIN_INPUT | MUX_MODE0) /* abe_dmic_din3.abe_dmic_din3 */ >; }; - mcbsp1_pins: pinmux_mcbsp1_pins { + mcbsp1_pins: mcbsp1-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x0fe, PIN_INPUT | MUX_MODE0) /* abe_mcbsp1_clkx.abe_mcbsp1_clkx */ OMAP4_IOPAD(0x100, PIN_INPUT_PULLDOWN | MUX_MODE0) /* abe_mcbsp1_dr.abe_mcbsp1_dr */
@@ -264,7 +264,7 @@ OMAP4_IOPAD(0x104, PIN_INPUT | MUX_MODE0) /* abe_mcbsp1_fsx.abe_mcbsp1_fsx */ >; }; - mcbsp2_pins: pinmux_mcbsp2_pins { + mcbsp2_pins: mcbsp2-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x0f6, PIN_INPUT | MUX_MODE0) /* abe_mcbsp2_clkx.abe_mcbsp2_clkx */ OMAP4_IOPAD(0x0f8, PIN_INPUT_PULLDOWN | MUX_MODE0) /* abe_mcbsp2_dr.abe_mcbsp2_dr */
@@ -273,7 +273,7 @@ OMAP4_IOPAD(0x0fc, PIN_INPUT | MUX_MODE0) /* abe_mcbsp2_fsx.abe_mcbsp2_fsx */ >; }; - mcspi1_pins: pinmux_mcspi1_pins { + mcspi1_pins: mcspi1-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x132, PIN_INPUT | MUX_MODE0) /* mcspi1_clk.mcspi1_clk */ OMAP4_IOPAD(0x134, PIN_INPUT | MUX_MODE0) /* mcspi1_somi.mcspi1_somi */
@@ -282,7 +282,7 @@ OMAP4_IOPAD(0x138, PIN_INPUT | MUX_MODE0) /* mcspi1_cs0.mcspi1_cs0 */ >; }; - dss_hdmi_pins: pinmux_dss_hdmi_pins { + dss_hdmi_pins: dss-hdmi-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x09a, PIN_INPUT | MUX_MODE0) /* hdmi_cec.hdmi_cec */ OMAP4_IOPAD(0x09c, PIN_INPUT_PULLUP | MUX_MODE0) /* hdmi_scl.hdmi_scl */
@@ -290,7 +290,7 @@ OMAP4_IOPAD(0x09e, PIN_INPUT_PULLUP | MUX_MODE0) /* hdmi_sda.hdmi_sda */ >; }; - tpd12s015_pins: pinmux_tpd12s015_pins { + tpd12s015_pins: tpd12s015-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x062, PIN_OUTPUT | MUX_MODE3) /* gpmc_a17.gpio_41 */ OMAP4_IOPAD(0x088, PIN_OUTPUT | MUX_MODE3) /* gpmc_nbe1.gpio_60 */
@@ -298,28 +298,28 @@ OMAP4_IOPAD(0x098, PIN_INPUT_PULLDOWN | MUX_MODE3) /* hdmi_hpd.gpio_63 */ >; }; - i2c1_pins: pinmux_i2c1_pins { + i2c1_pins: i2c1-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x122, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c1_scl */ OMAP4_IOPAD(0x124, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c1_sda */ >; }; - i2c2_pins: pinmux_i2c2_pins { + i2c2_pins: i2c2-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x126, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c2_scl */ OMAP4_IOPAD(0x128, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c2_sda */ >; }; - i2c3_pins: pinmux_i2c3_pins { + i2c3_pins: i2c3-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x12a, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c3_scl */ OMAP4_IOPAD(0x12c, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c3_sda */ >; }; - i2c4_pins: pinmux_i2c4_pins { + i2c4_pins: i2c4-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x12e, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c4_scl */ OMAP4_IOPAD(0x130, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c4_sda */
@@ -327,14 +327,14 @@ OMAP4_IOPAD(0x130, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c4_sda */ }; /* wl12xx GPIO output for WLAN_EN */ - wl12xx_gpio: pinmux_wl12xx_gpio { + wl12xx_gpio: wl12xx-gpio-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x07c, PIN_OUTPUT | MUX_MODE3) /* gpmc_nwp.gpio_54 */ >; }; /* wl12xx GPIO inputs and SDIO pins */ - wl12xx_pins: pinmux_wl12xx_pins { + wl12xx_pins: wl12xx-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x07a, PIN_INPUT | MUX_MODE3) /* gpmc_ncs3.gpio_53 */ OMAP4_IOPAD(0x148, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc5_clk.sdmmc5_clk */
@@ -347,13 +347,13 @@ OMAP4_IOPAD(0x152, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc5_dat3.sdmmc5_dat3 */ }; /* gpio_48 for ENET_ENABLE */ - enet_enable_gpio: pinmux_enet_enable_gpio { + enet_enable_gpio: enet-enable-gpio-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x070, PIN_OUTPUT_PULLDOWN | MUX_MODE3) /* gpmc_a24.gpio_48 */ >; }; - ks8851_pins: pinmux_ks8851_pins { + ks8851_pins: ks8851-pins { pinctrl-single,pins = < /* ENET_INT */ OMAP4_IOPAD(0x054, PIN_INPUT_PULLUP | MUX_MODE3) /* gpmc_ad10.gpio_34 */
arch/arm/boot/dts/omap4-var-om44customboard.dtsi +12 -12
@@ -60,7 +60,7 @@ hdmi_connector_in: endpoint { }; &omap4_pmx_core { - uart1_pins: pinmux_uart1_pins { + uart1_pins: uart1-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x13c, PIN_INPUT_PULLUP | MUX_MODE1) /* mcspi1_cs2.uart1_cts */ OMAP4_IOPAD(0x13e, PIN_OUTPUT | MUX_MODE1) /* mcspi1_cs3.uart1_rts */
@@ -69,7 +69,7 @@ OMAP4_IOPAD(0x128, PIN_OUTPUT | MUX_MODE1) /* i2c2_sda.uart1_tx */ >; }; - mcspi1_pins: pinmux_mcspi1_pins { + mcspi1_pins: mcspi1-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x132, PIN_INPUT | MUX_MODE0) /* mcspi1_clk.mcspi1_clk */ OMAP4_IOPAD(0x134, PIN_INPUT | MUX_MODE0) /* mcspi1_somi.mcspi1_somi */
@@ -78,13 +78,13 @@ OMAP4_IOPAD(0x138, PIN_INPUT | MUX_MODE0) /* mcspi1_cs0.mcspi1_cs0 */ >; }; - mcasp_pins: pinmux_mcsasp_pins { + mcasp_pins: mcsasp-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x0f8, PIN_OUTPUT | MUX_MODE2) /* mcbsp2_dr.abe_mcasp_axr */ >; }; - dss_dpi_pins: pinmux_dss_dpi_pins { + dss_dpi_pins: dss-dpi-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x162, PIN_OUTPUT | MUX_MODE5) /* dispc2_data23 */ OMAP4_IOPAD(0x164, PIN_OUTPUT | MUX_MODE5) /* dispc2_data22 */
@@ -117,7 +117,7 @@ OMAP4_IOPAD(0x1d4, PIN_OUTPUT | MUX_MODE5) /* dispc2_data0 */ >; }; - dss_hdmi_pins: pinmux_dss_hdmi_pins { + dss_hdmi_pins: dss-hdmi-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x09a, PIN_INPUT | MUX_MODE0) /* hdmi_cec.hdmi_cec */ OMAP4_IOPAD(0x09c, PIN_INPUT_PULLUP | MUX_MODE0) /* hdmi_scl.hdmi_scl */
@@ -125,14 +125,14 @@ OMAP4_IOPAD(0x09e, PIN_INPUT_PULLUP | MUX_MODE0) /* hdmi_sda.hdmi_sda */ >; }; - i2c4_pins: pinmux_i2c4_pins { + i2c4_pins: i2c4-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x12e, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c4_scl */ OMAP4_IOPAD(0x130, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c4_sda */ >; }; - mmc5_pins: pinmux_mmc5_pins { + mmc5_pins: mmc5-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x0f6, PIN_INPUT | MUX_MODE3) /* abe_mcbsp2_clkx.gpio_110 */ OMAP4_IOPAD(0x148, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc5_clk.sdmmc5_clk */
@@ -144,32 +144,32 @@ OMAP4_IOPAD(0x152, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc5_dat3.sdmmc5_dat3 */ >; }; - gpio_led_pins: pinmux_gpio_led_pins { + gpio_led_pins: gpio-led-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x17e, PIN_OUTPUT | MUX_MODE3) /* kpd_col4.gpio_172 */ OMAP4_IOPAD(0x180, PIN_OUTPUT | MUX_MODE3) /* kpd_col5.gpio_173 */ >; }; - gpio_key_pins: pinmux_gpio_key_pins { + gpio_key_pins: gpio-key-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x1a2, PIN_INPUT | MUX_MODE3) /* sys_boot0.gpio_184 */ >; }; - ks8851_irq_pins: pinmux_ks8851_irq_pins { + ks8851_irq_pins: ks8851-irq-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x17c, PIN_INPUT_PULLUP | MUX_MODE3) /* kpd_col3.gpio_171 */ >; }; - hdmi_hpd_pins: pinmux_hdmi_hpd_pins { + hdmi_hpd_pins: hdmi-hpd-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x098, PIN_INPUT_PULLDOWN | MUX_MODE3) /* hdmi_hpd.gpio_63 */ >; }; - backlight_pins: pinmux_backlight_pins { + backlight_pins: backlight-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x116, PIN_OUTPUT | MUX_MODE3) /* abe_dmic_din3.gpio_122 */ >;
arch/arm/boot/dts/omap4-var-som-om44-wlan.dtsi +3 -3
@@ -19,7 +19,7 @@ wl12xx_vmmc: wl12xx_vmmc { }; &omap4_pmx_core { - uart2_pins: pinmux_uart2_pins { + uart2_pins: uart2-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x118, PIN_INPUT_PULLUP | MUX_MODE0) /* uart2_cts.uart2_cts */ OMAP4_IOPAD(0x11a, PIN_OUTPUT | MUX_MODE0) /* uart2_rts.uart2_rts */
@@ -28,7 +28,7 @@ OMAP4_IOPAD(0x11e, PIN_OUTPUT | MUX_MODE0) /* uart2_tx.uart2_tx */ >; }; - wl12xx_ctrl_pins: pinmux_wl12xx_ctrl_pins { + wl12xx_ctrl_pins: wl12xx-ctrl-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x062, PIN_INPUT_PULLUP | MUX_MODE3) /* gpmc_a17.gpio_41 (WLAN_IRQ) */ OMAP4_IOPAD(0x064, PIN_OUTPUT | MUX_MODE3) /* gpmc_a18.gpio_42 (BT_EN) */
@@ -36,7 +36,7 @@ OMAP4_IOPAD(0x066, PIN_OUTPUT | MUX_MODE3) /* gpmc_a19.gpio_43 (WLAN_EN) */ >; }; - mmc4_pins: pinmux_mmc4_pins { + mmc4_pins: mmc4-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x154, PIN_INPUT_PULLUP | MUX_MODE1) /* mcspi4_clk.sdmmc4_clk */ OMAP4_IOPAD(0x156, PIN_INPUT_PULLUP | MUX_MODE1) /* mcspi4_simo.sdmmc4_cmd */
arch/arm/boot/dts/omap4-var-som-om44.dtsi +11 -11
@@ -65,21 +65,21 @@ &omap4_pmx_core { &hsusbb1_pins >; - twl6040_pins: pinmux_twl6040_pins { + twl6040_pins: twl6040-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x19c, PIN_OUTPUT | MUX_MODE3) /* fref_clk2_out.gpio_182 */ OMAP4_IOPAD(0x1a0, PIN_INPUT | MUX_MODE0) /* sys_nirq2.sys_nirq2 */ >; }; - tsc2004_pins: pinmux_tsc2004_pins { + tsc2004_pins: tsc2004-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x090, PIN_INPUT | MUX_MODE3) /* gpmc_ncs4.gpio_101 (irq) */ OMAP4_IOPAD(0x092, PIN_OUTPUT | MUX_MODE3) /* gpmc_ncs5.gpio_102 (rst) */ >; }; - uart3_pins: pinmux_uart3_pins { + uart3_pins: uart3-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x140, PIN_INPUT_PULLUP | MUX_MODE0) /* uart3_cts_rctx.uart3_cts_rctx */ OMAP4_IOPAD(0x142, PIN_OUTPUT | MUX_MODE0) /* uart3_rts_sd.uart3_rts_sd */
@@ -88,7 +88,7 @@ OMAP4_IOPAD(0x146, PIN_OUTPUT | MUX_MODE0) /* uart3_tx_irtx.uart3_tx_irtx */ >; }; - hsusbb1_pins: pinmux_hsusbb1_pins { + hsusbb1_pins: hsusbb1-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x0c2, PIN_INPUT_PULLDOWN | MUX_MODE4) /* usbb1_ulpitll_clk.usbb1_ulpiphy_clk */ OMAP4_IOPAD(0x0c4, PIN_OUTPUT | MUX_MODE4) /* usbb1_ulpitll_stp.usbb1_ulpiphy_stp */
@@ -105,27 +105,27 @@ OMAP4_IOPAD(0x0d8, PIN_INPUT_PULLDOWN | MUX_MODE4) /* usbb1_ulpitll_dat7.usbb1_u >; }; - hsusbb1_phy_rst_pins: pinmux_hsusbb1_phy_rst_pins { + hsusbb1_phy_rst_pins: hsusbb1-phy-rst-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x18c, PIN_OUTPUT | MUX_MODE3) /* kpd_row2.gpio_177 */ >; }; - i2c1_pins: pinmux_i2c1_pins { + i2c1_pins: i2c1-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x122, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c1_scl */ OMAP4_IOPAD(0x124, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c1_sda */ >; }; - i2c3_pins: pinmux_i2c3_pins { + i2c3_pins: i2c3-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x12a, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c3_scl */ OMAP4_IOPAD(0x12c, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c3_sda */ >; }; - mmc1_pins: pinmux_mmc1_pins { + mmc1_pins: mmc1-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x0e2, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc1_clk.sdmmc1_clk */ OMAP4_IOPAD(0x0e4, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc1_cmd.sdmmc1_cmd */
@@ -144,19 +144,19 @@ &hsusbb1_hub_rst_pins &lan7500_rst_pins >; - hsusbb1_phy_clk_pins: pinmux_hsusbb1_phy_clk_pins { + hsusbb1_phy_clk_pins: hsusbb1-phy-clk-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x058, PIN_OUTPUT | MUX_MODE0) /* fref_clk3_out */ >; }; - hsusbb1_hub_rst_pins: pinmux_hsusbb1_hub_rst_pins { + hsusbb1_hub_rst_pins: hsusbb1-hub-rst-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x042, PIN_OUTPUT | MUX_MODE3) /* gpio_wk1 */ >; }; - lan7500_rst_pins: pinmux_lan7500_rst_pins { + lan7500_rst_pins: lan7500-rst-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x040, PIN_OUTPUT | MUX_MODE3) /* gpio_wk0 */ >;
arch/arm/boot/dts/omap443x.dtsi +1 -0
@@ -69,6 +69,7 @@ abb_iva: regulator-abb-iva { }; &cpu_thermal { + thermal-sensors = <&bandgap>; coefficients = <0 20000>; };
arch/arm/boot/dts/omap4460.dtsi +1 -0
@@ -79,6 +79,7 @@ abb_iva: regulator-abb-iva { }; &cpu_thermal { + thermal-sensors = <&bandgap>; coefficients = <348 (-9301)>; };
arch/arm/boot/dts/omap5-cm-t54.dts +32 -32
76 lines not on this page · raw message
arch/arm/boot/dts/qcom-msm8974pro-sony-xperia-shinano-castor.dts +4 -4
@@ -124,15 +124,15 @@ synaptics@2c { syna,startup-delay-ms = <10>; - rmi-f01@1 { + rmi4-f01@1 { reg = <0x1>; - syna,nosleep = <1>; + syna,nosleep-mode = <1>; }; - rmi-f11@11 { + rmi4-f11@11 { reg = <0x11>; - syna,f11-flip-x = <1>; syna,sensor-type = <1>; + touchscreen-inverted-x; }; }; };
arch/arm/boot/dts/twl6030_omap4.dtsi +2 -2
@@ -19,7 +19,7 @@ &twl6030_wkup_pins }; &omap4_pmx_wkup { - twl6030_wkup_pins: pinmux_twl6030_wkup_pins { + twl6030_wkup_pins: twl6030-wkup-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x054, PIN_OUTPUT | MUX_MODE2) /* fref_clk0_out.sys_drm_msecure */ >;
@@ -27,7 +27,7 @@ OMAP4_IOPAD(0x054, PIN_OUTPUT | MUX_MODE2) /* fref_clk0_out.sys_drm_msecure */ }; &omap4_pmx_core { - twl6030_pins: pinmux_twl6030_pins { + twl6030_pins: twl6030-pins { pinctrl-single,pins = < OMAP4_IOPAD(0x19e, WAKEUP_EN | PIN_INPUT_PULLUP | MUX_MODE0) /* sys_nirq1.sys_nirq1 */ >;
arch/arm64/boot/dts/freescale/Makefile +1 -0
@@ -62,6 +62,7 @@ dtb-$(CONFIG_ARCH_MXC) += imx8mm-kontron-bl-osm-s.dtb dtb-$(CONFIG_ARCH_MXC) += imx8mm-mx8menlo.dtb dtb-$(CONFIG_ARCH_MXC) += imx8mm-nitrogen-r2.dtb dtb-$(CONFIG_ARCH_MXC) += imx8mm-phyboard-polis-rdk.dtb +dtb-$(CONFIG_ARCH_MXC) += imx8mm-prt8mm.dtb dtb-$(CONFIG_ARCH_MXC) += imx8mm-tqma8mqml-mba8mx.dtb dtb-$(CONFIG_ARCH_MXC) += imx8mm-var-som-symphony.dtb dtb-$(CONFIG_ARCH_MXC) += imx8mm-venice-gw71xx-0x.dtb
arch/arm64/boot/dts/qcom/sdm845-db845c.dts +9 -0
@@ -100,6 +100,14 @@ hdmi_con: endpoint { }; }; + reserved-memory { + /* Cont splash region set up by the bootloader */ + cont_splash_mem: framebuffer@9d400000 { + reg = <0x0 0x9d400000 0x0 0x2400000>; + no-map; + }; + }; + lt9611_1v8: lt9611-vdd18-regulator { compatible = "regulator-fixed"; regulator-name = "LT9611_1V8";
@@ -512,6 +520,7 @@ &i2c14 { }; &mdss { + memory-region = <&cont_splash_mem>; status = "okay"; };
arch/arm64/configs/defconfig +0 -1
@@ -1050,7 +1050,6 @@ CONFIG_COMMON_CLK_FSL_SAI=y CONFIG_COMMON_CLK_S2MPS11=y CONFIG_COMMON_CLK_PWM=y CONFIG_COMMON_CLK_VC5=y -CONFIG_COMMON_CLK_NPCM8XX=y CONFIG_COMMON_CLK_BD718XX=m CONFIG_CLK_RASPBERRYPI=m CONFIG_CLK_IMX8MM=y
arch/loongarch/include/asm/elf.h +9 -0
@@ -111,6 +111,15 @@#define R_LARCH_TLS_GD_HI20 98#define R_LARCH_32_PCREL 99#define R_LARCH_RELAX 100 +#define R_LARCH_DELETE 101 +#define R_LARCH_ALIGN 102 +#define R_LARCH_PCREL20_S2 103 +#define R_LARCH_CFA 104 +#define R_LARCH_ADD6 105 +#define R_LARCH_SUB6 106 +#define R_LARCH_ADD_ULEB128 107 +#define R_LARCH_SUB_ULEB128 108 +#define R_LARCH_64_PCREL 109#ifndef ELF_ARCH
arch/loongarch/kernel/mem.c +3 -1
@@ -50,7 +50,6 @@ void __init memblock_init(void) }memblock_set_current_limit (PFN_PHYS (max_low_pfn)); -memblock_set_node (0 ,PHYS_ADDR_MAX , &memblock.memory,0 );/* Reserve the first 2MB */ memblock_reserve (PHYS_OFFSET ,0x200000 );
@@ -58,4 +57,7 @@ void __init memblock_init(void)/* Reserve the kernel text/data/bss */ memblock_reserve (__pa_symbol (&_text),__pa_symbol (&_end) -__pa_symbol (&_text)); + +memblock_set_node (0 ,PHYS_ADDR_MAX , &memblock.memory,0 ); +memblock_set_node (0 ,PHYS_ADDR_MAX , &memblock.reserved,0 ); }
arch/loongarch/kernel/module.c +1 -1
@@ -376,7 +376,7 @@ typedef int (*reloc_rela_handler)(struct module *mod, u32 *location, Elf_Addr v,/* The handlers for known reloc types */ static reloc_rela_handler reloc_rela_handlers[] = { - [R_LARCH_NONE ...R_LARCH_RELAX ] = apply_r_larch_error, + [R_LARCH_NONE ...R_LARCH_64_PCREL ] = apply_r_larch_error, [R_LARCH_NONE ] = apply_r_larch_none, [R_LARCH_32 ] = apply_r_larch_32,
arch/loongarch/kernel/numa.c +1 -1
@@ -453,7 +453,7 @@ void __init paging_init(void)void __init mem_init (void ) { - high_memory = (void *)__va (get_num_physpages () <<PAGE_SHIFT ); + high_memory = (void *)__va (max_low_pfn <<PAGE_SHIFT );memblock_free_all ();setup_zero_pages ();/* This comes from node 0 */ }
arch/mips/alchemy/devboards/db1000.c +4 -0
@@ -164,6 +164,7 @@ static struct platform_device db1x00_audio_dev = {/******************************************************************************/ +#ifdef CONFIG_MMC_AU1X static irqreturn_t db1100_mmc_cd (int irq,void *ptr) {mmc_detect_change (ptr,msecs_to_jiffies (500 ));
@@ -369,6 +370,7 @@ static struct platform_device db1100_mmc1_dev = { .num_resources = ARRAY_SIZE(au1100_mmc1_res), .resource = au1100_mmc1_res, }; +#endif /* CONFIG_MMC_AU1X */ /******************************************************************************/
@@ -432,8 +434,10 @@ static struct platform_device *db1x00_devs[] = {static struct platform_device *db1100_devs[] = { &au1100_lcd_device, +#ifdef CONFIG_MMC_AU1X &db1100_mmc0_dev, &db1100_mmc1_dev, +#endif };int __init db1000_dev_setup (void )
arch/mips/alchemy/devboards/db1200.c +6 -0
@@ -326,6 +326,7 @@ static struct platform_device db1200_ide_dev = {/**********************************************************************/ +#ifdef CONFIG_MMC_AU1X /* SD carddetects: they're supposed to be edge-triggered, but ack * doesn't seem to work (CPLD Rev 2). Instead, the screaming one * is disabled and its counterpart enabled. The 200ms timeout is
@@ -584,6 +585,7 @@ static struct platform_device pb1200_mmc1_dev = { .num_resources = ARRAY_SIZE(au1200_mmc1_res), .resource = au1200_mmc1_res, }; +#endif /* CONFIG_MMC_AU1X */ /**********************************************************************/
@@ -751,7 +753,9 @@ static struct platform_device db1200_audiodma_dev = {static struct platform_device *db1200_devs[]__initdata = {NULL ,/* PSC0, selected by S6.8 */ &db1200_ide_dev, +#ifdef CONFIG_MMC_AU1X &db1200_mmc0_dev, +#endif &au1200_lcd_dev, &db1200_eth_dev, &db1200_nand_dev,
@@ -762,7 +766,9 @@ static struct platform_device *db1200_devs[] __initdata = { };static struct platform_device *pb1200_devs[]__initdata = { +#ifdef CONFIG_MMC_AU1X &pb1200_mmc1_dev, +#endif };/* Some peripheral base addresses differ on the PB1200 */
arch/mips/alchemy/devboards/db1300.c +4 -0
@@ -450,6 +450,7 @@ static struct platform_device db1300_ide_dev = {/**********************************************************************/ +#ifdef CONFIG_MMC_AU1X static irqreturn_t db1300_mmc_cd (int irq,void *ptr) {disable_irq_nosync (irq);
@@ -632,6 +633,7 @@ static struct platform_device db1300_sd0_dev = { .resource = au1300_sd0_res, .num_resources = ARRAY_SIZE(au1300_sd0_res), }; +#endif /* CONFIG_MMC_AU1X */ /**********************************************************************/
@@ -767,8 +769,10 @@ static struct platform_device *db1300_dev[] __initdata = { &db1300_5waysw_dev, &db1300_nand_dev, &db1300_ide_dev, +#ifdef CONFIG_MMC_AU1X &db1300_sd0_dev, &db1300_sd1_dev, +#endif &db1300_lcd_dev, &db1300_ac97_dev, &db1300_i2s_dev,
arch/parisc/include/asm/ropes.h +3 -0
@@ -86,6 +86,9 @@ struct sba_device {struct ioc ioc[MAX_IOC ]; }; +/* list of SBA's in system, see drivers/parisc/sba_iommu.c */ +extern struct sba_device *sba_list; +#define ASTRO_RUNWAY_PORT 0x582#define IKE_MERCED_PORT 0x803#define REO_MERCED_PORT 0x804
arch/parisc/kernel/drivers.c +1 -1
@@ -924,9 +924,9 @@ static __init void qemu_header(void)pr_info ("#define PARISC_MODEL \"%s\"\n\n" , boot_cpu_data.pdc.sys_model_name); +#define p ((unsigned long *)&boot_cpu_data.pdc.model)pr_info ("#define PARISC_PDC_MODEL 0x%lx, 0x%lx, 0x%lx, " "0x%lx, 0x%lx, 0x%lx, 0x%lx, 0x%lx, 0x%lx\n\n" , - #define p ((unsigned long *)&boot_cpu_data.pdc.model) p[0 ], p[1 ], p[2 ], p[3 ], p[4 ], p[5 ], p[6 ], p[7 ], p[8 ]);#undef p
arch/parisc/kernel/irq.c +1 -1
@@ -368,7 +368,7 @@ union irq_stack_union {volatile unsigned int lock[1 ]; }; -DEFINE_PER_CPU(union irq_stack_union, irq_stack_union) = { +static DEFINE_PER_CPU(union irq_stack_union, irq_stack_union) = { .slock = {1 ,1 ,1 ,1 }, };#endif
arch/powerpc/kernel/hw_breakpoint.c +15 -1
@@ -505,11 +505,13 @@ void thread_change_pc(struct task_struct *tsk, struct pt_regs *regs)struct arch_hw_breakpoint *info;int i; +preempt_disable (); +for (i =0 ; i <nr_wp_slots (); i++) {if (unlikely (tsk->thread.last_hit_ubp[i])) goto reset; } -return ; + goto out; reset:regs_set_return_msr (regs, regs->msr & ~MSR_SE );
@@ -518,6 +520,9 @@ void thread_change_pc(struct task_struct *tsk, struct pt_regs *regs)__set_breakpoint (i, info); tsk->thread.last_hit_ubp[i] =NULL ; } + +out: +preempt_enable (); }static bool is_larx_stcx_instr (int type)
@@ -632,6 +637,11 @@ static void handle_p10dd1_spurious_exception(struct arch_hw_breakpoint **info, } } +/* +* Handle a DABR or DAWR exception. +* +* Called in atomic context. +*/ int hw_breakpoint_handler (struct die_args *args) {bool err = false;
@@ -758,6 +768,8 @@ NOKPROBE_SYMBOL(hw_breakpoint_handler);/* * Handle single-step exceptions following a DABR hit. +* +* Called in atomic context. */ static int single_step_dabr_instruction (struct die_args *args) {
@@ -815,6 +827,8 @@ NOKPROBE_SYMBOL(single_step_dabr_instruction);/* * Handle debug exception notifications. +* +* Called in atomic context. */ int hw_breakpoint_exceptions_notify (struct notifier_block *unused,unsigned long val,void *data)
arch/powerpc/kernel/hw_breakpoint_constraints.c +6 -1
@@ -131,8 +131,13 @@ void wp_get_instr_detail(struct pt_regs *regs, ppc_inst_t *instr, int *type, int *size, unsigned long *ea) { struct instruction_op op; +int err; -if (__get_user_instr (*instr, (void __user *)regs->nip)) +pagefault_disable (); + err =__get_user_instr (*instr, (void __user *)regs->nip); +pagefault_enable (); + +if (err)return ;analyse_instr (&op, regs, *instr);
arch/powerpc/perf/hv-24x7.c +1 -1
@@ -1431,7 +1431,7 @@ static int h_24x7_event_init(struct perf_event *event) } domain =event_get_domain (event); -if (domain >=HV_PERF_DOMAIN_MAX ) { +if (domain ==0 || domain >=HV_PERF_DOMAIN_MAX ) {pr_devel ("invalid domain %d\n" , domain);return -EINVAL ; }
arch/riscv/include/asm/errata_list.h +2 -2
@@ -100,7 +100,7 @@ asm volatile(ALTERNATIVE( \* | 31 - 25 | 24 - 20 | 19 - 15 | 14 - 12 | 11 - 7 | 6 - 0 | * 0000001 01001 rs1 000 00000 0001011 * dcache.cva rs1 (clean, virtual address) -* 0000001 00100 rs1 000 00000 0001011 +* 0000001 00101 rs1 000 00000 0001011 * * dcache.cipa rs1 (clean then invalidate, physical address) * | 31 - 25 | 24 - 20 | 19 - 15 | 14 - 12 | 11 - 7 | 6 - 0 |
@@ -113,7 +113,7 @@ asm volatile(ALTERNATIVE( \* 0000000 11001 00000 000 00000 0001011 */ #define THEAD_inval_A0 ".long 0x0265000b" -#define THEAD_clean_A0 ".long 0x0245000b" +#define THEAD_clean_A0 ".long 0x0255000b"#define THEAD_flush_A0 ".long 0x0275000b"#define THEAD_SYNC_S ".long 0x0190000b"
arch/x86/include/asm/kexec.h +0 -2
@@ -208,8 +208,6 @@ int arch_kimage_file_post_load_cleanup(struct kimage *image);#endif #endif -typedef void crash_vmclear_fn (void ); -extern crash_vmclear_fn __rcu *crash_vmclear_loaded_vmcss;extern void kdump_nmi_shootdown_cpus (void );#endif /* __ASSEMBLY__ */
arch/x86/include/asm/reboot.h +2 -0
@@ -25,6 +25,8 @@ void __noreturn machine_real_restart(unsigned int type);#define MRR_BIOS 0#define MRR_APM 1 +typedef void crash_vmclear_fn (void ); +extern crash_vmclear_fn __rcu *crash_vmclear_loaded_vmcss;void cpu_emergency_disable_virtualization (void );typedef void (*nmi_shootdown_cb )(int ,struct pt_regs *);
arch/x86/kernel/cpu/bugs.c +2 -2
@@ -2414,7 +2414,7 @@ static void __init srso_select_mitigation(void)switch (srso_cmd) {case SRSO_CMD_OFF : -return ; + goto pred_cmd;case SRSO_CMD_MICROCODE :if (has_microcode) {
@@ -2692,7 +2692,7 @@ static ssize_t srso_show_state(char *buf)return sysfs_emit (buf,"%s%s\n" , srso_strings[srso_mitigation], - (cpu_has_ibpb_brtype_microcode () ?"" :", no microcode" )); +boot_cpu_has (X86_FEATURE_IBPB_BRTYPE ) ?"" :", no microcode" ); } static ssize_t cpu_show_common(struct device *dev, struct device_attribute *attr,
arch/x86/kernel/cpu/common.c +1 -1
@@ -1282,7 +1282,7 @@ static const struct x86_cpu_id cpu_vuln_blacklist[] __initconst = {VULNBL_AMD (0x15 ,RETBLEED ),VULNBL_AMD (0x16 ,RETBLEED ),VULNBL_AMD (0x17 ,RETBLEED |SMT_RSB |SRSO ), -VULNBL_HYGON (0x18 ,RETBLEED |SMT_RSB ), +VULNBL_HYGON (0x18 ,RETBLEED |SMT_RSB |SRSO ), VULNBL_AMD(0x19, SRSO), {} };
arch/x86/kernel/cpu/sgx/encl.c +25 -5
@@ -235,6 +235,21 @@ static struct sgx_epc_page *sgx_encl_eldu(struct sgx_encl_page *encl_page,return epc_page; } +/* +* Ensure the SECS page is not swapped out. Must be called with encl->lock +* to protect the enclave states including SECS and ensure the SECS page is +* not swapped out again while being used. +*/ +static struct sgx_epc_page *sgx_encl_load_secs (struct sgx_encl *encl) +{ +struct sgx_epc_page *epc_page = encl->secs.epc_page; + +if (!epc_page) + epc_page =sgx_encl_eldu (&encl->secs,NULL ); + +return epc_page; +} +static struct sgx_encl_page *__sgx_encl_load_page (struct sgx_encl *encl,struct sgx_encl_page *entry) {
@@ -248,11 +263,9 @@ static struct sgx_encl_page *__sgx_encl_load_page(struct sgx_encl *encl,return entry; } -if (!(encl->secs.epc_page)) { - epc_page =sgx_encl_eldu (&encl->secs,NULL ); -if (IS_ERR (epc_page)) -return ERR_CAST (epc_page); - } + epc_page =sgx_encl_load_secs (encl); +if (IS_ERR (epc_page)) +return ERR_CAST (epc_page); epc_page =sgx_encl_eldu (entry, encl->secs.epc_page);if (IS_ERR (epc_page))
@@ -339,6 +352,13 @@ static vm_fault_t sgx_encl_eaug_page(struct vm_area_struct *vma,mutex_lock (&encl->lock); + epc_page =sgx_encl_load_secs (encl); +if (IS_ERR (epc_page)) { +if (PTR_ERR (epc_page) == -EBUSY ) + vmret =VM_FAULT_NOPAGE ; + goto err_out_unlock; + } + epc_page =sgx_alloc_epc_page (encl_page, false);if (IS_ERR (epc_page)) {if (PTR_ERR (epc_page) == -EBUSY )
arch/x86/kernel/crash.c +0 -31
@@ -48,38 +48,12 @@ struct crash_memmap_data {unsigned int type; }; -/* -* This is used to VMCLEAR all VMCSs loaded on the -* processor. And when loading kvm_intel module, the -* callback function pointer will be assigned. -* -* protected by rcu. -*/ -crash_vmclear_fn __rcu *crash_vmclear_loaded_vmcss =NULL ; -EXPORT_SYMBOL_GPL (crash_vmclear_loaded_vmcss); - -static inline void cpu_crash_vmclear_loaded_vmcss (void ) -{ -crash_vmclear_fn *do_vmclear_operation =NULL ; - -rcu_read_lock (); - do_vmclear_operation =rcu_dereference (crash_vmclear_loaded_vmcss); -if (do_vmclear_operation) -do_vmclear_operation (); -rcu_read_unlock (); -} -#if defined(CONFIG_SMP ) && defined(CONFIG_X86_LOCAL_APIC )static void kdump_nmi_callback (int cpu,struct pt_regs *regs) {crash_save_cpu (regs, cpu); -/* -* VMCLEAR VMCSs loaded on all cpus if needed. -*/ -cpu_crash_vmclear_loaded_vmcss (); -/* * Disable Intel PT to stop its logging */
@@ -133,11 +107,6 @@ void native_machine_crash_shutdown(struct pt_regs *regs)crash_smp_send_stop (); -/* -* VMCLEAR VMCSs loaded on this cpu if needed. -*/ -cpu_crash_vmclear_loaded_vmcss (); -cpu_emergency_disable_virtualization ();/*
arch/x86/kernel/reboot.c +22 -0
@@ -787,6 +787,26 @@ void machine_crash_shutdown(struct pt_regs *regs) }#endif +/* +* This is used to VMCLEAR all VMCSs loaded on the +* processor. And when loading kvm_intel module, the +* callback function pointer will be assigned. +* +* protected by rcu. +*/ +crash_vmclear_fn __rcu *crash_vmclear_loaded_vmcss; +EXPORT_SYMBOL_GPL (crash_vmclear_loaded_vmcss); + +static inline void cpu_crash_vmclear_loaded_vmcss (void ) +{ +crash_vmclear_fn *do_vmclear_operation =NULL ; + +rcu_read_lock (); + do_vmclear_operation =rcu_dereference (crash_vmclear_loaded_vmcss); +if (do_vmclear_operation) +do_vmclear_operation (); +rcu_read_unlock (); +}/* This is the CPU performing the emergency shutdown work. */ int crashing_cpu =-1 ;
@@ -798,6 +818,8 @@ int crashing_cpu = -1;*/ void cpu_emergency_disable_virtualization (void ) { +cpu_crash_vmclear_loaded_vmcss (); +cpu_emergency_vmxoff ();cpu_emergency_svm_disable (); }
arch/x86/kernel/setup.c +2 -6
@@ -363,15 +363,11 @@ static void __init add_early_ima_buffer(u64 phys_addr)#if defined(CONFIG_HAVE_IMA_KEXEC ) && !defined(CONFIG_OF_FLATTREE )int __init ima_free_kexec_buffer (void ) { -int rc; -if (!ima_kexec_buffer_size)return -ENOENT ; - rc =memblock_phys_free (ima_kexec_buffer_phys, - ima_kexec_buffer_size); -if (rc) -return rc; +memblock_free_late (ima_kexec_buffer_phys, + ima_kexec_buffer_size); ima_kexec_buffer_phys =0 ; ima_kexec_buffer_size =0 ;
arch/x86/kvm/mmu/mmu.c +2 -6
@@ -6079,7 +6079,6 @@ static bool kvm_rmap_zap_gfn_range(struct kvm *kvm, gfn_t gfn_start, gfn_t gfn_evoid kvm_zap_gfn_range (struct kvm *kvm,gfn_t gfn_start,gfn_t gfn_end) {bool flush; -int i;if (WARN_ON_ONCE (gfn_end <= gfn_start))return ;
@@ -6090,11 +6089,8 @@ void kvm_zap_gfn_range(struct kvm *kvm, gfn_t gfn_start, gfn_t gfn_end) flush =kvm_rmap_zap_gfn_range (kvm, gfn_start, gfn_end); -if (is_tdp_mmu_enabled (kvm)) { -for (i =0 ; i <KVM_ADDRESS_SPACE_NUM ; i++) - flush =kvm_tdp_mmu_zap_leafs (kvm, i, gfn_start, - gfn_end, true, flush); - } +if (is_tdp_mmu_enabled (kvm)) + flush =kvm_tdp_mmu_zap_leafs (kvm, gfn_start, gfn_end, flush);if (flush) kvm_flush_remote_tlbs_with_address(kvm, gfn_start,
arch/x86/kvm/mmu/tdp_mmu.c +18 -13
@@ -222,8 +222,12 @@ static struct kvm_mmu_page *tdp_mmu_next_root(struct kvm *kvm,#define for_each_valid_tdp_mmu_root_yield_safe (_kvm, _root, _as_id, _shared) \ __for_each_tdp_mmu_root_yield_safe(_kvm, _root, _as_id, _shared, true) -#define for_each_tdp_mmu_root_yield_safe (_kvm, _root, _as_id) \ - __for_each_tdp_mmu_root_yield_safe(_kvm, _root, _as_id, false, false) +#define for_each_tdp_mmu_root_yield_safe (_kvm, _root) \ + for (_root = tdp_mmu_next_root(_kvm, NULL, false, false); \ + _root; \ + _root = tdp_mmu_next_root(_kvm, _root, false, false)) \ + if (!kvm_lockdep_assert_mmu_lock_held(_kvm, false)) { \ + } else/* * Iterate over all TDP MMU roots. Requires that mmu_lock be held for write,
@@ -955,13 +959,12 @@ static bool tdp_mmu_zap_leafs(struct kvm *kvm, struct kvm_mmu_page *root,* true if a TLB flush is needed before releasing the MMU lock, i.e. if one or * more SPTEs were zapped since the MMU lock was last acquired. */ -bool kvm_tdp_mmu_zap_leafs (struct kvm *kvm,int as_id,gfn_t start,gfn_t end, -bool can_yield,bool flush) +bool kvm_tdp_mmu_zap_leafs (struct kvm *kvm,gfn_t start,gfn_t end,bool flush) {struct kvm_mmu_page *root; -for_each_tdp_mmu_root_yield_safe (kvm, root, as_id) - flush =tdp_mmu_zap_leafs (kvm, root, start, end, can_yield, flush); +for_each_tdp_mmu_root_yield_safe (kvm, root) + flush =tdp_mmu_zap_leafs (kvm, root, start, end, true, flush);return flush; }
@@ -969,7 +972,6 @@ bool kvm_tdp_mmu_zap_leafs(struct kvm *kvm, int as_id, gfn_t start, gfn_t end,void kvm_tdp_mmu_zap_all (struct kvm *kvm) {struct kvm_mmu_page *root; -int i;/* * Zap all roots, including invalid roots, as all SPTEs must be dropped
@@ -983,10 +985,8 @@ void kvm_tdp_mmu_zap_all(struct kvm *kvm)* is being destroyed or the userspace VMM has exited. In both cases, * KVM_RUN is unreachable, i.e. no vCPUs will ever service the request. */ -for (i =0 ; i <KVM_ADDRESS_SPACE_NUM ; i++) { -for_each_tdp_mmu_root_yield_safe (kvm, root, i) -tdp_mmu_zap_root (kvm, root, false); - } +for_each_tdp_mmu_root_yield_safe (kvm, root) +tdp_mmu_zap_root (kvm, root, false); }/*
@@ -1221,8 +1221,13 @@ int kvm_tdp_mmu_map(struct kvm_vcpu *vcpu, struct kvm_page_fault *fault)bool kvm_tdp_mmu_unmap_gfn_range (struct kvm *kvm,struct kvm_gfn_range *range,bool flush) { -return kvm_tdp_mmu_zap_leafs (kvm, range->slot->as_id, range->start, - range->end, range->may_block, flush); +struct kvm_mmu_page *root; + +__for_each_tdp_mmu_root_yield_safe (kvm, root, range->slot->as_id, false, false) + flush =tdp_mmu_zap_leafs (kvm, root, range->start, range->end, + range->may_block, flush); + +return flush; } typedef bool (*tdp_handler_t)(struct kvm *kvm, struct tdp_iter *iter,
arch/x86/kvm/mmu/tdp_mmu.h +1 -2
@@ -15,8 +15,7 @@ __must_check static inline bool kvm_tdp_mmu_get_root(struct kvm_mmu_page *root)void kvm_tdp_mmu_put_root (struct kvm *kvm,struct kvm_mmu_page *root,bool shared); -bool kvm_tdp_mmu_zap_leafs (struct kvm *kvm,int as_id,gfn_t start, -gfn_t end,bool can_yield,bool flush); +bool kvm_tdp_mmu_zap_leafs (struct kvm *kvm,gfn_t start,gfn_t end,bool flush);bool kvm_tdp_mmu_zap_sp (struct kvm *kvm,struct kvm_mmu_page *sp);void kvm_tdp_mmu_zap_all (struct kvm *kvm);void kvm_tdp_mmu_invalidate_all_roots (struct kvm *kvm);
arch/x86/kvm/svm/sev.c +26 -8
@@ -2941,6 +2941,32 @@ int sev_es_string_io(struct vcpu_svm *svm, int size, unsigned int port, int in) count, in); } +static void sev_es_vcpu_after_set_cpuid (struct vcpu_svm *svm) +{ +struct kvm_vcpu *vcpu = &svm->vcpu; + +if (boot_cpu_has (X86_FEATURE_V_TSC_AUX )) { +bool v_tsc_aux =guest_cpuid_has (vcpu,X86_FEATURE_RDTSCP ) || +guest_cpuid_has (vcpu,X86_FEATURE_RDPID ); + +set_msr_interception (vcpu, svm->msrpm,MSR_TSC_AUX , v_tsc_aux, v_tsc_aux); + } +} + +void sev_vcpu_after_set_cpuid (struct vcpu_svm *svm) +{ +struct kvm_vcpu *vcpu = &svm->vcpu; +struct kvm_cpuid_entry2 *best; + +/* For sev guests, the memory encryption bit is not reserved in CR3. */ + best =kvm_find_cpuid_entry (vcpu,0x8000001F ); +if (best) + vcpu->arch.reserved_gpa_bits &= ~(1UL << (best->ebx &0x3f )); + +if (sev_es_guest (svm->vcpu.kvm)) +sev_es_vcpu_after_set_cpuid (svm); +} +static void sev_es_init_vmcb (struct vcpu_svm *svm) {struct kvm_vcpu *vcpu = &svm->vcpu;
@@ -2987,14 +3013,6 @@ static void sev_es_init_vmcb(struct vcpu_svm *svm)set_msr_interception (vcpu, svm->msrpm,MSR_IA32_LASTBRANCHTOIP ,1 ,1 );set_msr_interception (vcpu, svm->msrpm,MSR_IA32_LASTINTFROMIP ,1 ,1 );set_msr_interception (vcpu, svm->msrpm,MSR_IA32_LASTINTTOIP ,1 ,1 ); - -if (boot_cpu_has (X86_FEATURE_V_TSC_AUX ) && - (guest_cpuid_has (&svm->vcpu,X86_FEATURE_RDTSCP ) || -guest_cpuid_has (&svm->vcpu,X86_FEATURE_RDPID ))) { -set_msr_interception (vcpu, svm->msrpm,MSR_TSC_AUX ,1 ,1 ); -if (guest_cpuid_has (&svm->vcpu,X86_FEATURE_RDTSCP )) -svm_clr_intercept (svm,INTERCEPT_RDTSCP ); - } }void sev_init_vmcb (struct vcpu_svm *svm)
arch/x86/kvm/svm/svm.c +2 -7
@@ -4173,7 +4173,6 @@ static bool svm_has_emulated_msr(struct kvm *kvm, u32 index)static void svm_vcpu_after_set_cpuid (struct kvm_vcpu *vcpu) {struct vcpu_svm *svm =to_svm (vcpu); -struct kvm_cpuid_entry2 *best; vcpu->arch.xsaves_enabled =guest_cpuid_has (vcpu,X86_FEATURE_XSAVE ) && boot_cpu_has(X86_FEATURE_XSAVE) &&
@@ -4198,12 +4197,8 @@ static void svm_vcpu_after_set_cpuid(struct kvm_vcpu *vcpu)svm_recalc_instruction_intercepts (vcpu, svm); -/* For sev guests, the memory encryption bit is not reserved in CR3. */ -if (sev_guest (vcpu->kvm)) { - best =kvm_find_cpuid_entry (vcpu,0x8000001F ); -if (best) - vcpu->arch.reserved_gpa_bits &= ~(1UL << (best->ebx &0x3f )); - } +if (sev_guest (vcpu->kvm)) +sev_vcpu_after_set_cpuid (svm);init_vmcb_after_set_cpuid (vcpu); }
arch/x86/kvm/svm/svm.h +1 -0
@@ -677,6 +677,7 @@ void __init sev_hardware_setup(void);void sev_hardware_unsetup (void );int sev_cpu_init (struct svm_cpu_data *sd);void sev_init_vmcb (struct vcpu_svm *svm); +void sev_vcpu_after_set_cpuid (struct vcpu_svm *svm);void sev_free_vcpu (struct kvm_vcpu *vcpu);int sev_handle_vmgexit (struct kvm_vcpu *vcpu);int sev_es_string_io (struct vcpu_svm *svm,int size,unsigned int port,int in);
arch/x86/kvm/vmx/vmx.c +3 -7
@@ -40,7 +40,7 @@#include <asm/idtentry.h> #include <asm/io.h> #include <asm/irq_remapping.h> -#include <asm/kexec.h> +#include <asm/reboot.h> #include <asm/perf_event.h> #include <asm/mmu_context.h> #include <asm/mshyperv.h>
@@ -702,7 +702,6 @@ static int vmx_set_guest_uret_msr(struct vcpu_vmx *vmx,return ret; } -#ifdef CONFIG_KEXEC_CORE static void crash_vmclear_local_loaded_vmcss (void ) {int cpu =raw_smp_processor_id ();
@@ -712,7 +711,6 @@ static void crash_vmclear_local_loaded_vmcss(void) loaded_vmcss_on_cpu_link) vmcs_clear(v->vmcs); } -#endif /* CONFIG_KEXEC_CORE */ static void __loaded_vmcs_clear (void *arg) {
@@ -8522,10 +8520,9 @@ static void __vmx_exit(void) { allow_smaller_maxphyaddr = false; -#ifdef CONFIG_KEXEC_CORE RCU_INIT_POINTER (crash_vmclear_loaded_vmcss,NULL );synchronize_rcu (); -#endif +vmx_cleanup_l1d_flush (); }
@@ -8598,10 +8595,9 @@ static int __init vmx_init(void)pi_init_cpu (cpu); } -#ifdef CONFIG_KEXEC_CORE rcu_assign_pointer (crash_vmclear_loaded_vmcss, crash_vmclear_local_loaded_vmcss); -#endif +vmx_check_vmcs12_offsets ();/*
arch/xtensa/boot/Makefile +1 -2
@@ -9,8 +9,7 @@ # KBUILD_CFLAGS used when building rest of boot (takes effect recursively) -KBUILD_CFLAGS += -fno-builtin -Iarch/$(ARCH)/boot/include -HOSTFLAGS += -Iarch/$(ARCH)/boot/include +KBUILD_CFLAGS += -fno-builtin subdir-y := lib targets += vmlinux.bin vmlinux.bin.gz
arch/xtensa/boot/lib/zmem.c +3 -2
@@ -4,13 +4,14 @@/* bits taken from ppc */ extern void *avail_ram, *end_avail; +void gunzip (void *dst,int dstlen,unsigned char *src,int *lenp); -void exit (void ) +static void exit (void ) {for (;;); } -void *zalloc (unsigned size) +static void *zalloc (unsigned int size) {void *p = avail_ram;
arch/xtensa/include/asm/core.h +4 -0
@@ -6,6 +6,10 @@#include <variant/core.h> +#ifndef XCHAL_HAVE_DIV32 +#define XCHAL_HAVE_DIV32 0 +#endif +#ifndef XCHAL_HAVE_EXCLUSIVE #define XCHAL_HAVE_EXCLUSIVE 0#endif
arch/xtensa/lib/umulsidi3.S +3 -1
@@ -3,7 +3,9 @@ #include <asm/asmmacro.h> #include <asm/core.h> -#if !XCHAL_HAVE_MUL16 && !XCHAL_HAVE_MUL32 && !XCHAL_HAVE_MAC16 +#if XCHAL_HAVE_MUL16 || XCHAL_HAVE_MUL32 || XCHAL_HAVE_MAC16 +#define XCHAL_NO_MUL 0 +#else #define XCHAL_NO_MUL 1 #endif
arch/xtensa/platforms/iss/network.c +2 -2
@@ -201,7 +201,7 @@ static int tuntap_write(struct iss_net_private *lp, struct sk_buff **skb)return simc_write (lp->tp.info.tuntap.fd, (*skb)->data, (*skb)->len); } -unsigned short tuntap_protocol (struct sk_buff *skb) +static unsigned short tuntap_protocol (struct sk_buff *skb) {return eth_type_trans (skb, skb->dev); }
@@ -441,7 +441,7 @@ static int iss_net_change_mtu(struct net_device *dev, int new_mtu)return -EINVAL ; } -void iss_net_user_timer_expire (struct timer_list *unused) +static void iss_net_user_timer_expire (struct timer_list *unused) { }
drivers/ata/libata-core.c +30 -11
75 lines not on this page · raw message
drivers/ata/libata-eh.c +3 -10
@@ -2704,18 +2704,11 @@ int ata_eh_reset(struct ata_link *link, int classify, } } -/* -* Some controllers can't be frozen very well and may set spurious -* error conditions during reset. Clear accumulated error -* information and re-thaw the port if frozen. As reset is the -* final recovery action and we cross check link onlineness against -* device classification later, no hotplug event is lost by this. -*/ +/* clear cached SError */ spin_lock_irqsave (link->ap->lock, flags); -memset (&link->eh_info,0 ,sizeof (link->eh_info)); + link->eh_info.serror =0 ;if (slave) -memset (&slave->eh_info,0 ,sizeof (link->eh_info)); - ap->pflags &= ~ATA_PFLAG_EH_PENDING ; + slave->eh_info.serror =0 ;spin_unlock_irqrestore (link->ap->lock, flags);if (ap->pflags &ATA_PFLAG_FROZEN )
drivers/ata/libata-scsi.c +41 -6
74 lines not on this page · raw message
drivers/ata/libata-transport.c +8 -1
@@ -266,6 +266,10 @@ void ata_tport_delete(struct ata_port *ap)put_device (dev); } +static const struct device_type ata_port_sas_type = { + .name =ATA_PORT_TYPE_NAME , +}; +/** ata_tport_add - initialize a transport ATA port structure * * @parent: parent device
@@ -283,7 +287,10 @@ int ata_tport_add(struct device *parent,struct device *dev = &ap->tdev;device_initialize (dev); - dev->type = &ata_port_type; +if (ap->flags &ATA_FLAG_SAS_HOST ) + dev->type = &ata_port_sas_type; +else + dev->type = &ata_port_type; dev->parent = parent;ata_host_get (ap->host);
drivers/ata/libata.h +2 -0
@@ -30,6 +30,8 @@ enum { ATA_DNXFER_QUIET = (1 << 31), }; +#define ATA_PORT_TYPE_NAME "ata_port" +extern atomic_t ata_print_id;extern int atapi_passthru16;extern int libata_fua;
drivers/ata/sata_mv.c +2 -2
@@ -1255,8 +1255,8 @@ static void mv_dump_mem(struct device *dev, void __iomem *start, unsigned bytes)for (b =0 ; b < bytes; ) {for (w =0 , o =0 ; b < bytes && w <4 ; w++) { - o +=snprintf (linebuf + o,sizeof (linebuf) - o, -"%08x " ,readl (start + b)); + o +=scnprintf (linebuf + o,sizeof (linebuf) - o, +"%08x " ,readl (start + b)); b +=sizeof (u32); } dev_dbg(dev, "%s: %p: %s\n",
drivers/bus/ti-sysc.c +22 -9
@@ -38,6 +38,7 @@ enum sysc_soc {SOC_2420 ,SOC_2430 ,SOC_3430 , +SOC_AM35 ,SOC_3630 ,SOC_4430 , SOC_4460,
@@ -1119,6 +1120,11 @@ static int sysc_enable_module(struct device *dev)if (ddata->cfg.quirks & (SYSC_QUIRK_SWSUP_SIDLE |SYSC_QUIRK_SWSUP_SIDLE_ACT )) { best_mode =SYSC_IDLE_NO ; + +/* Clear WAKEUP */ +if (regbits->enwkup_shift >=0 && + ddata->cfg.sysc_val &BIT (regbits->enwkup_shift)) + reg &= ~BIT (regbits->enwkup_shift); }else { best_mode =fls (ddata->cfg.sidlemodes) -1 ;if (best_mode >SYSC_IDLE_MASK ) {
@@ -1246,6 +1252,13 @@ static int sysc_disable_module(struct device *dev) } } +if (ddata->cfg.quirks &SYSC_QUIRK_SWSUP_SIDLE_ACT ) { +/* Set WAKEUP */ +if (regbits->enwkup_shift >=0 && + ddata->cfg.sysc_val &BIT (regbits->enwkup_shift)) + reg |=BIT (regbits->enwkup_shift); + } + reg &= ~(SYSC_IDLE_MASK << regbits->sidle_shift); reg |= best_mode << regbits->sidle_shift; if (regbits->autoidle_shift >= 0 &&
@@ -1540,16 +1553,16 @@ struct sysc_revision_quirk {static const struct sysc_revision_quirk sysc_revision_quirks[] = {/* These drivers need to be fixed to not use pm_runtime_irq_safe() */ SYSC_QUIRK ("uart" ,0 ,0x50 ,0x54 ,0x58 ,0x00000046 ,0xffffffff , -SYSC_QUIRK_SWSUP_SIDLE |SYSC_QUIRK_LEGACY_IDLE ), +SYSC_QUIRK_SWSUP_SIDLE_ACT |SYSC_QUIRK_LEGACY_IDLE ),SYSC_QUIRK ("uart" ,0 ,0x50 ,0x54 ,0x58 ,0x00000052 ,0xffffffff , -SYSC_QUIRK_SWSUP_SIDLE |SYSC_QUIRK_LEGACY_IDLE ), +SYSC_QUIRK_SWSUP_SIDLE_ACT |SYSC_QUIRK_LEGACY_IDLE ),/* Uarts on omap4 and later */ SYSC_QUIRK ("uart" ,0 ,0x50 ,0x54 ,0x58 ,0x50411e03 ,0xffff00ff , -SYSC_QUIRK_SWSUP_SIDLE |SYSC_QUIRK_LEGACY_IDLE ), +SYSC_QUIRK_SWSUP_SIDLE_ACT |SYSC_QUIRK_LEGACY_IDLE ),SYSC_QUIRK ("uart" ,0 ,0x50 ,0x54 ,0x58 ,0x47422e03 ,0xffffffff , -SYSC_QUIRK_SWSUP_SIDLE |SYSC_QUIRK_LEGACY_IDLE ), +SYSC_QUIRK_SWSUP_SIDLE_ACT |SYSC_QUIRK_LEGACY_IDLE ),SYSC_QUIRK ("uart" ,0 ,0x50 ,0x54 ,0x58 ,0x47424e03 ,0xffffffff , -SYSC_QUIRK_SWSUP_SIDLE |SYSC_QUIRK_LEGACY_IDLE ), +SYSC_QUIRK_SWSUP_SIDLE_ACT |SYSC_QUIRK_LEGACY_IDLE ),/* Quirks that need to be set based on the module address */ SYSC_QUIRK("mcpdm", 0x40132000, 0, 0x10, -ENODEV, 0x50000800, 0xffffffff,
@@ -1878,7 +1891,7 @@ static void sysc_pre_reset_quirk_dss(struct sysc *ddata)dev_warn (ddata->dev,"%s: timed out %08x !+ %08x\n" , __func__, val, irq_mask); -if (sysc_soc->soc ==SOC_3430 ) { +if (sysc_soc->soc ==SOC_3430 || sysc_soc->soc ==SOC_AM35 ) {/* Clear DSS_SDI_CONTROL */ sysc_write (ddata,0x44 ,0 );
@@ -2166,8 +2179,7 @@ static int sysc_reset(struct sysc *ddata) }if (ddata->cfg.srst_udelay) -usleep_range (ddata->cfg.srst_udelay, - ddata->cfg.srst_udelay *2 ); +fsleep (ddata->cfg.srst_udelay);if (ddata->post_reset_quirk) ddata->post_reset_quirk (ddata);
@@ -3043,6 +3055,7 @@ static void ti_sysc_idle(struct work_struct *work)static const struct soc_device_attribute sysc_soc_match[] = {SOC_FLAG ("OMAP242*" ,SOC_2420 ),SOC_FLAG ("OMAP243*" ,SOC_2430 ), +SOC_FLAG ("AM35*" ,SOC_AM35 ),SOC_FLAG ("OMAP3[45]*" ,SOC_3430 ),SOC_FLAG ("OMAP3[67]*" ,SOC_3630 ),SOC_FLAG ("OMAP443*" ,SOC_4430 ),
@@ -3249,7 +3262,7 @@ static int sysc_check_active_timer(struct sysc *ddata)* can be dropped if we stop supporting old beagleboard revisions * A to B4 at some point. */ -if (sysc_soc->soc ==SOC_3430 ) +if (sysc_soc->soc ==SOC_3430 || sysc_soc->soc ==SOC_AM35 ) error = -ENXIO ;else error = -EBUSY ;
drivers/char/agp/parisc-agp.c +0 -2
@@ -394,8 +394,6 @@ find_quicksilver(struct device *dev, void *data)static int __init parisc_agp_init (void ) { -extern struct sba_device *sba_list; -int err =-1 ;struct parisc_device *sba =NULL , *lba =NULL ;struct lba_device *lbadev =NULL ;
drivers/clk/sprd/ums512-clk.c +1 -1
@@ -800,7 +800,7 @@ static SPRD_MUX_CLK_DATA(uart1_clk, "uart1-clk", uart_parents, 0x250, 0, 3, UMS512_MUX_FLAG);static const struct clk_parent_data thm_parents[] = { - { .fw_name ="ext-32m" }, + { .fw_name ="ext-32k" }, { .hw = &clk_250k.hw }, }; static SPRD_MUX_CLK_DATA(thm0_clk, "thm0-clk", thm_parents,
drivers/clk/tegra/clk-bpmp.c +1 -1
@@ -159,7 +159,7 @@ static unsigned long tegra_bpmp_clk_recalc_rate(struct clk_hw *hw, err =tegra_bpmp_clk_transfer (clk->bpmp, &msg);if (err <0 ) -return err; +return 0 ;return response.rate; }
drivers/firmware/arm_ffa/driver.c +14 -2
@@ -478,6 +478,19 @@ static u32 ffa_get_num_pages_sg(struct scatterlist *sg)return num_pages; } +static u8 ffa_memory_attributes_get (u32 func_id) +{ +/* +* For the memory lend or donate operation, if the receiver is a PE or +* a proxy endpoint, the owner/sender must not specify the attributes +*/ +if (func_id ==FFA_FN_NATIVE (MEM_LEND ) || + func_id ==FFA_MEM_LEND ) +return 0 ; + +return FFA_MEM_NORMAL |FFA_MEM_WRITE_BACK |FFA_MEM_INNER_SHAREABLE ; +} +static int ffa_setup_and_transmit (u32 func_id,void *buffer,u32 max_fragsize,struct ffa_mem_ops_args *args)
@@ -494,8 +507,7 @@ ffa_setup_and_transmit(u32 func_id, void *buffer, u32 max_fragsize, mem_region->tag = args->tag; mem_region->flags = args->flags; mem_region->sender_id = drv_info->vm_id; - mem_region->attributes =FFA_MEM_NORMAL |FFA_MEM_WRITE_BACK | -FFA_MEM_INNER_SHAREABLE ; + mem_region->attributes =ffa_memory_attributes_get (func_id); ep_mem_access = &mem_region->ep_mem_access[0 ];for (idx =0 ; idx < args->nattrs; idx++, ep_mem_access++) {
drivers/firmware/arm_scmi/perf.c +66 -27
193 lines not on this page · raw message
drivers/firmware/cirrus/cs_dsp.c +17 -17
@@ -1821,15 +1821,15 @@ static int cs_dsp_adsp2_setup_algs(struct cs_dsp *dsp)return PTR_ERR (adsp2_alg);for (i =0 ; i < n_algs; i++) { -cs_dsp_info (dsp, -"%d: ID %x v%d.%d.%d XM@%x YM@%x ZM@%x\n" , - i,be32_to_cpu (adsp2_alg[i].alg.id), - (be32_to_cpu (adsp2_alg[i].alg.ver) &0xff0000 ) >>16 , - (be32_to_cpu (adsp2_alg[i].alg.ver) &0xff00 ) >>8 , -be32_to_cpu (adsp2_alg[i].alg.ver) &0xff , -be32_to_cpu (adsp2_alg[i].xm), -be32_to_cpu (adsp2_alg[i].ym), -be32_to_cpu (adsp2_alg[i].zm)); +cs_dsp_dbg (dsp, +"%d: ID %x v%d.%d.%d XM@%x YM@%x ZM@%x\n" , + i,be32_to_cpu (adsp2_alg[i].alg.id), + (be32_to_cpu (adsp2_alg[i].alg.ver) &0xff0000 ) >>16 , + (be32_to_cpu (adsp2_alg[i].alg.ver) &0xff00 ) >>8 , +be32_to_cpu (adsp2_alg[i].alg.ver) &0xff , +be32_to_cpu (adsp2_alg[i].xm), +be32_to_cpu (adsp2_alg[i].ym), +be32_to_cpu (adsp2_alg[i].zm)); alg_region = cs_dsp_create_region(dsp, WMFW_ADSP2_XM, adsp2_alg[i].alg.id,
@@ -1954,14 +1954,14 @@ static int cs_dsp_halo_setup_algs(struct cs_dsp *dsp)return PTR_ERR (halo_alg);for (i =0 ; i < n_algs; i++) { -cs_dsp_info (dsp, -"%d: ID %x v%d.%d.%d XM@%x YM@%x\n" , - i,be32_to_cpu (halo_alg[i].alg.id), - (be32_to_cpu (halo_alg[i].alg.ver) &0xff0000 ) >>16 , - (be32_to_cpu (halo_alg[i].alg.ver) &0xff00 ) >>8 , -be32_to_cpu (halo_alg[i].alg.ver) &0xff , -be32_to_cpu (halo_alg[i].xm_base), -be32_to_cpu (halo_alg[i].ym_base)); +cs_dsp_dbg (dsp, +"%d: ID %x v%d.%d.%d XM@%x YM@%x\n" , + i,be32_to_cpu (halo_alg[i].alg.id), + (be32_to_cpu (halo_alg[i].alg.ver) &0xff0000 ) >>16 , + (be32_to_cpu (halo_alg[i].alg.ver) &0xff00 ) >>8 , +be32_to_cpu (halo_alg[i].alg.ver) &0xff , +be32_to_cpu (halo_alg[i].xm_base), +be32_to_cpu (halo_alg[i].ym_base)); ret = cs_dsp_halo_create_regions(dsp, halo_alg[i].alg.id, halo_alg[i].alg.ver,
drivers/firmware/imx/imx-dsp.c +1 -0
@@ -115,6 +115,7 @@ static int imx_dsp_setup_channels(struct imx_dsp_ipc *dsp_ipc) dsp_chan->idx = i %2 ; dsp_chan->ch =mbox_request_channel_byname (cl, chan_name);if (IS_ERR (dsp_chan->ch)) { +kfree (dsp_chan->name); ret =PTR_ERR (dsp_chan->ch);if (ret != -EPROBE_DEFER ) dev_err(dev, "Failed to request mbox chan %s ret %d\n",
drivers/gpio/gpio-pmic-eic-sprd.c +1 -0
@@ -337,6 +337,7 @@ static int sprd_pmic_eic_probe(struct platform_device *pdev) pmic_eic->chip.set_config = sprd_pmic_eic_set_config; pmic_eic->chip.set = sprd_pmic_eic_set; pmic_eic->chip.get = sprd_pmic_eic_get; + pmic_eic->chip.can_sleep = true; pmic_eic->intc.name =dev_name (&pdev->dev); pmic_eic->intc.irq_mask = sprd_pmic_eic_irq_mask;
drivers/gpio/gpio-tb10x.c +5 -1
@@ -195,7 +195,7 @@ static int tb10x_gpio_probe(struct platform_device *pdev) handle_edge_irq,IRQ_NOREQUEST ,IRQ_NOPROBE , IRQ_GC_INIT_MASK_CACHE);if (ret) -return ret; + goto err_remove_domain; gc = tb10x_gpio->domain->gc->gc[0 ]; gc->reg_base = tb10x_gpio->base;
@@ -209,6 +209,10 @@ static int tb10x_gpio_probe(struct platform_device *pdev) }return 0 ; + +err_remove_domain: +irq_domain_remove (tb10x_gpio->domain); +return ret; }static int tb10x_gpio_remove (struct platform_device *pdev)
drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c +11 -6
@@ -896,12 +896,17 @@ int amdgpu_info_ioctl(struct drm_device *dev, void *data, struct drm_file *filp)struct atom_context *atom_context; atom_context = adev->mode_info.atom_context; -memcpy (vbios_info.name, atom_context->name,sizeof (atom_context->name)); -memcpy (vbios_info.vbios_pn, atom_context->vbios_pn,sizeof (atom_context->vbios_pn)); - vbios_info.version = atom_context->version; -memcpy (vbios_info.vbios_ver_str, atom_context->vbios_ver_str, -sizeof (atom_context->vbios_ver_str)); -memcpy (vbios_info.date, atom_context->date,sizeof (atom_context->date)); +if (atom_context) { +memcpy (vbios_info.name, atom_context->name, +sizeof (atom_context->name)); +memcpy (vbios_info.vbios_pn, atom_context->vbios_pn, +sizeof (atom_context->vbios_pn)); + vbios_info.version = atom_context->version; +memcpy (vbios_info.vbios_ver_str, atom_context->vbios_ver_str, +sizeof (atom_context->vbios_ver_str)); +memcpy (vbios_info.date, atom_context->date, +sizeof (atom_context->date)); + }return copy_to_user (out, &vbios_info,min ((size_t )size,sizeof (vbios_info))) ? -EFAULT :0 ;
drivers/gpu/drm/amd/amdgpu/nbio_v4_3.c +3 -0
@@ -344,6 +344,9 @@ static void nbio_v4_3_init_registers(struct amdgpu_device *adev) data &= ~RCC_DEV0_EPF2_STRAP2__STRAP_NO_SOFT_RESET_DEV0_F2_MASK ;WREG32_SOC15 (NBIO ,0 , regRCC_DEV0_EPF2_STRAP2, data); } +if (amdgpu_sriov_vf (adev)) + adev->rmmio_remap.reg_offset =SOC15_REG_OFFSET (NBIO ,0 , + regBIF_BX_DEV0_EPF0_VF0_HDP_MEM_COHERENCY_FLUSH_CNTL) <<2 ; }static u32 nbio_v4_3_get_rom_offset (struct amdgpu_device *adev)
drivers/gpu/drm/amd/amdgpu/soc21.c +1 -1
@@ -755,7 +755,7 @@ static int soc21_common_hw_init(void *handle)* for the purpose of expose those registers * to process space */ -if (adev->nbio.funcs->remap_hdp_registers) +if (adev->nbio.funcs->remap_hdp_registers && !amdgpu_sriov_vf (adev)) adev->nbio.funcs->remap_hdp_registers (adev);/* enable the doorbell aperture */ soc21_enable_doorbell_aperture (adev, true);
drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c +1 -1
@@ -201,7 +201,7 @@ static int add_queue_mes(struct device_queue_manager *dqm, struct queue *q,if (q->wptr_bo) { wptr_addr_off = (uint64_t )q->properties.write_ptr & (PAGE_SIZE -1 ); - queue_input.wptr_mc_addr = ((uint64_t )q->wptr_bo->tbo.resource->start <<PAGE_SHIFT ) + wptr_addr_off; + queue_input.wptr_mc_addr =amdgpu_bo_gpu_offset (q->wptr_bo) + wptr_addr_off; } queue_input.is_kfd_process =1 ;
drivers/gpu/drm/amd/amdkfd/kfd_priv.h +2 -3
@@ -1349,9 +1349,8 @@ void kfd_flush_tlb(struct kfd_process_device *pdd, enum TLB_FLUSH_TYPE type);static inline bool kfd_flush_tlb_after_unmap (struct kfd_dev *dev) { -return KFD_GC_VERSION (dev) ==IP_VERSION (9 ,4 ,2 ) || - (KFD_GC_VERSION (dev) ==IP_VERSION (9 ,4 ,1 ) && - dev->adev->sdma.instance[0 ].fw_version >=18 ) || +return KFD_GC_VERSION (dev) >IP_VERSION (9 ,4 ,2 ) || + (KFD_GC_VERSION (dev) ==IP_VERSION (9 ,4 ,1 ) && dev->sdma_fw_version >=18 ) ||KFD_GC_VERSION (dev) ==IP_VERSION (9 ,4 ,0 ); }
drivers/gpu/drm/amd/display/dc/dce110/dce110_hw_sequencer.c +3 -1
@@ -973,7 +973,9 @@ void dce110_edp_backlight_control(return ; } -if (link->panel_cntl) { +if (link->panel_cntl && !(link->dpcd_sink_ext_caps.bits.oled || + link->dpcd_sink_ext_caps.bits.hdr_aux_backlight_control ==1 || + link->dpcd_sink_ext_caps.bits.sdr_aux_backlight_control ==1 )) {bool is_backlight_on = link->panel_cntl->funcs->is_panel_backlight_on (link->panel_cntl);if ((enable && is_backlight_on) || (!enable && !is_backlight_on)) {
drivers/gpu/drm/bridge/ti-sn65dsi83.c +3 -1
@@ -655,7 +655,9 @@ static int sn65dsi83_host_attach(struct sn65dsi83 *ctx) dsi->lanes = dsi_lanes; dsi->format =MIPI_DSI_FMT_RGB888 ; - dsi->mode_flags =MIPI_DSI_MODE_VIDEO |MIPI_DSI_MODE_VIDEO_BURST ; + dsi->mode_flags =MIPI_DSI_MODE_VIDEO |MIPI_DSI_MODE_VIDEO_BURST | +MIPI_DSI_MODE_VIDEO_NO_HFP |MIPI_DSI_MODE_VIDEO_NO_HBP | +MIPI_DSI_MODE_VIDEO_NO_HSA |MIPI_DSI_MODE_NO_EOT_PACKET ; ret =devm_mipi_dsi_attach (dev, dsi);if (ret <0 ) {
drivers/gpu/drm/i915/gt/intel_engine_cs.c +0 -1
@@ -541,7 +541,6 @@ static int intel_engine_setup(struct intel_gt *gt, enum intel_engine_id id,DRIVER_CAPS (i915)->has_logical_contexts = true;ewma__engine_latency_init (&engine->latency); -seqcount_init (&engine->stats.execlists.lock);ATOMIC_INIT_NOTIFIER_HEAD (&engine->context_status_notifier);
drivers/gpu/drm/i915/gt/intel_execlists_submission.c +2 -0
@@ -3546,6 +3546,8 @@ int intel_execlists_submission_setup(struct intel_engine_cs *engine)logical_ring_default_vfuncs (engine);logical_ring_default_irqs (engine); +seqcount_init (&engine->stats.execlists.lock); +if (engine->flags &I915_ENGINE_HAS_RCS_REG_STATE )rcs_submission_override (engine);
drivers/gpu/drm/i915/gt/intel_ggtt.c +17 -6
@@ -500,20 +500,31 @@ void intel_ggtt_unbind_vma(struct i915_address_space *vm, vm->clear_range (vm, vma_res->start, vma_res->vma_size); } +/* +* Reserve the top of the GuC address space for firmware images. Addresses +* beyond GUC_GGTT_TOP in the GuC address space are inaccessible by GuC, +* which makes for a suitable range to hold GuC/HuC firmware images if the +* size of the GGTT is 4G. However, on a 32-bit platform the size of the GGTT +* is limited to 2G, which is less than GUC_GGTT_TOP, but we reserve a chunk +* of the same size anyway, which is far more than needed, to keep the logic +* in uc_fw_ggtt_offset() simple. +*/ +#define GUC_TOP_RESERVE_SIZE (SZ_4G - GUC_GGTT_TOP) +static int ggtt_reserve_guc_top (struct i915_ggtt *ggtt) { -u64 size; +u64 offset;int ret;if (!intel_uc_uses_guc (&ggtt->vm.gt->uc))return 0 ; -GEM_BUG_ON (ggtt->vm.total <=GUC_GGTT_TOP ); - size = ggtt->vm.total -GUC_GGTT_TOP ; +GEM_BUG_ON (ggtt->vm.total <=GUC_TOP_RESERVE_SIZE ); + offset = ggtt->vm.total -GUC_TOP_RESERVE_SIZE ; - ret =i915_gem_gtt_reserve (&ggtt->vm,NULL , &ggtt->uc_fw, size, -GUC_GGTT_TOP ,I915_COLOR_UNEVICTABLE , -PIN_NOEVICT ); + ret =i915_gem_gtt_reserve (&ggtt->vm,NULL , &ggtt->uc_fw, +GUC_TOP_RESERVE_SIZE , offset, +I915_COLOR_UNEVICTABLE ,PIN_NOEVICT );if (ret)drm_dbg (&ggtt->vm.i915->drm,"Failed to reserve top of GGTT for GuC\n" );
drivers/gpu/drm/meson/meson_encoder_hdmi.c +2 -0
@@ -332,6 +332,8 @@ static void meson_encoder_hdmi_hpd_notify(struct drm_bridge *bridge,return ;cec_notifier_set_phys_addr_from_edid (encoder_hdmi->cec_notifier, edid); + +kfree (edid); }else cec_notifier_phys_addr_invalidate (encoder_hdmi->cec_notifier); }
drivers/gpu/drm/tests/drm_mm_test.c +1 -1
@@ -939,7 +939,7 @@ static void drm_test_mm_insert_range(struct kunit *test)KUNIT_ASSERT_FALSE (test,__drm_test_mm_insert_range (test, count, size,0 , max -1 ));KUNIT_ASSERT_FALSE (test,__drm_test_mm_insert_range (test, count, size,0 , max /2 ));KUNIT_ASSERT_FALSE (test,__drm_test_mm_insert_range (test, count, size, - max /2 , max /2 )); + max /2 , max));KUNIT_ASSERT_FALSE (test,__drm_test_mm_insert_range (test, count, size, max /4 +1 ,3 * max /4 -1 ));
drivers/i2c/busses/i2c-i801.c +1 -0
@@ -1754,6 +1754,7 @@ static int i801_probe(struct pci_dev *dev, const struct pci_device_id *id) "SMBus I801 adapter at %04lx", priv->smba); err =i2c_add_adapter (&priv->adapter);if (err) { +platform_device_unregister (priv->tco_pdev);i801_acpi_remove (priv);return err; }
drivers/i2c/busses/i2c-npcm7xx.c +7 -10
@@ -696,6 +696,7 @@ static void npcm_i2c_callback(struct npcm_i2c *bus, {struct i2c_msg *msgs;int msgs_num; +bool do_complete = false; msgs = bus->msgs; msgs_num = bus->msgs_num;
@@ -724,23 +725,17 @@ static void npcm_i2c_callback(struct npcm_i2c *bus, msgs[1].flags & I2C_M_RD) msgs[1 ].len = info; } -if (completion_done (&bus->cmd_complete) == false) -complete (&bus->cmd_complete); -break ; - + do_complete = true; +break ;case I2C_NACK_IND :/* MASTER transmit got a NACK before tx all bytes */ bus->cmd_err = -ENXIO ; -if (bus->master_or_slave ==I2C_MASTER ) -complete (&bus->cmd_complete); - + do_complete = true;break ;case I2C_BUS_ERR_IND :/* Bus error */ bus->cmd_err = -EAGAIN ; -if (bus->master_or_slave ==I2C_MASTER ) -complete (&bus->cmd_complete); - + do_complete = true;break ;case I2C_WAKE_UP_IND :/* I2C wake up */
@@ -754,6 +749,8 @@ static void npcm_i2c_callback(struct npcm_i2c *bus,if (bus->slave) bus->master_or_slave =I2C_SLAVE ;#endif +if (do_complete) +complete (&bus->cmd_complete); }static u8 npcm_i2c_fifo_usage (struct npcm_i2c *bus)
drivers/i2c/busses/i2c-xiic.c +1 -1
@@ -420,7 +420,7 @@ static irqreturn_t xiic_process(int irq, void *dev_id)* reset the IP instead of just flush fifos */ ret =xiic_reinit (i2c); -if (!ret) +if (ret <0 )dev_dbg (i2c->adap.dev.parent,"reinit failed\n" );if (i2c->rx_msg) {
drivers/i2c/muxes/i2c-demux-pinctrl.c +4 -0
@@ -243,6 +243,10 @@ static int i2c_demux_pinctrl_probe(struct platform_device *pdev) props[i].name =devm_kstrdup (&pdev->dev,"status" ,GFP_KERNEL ); props[i].value =devm_kstrdup (&pdev->dev,"ok" ,GFP_KERNEL ); +if (!props[i].name || !props[i].value) { + err = -ENOMEM ; + goto err_rollback; + } props[i].length =3 ;of_changeset_init (&priv->chan[i].chgset);
drivers/i2c/muxes/i2c-mux-gpio.c +3 -1
@@ -105,8 +105,10 @@ static int i2c_mux_gpio_probe_fw(struct gpiomux *mux, }else if (is_acpi_node (child)) { rc =acpi_get_local_address (ACPI_HANDLE_FWNODE (child), values + i); -if (rc) +if (rc) { +fwnode_handle_put (child);return dev_err_probe (dev, rc,"Cannot get address\n" ); + } } i++;
drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3-sva.c +24 -3
@@ -186,6 +186,15 @@ static void arm_smmu_free_shared_cd(struct arm_smmu_ctx_desc *cd) } } +/* +* Cloned from the MAX_TLBI_OPS in arch/arm64/include/asm/tlbflush.h, this +* is used as a threshold to replace per-page TLBI commands to issue in the +* command queue with an address-space TLBI command, when SMMU w/o a range +* invalidation feature handles too many per-page TLBI commands, which will +* otherwise result in a soft lockup. +*/ +#define CMDQ_MAX_TLBI_OPS (1 << (PAGE_SHIFT - 3)) +static void arm_smmu_mm_invalidate_range (struct mmu_notifier *mn,struct mm_struct *mm,unsigned long start,unsigned long end)
@@ -200,10 +209,22 @@ static void arm_smmu_mm_invalidate_range(struct mmu_notifier *mn,* range. So do a simple translation here by calculating size correctly. */ size = end - start; +if (!(smmu_domain->smmu->features &ARM_SMMU_FEAT_RANGE_INV )) { +if (size >=CMDQ_MAX_TLBI_OPS *PAGE_SIZE ) + size =0 ; + } + +if (!(smmu_domain->smmu->features &ARM_SMMU_FEAT_BTM )) { +if (!size) +arm_smmu_tlb_inv_asid (smmu_domain->smmu, + smmu_mn->cd->asid); +else +arm_smmu_tlb_inv_range_asid (start, size, + smmu_mn->cd->asid, +PAGE_SIZE , false, + smmu_domain); + } -if (!(smmu_domain->smmu->features &ARM_SMMU_FEAT_BTM )) -arm_smmu_tlb_inv_range_asid (start, size, smmu_mn->cd->asid, -PAGE_SIZE , false, smmu_domain);arm_smmu_atc_inv_domain (smmu_domain, mm->pasid, start, size); }
drivers/md/dm-core.h +1 -0
@@ -214,6 +214,7 @@ struct dm_table {/* a list of devices used by this table */ struct list_head devices; +struct rw_semaphore devices_lock;/* events get handed up using this callback */ void (*event_fn)(void *);
drivers/md/dm-ioctl.c +6 -1
@@ -1566,6 +1566,8 @@ static void retrieve_deps(struct dm_table *table,struct dm_dev_internal *dd;struct dm_target_deps *deps; +down_read (&table->devices_lock); + deps =get_result_buffer (param, param_size, &len);/*
@@ -1580,7 +1582,7 @@ static void retrieve_deps(struct dm_table *table, needed =struct_size (deps, dev, count);if (len < needed) { param->flags |=DM_BUFFER_FULL_FLAG ; -return ; + goto out; }/*
@@ -1592,6 +1594,9 @@ static void retrieve_deps(struct dm_table *table, deps->dev[count++] =huge_encode_dev (dd->dm_dev->bdev->bd_dev); param->data_size = param->data_start + needed; + +out: +up_read (&table->devices_lock); }static int table_deps (struct file *filp,struct dm_ioctl *param,size_t param_size)
drivers/md/dm-table.c +24 -8
@@ -134,6 +134,7 @@ int dm_table_create(struct dm_table **result, fmode_t mode,return -ENOMEM ;INIT_LIST_HEAD (&t->devices); +init_rwsem (&t->devices_lock);if (!num_targets) num_targets =KEYS_PER_NODE ;
@@ -362,15 +363,19 @@ int dm_get_device(struct dm_target *ti, const char *path, fmode_t mode,return -ENODEV ; } +down_write (&t->devices_lock); + dd =find_device (&t->devices, dev);if (!dd) { dd =kmalloc (sizeof (*dd),GFP_KERNEL ); -if (!dd) -return -ENOMEM ; +if (!dd) { + r = -ENOMEM ; + goto unlock_ret_r; + }if ((r =dm_get_table_device (t->md, dev, mode, &dd->dm_dev))) {kfree (dd); -return r; + goto unlock_ret_r; }refcount_set (&dd->count,1 );
@@ -380,12 +385,17 @@ int dm_get_device(struct dm_target *ti, const char *path, fmode_t mode, }else if (dd->dm_dev->mode != (mode | dd->dm_dev->mode)) { r =upgrade_mode (dd, mode, t->md);if (r)
Lines of this file are not shown. View the raw message.
drivers/media/common/videobuf2/frame_vector.c +4 -2
Lines of this file are not shown. View the raw message.
drivers/misc/cardreader/rts5227.c +6 -49
55 lines not on this page · raw message
drivers/misc/cardreader/rts5228.c +17 -40
57 lines not on this page · raw message
drivers/misc/cardreader/rts5249.c +7 -49
56 lines not on this page · raw message
drivers/misc/cardreader/rts5260.c +13 -30
43 lines not on this page · raw message
drivers/misc/cardreader/rts5261.c +13 -39
52 lines not on this page · raw message
drivers/misc/cardreader/rtsx_pcr.c +46 -5
51 lines not on this page · raw message
drivers/net/ethernet/amazon/ena/ena_netdev.c +3 -0
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/broadcom/bnxt/bnxt.c +5 -0
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/engleder/tsnep_main.c +14 -4
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/hisilicon/hns3/hns3_enet.c +9 -0
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c +12 -1
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/hisilicon/hns3/hns3vf/hclgevf_main.c +2 -1
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c +5 -3
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/intel/iavf/iavf_ethtool.c +1 -1
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/intel/iavf/iavf_main.c +8 -9
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/intel/igc/igc_ethtool.c +19 -12
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/intel/igc/igc_main.c +1 -1
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/marvell/octeon_ep/octep_main.c +4 -4
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/marvell/octeon_ep/octep_tx.c +4 -4
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/marvell/octeon_ep/octep_tx.h +15 -1
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/marvell/octeontx2/nic/otx2_txrx.c +13 -6
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/pensando/ionic/ionic_dev.h +1 -0
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/pensando/ionic/ionic_txrx.c +7 -3
Lines of this file are not shown. View the raw message.
drivers/net/wireless/ath/ath11k/dp_tx.c +35 -4
Lines of this file are not shown. View the raw message.
drivers/net/wireless/ath/ath11k/dp_tx.h +1 -0
Lines of this file are not shown. View the raw message.
drivers/nvme/host/pci.c +62 -59
121 lines not on this page · raw message
drivers/platform/x86/intel_scu_ipc.c +40 -26
66 lines not on this page · raw message
drivers/s390/crypto/zcrypt_ep11misc.c +46 -15
61 lines not on this page · raw message
drivers/scsi/qla2xxx/qla_inline.h +58 -0
58 lines not on this page · raw message
fs/btrfs/delayed-inode.c +55 -30
85 lines not on this page · raw message
fs/ceph/super.c +70 -5
75 lines not on this page · raw message
fs/ext4/mballoc.c +35 -25
60 lines not on this page · raw message
fs/nfs/direct.c +93 -41
134 lines not on this page · raw message
fs/proc/task_nommu.c +37 -27
64 lines not on this page · raw message
include/net/netfilter/nf_tables.h +52 -75
127 lines not on this page · raw message
net/netfilter/nf_tables_api.c +327 -73
400 lines not on this page · raw message
net/netfilter/nft_set_hash.c +53 -34
87 lines not on this page · raw message
net/netfilter/nft_set_pipapo.c +42 -27
69 lines not on this page · raw message
net/netfilter/nft_set_rbtree.c +97 -64
161 lines not on this page · raw message
security/smack/smack_lsm.c +47 -16
63 lines not on this page · raw message
sound/soc/meson/axg-spdifin.c +17 -32
49 lines not on this page · raw message
tools/testing/memblock/tests/basic_api.c +1 -1
Lines of this file are not shown. View the raw message.
tools/testing/selftests/ftrace/test.d/instances/instance-event.tc +1 -1
Lines of this file are not shown. View the raw message.
tools/testing/selftests/kselftest_deps.sh +65 -12
77 lines not on this page · raw message
tools/testing/selftests/powerpc/Makefile +7 -8
Lines of this file are not shown. View the raw message.
tools/testing/selftests/powerpc/pmu/Makefile +22 -18
Lines of this file are not shown. View the raw message.
The rest of this diff is not shown. View the raw message.
Part of the diff is not shown here. View the raw message.
Since rolling out 6.1.56 we have been experiencing file corruption over NFSv3. We bisected it down to
f16fd0b11f0f NFS: Fix error handling for O_DIRECT write scheduling
But that doesn't cleanly revert so we ended up reverting all NFS changes from 6.1.56 and the corruption no longer occurs. Namely:
edd1f0614510 NFS: More fixes for nfs_direct_write_reschedule_io() d4729af1c73c NFS: Use the correct commit info in nfs_join_page_group() 1f49386d6779 NFS: More O_DIRECT accounting fixes for error paths 4d98038e5bd9 NFS: Fix O_DIRECT locking issues
f16fd0b11f0f NFS: Fix error handling for O_DIRECT write scheduling
The test case is fairly easily reproduced for us:
dd if=testfile of=testfile2 oflag=direct; md5sum testfile*
shows a different md5sum between the two files on 6.1.56+ kernels. Interestingly, on 6.5.7 this problem does not occur even though it contains the same O_DIRECT patch as f16fd0b11f0f.
We opened a bugzilla on this:
https://bugzilla.kernel.org/show_bug.cgi?id=217999
But this seems like a critical issue to us which should likely be addressed in 6.1.58.
Thanks,
Phil
Greg KH
maintainerQuoted 22 lines · poester
Since rolling out 6.1.56 we have been experiencing file corruption over NFSv3. We bisected it down to
f16fd0b11f0fNFS: Fix error handling forO_DIRECTwrite schedulingBut that doesn't cleanly revert so we ended up reverting all NFS changes from 6.1.56 and the corruption no longer occurs. Namely:
edd1f0614510NFS: More fixes fornfs_direct_write_reschedule_io()d4729af1c73cNFS: Use the correct commit info innfs_join_page_group()1f49386d6779NFS: MoreO_DIRECTaccounting fixes for error paths4d98038e5bd9NFS: FixO_DIRECTlocking issues
f16fd0b11f0fNFS: Fix error handling forO_DIRECTwrite schedulingThe test case is fairly easily reproduced for us:
dd if=testfile of=testfile2 oflag=direct; md5sum testfile*
shows a different md5sum between the two files on 6.1.56+ kernels. Interestingly, on 6.5.7 this problem does not occur even though it contains the same
O_DIRECTpatch asf16fd0b11f0f.
Quoted 6 lines
We opened a bugzilla on this:
https://bugzilla.kernel.org/show_bug.cgi?id=217999
But this seems like a critical issue to us which should likely be addressed in 6.1.58.
I don't touch bugzilla, but I'll go revert these now and push out a -rc release with the reverts as you aren't the only one who has reported this and it would be good to get it resolved.
thanks!
greg k-h