summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2023-03-02Revert "arm64: dts: ti: k3-am625-verdin: add lvds_1 pinmux being msp"Francesco Dolcini
This reverts commit 0bb3b1f1a9119cb0feddddc7bb784e909601c2cc. According to the documentation OLDI/LVDS pins are not configurable nor documented. This change is for sure not needed and potentially dangerous since it is writing to some undocumented registers. The pinmux was copied from k3-am625-sk-oldi-panel.dts and this issue should be reported to TI. Upstream-Status: Pending Initial DTS to be used for bring-up an validation of the V1.0 design, we'll decide on the step forward to mainline this once the bring-up and validation will be done. Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com>
2023-03-02hwmon: (lm75) Add TI TMP1075 supportRobert Marko
TI TMP1075 is a LM75 compatible sensor, so lets add support for it. Upstream-Status: Backport [ec081f9154766be98b7be6e4c4483b580c5b12e7] Signed-off-by: Robert Marko <robert.marko@sartura.hr> Link: https://lore.kernel.org/r/20210429121150.106804-1-robert.marko@sartura.hr Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2023-03-01arm64: dts: ti: k3-am625-verdin: fix SoM Ethernet PHY resetFrancesco Dolcini
Allow proper on SoM ethernet PHY probing, the ethernet PHY is on reset at power-up, because of that the normal ethernet PHY detect procedure is not working. Set proper ethernet phy compatible, specifying the complete ethernet PHY id for DP83867 PHY (0x2000a231), this way the PHY is correctly probed, the reset signal de-asserted and the ethernet interface is working. Further information are available in 3c6f5592203e ("of_mdio: Allow the DT to specify the phy ID and avoid autoprobing"). Upstream-Status: Pending Initial DTS to be used for bring-up an validation of the V1.0 design, we'll decide on the step forward to mainline this once the bring-up and validation will be done. Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com>
2023-02-28arm64: dts: ti: k3-am625-verdin: fix PMIC interruptFrancesco Dolcini
Fix EXTINTn interrupt number, gicss0.spi.256/Glue_ext_intn.out.0 is GIC SPI (Shared Peripheral Interrupt) Interrupt 224, the first 32 interrupts are PPI (Private Peripheral Interrupt), therefore the correct interrupt number is 224 = 256 - 32. With this change the power-button functionality is working properly. Upstream-Status: Pending Initial DTS to be used for bring-up an validation of the V1.0 design, we'll decide on the step forward to mainline this once the bring-up and validation will be done. Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com>
2023-02-28mfd: tps65219: Fix "ti,power-button" parsingFrancesco Dolcini
Assign the of property "ti,power-button" bool status to the variable used in the parsing, otherwise nothing really works. Upstream-Status: Inappropriate [other] Upstream already includes the mentioned change, this change applies only to downstream branch. Fixes: 6f98afe4ef32 ("mfd: tps65219: Add "ti,power-button" OF property") Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com>
2023-02-28arm64: dts: ti: k3-am625-verdin: fix 2nd ethernetFrancesco Dolcini
Set correct phy-mode on second ethernet port to rgmii-rxid, the MAC should not add an RX delay. This fixes the second ethernet functionality. Upstream-Status: Pending Initial DTS to be used for bring-up an validation of the V1.0 design, we'll decide on the step forward to mainline this once the bring-up and validation will be done. Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com>
2023-02-27arm64: dts: ti: k3-am625-verdin: fix SD_1 power suppliesFrancesco Dolcini
+V3.3_1.8_SD regulator needs to be always on, otherwise SD I/O is not powered. Remove regulator-boot-on from vqmmc, this is a 2 states regulator (3.3V or 1.8V), there is no option to have it off, therefore it does not make any sense to mark it as 'boot-on'. Set valid LDO1 regulator range to be min/max 3.3V, this is mainly for documentation purpose WRT to the following note in the datasheet: ``` If an LDO is configured in bypass-mode, its output voltage must be configured and the PVIN_LDOx supply voltage must match the configured output voltage. PVIN_LDOx shall be within (configured VOUT) and (configured VOUT + 200mV). Violation of this may result in instability. ``` No software is actually writing to it, but given that we use it in bypass-mode and the supply is 3.3V, it must be really configured as 3.3V. Upstream-Status: Pending Initial DTS to be used for bring-up an validation of the V1.0 design, we'll decide on the step forward to mainline this once the bring-up and validation will be done. Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com>
2023-02-27arm64: dts: ti: k3-am625-verdin: fix SD_1 card detectFrancesco Dolcini
Add internal pull-up to SD_1 CD signals, there is no pull-up in neither the SoM, nor the carrier, so without this the signal is just floating. Upstream-Status: Pending Initial DTS to be used for bring-up an validation of the V1.0 design, we'll decide on the step forward to mainline this once the bring-up and validation will be done. Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com>
2023-02-27arm64: dts: ti: k3-am625-verdin: fix PMIC wrong voltagesFrancesco Dolcini
Fix wrong voltage in the PMIC node, they were off by mistake by a factor of 10 (18V vs 1.8V). Because of that the PMIC driver was not correctly probed. Upstream-Status: Pending Initial DTS to be used for bring-up an validation of the V1.0 design, we'll decide on the step forward to mainline this once the bring-up and validation will be done. Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com>
2023-02-27arm64: dts: ti: k3-am625-verdin: fix on-module ethernetFrancesco Dolcini
Enable on-module PHY clock, move assigned clocks to the parent node (&cpsw3g_mdio), otherwise probe just fails because the clock is missing. Upstream-Status: Pending Initial DTS to be used for bring-up an validation of the V1.0 design, we'll decide on the step forward to mainline this once the bring-up and validation will be done. Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com>
2023-02-27arm64: dts: ti: k3-am625-verdin: add lvds_1 pinmux being mspMarcel Ziswiler
Add a Verdin LVDS_1 (MSP_4 to MSP_25, without MSP_8, MSP_13, MSP_18 and MSP_23) pinmux entry. Upstream-Status: Pending Initial DTS to be used for bring-up an validation of the V1.0 design, we'll decide on the step forward to mainline this once the bring-up and validation will be done. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2023-02-27arm64: dts: ti: k3-am625-verdin: remove spurious new lines and spacesMarcel Ziswiler
Remove some spurious new lines and spaces Upstream-Status: Pending Initial DTS to be used for bring-up an validation of the V1.0 design, we'll decide on the step forward to mainline this once the bring-up and validation will be done. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2023-02-24Merged TI feature connectivity into ti-linux-5.10.y-cicdVignesh Raghavendra
TI-Feature: connectivity TI-Branch: connectivity-ti-linux-5.10.y * 'connectivity-ti-linux-5.10.y' of ssh://bitbucket.itg.ti.com/lcpdpublicdom/connectivity: net: ethernet: ti: icssg_prueth: Remove Rx enable in init sequence Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
2023-02-23net: ethernet: ti: icssg_prueth: Remove Rx enable in init sequenceRavi Gunasekaran
During startup, when network traffic is present and the PRU firmware receives packets while the initialization is in process, Rx stalls. Fix this by moving the Rx enable from driver to firmware. Signed-off-by: Ravi Gunasekaran <r-gunasekaran@ti.com> Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
2023-02-22Merged TI feature multimedia into ti-linux-5.10.y-cicdLCPD Auto Merger
TI-Feature: multimedia TI-Branch: multimedia-ti-linux-5.10.y * 'multimedia-ti-linux-5.10.y' of ssh://bitbucket.itg.ti.com/lcpdpublicdom/multimedia: vxe-vxd: decoder: Capture buffer cleanup vxe-vxd: decoder: Improve performance of h265 decoder Signed-off-by: LCPD Auto Merger <lcpd_integration@list.ti.com>
2023-02-22vxe-vxd: decoder: Capture buffer cleanupBrandon Brnich
Buffers were being left in active state when streams were stopped which resulted in memory leaks and failures when restarting pipelines. Signed-off-by: Brandon Brnich <b-brnich@ti.com>
2023-02-22vxe-vxd: decoder: Improve performance of h265 decoderBrandon Brnich
h265 decoder performance has been significantly worse than h264 decoder due to latency in gstreamer format negotiation. Remove this latency by aligning the pixel resolution earlier. Signed-off-by: Brandon Brnich <b-brnich@ti.com>
2023-02-22Merged TI feature rpmsg into ti-linux-5.10.y-cicdLCPD Auto Merger
TI-Feature: rpmsg TI-Branch: rpmsg-ti-linux-5.10.y-intg * 'rpmsg-ti-linux-5.10.y-intg' of git://git.ti.com/rpmsg/rpmsg: remoteproc: ti_k3_m4_remoteproc: Fix build warnings around k3_m4_rproc_stop() remoteproc: ti_k3_m4_remoteproc: Fix unused-but-set-variable warnings Signed-off-by: LCPD Auto Merger <lcpd_integration@list.ti.com>
2023-02-22Merged TI feature platform_base into ti-linux-5.10.y-cicdLCPD Auto Merger
TI-Feature: platform_base TI-Branch: platform-ti-linux-5.10.y * 'platform-ti-linux-5.10.y' of ssh://bitbucket.itg.ti.com/lcpdpublicdom/platform: arm64: dts: ti: k3-am625-sk-lpmdemo: Add lpm region to dmsc arm64: dts: ti: k3-am62-main: rm lpm region from dmsc arm64: ti: dts: move 1.4GHZ OPP table to k3-am625 ti_config_fragments: v8_baseport: Enable MCRC module Signed-off-by: LCPD Auto Merger <lcpd_integration@list.ti.com>
2023-02-22arm64: dts: ti: k3-am625-sk-lpmdemo: Add lpm region to dmscDhruva Gole
This region is needed for the lpm stub to load and execute full system suspend. Also disable the wkup r5fss because it lacks LPM support. Signed-off-by: Dhruva Gole <d-gole@ti.com>
2023-02-22arm64: dts: ti: k3-am62-main: rm lpm region from dmscDhruva Gole
Remove the "lpm" region from am62-main DT and rather have it in the lpmdemo DT since Low Power Mode is currently said to be supported only using k3-am625-sk-lpmdemo This will help fix the k3_r5_rproc: probe issues Signed-off-by: Dhruva Gole <d-gole@ti.com>
2023-02-22arm64: ti: dts: move 1.4GHZ OPP table to k3-am625Dhruva Gole
Move the OPP Table entry for 1.4GHz from am62x-sk-common to am625-sk DT because it's not a common property across all sk variants of am62x Suggested-by: Vignesh Raghavendra <vigneshr@ti.com> Signed-off-by: Dhruva Gole <d-gole@ti.com>
2023-02-22ti_config_fragments: v8_baseport: Enable MCRC moduleKamlesh Gurudasani
K3 devices include MCRC engine for crc64 calculation. Enable module to be built for K3 devices. Also enable algif_hash module, which is needed to access MCRC module from userspace. Signed-off-by: Kamlesh Gurudasani <kamlesh@ti.com>
2023-02-22Merged TI feature platform_base into ti-linux-5.10.y-cicdLCPD Auto Merger
TI-Feature: platform_base TI-Branch: platform-ti-linux-5.10.y * 'platform-ti-linux-5.10.y' of ssh://bitbucket.itg.ti.com/lcpdpublicdom/platform: crypto: ti: mcrc: Add support for data length not multiple of 64-bit Signed-off-by: LCPD Auto Merger <lcpd_integration@list.ti.com>
2023-02-21Merge branch 'rpmsg-ti-linux-5.10.y' of git://git.ti.com/rpmsg/rpmsg into ↵Hari Nagalla
rpmsg-ti-linux-5.10.y-intg
2023-02-21Merge branch 'rproc-linux-5.10.y' of git://git.ti.com/rpmsg/remoteproc into ↵Hari Nagalla
rpmsg-ti-linux-5.10.y * 'rproc-linux-5.10.y' of git://git.ti.com/rpmsg/remoteproc: remoteproc: ti_k3_m4_remoteproc: Fix build warnings around k3_m4_rproc_stop() remoteproc: ti_k3_m4_remoteproc: Fix unused-but-set-variable warnings
2023-02-21remoteproc: ti_k3_m4_remoteproc: Fix build warnings around k3_m4_rproc_stop()Vignesh Raghavendra
Fix below warning: drivers/remoteproc/ti_k3_m4_remoteproc.c: In function 'k3_m4_rproc_stop': drivers/remoteproc/ti_k3_m4_remoteproc.c:379:46: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] 379 | ret = mbox_send_message(kproc->mbox, (void *)msg); | ^ Fixes: 99cff963c413 ("remoteproc: k3-m4: extend stop to send shutdown message to m4 core") Reported-by: kernel test robot <lkp@intel.com> Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
2023-02-21remoteproc: ti_k3_m4_remoteproc: Fix unused-but-set-variable warningsVignesh Raghavendra
Drop following unused variables All warnings (new ones prefixed by >>): drivers/remoteproc/ti_k3_m4_remoteproc.c: In function 'k3_m4_rproc_start': drivers/remoteproc/ti_k3_m4_remoteproc.c:333:13: warning: variable 'boot_addr' set but not used [-Wunused-but-set-variable] 333 | u32 boot_addr; | ^~~~~~~~~ drivers/remoteproc/ti_k3_m4_remoteproc.c: In function 'k3_m4_rproc_resume': drivers/remoteproc/ti_k3_m4_remoteproc.c:916:13: warning: variable 'ret' set but not used [-Wunused-but-set-variable] 916 | int ret = 0; | ^~~ Reported-by: kernel test robot <lkp@intel.com> Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
2023-02-21crypto: ti: mcrc: Add support for data length not multiple of 64-bitKamlesh Gurudasani
Add support for length of input data which is not multiple of 64-bit. Remaining bytes are processed using software calculation. Signed-off-by: Kamlesh Gurudasani <kamlesh@ti.com>
2023-02-21Merged TI feature connectivity into ti-linux-5.10.y-cicdLCPD Auto Merger
TI-Feature: connectivity TI-Branch: connectivity-ti-linux-5.10.y * 'connectivity-ti-linux-5.10.y' of ssh://bitbucket.itg.ti.com/lcpdpublicdom/connectivity: HACK: usb: dwc3-am62: Fix spurious wake up usb: dwc3-am62: Fix up wake-up configuration usb: dwc3: dwc3-am62: Enable as a wakeup soure by default arm64: dts: ti: k3-am62a7: Add overlay for second CPSW3G Port arm64: dts: ti: k3-am62a7-sk: Add alias for CPSW3G MAC port 1 Signed-off-by: LCPD Auto Merger <lcpd_integration@list.ti.com>
2023-02-21HACK: usb: dwc3-am62: Fix spurious wake upRoger Quadros
Enabling linestate wake up is causing spurious wake up on deep sleep. Disable it till root caused. Signed-off-by: Roger Quadros <rogerq@kernel.org> Tested-by: Ravi Gunasekaran <r-gunasekaran@ti.com> Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
2023-02-21usb: dwc3-am62: Fix up wake-up configurationRoger Quadros
Explicitly set and clear wakeup config so we don't leave anything to chance. Clear wakeup status on suspend so we know what caused wake up. Signed-off-by: Roger Quadros <rogerq@kernel.org> Tested-by: Ravi Gunasekaran <r-gunasekaran@ti.com> Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
2023-02-21usb: dwc3: dwc3-am62: Enable as a wakeup soure by defaultRoger Quadros
USB module can wakeup system. Enable it as a wakeup source by default. Finer grain wakeup enable/disable can be done from the power/wakeup system control file of the respective USB device. Signed-off-by: Roger Quadros <rogerq@kernel.org> Tested-by: Ravi Gunasekaran <r-gunasekaran@ti.com> Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
2023-02-21arm64: dts: ti: k3-am62a7: Add overlay for second CPSW3G PortSiddharth Vadapalli
The SK-Ethernet-DC01 Add-On Ethernet Card for AM62A-SK board supports RGMII mode. Add overlay to enable the second CPSW3G port in RGMII-RXID mode with the Add-On Ethernet Card. Signed-off-by: Siddharth Vadapalli <s-vadapalli@ti.com> Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
2023-02-21arm64: dts: ti: k3-am62a7-sk: Add alias for CPSW3G MAC port 1Siddharth Vadapalli
Add alias for CPSW3G MAC port 1 to enable kernel to fetch MAC Address directly from U-Boot. Signed-off-by: Siddharth Vadapalli <s-vadapalli@ti.com> Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
2023-02-21Merged TI feature platform_base into ti-linux-5.10.y-cicdLCPD Auto Merger
TI-Feature: platform_base TI-Branch: platform-ti-linux-5.10.y * 'platform-ti-linux-5.10.y' of ssh://bitbucket.itg.ti.com/lcpdpublicdom/platform: Revert "ti_config_fragments: v8_baseport: Enable TPS6594X MFD & RTC configs" Signed-off-by: LCPD Auto Merger <lcpd_integration@list.ti.com>
2023-02-21Revert "ti_config_fragments: v8_baseport: Enable TPS6594X MFD & RTC configs"Udit Kumar
This reverts commit e2cb4c14c4f45d49273f9de0d5c39c23fc2b14ff. This commit was leading to kernel crash at J7200 board. Signed-off-by: Udit Kumar <u-kumar1@ti.com>
2023-02-19Merge tag 'v5.10.168' of ↵Vignesh Raghavendra
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux into ti-linux-5.10.y-cicd This is the 5.10.168 stable release * tag 'v5.10.168' of https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux: (286 commits) Linux 5.10.168 Fix page corruption caused by racy check in __free_pages arm64: dts: meson-axg: Make mmc host controller interrupts level-sensitive arm64: dts: meson-g12-common: Make mmc host controller interrupts level-sensitive arm64: dts: meson-gx: Make mmc host controller interrupts level-sensitive riscv: Fixup race condition on PG_dcache_clean in flush_icache_pte ceph: flush cap releases when the session is flushed usb: typec: altmodes/displayport: Fix probe pin assign check usb: core: add quirk for Alcor Link AK9563 smartcard reader btrfs: free device in btrfs_close_devices for a single device filesystem net: USB: Fix wrong-direction WARNING in plusb.c cifs: Fix use-after-free in rdata->read_into_pages() pinctrl: intel: Restore the pins that used to be in Direct IRQ mode spi: dw: Fix wrong FIFO level setting for long xfers pinctrl: single: fix potential NULL dereference pinctrl: aspeed: Fix confusing types in return value ALSA: pci: lx6464es: fix a debug loop selftests: forwarding: lib: quote the sysctl values rds: rds_rm_zerocopy_callback() use list_first_entry() net/mlx5: fw_tracer, Zero consumer index when reloading the tracer ... Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
2023-02-17arm64: dts: ti: k3-am625-verdin: Add support for Wi-Fi/BTFrancesco Dolcini
Add support for Wi-Fi and BT. Upstream-Status: Pending Initial DTS to be used for bring-up an validation of the V1.0 design, we'll decide on the step forward to mainline this once the bring-up and validation will be done. Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com>
2023-02-17Merged TI feature connectivity into ti-linux-5.10.y-cicdLCPD Auto Merger
TI-Feature: connectivity TI-Branch: connectivity-ti-linux-5.10.y * 'connectivity-ti-linux-5.10.y' of ssh://bitbucket.itg.ti.com/lcpdpublicdom/connectivity: net: hsr: Fix build error after merging linux-stable Signed-off-by: LCPD Auto Merger <lcpd_integration@list.ti.com>
2023-02-17net: hsr: Fix build error after merging linux-stableRavi Gunasekaran
Fix the build error in send_hsr_supervision_frame Fixes: 8ffeeca90755 ("Merge tag 'v5.10.165' of https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux into ti-linux-5.10.y-cicd") Signed-off-by: Ravi Gunasekaran <r-gunasekaran@ti.com> Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
2023-02-16Merged TI feature platform_base into ti-linux-5.10.y-cicdLCPD Auto Merger
TI-Feature: platform_base TI-Branch: platform-ti-linux-5.10.y * 'platform-ti-linux-5.10.y' of ssh://bitbucket.itg.ti.com/lcpdpublicdom/platform: ti_config_fragments: v8_baseport: Enable CPU Idle ti_config_fragments: v8_baseport: Enable TPS6594X MFD & RTC configs Signed-off-by: LCPD Auto Merger <lcpd_integration@list.ti.com>
2023-02-16ti_config_fragments: v8_baseport: Enable CPU IdleVibhore Vardhan
Enables CPU Idle framework and the default Menu governor for CPU idle time management. The framework can be used to customize the CPU idle states through the sysfs interface [1]. This should not impact existing K3 platforms that do not have idle states defined in the DT files. Standby WFI state is considered standard on all ARM platforms [2]. ARM core and cluster level power states other than WFI are currently unexplored on K3 devices. There was no noticeable change in power consumption or memory footprint by enabling this option on AM62x-sk board. [1] https://www.kernel.org/doc/html/latest/admin-guide/pm/cpuidle.html [2] From __initdata in drivers/cpuidle/cpuidle-arm.c Signed-off-by: Vibhore Vardhan <vibhore@ti.com>
2023-02-16ti_config_fragments: v8_baseport: Enable TPS6594X MFD & RTC configsKeerthy
The driver & dts changes for TPS6594X PMIC are in place. Enable the Configs for the same in v8_baseport.cfg instead of baseport.cfg Fixes: 456f93c4ef84 ("ti_config_fragments: baseport: Enable TPS6594X MFD & RTC configs") Signed-off-by: Keerthy <j-keerthy@ti.com>
2023-02-16Merge tag 'v5.10.165' of ↵Vignesh Raghavendra
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux into ti-linux-5.10.y-cicd This is the 5.10.165 stable release * tag 'v5.10.165' of https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux: (951 commits) Linux 5.10.165 io_uring/rw: remove leftover debug statement io_uring/rw: ensure kiocb_end_write() is always called io_uring: fix double poll leak on repolling io_uring: Clean up a false-positive warning from GCC 9.3.0 mm/khugepaged: fix collapse_pte_mapped_thp() to allow anon_vma Bluetooth: hci_qca: Fixed issue during suspend Bluetooth: hci_qca: check for SSR triggered flag while suspend Bluetooth: hci_qca: Wait for SSR completion during suspend soc: qcom: apr: Make qcom,protection-domain optional again Revert "wifi: mac80211: fix memory leak in ieee80211_if_add()" net/mlx5: fix missing mutex_unlock in mlx5_fw_fatal_reporter_err_work() net/ulp: use consistent error code when blocking ULP io_uring/net: fix fast_iov assignment in io_setup_async_msg() io_uring: io_kiocb_update_pos() should not touch file for non -1 offset tracing: Use alignof__(struct {type b;}) instead of offsetof() x86/fpu: Use _Alignof to avoid undefined behavior in TYPE_ALIGN Revert "drm/amdgpu: make display pinning more flexible (v2)" efi: rt-wrapper: Add missing include arm64: efi: Execute runtime services from a dedicated stack ... Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com> # Conflicts: # net/hsr/hsr_device.c # net/hsr/hsr_forward.c
2023-02-15Linux 5.10.168Greg Kroah-Hartman
Link: https://lore.kernel.org/r/20230213144745.696901179@linuxfoundation.org Tested-by: Pavel Machek (CIP) <pavel@denx.de> Tested-by: Shuah Khan <skhan@linuxfoundation.org> Tested-by: Sudip Mukherjee <sudip.mukherjee@codethink.co.uk> Tested-by: Hulk Robot <hulkrobot@huawei.com> Link: https://lore.kernel.org/r/20230214172549.450713187@linuxfoundation.org Tested-by: Jon Hunter <jonathanh@nvidia.com> Tested-by: Guenter Roeck <linux@roeck-us.net> Tested-by: Linux Kernel Functional Testing <lkft@linaro.org> Tested-by: Sudip Mukherjee <sudip.mukherjee@codethink.co.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-02-15Fix page corruption caused by racy check in __free_pagesDavid Chen
commit 462a8e08e0e6287e5ce13187257edbf24213ed03 upstream. When we upgraded our kernel, we started seeing some page corruption like the following consistently: BUG: Bad page state in process ganesha.nfsd pfn:1304ca page:0000000022261c55 refcount:0 mapcount:-128 mapping:0000000000000000 index:0x0 pfn:0x1304ca flags: 0x17ffffc0000000() raw: 0017ffffc0000000 ffff8a513ffd4c98 ffffeee24b35ec08 0000000000000000 raw: 0000000000000000 0000000000000001 00000000ffffff7f 0000000000000000 page dumped because: nonzero mapcount CPU: 0 PID: 15567 Comm: ganesha.nfsd Kdump: loaded Tainted: P B O 5.10.158-1.nutanix.20221209.el7.x86_64 #1 Hardware name: VMware, Inc. VMware Virtual Platform/440BX Desktop Reference Platform, BIOS 6.00 04/05/2016 Call Trace: dump_stack+0x74/0x96 bad_page.cold+0x63/0x94 check_new_page_bad+0x6d/0x80 rmqueue+0x46e/0x970 get_page_from_freelist+0xcb/0x3f0 ? _cond_resched+0x19/0x40 __alloc_pages_nodemask+0x164/0x300 alloc_pages_current+0x87/0xf0 skb_page_frag_refill+0x84/0x110 ... Sometimes, it would also show up as corruption in the free list pointer and cause crashes. After bisecting the issue, we found the issue started from commit e320d3012d25 ("mm/page_alloc.c: fix freeing non-compound pages"): if (put_page_testzero(page)) free_the_page(page, order); else if (!PageHead(page)) while (order-- > 0) free_the_page(page + (1 << order), order); So the problem is the check PageHead is racy because at this point we already dropped our reference to the page. So even if we came in with compound page, the page can already be freed and PageHead can return false and we will end up freeing all the tail pages causing double free. Fixes: e320d3012d25 ("mm/page_alloc.c: fix freeing non-compound pages") Link: https://lore.kernel.org/lkml/BYAPR02MB448855960A9656EEA81141FC94D99@BYAPR02MB4488.namprd02.prod.outlook.com/ Cc: Andrew Morton <akpm@linux-foundation.org> Cc: stable@vger.kernel.org Signed-off-by: Chunwei Chen <david.chen@nutanix.com> Reviewed-by: Vlastimil Babka <vbabka@suse.cz> Reviewed-by: Matthew Wilcox (Oracle) <willy@infradead.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-02-15arm64: dts: meson-axg: Make mmc host controller interrupts level-sensitiveHeiner Kallweit
commit d182bcf300772d8b2e5f43e47fa0ebda2b767cc4 upstream. The usage of edge-triggered interrupts lead to lost interrupts under load, see [0]. This was confirmed to be fixed by using level-triggered interrupts. The report was about SDIO. However, as the host controller is the same for SD and MMC, apply the change to all mmc controller instances. [0] https://www.spinics.net/lists/linux-mmc/msg73991.html Fixes: 221cf34bac54 ("ARM64: dts: meson-axg: enable the eMMC controller") Reported-by: Peter Suti <peter.suti@streamunlimited.com> Tested-by: Vyacheslav Bocharov <adeep@lexina.in> Tested-by: Peter Suti <peter.suti@streamunlimited.com> Cc: stable@vger.kernel.org Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com> Acked-by: Neil Armstrong <neil.armstrong@linaro.org> Link: https://lore.kernel.org/r/c00655d3-02f8-6f5f-4239-ca2412420cad@gmail.com Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-02-15arm64: dts: meson-g12-common: Make mmc host controller interrupts ↵Heiner Kallweit
level-sensitive commit ac8db4cceed218cca21c84f9d75ce88182d8b04f upstream. The usage of edge-triggered interrupts lead to lost interrupts under load, see [0]. This was confirmed to be fixed by using level-triggered interrupts. The report was about SDIO. However, as the host controller is the same for SD and MMC, apply the change to all mmc controller instances. [0] https://www.spinics.net/lists/linux-mmc/msg73991.html Fixes: 4759fd87b928 ("arm64: dts: meson: g12a: add mmc nodes") Tested-by: FUKAUMI Naoki <naoki@radxa.com> Tested-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com> Tested-by: Jerome Brunet <jbrunet@baylibre.com> Cc: stable@vger.kernel.org Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com> Acked-by: Neil Armstrong <neil.armstrong@linaro.org> Link: https://lore.kernel.org/r/27d89baa-b8fa-baca-541b-ef17a97cde3c@gmail.com Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-02-15arm64: dts: meson-gx: Make mmc host controller interrupts level-sensitiveHeiner Kallweit
commit 66e45351f7d6798751f98001d1fcd572024d87f0 upstream. The usage of edge-triggered interrupts lead to lost interrupts under load, see [0]. This was confirmed to be fixed by using level-triggered interrupts. The report was about SDIO. However, as the host controller is the same for SD and MMC, apply the change to all mmc controller instances. [0] https://www.spinics.net/lists/linux-mmc/msg73991.html Fixes: ef8d2ffedf18 ("ARM64: dts: meson-gxbb: add MMC support") Cc: stable@vger.kernel.org Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com> Acked-by: Neil Armstrong <neil.armstrong@linaro.org> Link: https://lore.kernel.org/r/76e042e0-a610-5ed5-209f-c4d7f879df44@gmail.com Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>