Arnd Bergmann [Fri, 13 Oct 2023 20:44:56 +0000 (22:44 +0200)]
Merge tag 'renesas-dt-bindings-for-v6.7-tag2' of git://git./linux/kernel/git/geert/renesas-devel into soc/dt
Renesas DT binding updates for v6.7 (take two)
- Document support for the Renesas RZ/G3S SMARC SoM and SMARC
Carrier-II EVK development boards,
- Document support for the Renesas R-Car S4 Starter Kit.
* tag 'renesas-dt-bindings-for-v6.7-tag2' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel:
dt-bindings: soc: renesas: Document R-Car S4 Starter Kit
dt-bindings: soc: renesas: Document SMARC Carrier-II EVK
dt-bindings: soc: renesas: Document RZ/G3S SMARC SoM
Link: https://lore.kernel.org/r/cover.1697200121.git.geert+renesas@glider.be
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Arnd Bergmann [Fri, 13 Oct 2023 20:44:11 +0000 (22:44 +0200)]
Merge tag 'sti-dt-for-v6.7-round1' of git://git./linux/kernel/git/pchotard/sti into soc/dt
STi DT for v6.7, round 1 :
stih418-b2264: leds and serial fixes
stih407: drop max-duty-cycle property
stih415/416: remove boards from yaml
stih407/410/418: add boards to yaml
* tag 'sti-dt-for-v6.7-round1' of git://git.kernel.org/pub/scm/linux/kernel/git/pchotard/sti:
dt-bindings: arm: sti: add STi boards and remove stih415/stih416
dt-bindings: soc: sti: add STi platform syscon
ARM: dts: st: correct led level in stih418-b2264.dts
ARM: dts: st: move leds out of soc in stih418-b2264.dts
ARM: dts: st: correct serial alias in stih418-b2264.dts
ARM: dts: st: stih407: drop max-duty-cycle
Link: https://lore.kernel.org/r/e6b975f2-9936-465a-8253-6fcead974006@foss.st.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Arnd Bergmann [Fri, 13 Oct 2023 20:43:09 +0000 (22:43 +0200)]
Merge tag 'omap-for-v6.7/dt-signed' of git://git./linux/kernel/git/tmlind/linux-omap into soc/dt
Devicetree changes for omaps for v6.7 merge window
Two non-urgent devicetree fixes for am371-evm led pinmux and a node name
warning fix for omap4-epson-embt2ws, and updates for connected devices for
various devices:
- Device updates and enabling of pru support for am335x-pocketbeagle
- Few more devices such as leds and iio for omap4-epson-embt2ws
- Ethernet and led updates for am3517-evm
- Modem sleep pins configuration for motorola-mapphone
* tag 'omap-for-v6.7/dt-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
ARM: dts: omap4-embt2ws: Fix pinctrl single node name warning
ARM: dts: motorola-mapphone: Add mdm6600 sleep pins
ARM: dts: am3517: Configure ethernet alias
ARM: dts: am3517-evm: Enable Ethernet PHY Interrupt
ARM: dts: am3517-evm: Fix LED3/4 pinmux
ARM: dts: omap3-gta04: Drop superfluous omap36xx compatible
ARM: dts: omap: omap4-embt2ws: Add IMU at control unit
ARM: dts: omap: omap4-embt2ws: Let IMU driver handle Magnetometer internally
ARM: dts: am335x-pocketbeagle: add missing GPIO mux
ARM: dts: am335x-pocketbeagle: enable pru
ARM: dts: am335x-pocketbeagle: remove dependency cycle
ARM: dts: am335x-pocketbeagle: update LED information
ARM: dts: omap4: embt2ws: add LED
Link: https://lore.kernel.org/r/pull-1697010475-119828@atomide.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Arnd Bergmann [Fri, 13 Oct 2023 20:42:04 +0000 (22:42 +0200)]
Merge tag 'at91-dt-6.7' of https://git./linux/kernel/git/at91/linux into soc/dt
Microchip AT91 device tree updates for 6.7
It contains:
- the new Microchip SAMA5D29 Curiosity board
- a typo fix in TDES node name for SAMA5D4 dtsi
- enablement of RTT as RTC for SAM9X60 Curiosity board
* tag 'at91-dt-6.7' of https://git.kernel.org/pub/scm/linux/kernel/git/at91/linux:
ARM: dts: at91: sam9x60_curiosity: Add mandatory dt property for RTT
ARM: dts: at91: sama5d29_curiosity: Add device tree for sama5d29_curiosity board
dt-bindings: ARM: at91: Document Microchip SAMA5D29 Curiosity
ARM: dts: at91/trivial: fix typo in crypto DT naming
Link: https://lore.kernel.org/r/20231010045955.1259843-1-claudiu.beznea@tuxon.dev
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Arnd Bergmann [Fri, 13 Oct 2023 20:41:10 +0000 (22:41 +0200)]
Merge tag 'ixp4xx-for-soc-v6.7' of git://git./linux/kernel/git/linusw/linux-nomadik into soc/dt
Some IXP4xx updates for the v6.7 kernel cycle:
- Provide proper bindings including missing vendor prefixes
for the device trees in use and one more new vendor.
- Add a device tree for USRobotics USR8200 which has two
active users.
- Augment the "reset" GPIO buttons to send KEY_RESTART as
appropriate.
- Enable write on the NSLU2 flash so we get a writeable
rootfs on this device.
* tag 'ixp4xx-for-soc-v6.7' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-nomadik:
ARM: dts: ixp4xx: Use right restart keycode
ARM: dts: ixp4xx-nslu2: Enable write on flash
ARM: dts: ixp4xx: Add USRobotics USR8200 device tree
ARM: dts: Use only the Linksys compatible for now
dt-bindings: arm: List more IXP4xx devices
dt-bindings: Add vendor prefixes
Link: https://lore.kernel.org/r/CACRpkdZZ6W8uic97S9=Aa+S+s0-0k50TDw1e00u6gFcQfAVDdw@mail.gmail.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Arnd Bergmann [Fri, 13 Oct 2023 20:29:07 +0000 (22:29 +0200)]
Merge tag 'samsung-dt-6.7' of https://git./linux/kernel/git/krzk/linux into soc/dt
Samsung DTS ARM changes for v6.7
1. Switch all sound cards to generic audio-routing property, supported
since previous release for Samsung drivers. The old
samsung,audio-routing property is deprecated.
2. Correct Exynos4210 thermal by using polling. Apparently interrupts in
Thermal Monitoring Unit are broken.
* tag 'samsung-dt-6.7' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux:
ARM: dts: samsung: exynos4210: enable polling
ARM: dts: samsung: s5pv210-galaxys: switch sound card to audio-routing
ARM: dts: samsung: s5pv210-fascinate4g: switch sound card to audio-routing
ARM: dts: samsung: exynos5422-odroid: switch sound card to audio-routing
ARM: dts: samsung: exynos4412-odroid: switch sound card to audio-routing
ARM: dts: samsung: exynos4412-n710x: switch sound card to audio-routing
ARM: dts: samsung: exynos4412-galaxy-s3: switch sound card to audio-routing
ARM: dts: samsung: exynos4212-tab3: switch sound card to audio-routing
Link: https://lore.kernel.org/r/20231006093943.106002-2-krzysztof.kozlowski@linaro.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Alain Volmat [Mon, 13 Feb 2023 18:56:31 +0000 (19:56 +0100)]
dt-bindings: arm: sti: add STi boards and remove stih415/stih416
Add bindings for STi platform boards and remove stih415/stih416
Signed-off-by: Alain Volmat <avolmat@me.com>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Patrice Chotard <patrice.chotard@foss.st.com>
Alain Volmat [Mon, 13 Feb 2023 18:56:30 +0000 (19:56 +0100)]
dt-bindings: soc: sti: add STi platform syscon
Add DT schema of STi platform syscon
Signed-off-by: Alain Volmat <avolmat@me.com>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Patrice Chotard <patrice.chotard@foss.st.com>
Alain Volmat [Sun, 2 Jul 2023 16:19:35 +0000 (16:19 +0000)]
ARM: dts: st: correct led level in stih418-b2264.dts
The state of the green led on the stih418-b2264 is currently
inverted. Correct this by fixing the GPIO active state.
Signed-off-by: Alain Volmat <avolmat@me.com>
Acked-by: Patrice Chotard <patrice.chotard@foss.st.com>
Signed-off-by: Patrice Chotard <patrice.chotard@foss.st.com>
Alain Volmat [Sun, 2 Jul 2023 16:19:34 +0000 (16:19 +0000)]
ARM: dts: st: move leds out of soc in stih418-b2264.dts
Move the leds node out of the soc section
and correct the following warning:
Warning (simple_bus_reg): /soc/leds: missing or empty reg/ranges property
Signed-off-by: Alain Volmat <avolmat@me.com>
Acked-by: Patrice Chotard <patrice.chotard@foss.st.com>
Signed-off-by: Patrice Chotard <patrice.chotard@foss.st.com>
Alain Volmat [Sun, 2 Jul 2023 16:19:33 +0000 (16:19 +0000)]
ARM: dts: st: correct serial alias in stih418-b2264.dts
Aliases should only contain lowercase, digits or - hence
correct the alias for the serial from ttyAS0 into serial0
as already done for the other boards.
Signed-off-by: Alain Volmat <avolmat@me.com>
Acked-by: Patrice Chotard <patrice.chotard@foss.st.com>
Signed-off-by: Patrice Chotard <patrice.chotard@foss.st.com>
Krzysztof Kozlowski [Sun, 30 Jul 2023 17:49:54 +0000 (19:49 +0200)]
ARM: dts: st: stih407: drop max-duty-cycle
"max-duty-cycle" property was removed in the commit
f747a1fe7848
("regulator: pwm-regulator: Remove obsoleted property"):
stih418-b2199.dtb: pwm-regulator: Unevaluated properties are not allowed ('max-duty-cycle' was unexpected)
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Acked-by: Patrice Chotard <patrice.chotard@foss.st.com>
Signed-off-by: Patrice Chotard <patrice.chotard@foss.st.com>
Arnd Bergmann [Thu, 12 Oct 2023 10:57:06 +0000 (12:57 +0200)]
Merge tag 'samsung-dt64-6.7' of https://git./linux/kernel/git/krzk/linux into soc/dt
Samsung DTS ARM64 changes for v6.7
1. Exynos850: Add support for USB 2.0 (host and device) and enable it on
E850-96 board.
2. Exynos5433: Switch sound card to generic audio-routing property,
supported since previous release for Samsung drivers. The old
samsung,audio-routing property is deprecated.
3. Few cleanups.
* tag 'samsung-dt64-6.7' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux:
arm64: dts: exynos: remove unused TMU alias
arm64: dts: exynos: Use pinctrl macros for exynos5433-tm2
arm64: dts: exynos: exynos5433-tm2: switch sound card to audio-routing
arm64: dts: exynos: Enable USB support on E850-96 board
arm64: dts: exynos: Enable USB in Exynos850
Link: https://lore.kernel.org/r/20231006093943.106002-1-krzysztof.kozlowski@linaro.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Arnd Bergmann [Thu, 12 Oct 2023 10:56:19 +0000 (12:56 +0200)]
Merge tag 'dt-cleanup-6.7' of https://git./linux/kernel/git/krzk/linux-dt into soc/dt
Minor improvements in ARM DTS for v6.7
Few cleanups and improvements: split joined reg entries for Ethernet in
omap3-devkit8000, add missing spaces before '{' (MediaTek, Nuvoton) and
cleanup whitespace around '=' (MediaTek).
* tag 'dt-cleanup-6.7' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux-dt:
ARM: dts: nuvoton: add missing space before {
ARM: dts: mediatek: minor whitespace cleanup around '='
ARM: dts: mediatek: add missing space before {
ARM: dts: omap3-devkit8000: correct ethernet reg addresses (split)
Link: https://lore.kernel.org/r/20231006092823.94839-2-krzysztof.kozlowski@linaro.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Arnd Bergmann [Thu, 12 Oct 2023 10:53:31 +0000 (12:53 +0200)]
Merge tag 'dt64-cleanup-6.7' of https://git./linux/kernel/git/krzk/linux-dt into soc/dt
Minor improvements in ARM64 DTS for v6.7
Few cleanups and improvements: use lowercase hex for unit addresses
(Bitmain), add missing spaces before '{' (APM, MediaTek) and cleanup
whitespace around '=' (MediaTek, Marvell).
* tag 'dt64-cleanup-6.7' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux-dt:
arm64: dts: marvell: minor whitespace cleanup around '='
arm64: dts: mediatek: minor whitespace cleanup around '='
arm64: dts: mediatek: add missing space before {
arm64: dts: apm: add missing space before {
arm64: dts: bitmain: lowercase unit addresses
Link: https://lore.kernel.org/r/20231006092823.94839-1-krzysztof.kozlowski@linaro.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Arnd Bergmann [Thu, 12 Oct 2023 10:37:31 +0000 (12:37 +0200)]
Merge tag 'renesas-dts-for-v6.7-tag1' of git://git./linux/kernel/git/geert/renesas-devel into soc/dt
Renesas DTS updates for v6.7
- Add PCIe Host and Endpoint support for the R-Car S4-8 SoC and the
Renesas Spider development board,
- Add FLASH support for the Renesas Genmai and RSK+RZA1 development
boards,
- Add multi Component sound support for Renesas ULCB development
boards equipped with the Shimafuji Kingfisher extension,
- Miscellaneous fixes and improvements.
* tag 'renesas-dts-for-v6.7-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel:
arm64: dts: renesas: ulcb/kf: Use multi Component sound
ARM: dts: renesas: rskrza1: Add FLASH nodes
ARM: dts: renesas: genmai: Add FLASH nodes
ARM: dts: renesas: wheat: Move Ethernet node to LBSC
ARM: dts: renesas: blanche: Move Ethernet node to LBSC
ARM: dts: renesas: marzen: Move Ethernet node to LBSC
ARM: dts: renesas: r8a7792: Add LBSC node
ARM: dts: renesas: r8a7779: Add LBSC node
ARM: dts: renesas: r7s72100: Add BSC node
ARM: dts: renesas: Remove unused LBSC nodes from board DTS
arm64: dts: renesas: r8a779f0: spider: Enable PCIe Host ch0
arm64: dts: renesas: r8a779f0: Add PCIe Host and Endpoint nodes
ARM: dts: renesas: gr-peach: Remove unneeded probe-type property
ARM: dts: renesas: ape6evm: Drop bogus "mtd-rom" compatible value
ARM: dts: renesas: blanche: Fix typo in GP_11_2 pin name
arm64: dts: renesas: Handle ADG bit for sound clk_i
Link: https://lore.kernel.org/r/cover.1695985427.git.geert+renesas@glider.be
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Arnd Bergmann [Thu, 12 Oct 2023 10:35:52 +0000 (12:35 +0200)]
Merge tag 'renesas-dt-bindings-for-v6.7-tag1' of git://git./linux/kernel/git/geert/renesas-devel into soc/dt
Renesas DT binding updates for v6.7
- Document support for the new RZ/G3S (R9A08G045) SoC variants.
* tag 'renesas-dt-bindings-for-v6.7-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel:
dt-bindings: soc: renesas: renesas,rzg2l-sysc: Document RZ/G3S SoC
dt-bindings: soc: renesas: Document Renesas RZ/G3S SoC variants
Link: https://lore.kernel.org/r/cover.1695985425.git.geert+renesas@glider.be
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Linus Walleij [Fri, 8 Sep 2023 10:49:49 +0000 (12:49 +0200)]
ARM: dts: ixp4xx: Use right restart keycode
The "reset" key on a few IXP4xx routers were sending KEY_ESC
but what we want to send is KEY_RESTART which will make
OpenWrt and similar userspace do a controlled reboot.
Link: https://lore.kernel.org/r/20230908-ixp4xx-dts-v1-2-98d36264ed6d@linaro.org
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Linus Walleij [Fri, 8 Sep 2023 10:49:48 +0000 (12:49 +0200)]
ARM: dts: ixp4xx-nslu2: Enable write on flash
To upgrade the firmware and similar, the flash needs write
access.
Link: https://lore.kernel.org/r/20230908-ixp4xx-dts-v1-1-98d36264ed6d@linaro.org
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Linus Walleij [Sat, 7 Oct 2023 12:32:40 +0000 (14:32 +0200)]
ARM: dts: ixp4xx: Add USRobotics USR8200 device tree
This is a USRobotics NAS/Firewall/router that has been supported
by OpenWrt in the past. It had dedicated users so let's get it
properly supported.
Some debugging and fixing was provided by Howard Harte.
Link: https://lore.kernel.org/r/20231007-ixp4xx-usr8200-v1-1-aded3d6ff6f1@linaro.org
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Linus Walleij [Sat, 7 Oct 2023 12:15:13 +0000 (14:15 +0200)]
ARM: dts: Use only the Linksys compatible for now
The Gemtek users can just use the Linksys device tree,
triplet compatible is overdoing it.
Link: https://lore.kernel.org/r/20231007-ixp4xx-usr8200-v3-3-ec46edd1ff0e@linaro.org
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Linus Walleij [Sat, 7 Oct 2023 12:15:12 +0000 (14:15 +0200)]
dt-bindings: arm: List more IXP4xx devices
The ixp4xx bindings are lacking some of the devices we have
out there in the wild, so let's add them.
Acked-by: Conor Dooley <conor.dooley@microchip.com>
Link: https://lore.kernel.org/r/20231007-ixp4xx-usr8200-v3-2-ec46edd1ff0e@linaro.org
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Linus Walleij [Sat, 7 Oct 2023 12:15:11 +0000 (14:15 +0200)]
dt-bindings: Add vendor prefixes
These vendor prefixes are used by some routers supported
by e.g. OpenWrt.
- ADI Engineering is a US telecom equipment company.
- Arcom Controllers is a US manufacturer of repeaters.
- Freecom Gmbh is a german telecom equipment company.
- Gemtek Technology is a Taiwan telecom company.
- Gateway Communications was a telecommunication company,
now acquired by HKT Limited/PCCW.
- Goramo Gorecki is a privately owned Polish telecom
company.
- U.S. Robotics Corporation, known through their brand name
USRobotics is generally referred to as "USR" so use this
prefix for the company's device tree bindings.
Acked-by: Conor Dooley <conor.dooley@microchip.com>
Link: https://lore.kernel.org/r/20231007-ixp4xx-usr8200-v3-1-ec46edd1ff0e@linaro.org
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Tony Lindgren [Sat, 7 Oct 2023 07:32:46 +0000 (10:32 +0300)]
ARM: dts: omap4-embt2ws: Fix pinctrl single node name warning
Looks like one pinctrl single binding warning sneaked in while we were
implementing the yaml binding. Let's fix the 'pinmux-wl12xx-gpio' does not
match any of the regexes warning by adding -pins suffix.
Signed-off-by: Tony Lindgren <tony@atomide.com>
Tony Lindgren [Mon, 11 Sep 2023 03:58:28 +0000 (06:58 +0300)]
ARM: dts: motorola-mapphone: Add mdm6600 sleep pins
The sleep pins never got added earlier probably because the driver was not
behaving correctly with the sleep pins. We need the sleep pins to prevent
the modem from waking up on it's own if the reset pin glitches in deeper
SoC idle states.
Cc: Ivaylo Dimitrov <ivo.g.dimitrov.75@gmail.com>
Cc: Merlijn Wajer <merlijn@wizzup.org>
Cc: Pavel Machek <pavel@ucw.cz>
Reviewed-by: Sebastian Reichel <sebastian.reichel@collabora.com>
Message-ID: <
20230911035828.36984-1-tony@atomide.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Adam Ford [Wed, 6 Sep 2023 09:51:43 +0000 (04:51 -0500)]
ARM: dts: am3517: Configure ethernet alias
The AM3517 has one ethernet controller called davinci_emac.
Configuring the alias allows the MAC address to be passed
from the bootloader to Linux.
Signed-off-by: Adam Ford <aford173@gmail.com>
Message-ID: <
20230906095143.99806-2-aford173@gmail.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Adam Ford [Thu, 5 Oct 2023 00:04:02 +0000 (19:04 -0500)]
ARM: dts: am3517-evm: Enable Ethernet PHY Interrupt
The Ethernet PHY interrupt pin is routed to GPIO_58. Create a
PHY node to configure this GPIO for the interrupt to avoid polling.
Signed-off-by: Adam Ford <aford173@gmail.com>
Message-ID: <
20231005000402.50879-2-aford173@gmail.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Adam Ford [Thu, 5 Oct 2023 00:04:01 +0000 (19:04 -0500)]
ARM: dts: am3517-evm: Fix LED3/4 pinmux
The pinmux for LED3 and LED4 are incorrectly attached to the
omap3_pmx_core when they should be connected to the omap3_pmx_wkup
pin mux. This was likely masked by the fact that the bootloader
used to do all the pinmuxing.
Fixes: 0dbf99542caf ("ARM: dts: am3517-evm: Add User LEDs and Pushbutton")
Signed-off-by: Adam Ford <aford173@gmail.com>
Message-ID: <
20231005000402.50879-1-aford173@gmail.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Andreas Kemnade [Wed, 4 Oct 2023 06:53:23 +0000 (08:53 +0200)]
ARM: dts: omap3-gta04: Drop superfluous omap36xx compatible
Drop omap36xx compatible as done in other omap3630 devices.
This has apparently fallen through the lattice.
Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
Message-ID: <
20231004065323.
2408615-1-andreas@kemnade.info>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Andreas Kemnade [Wed, 27 Sep 2023 17:32:45 +0000 (19:32 +0200)]
ARM: dts: omap: omap4-embt2ws: Add IMU at control unit
Add also the level-shifter flag to avoid probe failure in magnetometer
probe.
Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
Message-ID: <
20230927173245.
2151083-4-andreas@kemnade.info>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Kuninori Morimoto [Tue, 3 Oct 2023 02:33:29 +0000 (02:33 +0000)]
dt-bindings: soc: renesas: Document R-Car S4 Starter Kit
Add "renesas,s4sk" which targets the Renesas R-Car S4 Starter Kit board.
Signed-off-by: Yusuke Goda <yusuke.goda.sx@renesas.com>
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Reviewed-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/87sf6sfn9i.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Claudiu Beznea [Fri, 29 Sep 2023 05:39:13 +0000 (08:39 +0300)]
dt-bindings: soc: renesas: Document SMARC Carrier-II EVK
Document the Renesas SMARC Carrier-II EVK board which is based on the
Renesas RZ/G3S SMARC SoM. The SMARC Carrier-II EVK consists of an
RZ/G3S SoM module and a SMARC Carrier-II carrier board; the SoM module
sits on top of the carrier board.
Signed-off-by: Claudiu Beznea <claudiu.beznea.uj@bp.renesas.com>
Acked-by: Conor Dooley <conor.dooley@microchip.com>
Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/20230929053915.1530607-27-claudiu.beznea@bp.renesas.com
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Claudiu Beznea [Fri, 29 Sep 2023 05:39:10 +0000 (08:39 +0300)]
dt-bindings: soc: renesas: Document RZ/G3S SMARC SoM
Document the Renesas RZ/G3S SMARC SoM board which is based on the
Renesas RZ/G3S (R9A08G045S33) SoC.
Suggested-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Claudiu Beznea <claudiu.beznea.uj@bp.renesas.com>
Acked-by: Conor Dooley <conor.dooley@microchip.com>
Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/20230929053915.1530607-24-claudiu.beznea@bp.renesas.com
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Tudor Ambarus [Thu, 28 Sep 2023 14:36:44 +0000 (16:36 +0200)]
ARM: dts: at91: sam9x60_curiosity: Add mandatory dt property for RTT
atmel,rtt-rtc-time-reg is a mandatory property and encodes the GPBR
register used to store the time base when the RTT is used as an RTC.
Align the RTT with what's currently done for sam9x60ek and sama7g5ek,
and enable it by default even if RTC is also enabled.
Signed-off-by: Tudor Ambarus <tudor.ambarus@linaro.org>
[nicolas.ferre@microchip.com: adapt to newer kernel]
Signed-off-by: Nicolas Ferre <nicolas.ferre@microchip.com>
Link: https://lore.kernel.org/r/20230928143644.208515-1-nicolas.ferre@microchip.com
Signed-off-by: Claudiu Beznea <claudiu.beznea@tuxon.dev>
Mihai Sain [Tue, 19 Sep 2023 12:46:05 +0000 (15:46 +0300)]
ARM: dts: at91: sama5d29_curiosity: Add device tree for sama5d29_curiosity board
Add initial device tree file for sama5d29_curiosity board.
Signed-off-by: Mihai Sain <mihai.sain@microchip.com>
Link: https://lore.kernel.org/r/20230919124606.26898-3-mihai.sain@microchip.com
Signed-off-by: Claudiu Beznea <claudiu.beznea@tuxon.dev>
Andrei Simion [Tue, 19 Sep 2023 12:46:04 +0000 (15:46 +0300)]
dt-bindings: ARM: at91: Document Microchip SAMA5D29 Curiosity
Document device tree binding of SAMA5D29 Curiosity, from Microchip.
Signed-off-by: Andrei Simion <andrei.simion@microchip.com>
Signed-off-by: Mihai Sain <mihai.sain@microchip.com>
Acked-by: Conor Dooley <conor.dooley@microchip.com>
Link: https://lore.kernel.org/r/20230919124606.26898-2-mihai.sain@microchip.com
Signed-off-by: Claudiu Beznea <claudiu.beznea@tuxon.dev>
Arnd Bergmann [Thu, 28 Sep 2023 08:00:53 +0000 (10:00 +0200)]
Merge tag 'ux500-dts-for-armsoc' of git://git./linux/kernel/git/linusw/linux-nomadik into soc/dt
Ux500 device tree updates for v6.7:
- Two fixes from Krzysztof fixing up DT properties
on the touchscreen.
* tag 'ux500-dts-for-armsoc' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-nomadik:
ARM: dts: st: href-tvk1281618: correct touchscreen syna,nosleep-mode
ARM: dts: st: href-tvk1281618: fix touchscreen VIO supply
Link: https://lore.kernel.org/r/CACRpkdZc5Yzsos2+gRPtCT-+ohmaV69ew5YFJLakD+9VFkrkfQ@mail.gmail.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Brad Larson [Mon, 25 Sep 2023 19:56:10 +0000 (12:56 -0700)]
arm64: dts: Add AMD Pensando Elba SoC support
Add AMD Pensando common and Elba SoC specific device nodes
Signed-off-by: Brad Larson <blarson@amd.com>
Link: https://lore.kernel.org/r/20230925195610.47971-5-blarson@amd.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Brad Larson [Mon, 25 Sep 2023 19:56:07 +0000 (12:56 -0700)]
dt-bindings: arm: add AMD Pensando boards
Document the compatible for AMD Pensando Elba SoC boards.
Signed-off-by: Brad Larson <blarson@amd.com>
Reviewed-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20230925195610.47971-2-blarson@amd.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Andreas Kemnade [Sun, 24 Sep 2023 22:27:18 +0000 (00:27 +0200)]
ARM: dts: omap: omap4-embt2ws: Let IMU driver handle Magnetometer internally
Possibility to use the i2c gate is only for compatibility reasons,
so avoid messing around with additional i2c busses.
Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
Message-ID: <
20230924222718.
2038849-1-andreas@kemnade.info>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Trevor Woerner [Tue, 22 Aug 2023 14:30:50 +0000 (10:30 -0400)]
ARM: dts: am335x-pocketbeagle: add missing GPIO mux
Add the default MODE setting of a GPIO pin that was missing from the device
tree (i.e. P2.20/gpio2_00). This is to ensure the GPIO pins match the
pocketbeagle wiring expectations.
Signed-off-by: Trevor Woerner <twoerner@gmail.com>
Message-ID: <
20230822143051.7640-5-twoerner@gmail.com>
[tony@atomide.com: leave out extra line break]
Signed-off-by: Tony Lindgren <tony@atomide.com>
Trevor Woerner [Tue, 22 Aug 2023 14:30:49 +0000 (10:30 -0400)]
ARM: dts: am335x-pocketbeagle: enable pru
Now that the PRU code is upstream and can be loaded via remoteproc, adjust
the device tree to enable it and adjust the pin muxing so that the default
setting of the pins matches what's is given on the silkscreen and/or
pocketbeagle wiring.
Caveat:
In most cases, the silkscreen will indicate, for example, "PRU0.7",
but it doesn't indicate whether that pin should be enabled for input
or output. On the PRU a different MODE is used for input versus
output. So it is unclear which mode to enable (MODE5 = output, MODE6
= input). In cases where there is a choice (PRU1.11, PRU0.7, PRU0.4,
PRU0.1, PRU1.10, PRU0.6, PRU0.3, PRU0.2, and PRU0.5) output is assumed
(MODE5).
The remaining PRU silkscreen pins do not have a choice and are set as
follows:
PRU0.16 MODE5 input
PRU0.15i MODE6 input
Signed-off-by: Trevor Woerner <twoerner@gmail.com>
Message-ID: <
20230822143051.7640-4-twoerner@gmail.com>
[tony@atomide.com: formatted description to fit 75 characters]
Signed-off-by: Tony Lindgren <tony@atomide.com>
Trevor Woerner [Tue, 22 Aug 2023 14:30:48 +0000 (10:30 -0400)]
ARM: dts: am335x-pocketbeagle: remove dependency cycle
Remove the self-referenceing "pinctrl-0" entry inside the pinmux clause.
This eliminates the set of boot messages (one for each referenced pin)
similar to the following:
platform
44e10800.pinmux: Fixed dependency cycle(s) with /ocp/interconnect@
44c00000/segment@200000/target-module@10000/scm@0/pinmux@800/pinmux_P2_17_gpio
Signed-off-by: Trevor Woerner <twoerner@gmail.com>
Message-ID: <
20230822143051.7640-3-twoerner@gmail.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Trevor Woerner [Tue, 22 Aug 2023 14:30:47 +0000 (10:30 -0400)]
ARM: dts: am335x-pocketbeagle: update LED information
Add the "color" and "description" properties.
Signed-off-by: Trevor Woerner <twoerner@gmail.com>
Message-ID: <
20230822143051.7640-2-twoerner@gmail.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Andreas Kemnade [Sat, 19 Aug 2023 14:31:09 +0000 (16:31 +0200)]
ARM: dts: omap4: embt2ws: add LED
Add LED since the driver is now available.
Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
Message-ID: <
20230819143109.471615-1-andreas@kemnade.info>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Krzysztof Kozlowski [Thu, 20 Jul 2023 11:55:24 +0000 (13:55 +0200)]
ARM: dts: st: href-tvk1281618: correct touchscreen syna,nosleep-mode
There is no syna,nosleep property in Synaptics RMI4 touchscreen:
ste-hrefprev60-tvk.dtb: synaptics@4b: rmi4-f01@1: 'syna,nosleep' does not match any of the regexes: 'pinctrl-[0-9]+'
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Message-ID: <
20230720115524.137944-2-krzysztof.kozlowski@linaro.org>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Krzysztof Kozlowski [Thu, 20 Jul 2023 11:55:23 +0000 (13:55 +0200)]
ARM: dts: st: href-tvk1281618: fix touchscreen VIO supply
According to bindings and Linux driver, there is no VDDIO but VIO
supply:
ste-hrefprev60-tvk.dtb: synaptics@4b: Unevaluated properties are not allowed ('vddio-supply' was unexpected)
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Message-ID: <
20230720115524.137944-1-krzysztof.kozlowski@linaro.org>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Kuninori Morimoto [Wed, 20 Sep 2023 23:53:12 +0000 (23:53 +0000)]
arm64: dts: renesas: ulcb/kf: Use multi Component sound
+-- ULCB -------------------+
|+--------+ +--------+|
|| SSI0| <---> |ak4613 ||
|| SSI1| <---> | ||
|| | +--------+|
|| | +--------+|
|| SSI2| <---> |HDMI ||
|| | +--------+|
|| SSI3| <--+ |
|| SSI4| <-+| |
|+--------+ || |
+-------------||------------+
+-- Kingfisher -------------+
| || +--------+|
| |+->|pcm3168a||
| +-->| ||
| +--------+|
+---------------------------+
On UCLB/KF, we intuitively think we want to handle these as "2 Sound
Cards":
card0,0: 1st sound of ULCB (SSI0 - ak4613)
card0,1: 2nd sound of ULCB (SSI2 - HDMI)
card1,0: 1st sound of KF (SSI3 - pcm3168a)
^ ^
However, because of ASoC Component vs. Card framework limitations, we
needed to handle this as "1 big Sound Card":
card0,0: 1st sound of ULCB/KF (SSI0 - ak4613)
card0,1: 2nd sound of ULCB/KF (SSI2 - HDMI)
card0,2: 3rd sound of ULCB/KF (SSI3 - pcm3168a)
^ ^
Now ASoC supports multi Component, which allows us to handle "2 Sound
Cards" such as "ULCB Sound Card" and "Kingfisher Sound Card", all
ULCB/KF Audio dtsi can be updated.
Note that this changes the Sound Card specification method from
userland, especially for Kingfisher Sound.
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/87fs382yhk.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Geert Uytterhoeven [Thu, 31 Aug 2023 11:52:33 +0000 (13:52 +0200)]
ARM: dts: renesas: rskrza1: Add FLASH nodes
Add device nodes for the dual Spansion S25FL512S QSPI NOR FLASH and the
Spansion S29GL512S CFI NOR FLASH on the RSK+RZA1 development board.
The former is mapped directly through the SPI Multi I/O Bus Controller.
The latter resides in the external address space of the Bus State
Controller (BSC).
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/17a221699da14639e72264ffa39d47592d470f9a.1693481518.git.geert+renesas@glider.be
Geert Uytterhoeven [Thu, 31 Aug 2023 11:52:32 +0000 (13:52 +0200)]
ARM: dts: renesas: genmai: Add FLASH nodes
Add device nodes for the dual Spansion S25FL512S QSPI NOR FLASH and the
two Spansion S29GL512S CFI NOR FLASHes on the Genmai development board.
The former is mapped directly through the SPI Multi I/O Bus Controller.
The latter reside in the address space of the Bus State Controller
(BSC).
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/53c89c70c6b010702fd9ab5247e19986857671ba.1693481518.git.geert+renesas@glider.be
Geert Uytterhoeven [Thu, 31 Aug 2023 11:52:31 +0000 (13:52 +0200)]
ARM: dts: renesas: wheat: Move Ethernet node to LBSC
The SMSC LAN89218AQ Ethernet controller on the Wheat development board
resides in the external address space of the Local Bus State Controller
(LBSC). Move the Ethernet device node to reflect this.
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/a291c2750144df29e69824d5b9d76cbc11f613c1.1693481518.git.geert+renesas@glider.be
Geert Uytterhoeven [Thu, 31 Aug 2023 11:52:30 +0000 (13:52 +0200)]
ARM: dts: renesas: blanche: Move Ethernet node to LBSC
The SMSC LAN89218AQ Ethernet controller on the Blanche development board
resides in the external address space of the Local Bus State Controller
(LBSC). Move the Ethernet device node to reflect this.
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/457239047bc8b5deabf15d816043a89ab00db5ef.1693481518.git.geert+renesas@glider.be
Geert Uytterhoeven [Thu, 31 Aug 2023 11:52:29 +0000 (13:52 +0200)]
ARM: dts: renesas: marzen: Move Ethernet node to LBSC
The SMSC LAN89218AQ Ethernet controller on the Marzen development board
resides in the external address space of the Local Bus State Controller
(LBSC). Move the Ethernet device node to reflect this.
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/74a8ee61ed89c9ca0489156a4f135ecb825e56b9.1693481518.git.geert+renesas@glider.be
Geert Uytterhoeven [Thu, 31 Aug 2023 11:52:28 +0000 (13:52 +0200)]
ARM: dts: renesas: r8a7792: Add LBSC node
Add a minimal device node for the Local Bus State Controller (LBSC) on
the R-Car V2H SoC, to be extended by board DTS files for devices
residing in the LBSC external address space.
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/182fce2257679f6a8963ecb77aae68af617556d1.1693481518.git.geert+renesas@glider.be
Geert Uytterhoeven [Thu, 31 Aug 2023 11:52:27 +0000 (13:52 +0200)]
ARM: dts: renesas: r8a7779: Add LBSC node
Add a minimal device node for the Local Bus State Controller (LBSC) on
the R-Car H1 SoC, to be extended by board DTS files for devices residing
in the LBSC external address space.
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/2d0a6054306b4975355e65fe012f860ec00fcf55.1693481518.git.geert+renesas@glider.be
Geert Uytterhoeven [Thu, 31 Aug 2023 11:52:26 +0000 (13:52 +0200)]
ARM: dts: renesas: r7s72100: Add BSC node
Add a minimal device node for the Bus State Controller (BSC) on the
RZ/A1H SoC, to be extended by board DTS files for devices residing in
the BSC external address space.
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/ccab4fa198225edcd3750f62532a1ee3c6d2a109.1693481518.git.geert+renesas@glider.be
Geert Uytterhoeven [Thu, 31 Aug 2023 11:52:25 +0000 (13:52 +0200)]
ARM: dts: renesas: Remove unused LBSC nodes from board DTS
Several board DTS files contain minimal device nodes that represent
on-SoC Local Bus State Controllers (LBSC), although they belong in the
SoC-specific DTS files instead. As these device nodes are incomplete
and unused, and hamper adding proper nodes later, it is better to just
remove them.
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/76ece7602045670cbb8dff684c3366ba6eb89add.1693481518.git.geert+renesas@glider.be
Linus Torvalds [Sun, 24 Sep 2023 21:31:13 +0000 (14:31 -0700)]
Linux 6.6-rc3
Linus Torvalds [Sun, 24 Sep 2023 21:14:35 +0000 (14:14 -0700)]
Merge tag 'for-linus' of git://git./virt/kvm/kvm
Pull kvm fixes from Paolo Bonzini:
"ARM:
- Fix EL2 Stage-1 MMIO mappings where a random address was used
- Fix SMCCC function number comparison when the SVE hint is set
RISC-V:
- Fix KVM_GET_REG_LIST API for ISA_EXT registers
- Fix reading ISA_EXT register of a missing extension
- Fix ISA_EXT register handling in get-reg-list test
- Fix filtering of AIA registers in get-reg-list test
x86:
- Fixes for TSC_AUX virtualization
- Stop zapping page tables asynchronously, since we don't zap them as
often as before"
* tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm:
KVM: SVM: Do not use user return MSR support for virtualized TSC_AUX
KVM: SVM: Fix TSC_AUX virtualization setup
KVM: SVM: INTERCEPT_RDTSCP is never intercepted anyway
KVM: x86/mmu: Stop zapping invalidated TDP MMU roots asynchronously
KVM: x86/mmu: Do not filter address spaces in for_each_tdp_mmu_root_yield_safe()
KVM: x86/mmu: Open code leaf invalidation from mmu_notifier
KVM: riscv: selftests: Selectively filter-out AIA registers
KVM: riscv: selftests: Fix ISA_EXT register handling in get-reg-list
RISC-V: KVM: Fix riscv_vcpu_get_isa_ext_single() for missing extensions
RISC-V: KVM: Fix KVM_GET_REG_LIST API for ISA_EXT registers
KVM: selftests: Assert that vasprintf() is successful
KVM: arm64: nvhe: Ignore SVE hint in SMCCC function ID
KVM: arm64: Properly return allocated EL2 VA from hyp_alloc_private_va_range()
Linus Torvalds [Sun, 24 Sep 2023 20:55:34 +0000 (13:55 -0700)]
Merge tag 'trace-v6.6-rc2' of git://git./linux/kernel/git/trace/linux-trace
Pull tracing fixes from Steven Rostedt:
- Fix the "bytes" output of the per_cpu stat file
The tracefs/per_cpu/cpu*/stats "bytes" was giving bogus values as the
accounting was not accurate. It is suppose to show how many used
bytes are still in the ring buffer, but even when the ring buffer was
empty it would still show there were bytes used.
- Fix a bug in eventfs where reading a dynamic event directory (open)
and then creating a dynamic event that goes into that diretory screws
up the accounting.
On close, the newly created event dentry will get a "dput" without
ever having a "dget" done for it. The fix is to allocate an array on
dir open to save what dentries were actually "dget" on, and what ones
to "dput" on close.
* tag 'trace-v6.6-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace:
eventfs: Remember what dentries were created on dir open
ring-buffer: Fix bytes info in per_cpu buffer stats
Linus Torvalds [Sun, 24 Sep 2023 20:50:28 +0000 (13:50 -0700)]
Merge tag 'cxl-fixes-6.6-rc3' of git://git./linux/kernel/git/cxl/cxl
Pull cxl fixes from Dan Williams:
"A collection of regression fixes, bug fixes, and some small cleanups
to the Compute Express Link code.
The regressions arrived in the v6.5 dev cycle and missed the v6.6
merge window due to my personal absences this cycle. The most
important fixes are for scenarios where the CXL subsystem fails to
parse valid region configurations established by platform firmware.
This is important because agreement between OS and BIOS on the CXL
configuration is fundamental to implementing "OS native" error
handling, i.e. address translation and component failure
identification.
Other important fixes are a driver load error when the BIOS lets the
Linux PCI core handle AER events, but not CXL memory errors.
The other fixex might have end user impact, but for now are only known
to trigger in our test/emulation environment.
Summary:
- Fix multiple scenarios where platform firmware defined regions fail
to be assembled by the CXL core.
- Fix a spurious driver-load failure on platforms that enable OS
native AER, but not OS native CXL error handling.
- Fix a regression detecting "poison" commands when "security"
commands are also defined.
- Fix a cxl_test regression with the move to centralize CXL port
register enumeration in the CXL core.
- Miscellaneous small fixes and cleanups"
* tag 'cxl-fixes-6.6-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/cxl/cxl:
cxl/acpi: Annotate struct cxl_cxims_data with __counted_by
cxl/port: Fix cxl_test register enumeration regression
cxl/region: Refactor granularity select in cxl_port_setup_targets()
cxl/region: Match auto-discovered region decoders by HPA range
cxl/mbox: Fix CEL logic for poison and security commands
cxl/pci: Replace host_bridge->native_aer with pcie_aer_is_native()
PCI/AER: Export pcie_aer_is_native()
cxl/pci: Fix appropriate checking for _OSC while handling CXL RAS registers
Krzysztof Kozlowski [Sun, 2 Jul 2023 18:53:01 +0000 (20:53 +0200)]
arm64: dts: marvell: minor whitespace cleanup around '='
The DTS code coding style expects exactly one space before and after '='
sign.
Link: https://lore.kernel.org/r/20230702185301.44505-1-krzysztof.kozlowski@linaro.org
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Krzysztof Kozlowski [Sun, 2 Jul 2023 18:51:27 +0000 (20:51 +0200)]
arm64: dts: mediatek: minor whitespace cleanup around '='
The DTS code coding style expects exactly one space before and after '='
sign.
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Link: https://lore.kernel.org/r/20230702185128.44052-1-krzysztof.kozlowski@linaro.org
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Krzysztof Kozlowski [Wed, 5 Jul 2023 15:00:45 +0000 (17:00 +0200)]
ARM: dts: nuvoton: add missing space before {
Add missing whitespace between node name/label and opening {.
Link: https://lore.kernel.org/r/20230705150045.293879-1-krzysztof.kozlowski@linaro.org
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Krzysztof Kozlowski [Sun, 2 Jul 2023 18:51:28 +0000 (20:51 +0200)]
ARM: dts: mediatek: minor whitespace cleanup around '='
The DTS code coding style expects exactly one space before and after '='
sign.
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Link: https://lore.kernel.org/r/20230702185128.44052-2-krzysztof.kozlowski@linaro.org
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Krzysztof Kozlowski [Wed, 5 Jul 2023 15:00:06 +0000 (17:00 +0200)]
arm64: dts: mediatek: add missing space before {
Add missing whitespace between node name/label and opening {.
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Link: https://lore.kernel.org/r/20230705150006.293690-2-krzysztof.kozlowski@linaro.org
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Krzysztof Kozlowski [Wed, 5 Jul 2023 15:00:05 +0000 (17:00 +0200)]
ARM: dts: mediatek: add missing space before {
Add missing whitespace between node name/label and opening {.
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Link: https://lore.kernel.org/r/20230705150006.293690-1-krzysztof.kozlowski@linaro.org
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Krzysztof Kozlowski [Wed, 5 Jul 2023 14:59:34 +0000 (16:59 +0200)]
arm64: dts: apm: add missing space before {
Add missing whitespace between node name/label and opening {.
Link: https://lore.kernel.org/r/20230705145934.293487-1-krzysztof.kozlowski@linaro.org
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Krzysztof Kozlowski [Thu, 13 Jul 2023 15:29:13 +0000 (17:29 +0200)]
ARM: dts: omap3-devkit8000: correct ethernet reg addresses (split)
The davicom,dm9000 Ethernet Controller accepts two reg addresses.
Link: https://lore.kernel.org/r/20230713152913.82846-1-krzysztof.kozlowski@linaro.org
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Krzysztof Kozlowski [Wed, 12 Jul 2023 07:46:11 +0000 (09:46 +0200)]
arm64: dts: bitmain: lowercase unit addresses
Unit addresses are expected to be lower case. Pointed also by W=1
builds:
Warning (simple_bus_reg): /soc/serial@
5801A000: simple-bus unit address format error, expected "
5801a000"
Link: https://lore.kernel.org/r/20230712074611.35952-1-krzysztof.kozlowski@linaro.org
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Linus Torvalds [Sat, 23 Sep 2023 18:56:57 +0000 (11:56 -0700)]
Merge tag 'gpio-fixes-for-v6.6-rc3' of git://git./linux/kernel/git/brgl/linux
Pull gpio fixes from Bartosz Golaszewski:
- fix an invalid usage of __free(kfree) leading to kfreeing an
ERR_PTR()
- fix an irq domain leak in gpio-tb10x
- MAINTAINERS update
* tag 'gpio-fixes-for-v6.6-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux:
gpio: sim: fix an invalid __free() usage
gpio: tb10x: Fix an error handling path in tb10x_gpio_probe()
MAINTAINERS: gpio-regmap: make myself a maintainer of it
Linus Torvalds [Sat, 23 Sep 2023 18:51:16 +0000 (11:51 -0700)]
Merge tag 'mm-hotfixes-stable-2023-09-23-10-31' of git://git./linux/kernel/git/akpm/mm
Pull misc fixes from Andrew Morton:
"13 hotfixes, 10 of which pertain to post-6.5 issues. The other three
are cc:stable"
* tag 'mm-hotfixes-stable-2023-09-23-10-31' of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm:
proc: nommu: fix empty /proc/<pid>/maps
filemap: add filemap_map_order0_folio() to handle order0 folio
proc: nommu: /proc/<pid>/maps: release mmap read lock
mm: memcontrol: fix GFP_NOFS recursion in memory.high enforcement
pidfd: prevent a kernel-doc warning
argv_split: fix kernel-doc warnings
scatterlist: add missing function params to kernel-doc
selftests/proc: fixup proc-empty-vm test after KSM changes
revert "scripts/gdb/symbols: add specific ko module load command"
selftests: link libasan statically for tests with -fsanitize=address
task_work: add kerneldoc annotation for 'data' argument
mm: page_alloc: fix CMA and HIGHATOMIC landing on the wrong buddy list
sh: mm: re-add lost __ref to ioremap_prot() to fix modpost warning
Linus Torvalds [Sat, 23 Sep 2023 18:34:48 +0000 (11:34 -0700)]
Merge tag '6.6-rc2-smb3-client-fixes' of git://git.samba.org/sfrench/cifs-2.6
Pull smb client fixes from Steve French:
"Six smb3 client fixes, including three for stable, from the SMB
plugfest (testing event) this week:
- Reparse point handling fix (found when investigating dir
enumeration when fifo in dir)
- Fix excessive thread creation for dir lease cleanup
- UAF fix in negotiate path
- remove duplicate error message mapping and fix confusing warning
message
- add dynamic trace point to improve debugging RDMA connection
attempts"
* tag '6.6-rc2-smb3-client-fixes' of git://git.samba.org/sfrench/cifs-2.6:
smb3: fix confusing debug message
smb: client: handle STATUS_IO_REPARSE_TAG_NOT_HANDLED
smb3: remove duplicate error mapping
cifs: Fix UAF in cifs_demultiplex_thread()
smb3: do not start laundromat thread when dir leases disabled
smb3: Add dynamic trace points for RDMA (smbdirect) reconnect
Linus Torvalds [Sat, 23 Sep 2023 18:20:24 +0000 (11:20 -0700)]
Merge tag 'i2c-for-6.6-rc3' of git://git./linux/kernel/git/wsa/linux
Pull i2c fixes from Wolfram Sang:
"A set of I2C driver fixes. Mostly fixing resource leaks or sanity
checks"
* tag 'i2c-for-6.6-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux:
i2c: xiic: Correct return value check for xiic_reinit()
i2c: mux: gpio: Add missing fwnode_handle_put()
i2c: mux: demux-pinctrl: check the return value of devm_kstrdup()
i2c: designware: fix __i2c_dw_disable() in case master is holding SCL low
i2c: i801: unregister tco_pdev in i801_probe() error path
Charles Keepax [Tue, 19 Sep 2023 11:03:20 +0000 (13:03 +0200)]
mfd: cs42l43: Use correct macro for new-style PM runtime ops
The code was accidentally mixing new and old style macros, update the
macros used to remove an unused function warning whilst building with
no PM enabled in the config.
Fixes: ace6d1448138 ("mfd: cs42l43: Add support for cs42l43 core driver")
Signed-off-by: Charles Keepax <ckeepax@opensource.cirrus.com>
Link: https://lore.kernel.org/all/20230822114914.340359-1-ckeepax@opensource.cirrus.com/
Reviewed-by: Nathan Chancellor <nathan@kernel.org>
Tested-by: Geert Uytterhoeven <geert@linux-m68k.org>
Acked-by: Lee Jones <lee@kernel.org>
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Linus Torvalds [Sat, 23 Sep 2023 17:57:03 +0000 (10:57 -0700)]
Merge tag 'loongarch-fixes-6.6-1' of git://git./linux/kernel/git/chenhuacai/linux-loongson
Pull LoongArch fixes from Huacai Chen:
"Fix lockdep, fix a boot failure, fix some build warnings, fix document
links, and some cleanups"
* tag 'loongarch-fixes-6.6-1' of git://git.kernel.org/pub/scm/linux/kernel/git/chenhuacai/linux-loongson:
docs/zh_CN/LoongArch: Update the links of ABI
docs/LoongArch: Update the links of ABI
LoongArch: Don't inline kasan_mem_to_shadow()/kasan_shadow_to_mem()
kasan: Cleanup the __HAVE_ARCH_SHADOW_MAP usage
LoongArch: Set all reserved memblocks on Node#0 at initialization
LoongArch: Remove dead code in relocate_new_kernel
LoongArch: Use _UL() and _ULL()
LoongArch: Fix some build warnings with W=1
LoongArch: Fix lockdep static memory detection
Linus Torvalds [Sat, 23 Sep 2023 17:50:37 +0000 (10:50 -0700)]
Merge tag 's390-6.6-3' of git://git./linux/kernel/git/s390/linux
Pull s390 fixes from Vasily Gorbik:
- Fix potential string buffer overflow in hypervisor user-defined
certificates handling
- Update defconfigs
* tag 's390-6.6-3' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux:
s390/cert_store: fix string length handling
s390: update defconfigs
Linus Torvalds [Sat, 23 Sep 2023 16:56:40 +0000 (09:56 -0700)]
Merge tag 'iomap-6.6-fixes-2' of git://git./fs/xfs/xfs-linux
Pull iomap fixes from Darrick Wong:
- Return EIO on bad inputs to iomap_to_bh instead of BUGging, to deal
less poorly with block device io racing with block device resizing
- Fix a stale page data exposure bug introduced in 6.6-rc1 when
unsharing a file range that is not in the page cache
* tag 'iomap-6.6-fixes-2' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux:
iomap: convert iomap_unshare_iter to use large folios
iomap: don't skip reading in !uptodate folios when unsharing a range
iomap: handle error conditions more gracefully in iomap_to_bh
Paolo Bonzini [Sat, 23 Sep 2023 09:35:55 +0000 (05:35 -0400)]
Merge tag 'kvm-riscv-fixes-6.6-1' of https://github.com/kvm-riscv/linux into HEAD
KVM/riscv fixes for 6.6, take #1
- Fix KVM_GET_REG_LIST API for ISA_EXT registers
- Fix reading ISA_EXT register of a missing extension
- Fix ISA_EXT register handling in get-reg-list test
- Fix filtering of AIA registers in get-reg-list test
Tom Lendacky [Fri, 15 Sep 2023 20:54:32 +0000 (15:54 -0500)]
KVM: SVM: Do not use user return MSR support for virtualized TSC_AUX
When the TSC_AUX MSR is virtualized, the TSC_AUX value is swap type "B"
within the VMSA. This means that the guest value is loaded on VMRUN and
the host value is restored from the host save area on #VMEXIT.
Since the value is restored on #VMEXIT, the KVM user return MSR support
for TSC_AUX can be replaced by populating the host save area with the
current host value of TSC_AUX. And, since TSC_AUX is not changed by Linux
post-boot, the host save area can be set once in svm_hardware_enable().
This eliminates the two WRMSR instructions associated with the user return
MSR support.
Signed-off-by: Tom Lendacky <thomas.lendacky@amd.com>
Message-Id: <
d381de38eb0ab6c9c93dda8503b72b72546053d7.
1694811272.git.thomas.lendacky@amd.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Tom Lendacky [Fri, 15 Sep 2023 20:54:30 +0000 (15:54 -0500)]
KVM: SVM: Fix TSC_AUX virtualization setup
The checks for virtualizing TSC_AUX occur during the vCPU reset processing
path. However, at the time of initial vCPU reset processing, when the vCPU
is first created, not all of the guest CPUID information has been set. In
this case the RDTSCP and RDPID feature support for the guest is not in
place and so TSC_AUX virtualization is not established.
This continues for each vCPU created for the guest. On the first boot of
an AP, vCPU reset processing is executed as a result of an APIC INIT
event, this time with all of the guest CPUID information set, resulting
in TSC_AUX virtualization being enabled, but only for the APs. The BSP
always sees a TSC_AUX value of 0 which probably went unnoticed because,
at least for Linux, the BSP TSC_AUX value is 0.
Move the TSC_AUX virtualization enablement out of the init_vmcb() path and
into the vcpu_after_set_cpuid() path to allow for proper initialization of
the support after the guest CPUID information has been set.
With the TSC_AUX virtualization support now in the vcpu_set_after_cpuid()
path, the intercepts must be either cleared or set based on the guest
CPUID input.
Fixes: 296d5a17e793 ("KVM: SEV-ES: Use V_TSC_AUX if available instead of RDTSC/MSR_TSC_AUX intercepts")
Signed-off-by: Tom Lendacky <thomas.lendacky@amd.com>
Message-Id: <
4137fbcb9008951ab5f0befa74a0399d2cce809a.
1694811272.git.thomas.lendacky@amd.com>
Cc: stable@vger.kernel.org
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Paolo Bonzini [Fri, 22 Sep 2023 21:06:34 +0000 (17:06 -0400)]
KVM: SVM: INTERCEPT_RDTSCP is never intercepted anyway
svm_recalc_instruction_intercepts() is always called at least once
before the vCPU is started, so the setting or clearing of the RDTSCP
intercept can be dropped from the TSC_AUX virtualization support.
Extracted from a patch by Tom Lendacky.
Cc: stable@vger.kernel.org
Fixes: 296d5a17e793 ("KVM: SEV-ES: Use V_TSC_AUX if available instead of RDTSC/MSR_TSC_AUX intercepts")
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Sean Christopherson [Sat, 16 Sep 2023 00:39:15 +0000 (17:39 -0700)]
KVM: x86/mmu: Stop zapping invalidated TDP MMU roots asynchronously
Stop zapping invalidate TDP MMU roots via work queue now that KVM
preserves TDP MMU roots until they are explicitly invalidated. Zapping
roots asynchronously was effectively a workaround to avoid stalling a vCPU
for an extended during if a vCPU unloaded a root, which at the time
happened whenever the guest toggled CR0.WP (a frequent operation for some
guest kernels).
While a clever hack, zapping roots via an unbound worker had subtle,
unintended consequences on host scheduling, especially when zapping
multiple roots, e.g. as part of a memslot. Because the work of zapping a
root is no longer bound to the task that initiated the zap, things like
the CPU affinity and priority of the original task get lost. Losing the
affinity and priority can be especially problematic if unbound workqueues
aren't affined to a small number of CPUs, as zapping multiple roots can
cause KVM to heavily utilize the majority of CPUs in the system, *beyond*
the CPUs KVM is already using to run vCPUs.
When deleting a memslot via KVM_SET_USER_MEMORY_REGION, the async root
zap can result in KVM occupying all logical CPUs for ~8ms, and result in
high priority tasks not being scheduled in in a timely manner. In v5.15,
which doesn't preserve unloaded roots, the issues were even more noticeable
as KVM would zap roots more frequently and could occupy all CPUs for 50ms+.
Consuming all CPUs for an extended duration can lead to significant jitter
throughout the system, e.g. on ChromeOS with virtio-gpu, deleting memslots
is a semi-frequent operation as memslots are deleted and recreated with
different host virtual addresses to react to host GPU drivers allocating
and freeing GPU blobs. On ChromeOS, the jitter manifests as audio blips
during games due to the audio server's tasks not getting scheduled in
promptly, despite the tasks having a high realtime priority.
Deleting memslots isn't exactly a fast path and should be avoided when
possible, and ChromeOS is working towards utilizing MAP_FIXED to avoid the
memslot shenanigans, but KVM is squarely in the wrong. Not to mention
that removing the async zapping eliminates a non-trivial amount of
complexity.
Note, one of the subtle behaviors hidden behind the async zapping is that
KVM would zap invalidated roots only once (ignoring partial zaps from
things like mmu_notifier events). Preserve this behavior by adding a flag
to identify roots that are scheduled to be zapped versus roots that have
already been zapped but not yet freed.
Add a comment calling out why kvm_tdp_mmu_invalidate_all_roots() can
encounter invalid roots, as it's not at all obvious why zapping
invalidated roots shouldn't simply zap all invalid roots.
Reported-by: Pattara Teerapong <pteerapong@google.com>
Cc: David Stevens <stevensd@google.com>
Cc: Yiwei Zhang<zzyiwei@google.com>
Cc: Paul Hsia <paulhsia@google.com>
Cc: stable@vger.kernel.org
Signed-off-by: Sean Christopherson <seanjc@google.com>
Message-Id: <
20230916003916.
2545000-4-seanjc@google.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Paolo Bonzini [Thu, 21 Sep 2023 09:44:56 +0000 (05:44 -0400)]
KVM: x86/mmu: Do not filter address spaces in for_each_tdp_mmu_root_yield_safe()
All callers except the MMU notifier want to process all address spaces.
Remove the address space ID argument of for_each_tdp_mmu_root_yield_safe()
and switch the MMU notifier to use __for_each_tdp_mmu_root_yield_safe().
Extracted out of a patch by Sean Christopherson <seanjc@google.com>
Cc: stable@vger.kernel.org
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Linus Torvalds [Fri, 22 Sep 2023 23:46:55 +0000 (16:46 -0700)]
Merge tag 'hardening-v6.6-rc3' of git://git./linux/kernel/git/kees/linux
Pull hardening fixes from Kees Cook:
- Fix UAPI stddef.h to avoid C++-ism (Alexey Dobriyan)
- Fix harmless UAPI stddef.h header guard endif (Alexey Dobriyan)
* tag 'hardening-v6.6-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux:
uapi: stddef.h: Fix __DECLARE_FLEX_ARRAY for C++
uapi: stddef.h: Fix header guard location
Linus Torvalds [Fri, 22 Sep 2023 23:32:19 +0000 (16:32 -0700)]
Merge tag 'xfs-6.6-fixes-1' of git://git./fs/xfs/xfs-linux
Pull xfs fixes from Chandan Babu:
- Fix an integer overflow bug when processing an fsmap call
- Fix crash due to CPU hot remove event racing with filesystem mount
operation
- During read-only mount, XFS does not allow the contents of the log to
be recovered when there are one or more unrecognized rcompat features
in the primary superblock, since the log might have intent items
which the kernel does not know how to process
- During recovery of log intent items, XFS now reserves log space
sufficient for one cycle of a permanent transaction to execute.
Otherwise, this could lead to livelocks due to non-availability of
log space
- On an fs which has an ondisk unlinked inode list, trying to delete a
file or allocating an O_TMPFILE file can cause the fs to the shutdown
if the first inode in the ondisk inode list is not present in the
inode cache. The bug is solved by explicitly loading the first inode
in the ondisk unlinked inode list into the inode cache if it is not
already cached
A similar problem arises when the uncached inode is present in the
middle of the ondisk unlinked inode list. This second bug is
triggered when executing operations like quotacheck and bulkstat. In
this case, XFS now reads in the entire ondisk unlinked inode list
- Enable LARP mode only on recent v5 filesystems
- Fix a out of bounds memory access in scrub
- Fix a performance bug when locating the tail of the log during
mounting a filesystem
* tag 'xfs-6.6-fixes-1' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux:
xfs: use roundup_pow_of_two instead of ffs during xlog_find_tail
xfs: only call xchk_stats_merge after validating scrub inputs
xfs: require a relatively recent V5 filesystem for LARP mode
xfs: make inode unlinked bucket recovery work with quotacheck
xfs: load uncached unlinked inodes into memory on demand
xfs: reserve less log space when recovering log intent items
xfs: fix log recovery when unknown rocompat bits are set
xfs: reload entire unlinked bucket lists
xfs: allow inode inactivation during a ro mount log recovery
xfs: use i_prev_unlinked to distinguish inodes that are not on the unlinked list
xfs: remove CPU hotplug infrastructure
xfs: remove the all-mounts list
xfs: use per-mount cpumask to track nonempty percpu inodegc lists
xfs: fix an agbno overflow in __xfs_getfsmap_datadev
xfs: fix per-cpu CIL structure aggregation racing with dying cpus
xfs: fix select in config XFS_ONLINE_SCRUB_STATS
Kees Cook [Fri, 22 Sep 2023 17:53:19 +0000 (10:53 -0700)]
cxl/acpi: Annotate struct cxl_cxims_data with __counted_by
Prepare for the coming implementation by GCC and Clang of the __counted_by
attribute. Flexible array members annotated with __counted_by can have
their accesses bounds-checked at run-time checking via CONFIG_UBSAN_BOUNDS
(for array indexing) and CONFIG_FORTIFY_SOURCE (for strcpy/memcpy-family
functions).
As found with Coccinelle[1], add __counted_by for struct cxl_cxims_data.
Additionally, since the element count member must be set before accessing
the annotated flexible array member, move its initialization earlier.
[1] https://github.com/kees/kernel-tools/blob/trunk/coccinelle/examples/counted_by.cocci
Cc: Davidlohr Bueso <dave@stgolabs.net>
Cc: Jonathan Cameron <jonathan.cameron@huawei.com>
Cc: Dave Jiang <dave.jiang@intel.com>
Cc: Alison Schofield <alison.schofield@intel.com>
Cc: Vishal Verma <vishal.l.verma@intel.com>
Cc: Ira Weiny <ira.weiny@intel.com>
Cc: Dan Williams <dan.j.williams@intel.com>
Cc: linux-cxl@vger.kernel.org
Signed-off-by: Kees Cook <keescook@chromium.org>
Reviewed-by: Vishal Verma <vishal.l.verma@intel.com>
Reviewed-by: Dave Jiang <dave.jiang@intel.com>
Link: https://lore.kernel.org/r/20230922175319.work.096-kees@kernel.org
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
Dan Williams [Fri, 15 Sep 2023 08:07:30 +0000 (01:07 -0700)]
cxl/port: Fix cxl_test register enumeration regression
The cxl_test unit test environment models a CXL topology for
sysfs/user-ABI regression testing. It uses interface mocking via the
"--wrap=" linker option to redirect cxl_core routines that parse
hardware registers with versions that just publish objects, like
devm_cxl_enumerate_decoders().
Starting with:
Commit
19ab69a60e3b ("cxl/port: Store the port's Component Register mappings in struct cxl_port")
...port register enumeration is moved into devm_cxl_add_port(). This
conflicts with the "cxl_test avoids emulating registers stance" so
either the port code needs to be refactored (too violent), or modified
so that register enumeration is skipped on "fake" cxl_test ports
(annoying, but straightforward).
This conflict has happened previously and the "check for platform
device" workaround to avoid instrusive refactoring was deployed in those
scenarios. In general, refactoring should only benefit production code,
test code needs to remain minimally instrusive to the greatest extent
possible.
This was missed previously because it may sometimes just cause warning
messages to be emitted, but it can also cause test failures. The
backport to -stable is only nice to have for clean cxl_test runs.
Fixes: 19ab69a60e3b ("cxl/port: Store the port's Component Register mappings in struct cxl_port")
Cc: stable@vger.kernel.org
Reported-by: Alison Schofield <alison.schofield@intel.com>
Reviewed-by: Dave Jiang <dave.jiang@intel.com>
Tested-by: Dave Jiang <dave.jiang@intel.com>
Link: https://lore.kernel.org/r/169476525052.1013896.6235102957693675187.stgit@dwillia2-xfh.jf.intel.com
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
Steven Rostedt (Google) [Fri, 22 Sep 2023 20:34:46 +0000 (16:34 -0400)]
eventfs: Remember what dentries were created on dir open
Using the following code with libtracefs:
int dfd;
// create the directory events/kprobes/kp1
tracefs_kprobe_raw(NULL, "kp1", "schedule_timeout", "time=$arg1");
// Open the kprobes directory
dfd = tracefs_instance_file_open(NULL, "events/kprobes", O_RDONLY);
// Do a lookup of the kprobes/kp1 directory (by looking at enable)
tracefs_file_exists(NULL, "events/kprobes/kp1/enable");
// Now create a new entry in the kprobes directory
tracefs_kprobe_raw(NULL, "kp2", "schedule_hrtimeout", "expires=$arg1");
// Do another lookup to create the dentries
tracefs_file_exists(NULL, "events/kprobes/kp2/enable"))
// Close the directory
close(dfd);
What happened above, the first open (dfd) will call
dcache_dir_open_wrapper() that will create the dentries and up their ref
counts.
Now the creation of "kp2" will add another dentry within the kprobes
directory.
Upon the close of dfd, eventfs_release() will now do a dput for all the
entries in kprobes. But this is where the problem lies. The open only
upped the dentry of kp1 and not kp2. Now the close is decrementing both
kp1 and kp2, which causes kp2 to get a negative count.
Doing a "trace-cmd reset" which deletes all the kprobes cause the kernel
to crash! (due to the messed up accounting of the ref counts).
To solve this, save all the dentries that are opened in the
dcache_dir_open_wrapper() into an array, and use this array to know what
dentries to do a dput on in eventfs_release().
Since the dcache_dir_open_wrapper() calls dcache_dir_open() which uses the
file->private_data, we need to also add a wrapper around dcache_readdir()
that uses the cursor assigned to the file->private_data. This is because
the dentries need to also be saved in the file->private_data. To do this
create the structure:
struct dentry_list {
void *cursor;
struct dentry **dentries;
};
Which will hold both the cursor and the dentries. Some shuffling around is
needed to make sure that dcache_dir_open() and dcache_readdir() only see
the cursor.
Link: https://lore.kernel.org/linux-trace-kernel/20230919211804.230edf1e@gandalf.local.home/
Link: https://lore.kernel.org/linux-trace-kernel/20230922163446.1431d4fa@gandalf.local.home
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Ajay Kaher <akaher@vmware.com>
Fixes: 63940449555e7 ("eventfs: Implement eventfs lookup, read, open functions")
Reported-by: "Masami Hiramatsu (Google)" <mhiramat@kernel.org>
Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
Zheng Yejian [Thu, 21 Sep 2023 12:54:25 +0000 (20:54 +0800)]
ring-buffer: Fix bytes info in per_cpu buffer stats
The 'bytes' info in file 'per_cpu/cpu<X>/stats' means the number of
bytes in cpu buffer that have not been consumed. However, currently
after consuming data by reading file 'trace_pipe', the 'bytes' info
was not changed as expected.
# cat per_cpu/cpu0/stats
entries: 0
overrun: 0
commit overrun: 0
bytes: 568 <--- 'bytes' is problematical !!!
oldest event ts: 8651.371479
now ts: 8653.912224
dropped events: 0
read events: 8
The root cause is incorrect stat on cpu_buffer->read_bytes. To fix it:
1. When stat 'read_bytes', account consumed event in rb_advance_reader();
2. When stat 'entries_bytes', exclude the discarded padding event which
is smaller than minimum size because it is invisible to reader. Then
use rb_page_commit() instead of BUF_PAGE_SIZE at where accounting for
page-based read/remove/overrun.
Also correct the comments of ring_buffer_bytes_cpu() in this patch.
Link: https://lore.kernel.org/linux-trace-kernel/20230921125425.1708423-1-zhengyejian1@huawei.com
Cc: stable@vger.kernel.org
Fixes: c64e148a3be3 ("trace: Add ring buffer stats to measure rate of events")
Signed-off-by: Zheng Yejian <zhengyejian1@huawei.com>
Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
Linus Torvalds [Fri, 22 Sep 2023 20:25:13 +0000 (13:25 -0700)]
Merge tag 'thermal-6.6-rc3' of git://git./linux/kernel/git/rafael/linux-pm
Pull thermal control fix from Rafael Wysocki:
"Unbreak the trip point update sysfs interface that has been broken
since the 6.3 cycle (Rafael Wysocki)"
* tag 'thermal-6.6-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
thermal: sysfs: Fix trip_point_hyst_store()
Linus Torvalds [Fri, 22 Sep 2023 20:19:04 +0000 (13:19 -0700)]
Merge tag 'acpi-6.6-rc3' of git://git./linux/kernel/git/rafael/linux-pm
Pull ACPI fixes from Rafael Wysocki:
"These fix a general ACPI processor driver regression and an ia64 build
issue, both introduced recently.
Specifics:
- Fix recently introduced uninitialized memory access issue in the
ACPI processor driver (Michal Wilczynski)
- Fix ia64 build inadvertently broken by recent ACPI processor driver
changes, which is prudent to do for 6.6 even though ia64 support is
slated for removal in 6.7 (Ard Biesheuvel)"
* tag 'acpi-6.6-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
ACPI: processor: Fix uninitialized access of buf in acpi_set_pdc_bits()
acpi: Provide ia64 dummy implementation of acpi_proc_quirk_mwait_check()
Linus Torvalds [Fri, 22 Sep 2023 19:41:43 +0000 (12:41 -0700)]
Merge tag 'arm64-fixes' of git://git./linux/kernel/git/arm64/linux
Pull arm64 fixes from Will Deacon:
"Small crop of relatively boring arm64 fixes for -rc3.
That's not to say we don't have any juicy bugs, however, it's just
that fixes for those are likely to come via -mm and -tip for a hugetlb
and an atomics issue respectively. I get left with the
documentation...
- Fix detection of "ClearBHB" and "Hinted Conditional Branch" features
- Fix broken wildcarding for Arm PMU MAINTAINERS entry
- Add missing documentation for userspace-visible ID register fields"
* tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux:
arm64: Document missing userspace visible fields in ID_AA64ISAR2_EL1
arm64/hbc: Document HWCAP2_HBC
arm64/sme: Include ID_AA64PFR1_EL1.SME in cpu-feature-registers.rst
arm64: cpufeature: Fix CLRBHB and BC detection
MAINTAINERS: Use wildcard pattern for ARM PMU headers
Linus Torvalds [Fri, 22 Sep 2023 19:35:56 +0000 (12:35 -0700)]
Merge tag 'x86_urgent_for_v6.6-rc3' of git://git./linux/kernel/git/tip/tip
Pull x86 rethunk fixes from Borislav Petkov:
"Fix the patching ordering between static calls and return thunks"
* tag 'x86_urgent_for_v6.6-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
x86,static_call: Fix static-call vs return-thunk
x86/alternatives: Remove faulty optimization
Linus Torvalds [Fri, 22 Sep 2023 19:26:42 +0000 (12:26 -0700)]
Merge tag 'x86-urgent-2023-09-22' of git://git./linux/kernel/git/tip/tip
Pull misc x86 fixes from Ingo Molnar:
- Fix a kexec bug
- Fix an UML build bug
- Fix a handful of SRSO related bugs
- Fix a shadow stacks handling bug & robustify related code
* tag 'x86-urgent-2023-09-22' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
x86/shstk: Add warning for shadow stack double unmap
x86/shstk: Remove useless clone error handling
x86/shstk: Handle vfork clone failure correctly
x86/srso: Fix SBPB enablement for spec_rstack_overflow=off
x86/srso: Don't probe microcode in a guest
x86/srso: Set CPUID feature bits independently of bug or mitigation status
x86/srso: Fix srso_show_state() side effect
x86/asm: Fix build of UML with KASAN
x86/mm, kexec, ima: Use memblock_free_late() from ima_free_kexec_buffer()
Linus Torvalds [Fri, 22 Sep 2023 19:16:46 +0000 (12:16 -0700)]
Merge tag 'sched-urgent-2023-09-22' of git://git./linux/kernel/git/tip/tip
Pull scheduler fix from Ingo Molnar:
"Fix a PF_IDLE initialization bug that generated warnings on tiny-RCU"
* tag 'sched-urgent-2023-09-22' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
kernel/sched: Modify initial boot task idle setup
Linus Torvalds [Fri, 22 Sep 2023 19:02:30 +0000 (12:02 -0700)]
Merge tag 'locking-urgent-2023-09-22' of git://git./linux/kernel/git/tip/tip
Pull locking fixes from Ingo Molnar:
"Fix a include/linux/atomic/atomic-arch-fallback.h breakage that
generated incorrect code, and fix a lockdep reporting race that may
result in lockups"
* tag 'locking-urgent-2023-09-22' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
locking/seqlock: Do the lockdep annotation before locking in do_write_seqcount_begin_nested()
locking/atomic: scripts: fix fallback ifdeffery
Peter Zijlstra [Fri, 22 Sep 2023 10:12:25 +0000 (10:12 +0000)]
x86,static_call: Fix static-call vs return-thunk
Commit
7825451fa4dc ("static_call: Add call depth tracking support")
failed to realize the problem fixed there is not specific to call depth
tracking but applies to all return-thunk uses.
Move the fix to the appropriate place and condition.
Fixes: ee88d363d156 ("x86,static_call: Use alternative RET encoding")
Reported-by: David Kaplan <David.Kaplan@amd.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Signed-off-by: Borislav Petkov (AMD) <bp@alien8.de>
Reviewed-by: Ingo Molnar <mingo@kernel.org>
Tested-by: Borislav Petkov (AMD) <bp@alien8.de>
Cc: <stable@kernel.org>
Josh Poimboeuf [Tue, 5 Sep 2023 05:04:54 +0000 (22:04 -0700)]
x86/alternatives: Remove faulty optimization
The following commit
095b8303f383 ("x86/alternative: Make custom return thunk unconditional")
made '__x86_return_thunk' a placeholder value. All code setting
X86_FEATURE_RETHUNK also changes the value of 'x86_return_thunk'. So
the optimization at the beginning of apply_returns() is dead code.
Also, before the above-mentioned commit, the optimization actually had a
bug It bypassed __static_call_fixup(), causing some raw returns to
remain unpatched in static call trampolines. Thus the 'Fixes' tag.
Fixes: d2408e043e72 ("x86/alternative: Optimize returns patching")
Signed-off-by: Josh Poimboeuf <jpoimboe@kernel.org>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Signed-off-by: Borislav Petkov (AMD) <bp@alien8.de>
Acked-by: Borislav Petkov (AMD) <bp@alien8.de>
Link: https://lore.kernel.org/r/16d19d2249d4485d8380fb215ffaae81e6b8119e.1693889988.git.jpoimboe@kernel.org
Rafael J. Wysocki [Fri, 22 Sep 2023 16:34:34 +0000 (18:34 +0200)]
Merge branch 'acpi-processor'
Merge a fix for recently introduced uninitialized memory access in the
ACPI processor driver from Michal Wilczynski.
* acpi-processor:
ACPI: processor: Fix uninitialized access of buf in acpi_set_pdc_bits()