aboutsummaryrefslogtreecommitdiffstats
path: root/arch
AgeCommit message (Collapse)AuthorFilesLines
2021-12-14ARM: dts: imx6qdl-dhcom: Align PHY reset timing with other DHCOM SoMsChristoph Niedermaier1-2/+2
According to datasheet Microchip LAN8710A/LAN8710Ai DS00002164B [1] the reset should stay asserted for at least 100uS and software should wait at least 200nS. On other DHCOM SoMs with the SMSC LAN8710Ai PHY both reset delays are 500us. This should be plenty and for consistency, the i.MX6 SoM should also use these delays. [1] https://ww1.microchip.com/downloads/en/DeviceDoc/00002164B.pdf Signed-off-by: Christoph Niedermaier <cniedermaier@dh-electronics.com> Cc: Shawn Guo <shawnguo@kernel.org> Cc: Fabio Estevam <festevam@denx.de> Cc: Marek Vasut <marex@denx.de> Cc: NXP Linux Team <linux-imx@nxp.com> Cc: kernel@dh-electronics.com To: linux-arm-kernel@lists.infradead.org Reviewed-by: Fabio Estevam <festevam@denx.de> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2021-12-14arm64: defconfig: enable drivers for booting i.MX8ULPPeng Fan1-0/+2
Select i.MX8ULP CLK and PINCTRL driver to make it boot. Signed-off-by: Peng Fan <peng.fan@nxp.com> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2021-12-14Merge tag 'ixp4xx-dtx-v5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-nomadik into arm/dtArnd Bergmann5-1/+370
IXP4xx DTS changes for v5.17: - Add the LEDs to the Freecom FSG-3 that were missing. - Add a devicetree for the Gorami MultiLink Router - Add a devicetree for the Gateway GW7001 Router This completes the migration of all IXP4xx devices to device tree files. Next merge window we will delete the remaining board files, it cannot be done now because of cross-tree dependencies. * tag 'ixp4xx-dtx-v5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-nomadik: ARM: dts: ixp4xx: Add devicetree for Gateway 7001 ARM: dts: Add Goramo MultiLink device tree ARM: dts: Add FSG3 system controller and LEDs Link: https://lore.kernel.org/r/CACRpkdYiWK7TEbZrh4_0WT5obMk=ZSc7AQVUSPXL+-uZ_hsUEA@mail.gmail.com Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2021-12-14ARM: dts: imx6qdl: drop "fsl,imx-ckih1"Giulio Benetti1-1/+1
"fsl,imx-ckih1" is useless since no driver deals with it, so let's drop it. Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2021-12-14ARM: dts: imx6qdl: drop "fsl,imx-ckil"Giulio Benetti1-1/+1
"fsl,imx-ckil" is useless since no driver deals with it, so let's drop it. Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2021-12-14ARM: dts: imx6qdl: drop "fsl,imx-osc"Giulio Benetti1-1/+1
"fsl,imx-osc" is useless since no driver deals with it, so let's drop it. Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2021-12-14ARM: dts: imx53: drop "fsl,imx-ckih2"Giulio Benetti1-1/+1
"fsl,imx-ckih2" is useless since no driver deals with it, so let's drop it. Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2021-12-14ARM: dts: imx53: drop "fsl,imx-ckih1"Giulio Benetti1-1/+1
"fsl,imx-ckih1" is useless since no driver deals with it, so let's drop it. Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2021-12-14ARM: dts: imx53: drop "fsl,imx-ckil"Giulio Benetti1-1/+1
"fsl,imx-ckil" is useless since no driver deals with it, so let's drop it. Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2021-12-14ARM: dts: imx53: drop "fsl,imx-osc"Giulio Benetti1-1/+1
"fsl,imx-osc" is useless since no driver deals with it, so let's drop it. Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2021-12-14ARM: dts: imx51: drop "fsl,imx-ckih2"Giulio Benetti1-1/+1
"fsl,imx-ckih2" is useless since no driver deals with it, so let's drop it. Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2021-12-14ARM: dts: imx51: drop "fsl,imx-ckih1"Giulio Benetti1-1/+1
"fsl,imx-ckih1" is useless since no driver deals with it, so let's drop it. Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2021-12-14ARM: dts: imx51: drop "fsl,imx-ckil"Giulio Benetti1-1/+1
"fsl,imx-ckil" is useless since no driver deals with it, so let's drop it. Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2021-12-14ARM: dts: imx51: drop "fsl,imx-osc"Giulio Benetti1-1/+1
"fsl,imx-osc" is useless since no driver deals with it, so let's drop it. Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2021-12-14ARM: dts: imx50: drop "fsl,imx-ckih2"Giulio Benetti1-1/+1
"fsl,imx-ckih2" is useless since no driver deals with it, so let's drop it. Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2021-12-14ARM: dts: imx50: drop "fsl,imx-ckih1"Giulio Benetti1-1/+1
"fsl,imx-ckih1" is useless since no driver deals with it, so let's drop it. Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2021-12-14ARM: dts: imx50: drop "fsl,imx-ckil"Giulio Benetti1-1/+1
"fsl,imx-ckil" is useless since no driver deals with it, so let's drop it. Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2021-12-14ARM: dts: imx50: drop "fsl,imx-osc"Giulio Benetti1-1/+1
"fsl,imx-osc" is useless since no driver deals with it, so let's drop it. Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2021-12-14ARM: dts: imx25: drop "fsl,imx-osc"Giulio Benetti1-1/+1
"fsl,imx-osc" is useless since no driver deals with it, so let's drop it. Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2021-12-14ARM: dts: imx1: drop "fsl,imx-clk32"Giulio Benetti1-1/+1
"fsl,imx-clk32" is useless since no driver deals with it, so let's drop it. Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2021-12-14ARM: dts: imx7: Group mipi_csi 'port' children in a 'ports' nodeLaurent Pinchart2-15/+19
The nxp,imx7-mipi-csi2.yaml binding requires ports to be grouped in a ports node, as multiple ports are present. Fix imx7s.dtsi and the only board file that references the mipi_csi ports. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2021-12-14ARM: dts: imx7: Drop reset-names property for mipi_csi nodeLaurent Pinchart1-1/+0
The reset-names property isn't defined by the nxp,imx7-mipi-csi2.yaml binding, and isn't used by the corresponding driver as it acquires the reset with a NULL ID. Drop it. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2021-12-14ARM: dts: imx7s-warp: Drop undefined property in mipi_csi nodeLaurent Pinchart1-1/+0
The fsl,csis-hs-settle property isn't defined by the nxp,imx7-mipi-csi2.yaml binding, and isn't parsed by the corresponding driver. Drop it. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2021-12-14ARM: dts: imx: Change spba to spba-busAdam Ford6-6/+6
With the updated dt-bindings for the spba-bus, rename spba@xxxx to spba-bus@xxxx. There are no functional changes. Signed-off-by: Adam Ford <aford173@gmail.com> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2021-12-14Merge tag 'at91-dt-5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/at91/linux into arm/dtArnd Bergmann7-4/+318
AT91 DT #1 for 5.17: - 2 low priority fixes about pin function for sama7g5 and better tailored mmc interface on sama5d2 xplained - Addition of the Microchip EVB-KSZ9477: a Gigabit Ethernet managed Switch Evaluation Board - QSPI: addition of sama5d2 clock name and nodes for new sama7g7 and its associated Evaluation Kit * tag 'at91-dt-5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/at91/linux: ARM: dts: at91: sama7g5ek: Add QSPI0 node ARM: dts: at91: sama7g5: Add QSPI nodes ARM: dts: at91: sama5d2: Name the qspi clock ARM: dts: at91: add Microchip EVB-KSZ9477 board ARM: dts: at91: sama5d2_xplained: remove PA11__SDMMC0_VDDSEL from pinctrl ARM: dts: at91: update alternate function of signal PD20 Link: https://lore.kernel.org/r/20211213161451.90786-1-nicolas.ferre@microchip.com Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2021-12-14Merge tag 'amlogic-arm64-dt-for-v5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/amlogic/linux into arm/dtArnd Bergmann5-59/+162
Amlogic ARM64 DT changes for v5.17: - Add missing cec nodes for Odroid-C4 & HC4 - Fix thermal-zones indent for G12/SM1 SoCs dtsi - Fix GPU OPP table node name for G12/SM1 SoCs dtsi - Fix SPI NOR Flash node name for Odroid-N2/N2+ - Fixes for GXBB Wetek boards: - Fix HDMI supply - Add missing gpio bindings include - Switch to new LED bindings - P241 additions: - Add VCC 5v regulator - Add sound nodes * tag 'amlogic-arm64-dt-for-v5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/amlogic/linux: arm64: dts: meson: p241: add sound support arm64: dts: meson: p241: add vcc_5v regulator arm64: dts: meson-gxbb-wetek: use updated LED bindings arm64: dts: meson-gxbb-wetek: fix missing GPIO binding arm64: dts: meson-gxbb-wetek: fix HDMI in early boot arm64: dts: amlogic: Fix SPI NOR flash node name for ODROID N2/N2+ arm64: dts: amlogic: meson-g12: Fix GPU operating point table node name arm64: dts: amlogic: meson-g12: Fix thermal-zones indent arm64: dts: meson-sm1-odroid: add cec nodes Link: https://lore.kernel.org/r/f47b9b95-6cde-d2f8-eb36-78777d449920@baylibre.com Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2021-12-13arm64: dts: qcom: sm7225-fairphone-fp4: Enable ADSP, CDSP & MPSSLuca Weiss1-0/+31
Enable the remoteprocs found on the SoC and add a qcom,rmtfs-mem node. Signed-off-by: Luca Weiss <luca.weiss@fairphone.com> Reviewed-by: Konrad Dybcio <konrad.dybcio@somainline.org> Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org> Link: https://lore.kernel.org/r/20211213082208.21492-9-luca.weiss@fairphone.com
2021-12-14Merge tag 'v5.17-rockchip-dts64-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip into arm/dtArnd Bergmann9-24/+232
Improvements on a number of boards: - helios64: hdd-power, pcie, 2.5GbE nic - spi for rk356x and on the Quartz-A board - headphone, bluetooth support on Rock Pi4 And some misc soc improvements: - missing dsi compatible on px30 - pwm pinctrl name on rk356x * tag 'v5.17-rockchip-dts64-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip: arm64: dts: rockchip: Fix Bluetooth on ROCK Pi 4 boards arm64: dts: rockchip: Add missing secondary compatible for PX30 DSI arm64: dts: rockchip: Add spi1 pins on Quartz64 A arm64: dts: rockchip: Add spi nodes on rk356x arm64: dts: rockchip: Change pwm pinctrl-name to "default" on rk356x arm64: dts: rockchip: Enable HDD power on helios64 arm64: dts: rockchip: add variables for pcie completion to helios64 arm64: dts: rockchip: define usb hub and 2.5GbE nic on helios64 arm64: dts: rockchip: add interrupt and headphone-detection for Rock Pi4's audio codec Link: https://lore.kernel.org/r/3637342.7akbv5NDAT@phil Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2021-12-13arm64: dts: qcom: sm6350: Add CDSP nodesLuca Weiss1-0/+122
Add the required nodes for booting the CDSP on sm6350. Signed-off-by: Luca Weiss <luca.weiss@fairphone.com> Reviewed-by: Konrad Dybcio <konrad.dybcio@somainline.org> Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org> Link: https://lore.kernel.org/r/20211213082208.21492-8-luca.weiss@fairphone.com
2021-12-13arm64: dts: qcom: sm6350: Add ADSP nodesLuca Weiss1-0/+91
Add the required nodes for booting the ADSP on sm6350. Signed-off-by: Luca Weiss <luca.weiss@fairphone.com> Reviewed-by: Konrad Dybcio <konrad.dybcio@somainline.org> Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org> Link: https://lore.kernel.org/r/20211213082208.21492-6-luca.weiss@fairphone.com
2021-12-13arm64: dts: qcom: sm6350: Add MPSS nodesLuca Weiss1-0/+66
Add the required nodes for booting the MPSS on sm6350. Signed-off-by: Luca Weiss <luca.weiss@fairphone.com> Reviewed-by: Konrad Dybcio <konrad.dybcio@somainline.org> Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org> Link: https://lore.kernel.org/r/20211213082208.21492-4-luca.weiss@fairphone.com
2021-12-13arm64: dts: qcom: sm6350: Fix validation errorsLuca Weiss1-8/+8
Sort clocks and interrupts as specified in the docs and remove the stray property #power-domain-cells from aoss_qmp to solve dtbs_check validation errors. Signed-off-by: Luca Weiss <luca.weiss@fairphone.com> Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org> Link: https://lore.kernel.org/r/20211213082614.22651-11-luca.weiss@fairphone.com
2021-12-13ARM: multi_v7_defconfig: Enable drivers for DragonBoard 410cStephan Gerhold1-2/+55
The DragonBoard 410c is mainly supported by the ARM64 architecture and defconfig, but it can also run well on the ARM32 architecture. Add the necessary options to the multi_v7_defconfig to simplify building an ARM32 kernel for DragonBoard 410c. This is also a possible opportunity to slightly increase CI coverage for older Qualcomm-based ARM32 platforms that are currently not represented well in automated CI setups. The APQ8016 SoC used in DB410c is still quite similar to those. DB410c is already used in some CI systems so the same hardware could be re-used to get some basic ARM32 boot testing. When deciding between built-in (y) and module (m), I usually used the same that is already being used (and functional) in the ARM64 defconfig. Signed-off-by: Stephan Gerhold <stephan@gerhold.net> Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org> Link: https://lore.kernel.org/r/20211213113250.4249-2-stephan@gerhold.net
2021-12-13ARM: dts: qcom: Build apq8016-sbc/DragonBoard 410c DTB on ARM32Stephan Gerhold2-0/+3
The DragonBoard 410c is a convenient device for testing and debugging. Since there is support for using ARM32 kernels on MSM8916 now, also build the DB410c DTB on ARM32 so it can be used for testing. ARM64 is still the main supported architecture for DB410c but it actually works great on ARM32 as well. The "apq8016-sbc.dts" is simply included as-is from ARM64 similar to the approach used for Raspberry Pi (e.g. bcm2711-rpi-4-b.dts). Signed-off-by: Stephan Gerhold <stephan@gerhold.net> Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org> Link: https://lore.kernel.org/r/20211213113250.4249-1-stephan@gerhold.net
2021-12-13Merge tag 'asahi-soc-dt-5.17' of https://github.com/AsahiLinux/linux into arm/dtArnd Bergmann9-29/+1536
Apple SoC DT updates for 5.17: - Separate DTs for all t8103 platforms - Add i2c and cd321x nodes - Bindings for apple,wdt - PMGR bindings and DT updates to instantiate it - WiFi MAC address DT handling This also includes the MAINTAINERS change for the PMGR driver itself, to avoid merge issues; the driver will be sent in a different pull. Manual fixups: Added i2c power domain references to the PMGR DT commit, since a prior commit added the i2c nodes. * tag 'asahi-soc-dt-5.17' of https://github.com/AsahiLinux/linux: arm64: dts: apple: t8103: Expose PCI node for the WiFi MAC address arm64: dts: apple: t8103: Add UART2 arm64: dts: apple: t8103: Add PMGR nodes dt-bindings: arm: apple: Add apple,pmgr binding dt-bindings: power: Add apple,pmgr-pwrstate binding MAINTAINERS: Add PMGR power state files to ARM/APPLE MACHINE dt-bindings: watchdog: Add Apple Watchdog dt-bindings: interrupt-controller: apple,aic: Add power-domains property dt-bindings: pinctrl: apple,pinctrl: Add power-domains property dt-bindings: iommu: apple,dart: Add power-domains property dt-bindings: i2c: apple,i2c: Add power-domains property arm64: dts: apple: t8103: Add cd321x nodes arm64: dts: apple: t8103: Add i2c nodes arm64: dts: apple: Add missing M1 (t8103) devices dt-bindings: arm: apple: Add iMac (24-inch 2021) to Apple bindings arm64: dts: apple: add #interrupt-cells property to pinctrl nodes dt-bindings: i2c: apple,i2c: allow multiple compatibles arm64: dts: apple: change ethernet0 device type to ethernet Link: https://lore.kernel.org/r/e18b476c-7b1f-de73-53a2-0e21fb5cd283@marcan.st Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2021-12-13ARM: dts: gemini: NAS4220-B: fis-index-block with 128 KiB sectorsChristian Lamparter1-1/+1
Steven Maddox reported in the OpenWrt bugzilla, that his RaidSonic IB-NAS4220-B was no longer booting with the new OpenWrt 21.02 (uses linux 5.10's device-tree). However, it was working with the previous OpenWrt 19.07 series (uses 4.14). |[ 5.548038] No RedBoot partition table detected in 30000000.flash |[ 5.618553] Searching for RedBoot partition table in 30000000.flash at offset 0x0 |[ 5.739093] No RedBoot partition table detected in 30000000.flash |... |[ 7.039504] Waiting for root device /dev/mtdblock3... The provided bootlog shows that the RedBoot partition parser was looking for the partition table "at offset 0x0". Which is strange since the comment in the device-tree says it should be at 0xfe0000. Further digging on the internet led to a review site that took some useful PCB pictures of their review unit back in February 2009. Their picture shows a Spansion S29GL128N11TFI01 flash chip. >From Spansion's Datasheet: "S29GL128N: One hundred twenty-eight 64 Kword (128 Kbyte) sectors" Steven also provided a "cat /sys/class/mtd/mtd0/erasesize" from his unit: "131072". With the 128 KiB Sector/Erasesize in mind. This patch changes the fis-index-block property to (0xfe0000 / 0x20000) = 0x7f. Fixes: b5a923f8c739 ("ARM: dts: gemini: Switch to redboot partition parsing") Reported-by: Steven Maddox <s.maddox@lantizia.me.uk> Signed-off-by: Christian Lamparter <chunkeey@gmail.com> Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Tested-by: Steven Maddox <s.maddox@lantizia.me.uk> Link: https://lore.kernel.org/r/20211206004334.4169408-1-linus.walleij@linaro.org' Bugzilla: https://bugs.openwrt.org/index.php?do=details&task_id=4137 Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2021-12-13Merge tag 'tags/bcm2835-dt-next-2021-12-13' into devicetree/nextFlorian Fainelli1-14/+14
Uwe Kleine-König adds offsets to GPIO line names array for better readability. Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2021-12-13Merge tag 'ux500-dts-v5.17-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-nomadik into arm/dtArnd Bergmann2-20/+45
Ux500 DTS updates for the v5.17 kernel series: - Add reset lines to applicable IP blocks - Fix the magnetometer in the Gavini device tree * tag 'ux500-dts-v5.17-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-nomadik: ARM: dts: ux500: Fixup Gavini magnetometer ARM: dts: ux500: Add reset lines to IP blocks Link: https://lore.kernel.org/r/CACRpkdZuDPLj5Tcxbyd+JGfvBGQ8RuMP9PAsGsZT7pY8KoyOKg@mail.gmail.com Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2021-12-13Merge tag 'renesas-arm-dt-for-v5.17-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel into arm/dtArnd Bergmann20-66/+513
Renesas ARM DT updates for v5.17 - Serial, SPI, timer, watchdog, operating points, and QSPI FLASH support for the RZ/G2L SoC and the RZ/G2L SMARC EVK development board, - SDHI SDnH clocks for the R-Car Gen3 and RZ/G2 SoCs, - Display Unit support for the R-Car V3U SoC, - Miscellaneous fixes and improvements. * tag 'renesas-arm-dt-for-v5.17-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel: (21 commits) arm64: dts: renesas: r8a779a0: Add DU support arm64: dts: renesas: salvator-common: Merge hdmi0_con arm64: dts: renesas: ulcb: Merge hdmi0_con arm64: dts: renesas: r9a07g044: Add OPP table arm64: dts: renesas: Fix operating point table node names arm64: dts: renesas: rzg2l-smarc-som: Enable watchdog arm64: dts: renesas: r9a07g044: Add WDT nodes arm64: dts: renesas: r9a07g044: Rename SDHI clocks arm64: dts: renesas: rzg2l-smarc-som: Enable serial NOR flash arm64: dts: renesas: rzg2l-smarc-som: Enable OSTM arm64: dts: renesas: r9a07g044: Add OSTM nodes arm64: dts: renesas: r9a07g044: Sort psci node arm64: dts: renesas: rzg2l-smarc: Enable RSPI1 on carrier board arm64: dts: renesas: r9a07g044: Add RSPI{0,1,2} nodes arm64: dts: renesas: cat875: Add rx/tx delays arm64: dts: reneas: rcar-gen3: Add SDnH clocks arm64: dts: reneas: rzg2: Add SDnH clocks arm64: dts: renesas: r9a07g044: Add SCI[0-1] nodes arm64: dts: renesas: rzg2l-smarc: Enable SCIF2 on carrier board arm64: dts: renesas: r9a07g044: Add SCIF[1-4] nodes ... Link: https://lore.kernel.org/r/cover.1638530606.git.geert+renesas@glider.be Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2021-12-13arm64: cpufeature: add HWCAP for FEAT_RPRESJoey Gouly4-0/+5
Add a new HWCAP to detect the Increased precision of Reciprocal Estimate and Reciprocal Square Root Estimate feature (FEAT_RPRES), introduced in Armv8.7. Also expose this to userspace in the ID_AA64ISAR2_EL1 feature register. Signed-off-by: Joey Gouly <joey.gouly@arm.com> Cc: Will Deacon <will@kernel.org> Cc: Jonathan Corbet <corbet@lwn.net> Acked-by: Marc Zyngier <maz@kernel.org> Link: https://lore.kernel.org/r/20211210165432.8106-4-joey.gouly@arm.com Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
2021-12-13arm64: add ID_AA64ISAR2_EL1 sys registerJoey Gouly5-1/+27
This is a new ID register, introduced in 8.7. Signed-off-by: Joey Gouly <joey.gouly@arm.com> Cc: Will Deacon <will@kernel.org> Cc: Marc Zyngier <maz@kernel.org> Cc: James Morse <james.morse@arm.com> Cc: Alexandru Elisei <alexandru.elisei@arm.com> Cc: Suzuki K Poulose <suzuki.poulose@arm.com> Cc: Reiji Watanabe <reijiw@google.com> Acked-by: Marc Zyngier <maz@kernel.org> Link: https://lore.kernel.org/r/20211210165432.8106-3-joey.gouly@arm.com Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
2021-12-13arm64: cpufeature: add HWCAP for FEAT_AFPJoey Gouly5-0/+6
Add a new HWCAP to detect the Alternate Floating-point Behaviour feature (FEAT_AFP), introduced in Armv8.7. Also expose this to userspace in the ID_AA64MMFR1_EL1 feature register. Signed-off-by: Joey Gouly <joey.gouly@arm.com> Cc: Will Deacon <will@kernel.org> Acked-by: Marc Zyngier <maz@kernel.org> Link: https://lore.kernel.org/r/20211210165432.8106-2-joey.gouly@arm.com Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
2021-12-13arm64: mm: log potential KASAN shadow aliasMark Rutland1-0/+2
When the kernel is built with KASAN_GENERIC or KASAN_SW_TAGS, shadow memory is allocated and mapped for all legitimate kernel addresses, and prior to a regular memory access instrumentation will read from the corresponding shadow address. Due to the way memory addresses are converted to shadow addresses, bogus pointers (e.g. NULL) can generate shadow addresses out of the bounds of allocated shadow memory. For example, with KASAN_GENERIC and 48-bit VAs, NULL would have a shadow address of dfff800000000000, which falls between the TTBR ranges. To make such cases easier to debug, this patch makes die_kernel_fault() dump the real memory address range for any potential KASAN shadow access using kasan_non_canonical_hook(), which results in fault information as below when KASAN is enabled: | Unable to handle kernel paging request at virtual address dfff800000000017 | KASAN: null-ptr-deref in range [0x00000000000000b8-0x00000000000000bf] | Mem abort info: | ESR = 0x96000004 | EC = 0x25: DABT (current EL), IL = 32 bits | SET = 0, FnV = 0 | EA = 0, S1PTW = 0 | FSC = 0x04: level 0 translation fault | Data abort info: | ISV = 0, ISS = 0x00000004 | CM = 0, WnR = 0 | [dfff800000000017] address between user and kernel address ranges Signed-off-by: Mark Rutland <mark.rutland@arm.com> Cc: Alexander Potapenko <glider@google.com> Cc: Andrey Konovalov <andreyknvl@gmail.com> Cc: Andrey Ryabinin <ryabinin.a.a@gmail.com> Cc: Dmitry Vyukov <dvyukov@google.com> Cc: Will Deacon <will@kernel.org> Tested-by: Andrey Konovalov <andreyknvl@gmail.com> Acked-by: Will Deacon <will@kernel.org> Link: https://lore.kernel.org/r/20211207183226.834557-3-mark.rutland@arm.com Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
2021-12-13arm64: mm: use die_kernel_fault() in do_mem_abort()Mark Rutland1-5/+2
If we take an unhandled fault from EL1, either: a) The xFSC handler calls die_kernel_fault() directly. In this case, die_kernel_fault() calls: pr_alert(..., msg, addr); mem_abort_decode(esr); show_pte(addr); die(); bust_spinlocks(0); do_exit(SIGKILL); b) The xFSC handler returns to do_mem_abort(), indicating failure. In this case, do_mem_abort() calls: pr_alert(..., addr); mem_abort_decode(esr); show_pte(addr); arm64_notify_die() { die(); } This inconstency is unfortunatem, and in theory in case (b) registered notifiers can prevent us from terminating the faulting thread by returning NOTIFY_STOP, whereupon we'll end up returning from the fault, replaying, and almost certainly get stuck in a livelock spewing errors into dmesg. We don't expect notifers to fix things up, since we dump state to dmesg before invoking them, so it would be more sensible to consistently terminate the thread in this case. This patch has do_mem_abort() call die_kernel_fault() for unhandled faults taken from EL1. Where we would previously have logged a messafe of the form: | Unhandled fault at ${ADDR} ... we will now log a message of the form: | Unable to handle kernel ${FAULT_NAME} at virtual address ${ADDR} ... and we will consistently terminate the thread from which the fault was taken. Signed-off-by: Mark Rutland <mark.rutland@arm.com> Cc: Will Deacon <will@kernel.org> Tested-by: Andrey Konovalov <andreyknvl@gmail.com> Acked-by: Will Deacon <will@kernel.org> Link: https://lore.kernel.org/r/20211207183226.834557-2-mark.rutland@arm.com Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
2021-12-13exit: Add and use make_task_dead.Eric W. Biederman36-55/+51
There are two big uses of do_exit. The first is it's design use to be the guts of the exit(2) system call. The second use is to terminate a task after something catastrophic has happened like a NULL pointer in kernel code. Add a function make_task_dead that is initialy exactly the same as do_exit to cover the cases where do_exit is called to handle catastrophic failure. In time this can probably be reduced to just a light wrapper around do_task_dead. For now keep it exactly the same so that there will be no behavioral differences introducing this new concept. Replace all of the uses of do_exit that use it for catastraphic task cleanup with make_task_dead to make it clear what the code is doing. As part of this rename rewind_stack_do_exit rewind_stack_and_make_dead. Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com>
2021-12-13exit/s390: Remove dead reference to do_exit from copy_threadEric W. Biederman1-1/+0
My s390 assembly is not particularly good so I have read the history of the reference to do_exit copy_thread and have been able to verify that do_exit is not used. The general argument is that s390 has been changed to use the generic kernel_thread and kernel_execve and the generic versions do not call do_exit. So it is strange to see a do_exit reference sitting there. The history of the do_exit reference in s390's version of copy_thread seems conclusive that the do_exit reference is something that lingers and should have been removed several years ago. Up through 8d19f15a60be ("[PATCH] s390 update (1/27): arch.") the s390 code made a call to the exit(2) system call when a kernel thread finished. Then kernel_thread_starter was added which branched directly to the value in register 11 when the kernel thread finshed. The value in register 11 was set in kernel_thread to "regs.gprs[11] = (unsigned long) do_exit" In commit 37fe5d41f640 ("s390: fold kernel_thread_helper() into ret_from_fork()") kernel_thread_starter was moved into entry.S and entry64.S unchanged (except for the syntax differences between inline assemly and in the assembly file). In commit f9a7e025dfc2 ("s390: switch to generic kernel_thread()") the assignment to "gprs[11]" was moved into copy_thread from the old kernel_thread. The helper kernel_thread_starter was still being used and was still branching to "%r11" at the end. In commit 30dcb0996e40 ("s390: switch to saner kernel_execve() semantics") kernel_thread_starter was changed to unconditionally branch to sysc_tracenogo instead to %r11 which held the value of do_exit. Unfortunately copy_thread was not updated to stop passing do_exit in "gprs[11]". In commit 56e62a737028 ("s390: convert to generic entry") kernel_thread_starter was replaced by __ret_from_fork. And the code still continued to pass do_exit in "gprs[11]" despite __ret_from_fork not caring in the slightest. Remove this dead reference to do_exit to make it clear that s390 is not doing anything with do_exit in copy_thread. Cc: Heiko Carstens <hca@linux.ibm.com> Cc: Vasily Gorbik <gor@linux.ibm.com> Cc: Christian Borntraeger <borntraeger@de.ibm.com> Cc: Alexander Gordeev <agordeev@linux.ibm.com> Cc: Martin Schwidefsky <schwidefsky@de.ibm.com> Cc: Al Viro <viro@zeniv.linux.org.uk> Fixes: 30dcb0996e40 ("s390: switch to saner kernel_execve() semantics") History Tree: https://git.kernel.org/pub/scm/linux/kernel/git/tglx/history.git Acked-by: Heiko Carstens <hca@linux.ibm.com> Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com>
2021-12-13arch: arm64: ti: Add support J721S2 Common Processor BoardAswath Govindraju2-0/+423
The EVM architecture for J721S2 is similar to that of J721E and J7200. It is as follows, +------------------------------------------------------+ | +-------------------------------------------+ | | | | | | | Add-on Card 1 Options | | | | | | | +-------------------------------------------+ | | | | | | +-------------------+ | | | | | | | SOM | | | +--------------+ | | | | | | | | | | | Add-on | +-------------------+ | | | Card 2 | | Power Supply | | Options | | | | | | | | | +--------------+ | <--- +------------------------------------------------------+ Common Processor Board Common Processor board is the baseboard that contains most of the actual connectors, power supply etc. The System on Module (SoM) is plugged on to the common processor baord. Therefore, add support for peripherals brought out in the common processor board. Common Processor Board: https://www.ti.com/tool/J721EXCPXEVM Signed-off-by: Aswath Govindraju <a-govindraju@ti.com> Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com> Reviewed-by: Kishon Vijay Abraham I <kishon@ti.com> Link: https://lore.kernel.org/r/20211207080904.14324-6-a-govindraju@ti.com
2021-12-13arm64: dts: ti: Add initial support for J721S2 System on ModuleAswath Govindraju1-0/+175
A System on Module (SoM) contains the SoC, PMIC, DDR and basic high speed components necessary for functionality. Therefore, add support for the components present on the SoM. SoM: https://www.ti.com/lit/zip/sprr439 Signed-off-by: Aswath Govindraju <a-govindraju@ti.com> Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com> Reviewed-by: Kishon Vijay Abraham I <kishon@ti.com> Link: https://lore.kernel.org/r/20211207080904.14324-5-a-govindraju@ti.com
2021-12-13arm64: dts: ti: Add initial support for J721S2 SoCAswath Govindraju3-0/+1428
The J721S2 SoC belongs to the K3 Multicore SoC architecture platform, providing advanced system integration in automotive ADAS applications and industrial applications requiring AI at the network edge. This SoC extends the Jacinto 7 family of SoCs with focus on lowering system costs and power while providing interfaces, memory architecture and compute performance for single and multi-sensor applications. Some highlights of this SoC are: * Dual Cortex-A72s in a single cluster, three clusters of lockstep capable dual Cortex-R5F MCUs, Deep-learning Matrix Multiply Accelerator(MMA), C7x floating point Vector DSP. * 3D GPU: Automotive grade IMG BXS-4-64 * Vision Processing Accelerator (VPAC) with image signal processor and Depth and Motion Processing Accelerator (DMPAC) * Two CSI2.0 4L RX plus one eDP/DP, two DSI Tx, and one DPI interface. * Two Ethernet ports with RGMII support. * Single 4 lane PCIe-GEN3 controllers, USB3.0 Dual-role device subsystems, * Up to 20 MCANs, 5 McASP, eMMC and SD, OSPI/HyperBus memory controller, QSPI, I3C and I2C, eCAP/eQEP, eHRPWM, MLB among other peripherals. * Hardware accelerator blocks containing AES/DES/SHA/MD5 called SA2UL management. * Chips and Media Wave521CL H.264/H.265 encode/decode engine See J721S2 Technical Reference Manual (SPRUJ28 – NOVEMBER 2021) for further details: http://www.ti.com/lit/pdf/spruj28 Introduce basic support for the J721S2 SoC. Signed-off-by: Aswath Govindraju <a-govindraju@ti.com> Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com> Signed-off-by: Nishanth Menon <nm@ti.com> Reviewed-by: Kishon Vijay Abraham I <kishon@ti.com> Link: https://lore.kernel.org/r/20211207080904.14324-4-a-govindraju@ti.com
2021-12-13bpf: Add get_func_[arg|ret|arg_cnt] helpersJiri Olsa1-1/+14
Adding following helpers for tracing programs: Get n-th argument of the traced function: long bpf_get_func_arg(void *ctx, u32 n, u64 *value) Get return value of the traced function: long bpf_get_func_ret(void *ctx, u64 *value) Get arguments count of the traced function: long bpf_get_func_arg_cnt(void *ctx) The trampoline now stores number of arguments on ctx-8 address, so it's easy to verify argument index and find return value argument's position. Moving function ip address on the trampoline stack behind the number of functions arguments, so it's now stored on ctx-16 address if it's needed. All helpers above are inlined by verifier. Also bit unrelated small change - using newly added function bpf_prog_has_trampoline in check_get_func_ip. Signed-off-by: Jiri Olsa <jolsa@kernel.org> Signed-off-by: Alexei Starovoitov <ast@kernel.org> Link: https://lore.kernel.org/bpf/20211208193245.172141-5-jolsa@kernel.org