Device tree and config updates for the Librem 5 devkit
Subsystems (4)
cover Device tree and config updates for the Librem 5 devkit
The device tree updates ensure the A53 don't get powered off and fix a DT warning. This isn't testable with the arm64 default config unless we enable the rsi wifi modules too so do this as well.
While at that include two binding file updates.
This is against next-20230809 that include David's option,gtm601 conversion.
Guido Günther (5):
dt-bindings: sound: gtm601: Add description
dt-bindings: mmc: Fix reference to pwr-seq-simple
arm64: dts: imx8mq-librem5-devkit: Mark buck2 as always on
arm64: dts: imx8mq-librem5-devkit: Drop power-supply
arm64: defconfig: Enable Redpine 91X wlan driver
.../devicetree/bindings/mmc/mmc-controller.yaml | 2 +- .../devicetree/bindings/sound/option,gtm601.yaml | 6 ++++-- .../boot/dts/freescale/imx8mq-librem5-devkit.dts | 14 +++++--------- arch/arm64/configs/defconfig | 1 + 4 files changed, 11 insertions(+), 12 deletions(-)
Signature · 1 line
2.40.1
PATCH 1/5 dt-bindings: sound: gtm601: Add description
This allows to us to document the channel and sampling rate requirements.
--- Documentation/devicetree/bindings/sound/option,gtm601.yaml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-)
Documentation/devicetree/bindings/sound/option,gtm601.yaml +4 -2
@@ -16,10 +16,12 @@ description: > properties: compatible: oneOf: - - items: # 48 kHz stereo + - description: Broadmobi BM818 (48Khz stereo) + items: - const: broadmobi,bm818 - const: option,gtm601 - - const: option,gtm601 # 8 kHz mono + - description: GTM601 (8kHz mono) + const: option,gtm601 '#sound-dai-cells': const: 0
Signature · 1 line
2.40.1
Re: [PATCH v1 1/5] dt-bindings: sound: gtm601: Add description
Quoted 4 lines · Guido Günther
This allows to us to document the channel and sampling rate requirements.
Signed-off-by Guido Günther <[email protected]>
Thank you!
Quoted 3 lines
--- Documentation/devicetree/bindings/sound/option,gtm601.yaml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-)
Signature · 2 lines
David Heidelberg Certified Linux Magician
Re: [PATCH v1 1/5] dt-bindings: sound: gtm601: Add description
In reply to Guido GüntherQuoted 14 lines · Guido Günther
This allows to us to document the channel and sampling rate requirements.
Signed-off-by Guido Günther <[email protected]>--- Documentation/devicetree/bindings/sound/option,gtm601.yaml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-)Documentation/devicetree/bindings/sound/option,gtm601.yaml +0
-0@@ -16,10 +16,12 @@ description: > properties:
Documentation/devicetree/bindings/sound/option,gtm601.yaml description: > · line 24
Quoted 10 lines
Documentation/devicetree/bindings/sound/option,gtm601.yaml +4
-2compatible: oneOf: - - items: # 48 kHz stereo + - description: Broadmobi BM818 (48Khz stereo) + items: - const: broadmobi,bm818 - const: option,gtm601 - - const: option,gtm601 # 8 kHz mono + - description: GTM601 (8kHz mono) + const: option,gtm601
Makes little odds IMO which way it is done.
PATCH 2/5 dt-bindings: mmc: Fix reference to pwr-seq-simple
In reply to Guido GüntherIt's a YAML file nowadays.
--- Documentation/devicetree/bindings/mmc/mmc-controller.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
Documentation/devicetree/bindings/mmc/mmc-controller.yaml +1 -1
@@ -269,7 +269,7 @@ properties: post-power-on-delay-ms: description: It was invented for MMC pwrseq-simple which could be referred to - mmc-pwrseq-simple.txt. But now it\'s reused as a tunable delay + mmc-pwrseq-simple.yaml. But now it\'s reused as a tunable delay waiting for I/O signalling and card power supply to be stable, regardless of whether pwrseq-simple is used. Default to 10ms if no available.
Signature · 1 line
2.40.1
Re: [PATCH v1 2/5] dt-bindings: mmc: Fix reference to pwr-seq-simple
Quoted 4 lines · Guido Günther
It's a YAML file nowadays.
Signed-off-by Guido Günther <[email protected]>
Applied for next, thanks!
Kind regards
Uffe
Quoted 20 lines
--- Documentation/devicetree/bindings/mmc/mmc-controller.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)Documentation/devicetree/bindings/mmc/mmc-controller.yaml +1
-2@@ -269,7 +269,7 @@ properties: post-power-on-delay-ms: description: It was invented for MMC pwrseq-simple which could be referred to - mmc-pwrseq-simple.txt. But now it\'s reused as a tunable delay + mmc-pwrseq-simple.yaml. But now it\'s reused as a tunable delay waiting for I/O signalling and card power supply to be stable, regardless of whether pwrseq-simple is used. Default to 10ms if no available. --2.40.1
PATCH 3/5 arm64: dts: imx8mq-librem5-devkit: Mark buck2 as always on
In reply to Guido GüntherOtherwise the A53 cores are shut down which doesn't end well.
--- arch/arm64/boot/dts/freescale/imx8mq-librem5-devkit.dts | 1 + 1 file changed, 1 insertion(+)
arch/arm64/boot/dts/freescale/imx8mq-librem5-devkit.dts +1 -0
@@ -324,6 +324,7 @@ buck2_reg: BUCK2 { regulator-ramp-delay = <1250>; rohm,dvs-run-voltage = <1000000>; rohm,dvs-idle-voltage = <900000>; + regulator-always-on; }; buck3_reg: BUCK3 {
Signature · 1 line
2.40.1
PATCH 4/5 arm64: dts: imx8mq-librem5-devkit: Drop power-supply
In reply to Guido GüntherUse a power sequence instead. As this handles the wifi disable line rename the pincontrol accordingly. This also makes it similar to the Librem 5.
Resolves following warning:
arch/arm64/boot/dts/freescale/imx8mq-librem5-devkit.dtb: mmc@30b50000: Unevaluated properties are not allowed ('power-supply' was unexpected)
from schema $id: http://devicetree.org/schemas/mmc/fsl-imx-esdhc.yaml#
--- .../boot/dts/freescale/imx8mq-librem5-devkit.dts | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-)
arch/arm64/boot/dts/freescale/imx8mq-librem5-devkit.dts +4 -9
@@ -231,16 +231,11 @@ vibrator { vcc-supply = <®_3v3_p>; }; - wifi_pwr_en: regulator-wifi-en { - compatible = "regulator-fixed"; + wifi_pwrseq: pwrseq { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_wifi_pwr_en>; - regulator-name = "WIFI_EN"; - regulator-min-microvolt = <3300000>; - regulator-max-microvolt = <3300000>; - gpio = <&gpio3 5 GPIO_ACTIVE_HIGH>; - enable-active-high; - regulator-always-on; + compatible = "mmc-pwrseq-simple"; + reset-gpios = <&gpio3 5 GPIO_ACTIVE_LOW>; }; };
@@ -1032,7 +1027,7 @@ &usdhc2 { pinctrl-2 = <&pinctrl_usdhc2_200mhz>; bus-width = <4>; vmmc-supply = <®_usdhc2_vmmc>; - power-supply = <&wifi_pwr_en>; + mmc-pwrseq = <&wifi_pwrseq>; broken-cd; disable-wp; cap-sdio-irq;
Signature · 1 line
2.40.1
RE: [PATCH v1 4/5] arm64: dts: imx8mq-librem5-devkit: Drop power-supply
Quoted 75 lines
-----Original Message-----
From: Guido Günther <[email protected]>
Sent: 2023年8月10日 2:50
To: Ulf Hansson <[email protected]>; Rob Herring <[email protected]>; Krzysztof Kozlowski <[email protected]>; Conor Dooley <[email protected]>; Liam Girdwood <[email protected]>; Mark Brown <[email protected]>; Shawn Guo <[email protected]>; Sascha Hauer <[email protected]>; Pengutronix Kernel Team <[email protected]>; Fabio Estevam <[email protected]>; dl-linux- imx <[email protected]>; Catalin Marinas <[email protected]>; Will Deacon <[email protected]>; Guido Günther <[email protected]>; Peng Fan <[email protected]>; Bjorn Andersson <[email protected]>; Arnd Bergmann <[email protected]>; Geert Uytterhoeven <[email protected]>; Konrad Dybcio <[email protected]>; Nícolas F. R. A. Prado <[email protected]>; Rafał Miłecki <[email protected]>; [email protected]; [email protected]; [email protected]; [email protected]; alsa-devel@alsa- project.org; [email protected]; David Heidelberg <[email protected]>
Subject: [PATCH v1 4/5] arm64: dts: imx8mq-librem5-devkit: Drop power- supplyUse a power sequence instead. As this handles the wifi disable line rename the pincontrol accordingly. This also makes it similar to the Librem 5.
Resolves following warning:
arch/arm64/boot/dts/freescale/imx8mq-librem5-devkit.dtb:
mmc@30b50000: Unevaluated properties are not allowed ('power-supply' was unexpected)
from schema $id:
https://eur01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fdevicet
ree.org%2Fschemas%2Fmmc%2Ffsl-imx- esdhc.yaml%23&data=05%7C01%7Csherry.sun%40nxp.com%7Cfefefef5326f 4205167c08db990988d7%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0 %7C638272038447289369%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLj AwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C% 7C%7C&sdata=EpcdsbWNkU0%2FuYBx9tHlw9qoSo87XneMNxOHw5Z4%2FFA %3D&reserved=0Reported-by David Heidelberg <[email protected]>Signed-off-by Guido Günther <[email protected]>--- .../boot/dts/freescale/imx8mq-librem5-devkit.dts | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-)arch/arm64/boot/dts/freescale/imx8mq-librem5-devkit.dts +3
-8@@ -231,16 +231,11 @@ vibrator { vcc-supply = <®_3v3_p>; }; - wifi_pwr_en: regulator-wifi-en { - compatible = "regulator-fixed"; + wifi_pwrseq: pwrseq { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_wifi_pwr_en>; - regulator-name = "WIFI_EN"; - regulator-min-microvolt = <3300000>; - regulator-max-microvolt = <3300000>; - gpio = <&gpio3 5 GPIO_ACTIVE_HIGH>; - enable-active-high; - regulator-always-on; + compatible = "mmc-pwrseq-simple"; + reset-gpios = <&gpio3 5 GPIO_ACTIVE_LOW>; }; };
arch/arm64/boot/dts/freescale/imx8mq-librem5-devkit.dts &usdhc2 { · line 1030
Quoted 5 lines
arch/arm64/boot/dts/freescale/imx8mq-librem5-devkit.dts +1
-1@@ -1032,7 +1027,7 @@ &usdhc2 { pinctrl-2 = <&pinctrl_usdhc2_200mhz>; bus-width = <4>; vmmc-supply = <®_usdhc2_vmmc>; - power-supply = <&wifi_pwr_en>; + mmc-pwrseq = <&wifi_pwrseq>;
Hi Guido,
Normally we should use vmmc-supply to control the M.2 pin56(W_DISABLE1#), which controls the WLAN radio power. And use the reset-gpios of mmc-pwrseq to control the M.2 pin23(SDIO_RESET#), it can independently reset the Wi-Fi radio.
Best Regards
Sherry
PATCH 5/5 arm64: defconfig: Enable Redpine 91X wlan driver
In reply to Guido GüntherThe Librem 5 devkit has it connected via SDIO.
--- arch/arm64/configs/defconfig | 1 + 1 file changed, 1 insertion(+)
arch/arm64/configs/defconfig +1 -0
@@ -414,6 +414,7 @@ CONFIG_MWIFIEX=m CONFIG_MWIFIEX_SDIO=m CONFIG_MWIFIEX_PCIE=m CONFIG_MT7921E=m +CONFIG_RSI_91X=m CONFIG_WL18XX=m CONFIG_WLCORE_SDIO=m CONFIG_WWAN=m
Signature · 1 line
2.40.1
Mark Brown
maintainerRe: (subset) [PATCH v1 0/5] Device tree and config updates for the Librem 5 devkit
In reply to Guido GüntherQuoted 10 lines · Guido Günther
The device tree updates ensure the A53 don't get powered off and fix a DT warning. This isn't testable with the arm64 default config unless we enable the rsi wifi modules too so do this as well.
While at that include two binding file updates.
This is against next-20230809 that include David's option,gtm601 conversion.
[...]
Applied to
https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git for-next
Thanks!
[1/5] dt-bindings: sound: gtm601: Add description
commit: 6870f41033d839fa72195fd2dd37f902b37ea62b
All being well this means that it will be integrated into the linux-next tree (usually sometime in the next 24 hours) and sent to Linus during the next merge window (or sooner if it is a bug fix), however if problems are discovered then the patch may be dropped or reverted.
You may get further e-mails resulting from automated or manual testing and review of the tree, please engage with people reporting problems and send followup patches addressing any issues that are reported if needed.
If any updates are required or you are submitting further changes they should be sent as incremental updates against current git, existing patches will not be replaced.
Please add any relevant lists and maintainers to the CCs when replying to this mail.
Thanks,
Mark