aboutsummaryrefslogtreecommitdiffstats
path: root/arch (follow)
AgeCommit message (Collapse)AuthorFilesLines
2022-09-23Merge tag 'qcom-arm64-fixes-for-6.0' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux into arm/fixesArnd Bergmann4-20/+13
Qualcomm ARM64 DTS fixes for 6.0 This corrects invalid IOMMU streams for the SM8150 CDSP FastRPC, moves the wakeup-source of SC7280 USB nodes to the correct place, fixes the SM8350 UFS PHY serdes size to not overlap with the other subnodes and updates the firmware location for the Lenovo ThinkPad X13s to match the movement in linux-firmware. It also updates MAINTAINERS and .mailmap to reflect the changes in my email address. * tag 'qcom-arm64-fixes-for-6.0' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux: arm64: dts: qcom: sm8350: fix UFS PHY serdes size arm64: dts: qcom: sc8280xp-x13s: Update firmware location MAINTAINERS: Update Bjorn's email address arm64: dts: qcom: sc7280: move USB wakeup-source property arm64: dts: qcom: thinkpad-x13s: Fix firmware location arm64: dts: qcom: sm8150: Fix fastrpc iommu values Link: https://lore.kernel.org/r/20220921142939.1310163-1-andersson@kernel.org Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-09-23ARM: dts: integrator: Tag PCI host with device_typeLinus Walleij1-0/+1
The DT parser is dependent on the PCI device being tagged as device_type = "pci" in order to parse memory ranges properly. Fix this up. Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Cc: stable@vger.kernel.org Link: https://lore.kernel.org/r/20220919092608.813511-1-linus.walleij@linaro.org' Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-09-24Merge branch 'fixes' into nextMichael Ellerman7-70/+91
Merge our fixes branch to bring in a few things that new feature patches rely on or conflict with.
2022-09-23Merge tag 'qcom-arm64-for-6.1' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux into arm/dtArnd Bergmann99-985/+3657
Qualcomm ARM64 DTS updates for 6.1 Support for Samsung Galaxy E5, E7 and Grand Max is added, with support for both 32-bit and 64-bit variants. The Samsung Galaxy S4 Mini Value Edition gains magnetometer support. MSM8996-based Xiaomi devices gains descriptions of the LPG-based LEDs. On SA8295P ADP problems arising from regulators being switched into low-power mode is worked around by removing this ability, for now. The onboard USB Hub on SC7180 Trogdor is finally described and a few ADC related updates are introduced. On SC7280 support for the CPU and LLC bwmon instances are introduced. Soundwire, audio codecs and sound introduced for a variety of boards. Using required-opps the USB controllers votes for a minimum corner on VDD_CX. The onboard USB Hub Herobrine is described. A new board, the Google Evoker is added, as is another revision of Herobrine Villager. On SC8280XP the USB controllers are marked as wakeup-sources, to keep them powered during suspend. The CRD has HID devices marked as wakeup-sources to enable resuming the system. In addition to these changes the alternative touchpad is introduced on the Lenovo ThinkPad X13s. SDM845 gains RPMh stats support and the LLCC BWMON is added. For SM6350 interconnect providers and GPI DMA is introduced. A description of the PM7280b PMIC is added to Fairphone FP4 on SM7225. With the multi-MSI support added in the PCIe controller, SM8250 gets all its MSI interrupts added. UFS ICE and the second SDHCI controller is introduced on SM8450. Support for the Sony Xperia 1 IV is introduced. Throughout a variety of platforms the TCSR mutex syscon is replaced with the MMIO-based binding. TCSR nodes gained proper compatibles and halt syscon nodes are split out from the mutex ranges. A range of fixes to align with DT bindings are introduced. Among these are the changes to the follow the TLMM binding and suffix pinctrl states with -state and subnodes thereof with -pins, another is a number of changes transitioning to use -gpios and introduction of proper parent clock references in various clock providers. * tag 'qcom-arm64-for-6.1' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux: (136 commits) arm64: dts: qcom: sc7280: Add required-opps for USB arm64: dts: qcom: sm8450: fix UFS PHY serdes size arm64: dts: qcom: ipq8074: fix PCIe PHY serdes size arm64: dts: qcom: sa8295p-adp: add missing gpio-ranges in PMIC GPIOs arm64: dts: qcom: sa8295p-adp: add fallback compatible to PMIC GPIOs arm64: dts: qcom: msm8996-xiaomi: align PMIC GPIO pin configuration with DT schema arm64: dts: qcom: msm8994-msft-lumia-octagon: align resin node name with bindings arm64: dts: qcom: pmi8994: add missing MPP compatible fallback dt-bindings: pci: QCOM Add missing sc7280 aggre0, aggre1 clocks arm64: dts: qcom: sc7280: Add missing aggre0, aggre1 clocks arm64: dts: qcom: sc7280-villager: Adjust LTE SKUs dt-bindings: arm: qcom: Adjust LTE SKUs for sc7280-villager arm64: dts: qcom: sc7280-herobrine: Add nodes for onboard USB hub arm64: dts: qcom: sc7180-trogdor: Add nodes for onboard USB hub arm64: dts: qcom: align SDHCI reg-names with DT schema arm64: dts: qcom: sm8250: provide additional MSI interrupts arm64: dts: qcom: msm8996: add #clock-cells and XO clock to the HDMI PHY node arm64: dts: qcom: Use WCD9335 DT bindings arm64: dts: qcom: msm8994: switch TCSR mutex to MMIO arm64: dts: qcom: ipq6018: switch TCSR mutex to MMIO ... Link: https://lore.kernel.org/r/20220921234854.1343238-1-andersson@kernel.org Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-09-23Merge tag 'qcom-dts-for-6.1' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux into arm/dtArnd Bergmann32-811/+1282
Qualcomm ARM DTS updates for 6.1 This adds extends the IPQ8064 support with the two variants IPQ8062 and IPQ8065. MSM8974 and APQ8084 gained RPM stats support. The Audio DSP remoteproc was added to MSM8226 and enabled for ASUS ZenWatch 2 and LG G Watch R. MSM8660 gained one I2C and one SPI bus and the APQ8060 Dragonboard got the TMA340 Touchscreen described. A wide range of improvements are done throughout the DTS files to align with bindings, fix issues and improve structure on things. * tag 'qcom-dts-for-6.1' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux: (35 commits) ARM: dts: qcom: apq8026-lg-lenok: Enable ADSP ARM: dts: qcom: apq8026-asus-sparrow: Enable ADSP ARM: dts: qcom: msm8226: Add ADSP node ARM: dts: qcom: ipq8064: pad addresses to 8 digit ARM: dts: qcom: ipq8064: reorganize node order and sort them ARM: dts: qcom: align SDHCI clocks with DT schema ARM: dts: qcom: align SDHCI reg-names with DT schema ARM: dts: qcom: msm8960: add clocks to the MMCC device node ARM: dts: qcom: apq8064: add clocks to the MMCC device node ARM: dts: qcom: msm8960: add clocks to the GCC device node ARM: dts: qcom: apq8064: add clocks to the GCC device node ARM: dts: qcom: msm8960: add clocks to the LCC device node ARM: dts: qcom: apq8064: add clocks to the LCC device node ARM: dts: qcom: msm8226: switch TCSR mutex to MMIO ARM: dts: qcom: apq8084: switch TCSR mutex to MMIO ARM: dts: qcom: msm8660: fix node names for fixed clocks ARM: dts: qcom: msm8660: add pxo/cxo clocks to the GCC node ARM: dts: qcom: apq8060-dragonboard: Add TMA340 to APQ8060 DragonBoard ARM: dts: qcom: msm8660: Add GSBI3 I2C bus ARM: dts: qcom: msm8660: Add GSBI1 SPI bus ... Link: https://lore.kernel.org/r/20220921222619.1338380-1-andersson@kernel.org Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-09-23Merge tag 'ti-k3-dt-for-v6.1' of https://git.kernel.org/pub/scm/linux/kernel/git/ti/linux into arm/dtArnd Bergmann18-10/+1088
TI K3 device tree updates for v6.1 New Features: AM62A: * Basic support for AM62A SoC and SK Board AM62: * EPWM support AM64: * GPMC, LED, Crypto accelerator support Fixes: J7200 pinmux node update Fixes for Crypto and RNG accelerators on AM65, J721e, J7200 Cleanups: Reorder SoC compatible and pinmux macros alphabetically * tag 'ti-k3-dt-for-v6.1' of https://git.kernel.org/pub/scm/linux/kernel/git/ti/linux: (22 commits) arm64: dts: ti: k3-j7200: fix main pinmux range arm64: dts: ti: Add support for AM62A7-SK arm64: dts: ti: Introduce AM62A7 family of SoCs dt-bindings: pinctrl: k3: Introduce pinmux definitions for AM62A dt-bindings: arm: ti: Add bindings for AM62A7 SoC dt-bindings: arm: ti: Rearrange IOPAD macros alphabetically arm64: dts: ti: k3-am625-sk: Add epwm nodes arm64: dts: ti: k3-am62-main: Add epwm nodes arm64: dts: ti: k3-am642-sk: Add DT entry for onboard LEDs arm64: dts: ti: k3-j7200-mcu-wakeup: Add SA2UL node arm64: dts: ti: k3-am65-main: Do not exclusively claim SA2UL arm64: dts: ti: k3-am65-main: Move SA2UL to unused PSI-L thread ID arm64: dts: ti: k3-am65-main: Disable RNG node arm64: dts: ti: k3-j7200-main: Add main domain watchdog entries arm64: dts: ti: k3-am64-main: Add ELM (Error Location Module) node arm64: dts: ti: k3-am64-main: Add GPMC memory controller node arm64: dts: ti: k3-j721e-main: fix RNG node clock id arm64: dts: ti: k3-am64-main: Enable crypto accelerator arm64: dts: ti: k3-am64: Add SA2UL address space to Main CBASS ranges arm64: dts: ti: k3-am64-main: Add main_cpts label ... Link: https://lore.kernel.org/r/44729b46-27f9-94a0-17ed-8868649a4a0a@ti.com Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-09-23Merge tag 'renesas-arm-dt-for-v6.1-tag2' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel into arm/dtArnd Bergmann24-65/+675
Renesas ARM DT updates for v6.1 (take two) - Merge Renesas ARM/ARM64 maintainers entries, - CAN support for the RZ/N1 SoC and the RZN1D-DB development board, - Watchdog, pin control, I2C (EEPROM), GPIO (LEDS/switches), and Ethernet support for the R-Car V4H SoC and the White Hawk development board, - Miscellaneous fixes and improvements. * tag 'renesas-arm-dt-for-v6.1-tag2' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel: (26 commits) arm64: dts: renesas: Adjust whitespace around '{' arm64: dts: renesas: rzg2ul-smarc: Include SoM DTSI into board DTS arm64: dts: renesas: rzg2ul-smarc-som: Drop enabling wdt2 ARM: dts: renesas: Fix USB PHY device and child node names arm64: dts: renesas: r8a779a0: Update to R-Car Gen4 compatible values arm64: dts: renesas: white-hawk-cpu: Add missing bootargs arm64: dts: renesas: spider-cpu: Add missing bootargs arm64: dts: renesas: spider: Move aliases and chosen arm64: dts: renesas: white-hawk-cpu: Add Ethernet support arm64: dts: renesas: white-hawk: Move aliases and chosen arm64: dts: renesas: r8a779g0: Add RAVB nodes arm64: dts: renesas: white-hawk-cpu: Add push switches arm64: dts: renesas: white-hawk-cpu: Add GP LEDs arm64: dts: renesas: r8a779g0: Add GPIO nodes arm64: dts: renesas: white-hawk: Add Ethernet sub-board arm64: dts: renesas: white-hawk: Add CSI/DSI sub-board arm64: dts: renesas: white-hawk: Add I2C0 and EEPROMs arm64: dts: renesas: r8a779g0: Add I2C nodes arm64: dts: renesas: white-hawk-cpu: Add serial port pin control arm64: dts: renesas: r8a779g0: Add pinctrl device node ... Link: https://lore.kernel.org/r/cover.1663588776.git.geert+renesas@glider.be Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-09-23Merge tag 'v6.0-next-dts64' of https://git.kernel.org/pub/scm/linux/kernel/git/matthias.bgg/linux into arm/dtArnd Bergmann14-18/+2765
mt6795: - add add system timer node mt7986a: - add wifi support mt8183: - add MDP3 and keypad mt8186: - basic support for the Evaluation Board including, i2c, usb and uart. mt8192: - add nodes to support PWM, MIPI transciever, display with GCE and DSI. mt8195: - disable nodes not used on all boards - Add support for CPU freq, clocks, power domain controller, spmi, scp. - Enable audio decoder, DSP, IOMMU, mailbox. - Add display nodes for vdosys0. - On Cherry based chromebooks, enable the system companion processor, Cross EC, Google Security Chip, secondary MMC controller, trackpad and a few regulators. * tag 'v6.0-next-dts64' of https://git.kernel.org/pub/scm/linux/kernel/git/matthias.bgg/linux: (34 commits) arm64: dts: mediatek: mt6795: Add CPUX system timer node arm64: dts: mt7986: add built-in Wi-Fi device nodes arm64: dts: mediatek: cherry: Enable MT6315 regulators on SPMI bus arm64: dts: mediatek: cherry: Enable Elantech eKTH3000 i2c trackpad arm64: dts: mediatek: cherry: Enable secondary SD/MMC controller arm64: dts: mediatek: cherry: Add keyboard mapping for the top row arm64: dts: mediatek: cherry: Add Google Security Chip (GSC) TPM arm64: dts: mediatek: cherry: Wire up the ChromeOS Embedded Controller arm64: dts: mediatek: cherry: Enable the System Companion Processor arm64: dts: mediatek: Fix build warnings of mt8173 vcodec nodes arm64: dts: mediatek: Add missing xHCI clocks for mt8192 and mt8195 arm64: dts: mt8192: Add dsi node arm64: dts: mt8192: Add display nodes arm64: dts: mediatek: Add mmsys #reset-cells property for mt8192 arm64: dts: mt8192: Add mipi_tx node arm64: dts: mt8192: Add pwm node arm64: dts: Add MediaTek MT8186 dts and evaluation board and Makefile arm64: dts: mt8195: Add display node for vdosys0 arm64: dts: mt8195: Add gce node arm64: dts: mt8195: Add iommu and smi nodes ... Link: https://lore.kernel.org/r/3b915692-c8a9-c508-5a4a-0fdb49355e99@gmail.com Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-09-23ARM: dts: integrator: Tag PCI host with device_typeLinus Walleij1-0/+1
The DT parser is dependent on the PCI device being tagged as device_type = "pci" in order to parse memory ranges properly. Fix this up. Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Cc: stable@vger.kernel.org Link: https://lore.kernel.org/r/20220919092608.813511-1-linus.walleij@linaro.org' Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-09-23Merge tag 'sunxi-dt-for-6.1-1' of https://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux into arm/dtArnd Bergmann4-2/+161
- Allwinner A100 DMA node - Allwinner H6 GPU devfreq scaling - sunxi sram bindings cleanup and D1 addition * tag 'sunxi-dt-for-6.1-1' of https://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux: dt-bindings: sram: sunxi-sram: Add D1 compatible string dt-bindings: sram: sunxi-sram: Clean up the compatible lists arm64: dts: allwinner: beelink-gs1: Enable GPU OPP arm64: dts: allwinner: h6: Add GPU OPP table arm64: dts: allwinner: h6: Add cooling map for GPU arm64: dts: allwinner: a100: Add I2C DMA requests arm64: dts: allwinner: a100: Add device node for DMA controller Link: https://lore.kernel.org/r/YyePKDnOeP8Tdt5n@kista.localdomain Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-09-23Merge tag 'imx-dt64-6.1' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into arm/dtArnd Bergmann53-196/+5060
i.MX arm64 device tree change for 6.1: - New board support: i.MX8DXL EVK, Kontron SL/BL i.MX8MM OSM-S, i.MX8MM Gateworks GW7904, MSC SM2S-IMX8PLUS SoM and carrier board, NXP LS2081ARDB. - Update i.MX8MQ device tree to use generic name 'dma-controller' for SDMA. - A number of i.MX8ULP device tree improvements and updates: correct parent clock of LPI2C & LPSPI, increase the clock speed of LPSPI, add PMU and mailbox device, drop undocumented CGC property, enable FEC, etc. - Add interconnect property for various i.MX8MP blk-ctrl devices. - Enable VPU PGC, blk-ctrl and PCIe support for i.MX8MP SoC. - A set of changes from Peng Fan to add various devices for i.MX93 SoC, including MU, blk-ctrl, PMU, LPI2C, LPSPI, SRC, etc. - Two set of changes to update LS1043A and LS1046A device trees on various aspects, including USB3, PCIe, DMA, mdio-mux, QSPI Flash, etc. - Board imx8mq-librem5 update: add USB role switching, add RGB PWM notification LEDs, add voice coil motor for focus control, fix MIPI_CSI description. - A series from Frieder Schrempf to improve imx8mm-kontron device trees for VSELECT switch, DDRC operating point, SPI NOR partition layout etc. - A set of display and PMIC related additions and improvements on imx8mm-verdin board. - A number of i.MX8M Plus DHCOM PDK2 device tree improvments from Marek Vasut. - A few imx8mp-venice device tree updates on USB, cpufreq and WiFi/BT. - A series from Vladimir Oltean to enable multiple switch CPU ports support. - Other small and random board specific updates. * tag 'imx-dt64-6.1' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux: (90 commits) arm64: dts: ls1046a-qds: Modify the qspi flash frequency arm64: dts: ls1046a-qds: add mmio based mdio-mux nodes for FPGA arm64: dts: ls1046a: add gpios based i2c recovery information arm64: dts: ls1046a: use a pseudo-bus to constrain usb and sata dma size arm64: dts: ls1046a: make dma-coherent global to the SoC arm64: dts: ls1046a: add missing dma ranges property arm64: dts: ls1046a: Add big-endian property for PCIe nodes arm64: dts: ls1046a: Add the PME interrupt and big-endian to PCIe EP nodes arm64: dts: ls1046a: Enable usb3-lpm-capable for usb3 node arm64: dts: ls1043a-rdb: add pcf85263 rtc node arm64: dts: ls1043a-qds: add mmio based mdio-mux support arm64: dts: ls1043a: use a pseudo-bus to constrain usb and sata dma size arm64: dts: ls1043a: add gpio based i2c recovery information arm64: dts: ls1043a: make dma-coherent global to the SoC arm64: dts: ls1043a: add missing dma ranges property arm64: dts: ls1043a: Add big-endian property for PCIe nodes arm64: dts: ls1043a: Add SCFG phandle for PCIe nodes arm64: dts: ls1043a: use pcie aer/pme interrupts arm64: dts: ls1043a: Enable usb3-lpm-capable for usb3 node arm64: dts: ls1043a: fix the wrong size of dcfg space ... Link: https://lore.kernel.org/r/20220918092806.2152700-4-shawnguo@kernel.org Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-09-23Merge tag 'kvm-s390-master-6.0-2' of https://git.kernel.org/pub/scm/linux/kernel/git/kvms390/linux into HEADPaolo Bonzini79-329/+427
More pci fixes Fix for a code analyser warning
2022-09-23Merge tag 'imx-dt-6.1' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into arm/dtArnd Bergmann93-435/+462
i.MX device tree change for 6.1 - A series from Alexander Stein to add missing properties for i.MX6 SRAM. - Drop 'interrupts' property when 'interrupts-extended' is present. This fixes a dtbs_check warning with i.MX6 DT. - Update device trees to use generic name 'dma-controller' for SDMA. - A set of changes from Krzysztof Kozlowski to align SPI, LED and gpio-keys node name with dtschema. - A series of indentation and white-space cleanups from Marcel Ziswiler to address various checkpatch warnings. - Add DDR pinmux defines to VF610 DT header. - A couple of changes from Peng Fan to update clock-names and add IPG clock for i.MX7ULP LPI2C devices. - Improve device tree structure for Kontron i.MX6UL/ULL based boards. - A series of changes from Tim Harvey to add CAN regulator for Gateworks i.MX6QDL boards. - Various small and random board specific updates. * tag 'imx-dt-6.1' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux: (40 commits) ARM: dts: imx6qdl-gw54xx: add CAN regulator ARM: dts: imx6qdl-gw53xx: add CAN regulator ARM: dts: imx6qdl-gw52xx: add CAN regulator ARM: dts: imx: update sdma node name format ARM: dts: imx6: skov: migrate to resistive-adc-touch ARM: dts: imx6sx-udoo-neo: don't use multiple blank lines ARM: dts: imx6sl: use tabs for code indent ARM: dts: imx6sx: add missing properties for sram ARM: dts: imx6sll: add missing properties for sram ARM: dts: imx6sl: add missing properties for sram ARM: dts: imx6qp: add missing properties for sram ARM: dts: imx6dl: add missing properties for sram ARM: dts: imx6q: add missing properties for sram ARM: dts: imx7ulp: Add IPG clock for lpi2c ARM: dts: imx7ulp: update the LPI2C clock-names ARM: dts: vf610: ddr pinmux ARM: dts: imx6qdl-dhcom: Move IPU iomux node from PDK2 to SoM file ARM: dts: imx6ul-kontron: Add imx6ull-kontron-bl to Makefile ARM: dts: imx6ul-kontron: Simplify devicetree structure ARM: dts: vf610: align SPI node name with dtschema ... Link: https://lore.kernel.org/r/20220918092806.2152700-3-shawnguo@kernel.org Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-09-23arm64: dts: rockchip: use pin constant for reset-gpios on px30-evbTommaso Merciai1-1/+1
Use rk gpio naming convention into reset-gpios of ov5695 camera Signed-off-by: Tommaso Merciai <tommaso.merciai@amarulasolutions.com> Link: https://lore.kernel.org/r/20220620161321.1898840-4-tommaso.merciai@amarulasolutions.com Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2022-09-23arm64: dts: rockchip: add pinctrl for mipi-pdn pin on px30-evbTommaso Merciai1-1/+7
Add right mux for mipi-pdn. Mux this pad as gpio2 14 Signed-off-by: Tommaso Merciai <tommaso.merciai@amarulasolutions.com> Link: https://lore.kernel.org/r/20220620161321.1898840-3-tommaso.merciai@amarulasolutions.com Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2022-09-23arm64: dts: rockchip: set max drive-strength for cif_clkout_m0 on px30-evbTommaso Merciai1-0/+7
Add max drive-strength for cif_clkout_m0. This fix the issue that sometimes camera ov5695 is not probed correctly. Tested on PX30_Mini_EVB_V11_20190507 Signed-off-by: Tommaso Merciai <tommaso.merciai@amarulasolutions.com> Link: https://lore.kernel.org/r/20220620161321.1898840-2-tommaso.merciai@amarulasolutions.com Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2022-09-23arm64: dts: rockchip: add avdd-0v9-supply and avdd-1v8-supply on rk3399 rock 4c and pi4FUKAUMI Naoki2-0/+4
this patch adds avdd-0v9-supply and avdd-1v8-supply to hdmi node for Radxa ROCK 4 series. Signed-off-by: FUKAUMI Naoki <naoki@radxa.com> Link: https://lore.kernel.org/r/20220909195006.127957-6-naoki@radxa.com Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2022-09-23arm64: dts: rockchip: sort nodes/properties on rk3399-rock-4FUKAUMI Naoki1-63/+61
sort nodes/properties alphabetically Signed-off-by: FUKAUMI Naoki <naoki@radxa.com> Link: https://lore.kernel.org/r/20220909195006.127957-5-naoki@radxa.com Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2022-09-23arm64: dts: rockchip: fix regulator name on rk3399-rock-4FUKAUMI Naoki1-12/+13
fix regulator name ref: https://dl.radxa.com/rockpi4/docs/hw/rockpi4/rockpi4_v13_sch_20181112.pdf Signed-off-by: FUKAUMI Naoki <naoki@radxa.com> Link: https://lore.kernel.org/r/20220909195006.127957-4-naoki@radxa.com Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2022-09-23arm64: dts: rockchip: sort nodes/properties on rk3399-rock-4c-plusFUKAUMI Naoki1-24/+24
sort nodes/properties alphabetically Signed-off-by: FUKAUMI Naoki <naoki@radxa.com> Link: https://lore.kernel.org/r/20220909195006.127957-3-naoki@radxa.com Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2022-09-23arm64: dts: rockchip: fix regulator structure on rk3399-rock-4c-plusFUKAUMI Naoki1-31/+52
fix regulator name. also, add vcc_3v3 and vdd_log. ref: https://dl.radxa.com/rockpi4/docs/hw/rockpi4/rockpi4c_plus_v12_sch_220304.pdf Signed-off-by: FUKAUMI Naoki <naoki@radxa.com> Link: https://lore.kernel.org/r/20220909195006.127957-2-naoki@radxa.com Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2022-09-23arm64: dts: rockchip: connect vcca_1v8 to APIO5_VDD on rk3399-rock-4c-plusFUKAUMI Naoki1-0/+1
GPIO pins for LEDs on ROCK 4C+ are in APIO5 Signed-off-by: FUKAUMI Naoki <naoki@radxa.com> Link: https://lore.kernel.org/r/20220909195006.127957-1-naoki@radxa.com Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2022-09-23Merge tag 'tegra-for-6.1-arm64-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux into arm/dtArnd Bergmann6-19/+1339
arm64: tegra: Device tree changes for v6.1-rc1 These changes enable PCI, Ethernet and HDA support on Jetson AGX Orin. DMA support is enabled for I2C on a number of SoC generations and the Google Pixel C (a.k.a. Smaug) device receives Bluetooth and Wi-Fi support. Other than that this also contains some minor cleanups and fixes. * tag 'tegra-for-6.1-arm64-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux: arm64: tegra: Add GPCDMA support for Tegra I2C arm64: tegra: Add iommus for HDA on Tegra234 arm64: tegra: Enable HDA node for Jetson AGX Orin arm64: tegra: Add context isolation domains on Tegra234 arm64: tegra: Fixup iommu-map property formatting arm64: dts: tegra: smaug: Add Wi-Fi node arm64: dts: tegra: smaug: Add Bluetooth node arm64: tegra: Enable MGBE on Jetson AGX Orin Developer Kit arm64: tegra: Add MGBE nodes on Tegra234 arm64: tegra: Fix up compatible for Tegra234 GPCDMA arm64: tegra: Enable PCIe slots in P3737-0000 board arm64: tegra: Add P2U and PCIe controller nodes to Tegra234 DT arm64: tegra: Add regulators required for PCIe Link: https://lore.kernel.org/r/20220916101957.1635854-5-thierry.reding@gmail.com Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-09-23arm64: uaccess: simplify uaccess_mask_ptr()Mark Rutland1-11/+11
We introduced uaccess pointer masking for arm64 in commit: 4d8efc2d5ee4c9cc ("arm64: Use pointer masking to limit uaccess speculation") Which was intended to prevent speculative uaccesses to kernel memory on CPUs where access permissions were not respected under speculation. At the time, the uaccess primitives were occasionally used to access kernel memory, with the maximum permitted address held in thread_info::addr_limit. Consequently, the address masking needed to take this dynamic limit into account. Subsequently the uaccess primitives were reworked such that they are only used for user memory, and as of commit: 3d2403fd10a1dbb3 ("arm64: uaccess: remove set_fs()") ... the address limit was made a compile-time constant, but the logic was otherwise unchanged. Regardless of the configured VA size or whether TBI is in use, the address space can be divided into three ranges: * The TTBR0 VA range, for which any valid pointer has bit 55 *clear*, and any non-tag bits [63-56] must match bit 55 (i.e. must be clear). * The TTBR1 VA range, for which any valid pointer has bit 55 *set*, and any non-tag bits [63-56] must match bit 55 (i.e. must be set). * The gap between the TTBR0 and TTBR1 ranges, where bit 55 may be set or clear, but any access will result in a fault. As the uaccess primitives are now only used for user memory in the TTBR0 VA range, we can prevent generation of TTBR1 addresses by clearing bit 55, which will either result in a TTBR0 address or a faulting address between the TTBR VA ranges. This is beneficial for code generation as: * We no longer clobber the condition codes. * We no longer burn a register on (TASK_SIZE_MAX - 1). * We no longer need to consume the untagged pointer. When building a defconfig v6.0-rc3 with GCC 12.1.0, this change makes the resulting Image 64KiB smaller. Signed-off-by: Mark Rutland <mark.rutland@arm.com> Cc: James Morse <james.morse@arm.com> Cc: Robin Murphy <robin.murphy@arm.com> Cc: Will Deacon <will@kernel.org> Reviewed-by: Robin Murphy <robin.murphy@arm.com> Link: https://lore.kernel.org/r/20220922151053.3520750-1-mark.rutland@arm.com [catalin.marinas@arm.com: remove csdb() as the bit clearing is unconditional] Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
2022-09-23Merge tag 'omap-for-6.0/fixes-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into arm/fixesArnd Bergmann2-2/+5
Two fixes for omaps A fix to remove usb4 from am5748 as it does not exist on the SoC, and a fix for am335x mmc dma that wired direct and should not use the xbar. Note that the am5748 fix depends on the recent deferred probe regression fixes to boot. I ended up picking the merge commit to base it on as it describes what got fixed quite nicely rather than a -rc tag. * tag 'omap-for-6.0/fixes-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap: ARM: dts: am5748: keep usb4_tm disabled ARM: dts: am33xx: Fix MMCHS0 dma properties Link: https://lore.kernel.org/r/pull-1663140667-273537@atomide.com Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-09-23x86/resctrl: Make resctrl_arch_rmid_read() return values in bytesJames Morse3-19/+15
resctrl_arch_rmid_read() returns a value in chunks, as read from the hardware. This needs scaling to bytes by mon_scale, as provided by the architecture code. Now that resctrl_arch_rmid_read() performs the overflow and corrections itself, it may as well return a value in bytes directly. This allows the accesses to the architecture specific 'hw' structure to be removed. Move the mon_scale conversion into resctrl_arch_rmid_read(). mbm_bw_count() is updated to calculate bandwidth from bytes. Signed-off-by: James Morse <james.morse@arm.com> Signed-off-by: Borislav Petkov <bp@suse.de> Reviewed-by: Jamie Iles <quic_jiles@quicinc.com> Reviewed-by: Shaopeng Tan <tan.shaopeng@fujitsu.com> Reviewed-by: Reinette Chatre <reinette.chatre@intel.com> Tested-by: Xin Hao <xhao@linux.alibaba.com> Tested-by: Shaopeng Tan <tan.shaopeng@fujitsu.com> Tested-by: Cristian Marussi <cristian.marussi@arm.com> Link: https://lore.kernel.org/r/20220902154829.30399-22-james.morse@arm.com
2022-09-23x86/resctrl: Add resctrl_rmid_realloc_limit to abstract x86's boot_cpu_dataJames Morse2-3/+8
resctrl_rmid_realloc_threshold can be set by user-space. The maximum value is specified by the architecture. Currently max_threshold_occ_write() reads the maximum value from boot_cpu_data.x86_cache_size, which is not portable to another architecture. Add resctrl_rmid_realloc_limit to describe the maximum size in bytes that user-space can set the threshold to. Signed-off-by: James Morse <james.morse@arm.com> Signed-off-by: Borislav Petkov <bp@suse.de> Reviewed-by: Jamie Iles <quic_jiles@quicinc.com> Reviewed-by: Shaopeng Tan <tan.shaopeng@fujitsu.com> Reviewed-by: Reinette Chatre <reinette.chatre@intel.com> Tested-by: Xin Hao <xhao@linux.alibaba.com> Tested-by: Shaopeng Tan <tan.shaopeng@fujitsu.com> Tested-by: Cristian Marussi <cristian.marussi@arm.com> Link: https://lore.kernel.org/r/20220902154829.30399-21-james.morse@arm.com
2022-09-23x86/resctrl: Rename and change the units of resctrl_cqm_thresholdJames Morse4-25/+37
resctrl_cqm_threshold is stored in a hardware specific chunk size, but exposed to user-space as bytes. This means the filesystem parts of resctrl need to know how the hardware counts, to convert the user provided byte value to chunks. The interface between the architecture's resctrl code and the filesystem ought to treat everything as bytes. Change the unit of resctrl_cqm_threshold to bytes. resctrl_arch_rmid_read() still returns its value in chunks, so this needs converting to bytes. As all the users have been touched, rename the variable to resctrl_rmid_realloc_threshold, which describes what the value is for. Neither r->num_rmid nor hw_res->mon_scale are guaranteed to be a power of 2, so the existing code introduces a rounding error from resctrl's theoretical fraction of the cache usage. This behaviour is kept as it ensures the user visible value matches the value read from hardware when the rmid will be reallocated. Signed-off-by: James Morse <james.morse@arm.com> Signed-off-by: Borislav Petkov <bp@suse.de> Reviewed-by: Jamie Iles <quic_jiles@quicinc.com> Reviewed-by: Shaopeng Tan <tan.shaopeng@fujitsu.com> Reviewed-by: Reinette Chatre <reinette.chatre@intel.com> Tested-by: Xin Hao <xhao@linux.alibaba.com> Tested-by: Shaopeng Tan <tan.shaopeng@fujitsu.com> Tested-by: Cristian Marussi <cristian.marussi@arm.com> Link: https://lore.kernel.org/r/20220902154829.30399-20-james.morse@arm.com
2022-09-23x86/resctrl: Move get_corrected_mbm_count() into resctrl_arch_rmid_read()James Morse2-6/+6
resctrl_arch_rmid_read() is intended as the function that an architecture agnostic resctrl filesystem driver can use to read a value in bytes from a counter. Currently the function returns the MBM values in chunks directly from hardware. When reading a bandwidth counter, get_corrected_mbm_count() must be used to correct the value read. get_corrected_mbm_count() is architecture specific, this work should be done in resctrl_arch_rmid_read(). Move the function calls. This allows the resctrl filesystems's chunks value to be removed in favour of the architecture private version. Signed-off-by: James Morse <james.morse@arm.com> Signed-off-by: Borislav Petkov <bp@suse.de> Reviewed-by: Jamie Iles <quic_jiles@quicinc.com> Reviewed-by: Shaopeng Tan <tan.shaopeng@fujitsu.com> Reviewed-by: Reinette Chatre <reinette.chatre@intel.com> Tested-by: Xin Hao <xhao@linux.alibaba.com> Tested-by: Shaopeng Tan <tan.shaopeng@fujitsu.com> Tested-by: Cristian Marussi <cristian.marussi@arm.com> Link: https://lore.kernel.org/r/20220902154829.30399-19-james.morse@arm.com
2022-09-23x86/resctrl: Move mbm_overflow_count() into resctrl_arch_rmid_read()James Morse2-17/+20
resctrl_arch_rmid_read() is intended as the function that an architecture agnostic resctrl filesystem driver can use to read a value in bytes from a counter. Currently the function returns the MBM values in chunks directly from hardware. When reading a bandwidth counter, mbm_overflow_count() must be used to correct for any possible overflow. mbm_overflow_count() is architecture specific, its behaviour should be part of resctrl_arch_rmid_read(). Move the mbm_overflow_count() calls into resctrl_arch_rmid_read(). This allows the resctrl filesystems's prev_msr to be removed in favour of the architecture private version. Signed-off-by: James Morse <james.morse@arm.com> Signed-off-by: Borislav Petkov <bp@suse.de> Reviewed-by: Jamie Iles <quic_jiles@quicinc.com> Reviewed-by: Shaopeng Tan <tan.shaopeng@fujitsu.com> Reviewed-by: Reinette Chatre <reinette.chatre@intel.com> Tested-by: Xin Hao <xhao@linux.alibaba.com> Tested-by: Shaopeng Tan <tan.shaopeng@fujitsu.com> Tested-by: Cristian Marussi <cristian.marussi@arm.com> Link: https://lore.kernel.org/r/20220902154829.30399-18-james.morse@arm.com
2022-09-23x86/resctrl: Pass the required parameters into resctrl_arch_rmid_read()James Morse1-14/+17
resctrl_arch_rmid_read() is intended as the function that an architecture agnostic resctrl filesystem driver can use to read a value in bytes from a hardware register. Currently the function returns the MBM values in chunks directly from hardware. To convert this to bytes, some correction and overflow calculations are needed. These depend on the resource and domain structures. Overflow detection requires the old chunks value. None of this is available to resctrl_arch_rmid_read(). MPAM requires the resource and domain structures to find the MMIO device that holds the registers. Pass the resource and domain to resctrl_arch_rmid_read(). This makes rmid_dirty() too big. Instead merge it with its only caller, and the name is kept as a local variable. Signed-off-by: James Morse <james.morse@arm.com> Signed-off-by: Borislav Petkov <bp@suse.de> Reviewed-by: Jamie Iles <quic_jiles@quicinc.com> Reviewed-by: Shaopeng Tan <tan.shaopeng@fujitsu.com> Reviewed-by: Reinette Chatre <reinette.chatre@intel.com> Tested-by: Xin Hao <xhao@linux.alibaba.com> Tested-by: Shaopeng Tan <tan.shaopeng@fujitsu.com> Tested-by: Cristian Marussi <cristian.marussi@arm.com> Link: https://lore.kernel.org/r/20220902154829.30399-17-james.morse@arm.com
2022-09-23ARM: sunplus: fix serial console kconfig and build problemsRandy Dunlap1-2/+2
Fix kconfig dependency warnings and subsequent build errors: WARNING: unmet direct dependencies detected for SERIAL_SUNPLUS Depends on [n]: TTY [=n] && HAS_IOMEM [=y] && (ARCH_SUNPLUS [=y] || COMPILE_TEST [=n]) Selected by [y]: - SOC_SP7021 [=y] && ARCH_SUNPLUS [=y] WARNING: unmet direct dependencies detected for SERIAL_SUNPLUS_CONSOLE Depends on [n]: TTY [=n] && HAS_IOMEM [=y] && SERIAL_SUNPLUS [=y] Selected by [y]: - SOC_SP7021 [=y] && ARCH_SUNPLUS [=y] (samples, not all:) drivers/tty/serial/sunplus-uart.c:342: undefined reference to `uart_get_baud_rate' arm-linux-gnueabi-ld: drivers/tty/serial/sunplus-uart.c:379: undefined reference to `uart_update_timeout' drivers/tty/serial/sunplus-uart.c:526: undefined reference to `uart_console_write' arm-linux-gnueabi-ld: drivers/tty/serial/sunplus-uart.c:274: undefined reference to `tty_flip_buffer_push' arm-linux-gnueabi-ld: drivers/tty/serial/sunplus-uart.o:(.data+0xa8): undefined reference to `uart_console_device' drivers/tty/serial/sunplus-uart.c:720: undefined reference to `uart_register_driver' arm-linux-gnueabi-ld: drivers/tty/serial/sunplus-uart.c:726: undefined reference to `uart_unregister_driver' drivers/tty/serial/sunplus-uart.c:551: undefined reference to `uart_parse_options' arm-linux-gnueabi-ld: drivers/tty/serial/sunplus-uart.c:553: undefined reference to `uart_set_options' This is the same technique that is used 2 times in arch/arm/mach-versatile/Kconfig. Fixes: 0aa94eea8d95 ("ARM: sunplus: Add initial support for Sunplus SP7021 SoC") Reported-by: kernel test robot <lkp@intel.com> Signed-off-by: Randy Dunlap <rdunlap@infradead.org> Cc: Qin Jian <qinjian@cqplus1.com> Cc: Necip Fazil Yildiran <fazilyildiran@gmail.com> Cc: Arnd Bergmann <arnd@arndb.de> Cc: linux-arm-kernel@lists.infradead.org Cc: patches@armlinux.org.uk Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-09-23x86/resctrl: Abstract __rmid_read()James Morse3-25/+42
__rmid_read() selects the specified eventid and returns the counter value from the MSR. The error handling is architecture specific, and handled by the callers, rdtgroup_mondata_show() and __mon_event_count(). Error handling should be handled by architecture specific code, as a different architecture may have different requirements. MPAM's counters can report that they are 'not ready', requiring a second read after a short delay. This should be hidden from resctrl. Make __rmid_read() the architecture specific function for reading a counter. Rename it resctrl_arch_rmid_read() and move the error handling into it. A read from a counter that hardware supports but resctrl does not now returns -EINVAL instead of -EIO from the default case in __mon_event_count(). It isn't possible for user-space to see this change as resctrl doesn't expose counters it doesn't support. Signed-off-by: James Morse <james.morse@arm.com> Signed-off-by: Borislav Petkov <bp@suse.de> Reviewed-by: Jamie Iles <quic_jiles@quicinc.com> Reviewed-by: Shaopeng Tan <tan.shaopeng@fujitsu.com> Reviewed-by: Reinette Chatre <reinette.chatre@intel.com> Tested-by: Xin Hao <xhao@linux.alibaba.com> Tested-by: Shaopeng Tan <tan.shaopeng@fujitsu.com> Tested-by: Cristian Marussi <cristian.marussi@arm.com> Link: https://lore.kernel.org/r/20220902154829.30399-16-james.morse@arm.com
2022-09-23x86/microcode/AMD: Track patch allocation size explicitlyKees Cook2-1/+3
In preparation for reducing the use of ksize(), record the actual allocation size for later memcpy(). This avoids copying extra (uninitialized!) bytes into the patch buffer when the requested allocation size isn't exactly the size of a kmalloc bucket. Additionally, fix potential future issues where runtime bounds checking will notice that the buffer was allocated to a smaller value than returned by ksize(). Fixes: 757885e94a22 ("x86, microcode, amd: Early microcode patch loading support for AMD") Suggested-by: Daniel Micay <danielmicay@gmail.com> Signed-off-by: Kees Cook <keescook@chromium.org> Signed-off-by: Borislav Petkov <bp@suse.de> Link: https://lore.kernel.org/lkml/CA+DvKQ+bp7Y7gmaVhacjv9uF6Ar-o4tet872h4Q8RPYPJjcJQA@mail.gmail.com/
2022-09-23x86/resctrl: Allow per-rmid arch private storage to be resetJames Morse2-14/+39
To abstract the rmid counters into a helper that returns the number of bytes counted, architecture specific per-rmid state is needed. It needs to be possible to reset this hidden state, as the values may outlive the life of an rmid, or the mount time of the filesystem. mon_event_read() is called with first = true when an rmid is first allocated in mkdir_mondata_subdir(). Add resctrl_arch_reset_rmid() and call it from __mon_event_count()'s rr->first check. Signed-off-by: James Morse <james.morse@arm.com> Signed-off-by: Borislav Petkov <bp@suse.de> Reviewed-by: Jamie Iles <quic_jiles@quicinc.com> Reviewed-by: Shaopeng Tan <tan.shaopeng@fujitsu.com> Reviewed-by: Reinette Chatre <reinette.chatre@intel.com> Tested-by: Xin Hao <xhao@linux.alibaba.com> Tested-by: Shaopeng Tan <tan.shaopeng@fujitsu.com> Tested-by: Cristian Marussi <cristian.marussi@arm.com> Link: https://lore.kernel.org/r/20220902154829.30399-15-james.morse@arm.com
2022-09-23arm64: dts: rockchip: Add DSI and DSI-DPHY nodes to rk356xChris Morgan1-0/+80
This adds the DSI controller nodes and DSI-DPHY controller nodes to the rk356x device tree. Signed-off-by: Chris Morgan <macromorgan@hotmail.com> Acked-by: Michael Riesch <michael.riesch@wolfvision.net> Link: https://lore.kernel.org/r/20220919164616.12492-4-macroalpha82@gmail.com Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2022-09-23arm64: dts: rockchip: Enable HDMI and GPU on quartz64-bNicolas Frattaroli1-0/+60
This enables the GPU and HDMI output (including HDMI audio) on the PINE64 Quartz64 Model B single board computer. Signed-off-by: Nicolas Frattaroli <frattaroli.nicolas@gmail.com> Link: https://lore.kernel.org/r/20220920143446.633956-1-frattaroli.nicolas@gmail.com Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2022-09-23mips: dts: ralink: mt7621: add GB-PC2 LEDsArınç ÜNAL2-12/+36
Add the missing LEDs for GB-PC2. The ethblack-green, ethblue-green, power and system LEDs weren't added previously, because they don't exist on the device schematics. Tests on a GB-PC2 by me and Petr proved otherwise. The i2c bus cannot be used on GB-PC2 as its pins are wired to LEDs instead, and GB-PC1 does not use it. Therefore, do not enable it on both devices. Link: https://github.com/ngiger/GnuBee_Docs/blob/master/GB-PCx/Documents/GB-PC2_V1.1_schematic.pdf Tested-by: Petr Louda <petr.louda@outlook.cz> Signed-off-by: Arınç ÜNAL <arinc.unal@arinc9.com> Reviewed-by: Sergio Paracuellos <sergio.paracuellos@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2022-09-23mips: dts: ralink: mt7621: fix external phy on GB-PC2Arınç ÜNAL1-3/+3
The address of the external phy on the mdio bus is 5. Update the devicetree for GB-PC2 accordingly. Fixes: 5bc148649cf3 ("staging: mt7621-dts: fix GB-PC2 devicetree") Signed-off-by: Arınç ÜNAL <arinc.unal@arinc9.com> Reviewed-by: Sergio Paracuellos <sergio.paracuellos@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2022-09-23mips: dts: ralink: mt7621: change mt7530 switch addressArınç ÜNAL1-2/+2
In the case of muxing phy0 of the MT7530 switch, the switch and the phy will have the same address on the mdio bus, 0. This causes the ethernet driver to fail since devices on the mdio bus cannot share an address. Any address can be used for the switch, therefore, change the switch address to 0x1f. Suggested-by: Sungbo Eo <mans0n@gorani.run> Signed-off-by: Arınç ÜNAL <arinc.unal@arinc9.com> Reviewed-by: Sergio Paracuellos <sergio.paracuellos@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2022-09-23mips: dts: ralink: mt7621: change phy-mode of gmac1 to rgmiiArınç ÜNAL1-1/+1
Change phy-mode of gmac1 to rgmii on mt7621.dtsi. Same code path is followed for delayed rgmii and rgmii phy-mode on mtk_eth_soc.c. Signed-off-by: Arınç ÜNAL <arinc.unal@arinc9.com> Reviewed-by: Sergio Paracuellos <sergio.paracuellos@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2022-09-23mips: dts: ralink: mt7621: remove interrupt-parent from switch nodeArınç ÜNAL1-1/+0
The interrupt-parent property is inherited from the ethernet node as it's a parent node of the switch node. Therefore, remove the unnecessary interrupt-parent property from the switch node. Signed-off-by: Arınç ÜNAL <arinc.unal@arinc9.com> Reviewed-by: Sergio Paracuellos <sergio.paracuellos@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2022-09-23mips: dts: ralink: mt7621: fix some dtc warningsArınç ÜNAL3-20/+14
Fix the dtc warnings below. uartlite@c00: $nodename:0: 'uartlite@c00' does not match '^serial(@.*)?$' From schema: /home/arinc9/Documents/linux/Documentation/devicetree/bindings/serial/8250.yaml uartlite@c00: Unevaluated properties are not allowed ('clock-names' was unexpected) From schema: /home/arinc9/Documents/linux/Documentation/devicetree/bindings/serial/8250.yaml sdhci@1e130000: $nodename:0: 'sdhci@1e130000' does not match '^mmc(@.*)?$' From schema: /home/arinc9/Documents/linux/Documentation/devicetree/bindings/mmc/mtk-sd.yaml xhci@1e1c0000: $nodename:0: 'xhci@1e1c0000' does not match '^usb(@.*)?' From schema: /home/arinc9/Documents/linux/Documentation/devicetree/bindings/usb/mediatek,mtk-xhci.yaml xhci@1e1c0000: compatible: ['mediatek,mt8173-xhci'] is too short From schema: /home/arinc9/Documents/linux/Documentation/devicetree/bindings/usb/mediatek,mtk-xhci.yaml switch0@0: $nodename:0: 'switch0@0' does not match '^(ethernet-)?switch(@.*)?$' From schema: /home/arinc9/Documents/linux/Documentation/devicetree/bindings/net/dsa/mediatek,mt7530.yaml port@1: status:0: 'off' is not one of ['okay', 'disabled', 'reserved'] From schema: /home/arinc9/.local/lib/python3.10/site-packages/dtschema/schemas/dt-core.yaml port@2: status:0: 'off' is not one of ['okay', 'disabled', 'reserved'] From schema: /home/arinc9/.local/lib/python3.10/site-packages/dtschema/schemas/dt-core.yaml port@3: status:0: 'off' is not one of ['okay', 'disabled', 'reserved'] From schema: /home/arinc9/.local/lib/python3.10/site-packages/dtschema/schemas/dt-core.yaml - Change "memc: syscon@5000" to "memc: memory-controller@5000". - Change "uartlite: uartlite@c00" to "serial0: serial@c00" and remove the aliases node. - Remove "clock-names" from the serial0 node. The property doesn't exist on the 8250.yaml schema. - Change "sdhci: sdhci@1e130000" to "mmc: mmc@1e130000". - Change "xhci: xhci@1e1c0000" to "usb: usb@1e1c0000". - Add "mediatek,mtk-xhci" as the second compatible string on the usb node. - Change "switch0: switch0@0" to "switch0: switch@0" - Change "off" to "disabled" for disabled nodes. Signed-off-by: Arınç ÜNAL <arinc.unal@arinc9.com> Reviewed-by: Sergio Paracuellos <sergio.paracuellos@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2022-09-23arm64: defconfig: Enable Synopsys DWC MSHC driverAnand Moon1-0/+1
Enable the driver SDHCI support for the Synopsys DWC MSHC controller which can be found on Rockchip 356x SoCs. Cc: Heiko Stuebner <heiko@sntech.de> Signed-off-by: Anand Moon <linux.amoon@gmail.com> Link: https://lore.kernel.org/r/20220922192050.2031-1-linux.amoon@gmail.com Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2022-09-22arm64: asm/perf_regs.h: Avoid C++-style comment in UAPI headerWill Deacon1-1/+1
An arm64 'allmodconfig' build fails with GCC due to use of a C++-style comment for the new SVE vector granule 'enum perf_event_arm_regs' entry: | /usr/include/asm/perf_regs.h:42:26: error: C++ style comments are not allowed in ISO C90 Use good ol' /* */ comment syntax to keep things rosey. Link: https://lore.kernel.org/r/632cceb2.170a0220.599ec.0a3a@mx.google.com Fixes: cbb0c02caf4b ("perf: arm64: Add SVE vector granule register to user regs") Signed-off-by: Will Deacon <will@kernel.org>
2022-09-22KVM: x86: Inject #UD on emulated XSETBV if XSAVES isn't enabledSean Christopherson2-0/+4
Inject #UD when emulating XSETBV if CR4.OSXSAVE is not set. This also covers the "XSAVE not supported" check, as setting CR4.OSXSAVE=1 #GPs if XSAVE is not supported (and userspace gets to keep the pieces if it forces incoherent vCPU state). Add a comment to kvm_emulate_xsetbv() to call out that the CPU checks CR4.OSXSAVE before checking for intercepts. AMD'S APM implies that #UD has priority (says that intercepts are checked before #GP exceptions), while Intel's SDM says nothing about interception priority. However, testing on hardware shows that both AMD and Intel CPUs prioritize the #UD over interception. Fixes: 02d4160fbd76 ("x86: KVM: add xsetbv to the emulator") Cc: stable@vger.kernel.org Cc: Vitaly Kuznetsov <vkuznets@redhat.com> Signed-off-by: Sean Christopherson <seanjc@google.com> Message-Id: <20220824033057.3576315-4-seanjc@google.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2022-09-22KVM: x86: Always enable legacy FP/SSE in allowed user XFEATURESDr. David Alan Gilbert1-1/+7
Allow FP and SSE state to be saved and restored via KVM_{G,SET}_XSAVE on XSAVE-capable hosts even if their bits are not exposed to the guest via XCR0. Failing to allow FP+SSE first showed up as a QEMU live migration failure, where migrating a VM from a pre-XSAVE host, e.g. Nehalem, to an XSAVE host failed due to KVM rejecting KVM_SET_XSAVE. However, the bug also causes problems even when migrating between XSAVE-capable hosts as KVM_GET_SAVE won't set any bits in user_xfeatures if XSAVE isn't exposed to the guest, i.e. KVM will fail to actually migrate FP+SSE. Because KVM_{G,S}ET_XSAVE are designed to allowing migrating between hosts with and without XSAVE, KVM_GET_XSAVE on a non-XSAVE (by way of fpu_copy_guest_fpstate_to_uabi()) always sets the FP+SSE bits in the header so that KVM_SET_XSAVE will work even if the new host supports XSAVE. Fixes: ad856280ddea ("x86/kvm/fpu: Limit guest user_xfeatures to supported bits of XCR0") bz: https://bugzilla.redhat.com/show_bug.cgi?id=2079311 Cc: stable@vger.kernel.org Cc: Leonardo Bras <leobras@redhat.com> Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com> [sean: add comment, massage changelog] Signed-off-by: Sean Christopherson <seanjc@google.com> Message-Id: <20220824033057.3576315-3-seanjc@google.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2022-09-22KVM: x86: Reinstate kvm_vcpu_arch.guest_supported_xcr0Sean Christopherson3-10/+5
Reinstate the per-vCPU guest_supported_xcr0 by partially reverting commit 988896bb6182; the implicit assessment that guest_supported_xcr0 is always the same as guest_fpu.fpstate->user_xfeatures was incorrect. kvm_vcpu_after_set_cpuid() isn't the only place that sets user_xfeatures, as user_xfeatures is set to fpu_user_cfg.default_features when guest_fpu is allocated via fpu_alloc_guest_fpstate() => __fpstate_reset(). guest_supported_xcr0 on the other hand is zero-allocated. If userspace never invokes KVM_SET_CPUID2, supported XCR0 will be '0', whereas the allowed user XFEATURES will be non-zero. Practically speaking, the edge case likely doesn't matter as no sane userspace will live migrate a VM without ever doing KVM_SET_CPUID2. The primary motivation is to prepare for KVM intentionally and explicitly setting bits in user_xfeatures that are not set in guest_supported_xcr0. Because KVM_{G,S}ET_XSAVE can be used to svae/restore FP+SSE state even if the host doesn't support XSAVE, KVM needs to set the FP+SSE bits in user_xfeatures even if they're not allowed in XCR0, e.g. because XCR0 isn't exposed to the guest. At that point, the simplest fix is to track the two things separately (allowed save/restore vs. allowed XCR0). Fixes: 988896bb6182 ("x86/kvm/fpu: Remove kvm_vcpu_arch.guest_supported_xcr0") Cc: stable@vger.kernel.org Cc: Leonardo Bras <leobras@redhat.com> Signed-off-by: Sean Christopherson <seanjc@google.com> Message-Id: <20220824033057.3576315-2-seanjc@google.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2022-09-22KVM: x86/mmu: add missing update to max_mmu_rmap_sizeMiaohe Lin1-0/+2
The update to statistic max_mmu_rmap_size is unintentionally removed by commit 4293ddb788c1 ("KVM: x86/mmu: Remove redundant spte present check in mmu_set_spte"). Add missing update to it or max_mmu_rmap_size will always be nonsensical 0. Fixes: 4293ddb788c1 ("KVM: x86/mmu: Remove redundant spte present check in mmu_set_spte") Signed-off-by: Miaohe Lin <linmiaohe@huawei.com> Message-Id: <20220907080657.42898-1-linmiaohe@huawei.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2022-09-22Merge tag 'kvmarm-fixes-6.0-2' of git://git.kernel.org/pub/scm/linux/kernel/git/kvmarm/kvmarm into HEADPaolo Bonzini1-1/+1
KVM/arm64 fixes for 6.0, take #2 - Fix kmemleak usage in Protected KVM (again)