From: Jan Kiszka <[email protected]> The Ultra96 patch is going upstream, the Hikey change is a just a local workaround until a newer firmware is available.
Signed-off-by: Jan Kiszka <[email protected]> --- ...cu100-revC-Give-wifi-some-time-after-powe.patch | 38 ++++++++++++++++++++++ ...le-Workaround-for-missing-device-tree-ent.patch | 34 +++++++++++++++++++ recipes-kernel/linux/linux-jailhouse_4.19.inc | 2 ++ 3 files changed, 74 insertions(+) create mode 100644 recipes-kernel/linux/files/0001-arm64-dts-zcu100-revC-Give-wifi-some-time-after-powe.patch create mode 100644 recipes-kernel/linux/files/0001-pwrseq_simple-Workaround-for-missing-device-tree-ent.patch diff --git a/recipes-kernel/linux/files/0001-arm64-dts-zcu100-revC-Give-wifi-some-time-after-powe.patch b/recipes-kernel/linux/files/0001-arm64-dts-zcu100-revC-Give-wifi-some-time-after-powe.patch new file mode 100644 index 0000000..429c7e5 --- /dev/null +++ b/recipes-kernel/linux/files/0001-arm64-dts-zcu100-revC-Give-wifi-some-time-after-powe.patch @@ -0,0 +1,38 @@ +From 071a0609be14752b2fbe9cab40f2e8e42995ed96 Mon Sep 17 00:00:00 2001 +From: Jan Kiszka <[email protected]> +Date: Thu, 24 Jan 2019 05:54:41 +0100 +Subject: [PATCH] arm64: dts: zcu100-revC: Give wifi some time after power-on + +Somewhere along recent changes to power control of the wl1831, power-on +became very unreliable on the Ultra96, failing like this: + +wl1271_sdio: probe of mmc2:0001:1 failed with error -16 +wl1271_sdio: probe of mmc2:0001:2 failed with error -16 + +After playing with some dt parameters and comparing to other users of +this chip, it turned out we need some power-on delay to make things +stable again. In contrast to those other users which define 200 ms, +Ultra96 is already happy with 10 ms. + +Fixes: 5869ba0653b9 ("arm64: zynqmp: Add support for Xilinx zcu100-revC") +Signed-off-by: Jan Kiszka <[email protected]> +Acked-by: Ulf Hansson <[email protected]> +--- + arch/arm64/boot/dts/xilinx/zynqmp-zcu100-revC.dts | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/arch/arm64/boot/dts/xilinx/zynqmp-zcu100-revC.dts b/arch/arm64/boot/dts/xilinx/zynqmp-zcu100-revC.dts +index 13a0a028df98..e5699d0d91e4 100644 +--- a/arch/arm64/boot/dts/xilinx/zynqmp-zcu100-revC.dts ++++ b/arch/arm64/boot/dts/xilinx/zynqmp-zcu100-revC.dts +@@ -101,6 +101,7 @@ + sdio_pwrseq: sdio-pwrseq { + compatible = "mmc-pwrseq-simple"; + reset-gpios = <&gpio 7 GPIO_ACTIVE_LOW>; /* WIFI_EN */ ++ post-power-on-delay-ms = <10>; + }; + }; + +-- +2.16.4 + diff --git a/recipes-kernel/linux/files/0001-pwrseq_simple-Workaround-for-missing-device-tree-ent.patch b/recipes-kernel/linux/files/0001-pwrseq_simple-Workaround-for-missing-device-tree-ent.patch new file mode 100644 index 0000000..4f8d483 --- /dev/null +++ b/recipes-kernel/linux/files/0001-pwrseq_simple-Workaround-for-missing-device-tree-ent.patch @@ -0,0 +1,34 @@ +From aec2f3a2b7fe3bbcd48811c805d567884f319018 Mon Sep 17 00:00:00 2001 +From: Jan Kiszka <[email protected]> +Date: Sun, 30 Dec 2018 12:59:35 +0100 +Subject: [PATCH] pwrseq_simple: Workaround for missing device tree entry on + hikey + +We need a small power-on delay, but we use the firmware device tree with +Isar/jailhouse-images. Inject the delta via the driver until a new +firmware with the appropriate device tree change is available. + +Not for upstream. + +Signed-off-by: Jan Kiszka <[email protected]> +--- + drivers/mmc/core/pwrseq_simple.c | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/drivers/mmc/core/pwrseq_simple.c b/drivers/mmc/core/pwrseq_simple.c +index a8b9fee4d62a..f0ed2e92ffa6 100644 +--- a/drivers/mmc/core/pwrseq_simple.c ++++ b/drivers/mmc/core/pwrseq_simple.c +@@ -126,6 +126,9 @@ static int mmc_pwrseq_simple_probe(struct platform_device *pdev) + return PTR_ERR(pwrseq->reset_gpios); + } + ++ if (strcmp(pdev->name, "wl1835-pwrseq") == 0) ++ pwrseq->post_power_on_delay_ms = 1; ++ + device_property_read_u32(dev, "post-power-on-delay-ms", + &pwrseq->post_power_on_delay_ms); + device_property_read_u32(dev, "power-off-delay-us", +-- +2.16.4 + diff --git a/recipes-kernel/linux/linux-jailhouse_4.19.inc b/recipes-kernel/linux/linux-jailhouse_4.19.inc index 6a29295..be8540c 100644 --- a/recipes-kernel/linux/linux-jailhouse_4.19.inc +++ b/recipes-kernel/linux/linux-jailhouse_4.19.inc @@ -23,6 +23,8 @@ python() { SRC_URI += " \ https://github.com/siemens/linux/archive/${SRCREV}.tar.gz \ file://0001-ARM-dts-orange-pi-zero-Adjust-wifi-settings.patch \ + file://0001-pwrseq_simple-Workaround-for-missing-device-tree-ent.patch \ + file://0001-arm64-dts-zcu100-revC-Give-wifi-some-time-after-powe.patch \ file://${KERNEL_DEFCONFIG}" S = "${WORKDIR}/linux-${SRCREV}" -- 2.16.4 -- You received this message because you are subscribed to the Google Groups "Jailhouse" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
