diff options
Diffstat (limited to 'recipes-kernel')
13 files changed, 763 insertions, 17 deletions
diff --git a/recipes-kernel/linux/linux-toradex-upstream-6.6/0001-arm64-dts-freescale-imx8mp-verdin-replace-sleep-m.patch b/recipes-kernel/linux/linux-toradex-upstream-6.6/0001-arm64-dts-freescale-imx8mp-verdin-replace-sleep-m.patch new file mode 100644 index 0000000..c05aa10 --- /dev/null +++ b/recipes-kernel/linux/linux-toradex-upstream-6.6/0001-arm64-dts-freescale-imx8mp-verdin-replace-sleep-m.patch @@ -0,0 +1,120 @@ +From 85eba60ab304cfc9d7053298a6aa7dc4234f2cad Mon Sep 17 00:00:00 2001 +From: Stefan Eichenberger <stefan.eichenberger@toradex.com> +Date: Fri, 26 Jan 2024 13:33:05 +0100 +Subject: [PATCH v1 1/4] arm64: dts: freescale: imx8mp-verdin: replace + sleep-moci hog with regulator + +The Verdin family has a signal called sleep-moci which can be used to +turn off peripherals on the carrier board when the SoM goes into +suspend. So far we have hogged this signal, which means the peripherals +are always on and it is not possible to add peripherals that depend on +the sleep-moci to be on. With this change, we replace the hog with a +regulator so that peripherals can add their own regulators that use the +same gpio. Carrier boards that allow peripherals to be powered off in +suspend can disable this regulator and implement their own regulator to +control the sleep-moci. + +Upstream-Status: Submitted [https://lore.kernel.org/linux-devicetree/20240405160720.5977-1-eichest@gmail.com/] +Signed-off-by: Stefan Eichenberger <stefan.eichenberger@toradex.com> +--- + .../dts/freescale/imx8mp-verdin-dahlia.dtsi | 5 ++++ + .../boot/dts/freescale/imx8mp-verdin-dev.dtsi | 5 ++++ + .../dts/freescale/imx8mp-verdin-yavia.dtsi | 5 ++++ + .../boot/dts/freescale/imx8mp-verdin.dtsi | 26 ++++++++++++------- + 4 files changed, 31 insertions(+), 10 deletions(-) + +diff --git a/arch/arm64/boot/dts/freescale/imx8mp-verdin-dahlia.dtsi b/arch/arm64/boot/dts/freescale/imx8mp-verdin-dahlia.dtsi +index 7e9e4b13b5c5..e68e0e6f21e9 100644 +--- a/arch/arm64/boot/dts/freescale/imx8mp-verdin-dahlia.dtsi ++++ b/arch/arm64/boot/dts/freescale/imx8mp-verdin-dahlia.dtsi +@@ -70,6 +70,11 @@ &flexspi { + status = "okay"; + }; + ++&gpio4 { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&pinctrl_ctrl_sleep_moci>; ++}; ++ + /* Current measurement into module VCC */ + &hwmon { + status = "okay"; +diff --git a/arch/arm64/boot/dts/freescale/imx8mp-verdin-dev.dtsi b/arch/arm64/boot/dts/freescale/imx8mp-verdin-dev.dtsi +index a509b2b7fa85..1a2520d4d6cf 100644 +--- a/arch/arm64/boot/dts/freescale/imx8mp-verdin-dev.dtsi ++++ b/arch/arm64/boot/dts/freescale/imx8mp-verdin-dev.dtsi +@@ -93,6 +93,11 @@ &flexspi { + status = "okay"; + }; + ++&gpio4 { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&pinctrl_ctrl_sleep_moci>; ++}; ++ + &gpio_expander_21 { + status = "okay"; + vcc-supply = <®_1p8v>; +diff --git a/arch/arm64/boot/dts/freescale/imx8mp-verdin-yavia.dtsi b/arch/arm64/boot/dts/freescale/imx8mp-verdin-yavia.dtsi +index db1722f0d80e..27160024d5b5 100644 +--- a/arch/arm64/boot/dts/freescale/imx8mp-verdin-yavia.dtsi ++++ b/arch/arm64/boot/dts/freescale/imx8mp-verdin-yavia.dtsi +@@ -100,6 +100,11 @@ &flexcan1 { + status = "okay"; + }; + ++&gpio4 { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&pinctrl_ctrl_sleep_moci>; ++}; ++ + &hwmon_temp { + status = "okay"; + }; +diff --git a/arch/arm64/boot/dts/freescale/imx8mp-verdin.dtsi b/arch/arm64/boot/dts/freescale/imx8mp-verdin.dtsi +index faa17cbbe2fd..e523762947aa 100644 +--- a/arch/arm64/boot/dts/freescale/imx8mp-verdin.dtsi ++++ b/arch/arm64/boot/dts/freescale/imx8mp-verdin.dtsi +@@ -116,6 +116,22 @@ reg_module_eth1phy: regulator-module-eth1phy { + vin-supply = <®_vdd_3v3>; + }; + ++ /* ++ * By default we enable CTRL_SLEEP_MOCI#, this is required to have ++ * peripherals on the carrier board powered. ++ * If more granularity or power saving is required this can be disabled ++ * in the carrier board device tree files. ++ */ ++ reg_force_sleep_moci: regulator-force-sleep-moci { ++ compatible = "regulator-fixed"; ++ enable-active-high; ++ /* Verdin CTRL_SLEEP_MOCI# (SODIMM 256) */ ++ gpio = <&gpio4 29 GPIO_ACTIVE_HIGH>; ++ regulator-always-on; ++ regulator-boot-on; ++ regulator-name = "CTRL_SLEEP_MOCI#"; ++ }; ++ + reg_usb1_vbus: regulator-usb1-vbus { + compatible = "regulator-fixed"; + enable-active-high; +@@ -439,16 +455,6 @@ &gpio4 { + "SODIMM_256", + "SODIMM_48", + "SODIMM_44"; +- +- ctrl-sleep-moci-hog { +- gpio-hog; +- /* Verdin CTRL_SLEEP_MOCI# (SODIMM 256) */ +- gpios = <29 GPIO_ACTIVE_HIGH>; +- line-name = "CTRL_SLEEP_MOCI#"; +- output-high; +- pinctrl-names = "default"; +- pinctrl-0 = <&pinctrl_ctrl_sleep_moci>; +- }; + }; + + /* On-module I2C */ +-- +2.40.1 + diff --git a/recipes-kernel/linux/linux-toradex-upstream-6.6/0001-arm64-dts-ti-k3-am62-verdin-replace-sleep-moci-ho.patch b/recipes-kernel/linux/linux-toradex-upstream-6.6/0001-arm64-dts-ti-k3-am62-verdin-replace-sleep-moci-ho.patch new file mode 100644 index 0000000..b00c911 --- /dev/null +++ b/recipes-kernel/linux/linux-toradex-upstream-6.6/0001-arm64-dts-ti-k3-am62-verdin-replace-sleep-moci-ho.patch @@ -0,0 +1,67 @@ +From 4f65d10d84e26e48818e8c16b604fcdcd6b9f2a3 Mon Sep 17 00:00:00 2001 +From: Stefan Eichenberger <stefan.eichenberger@toradex.com> +Date: Fri, 26 Jan 2024 13:55:00 +0100 +Subject: [PATCH v1 1/2] arm64: dts: ti: k3-am62-verdin: replace sleep-moci hog + with regulator + +The Verdin family has a signal called sleep-moci which can be used to +turn off peripherals on the carrier board when the SoM goes into +suspend. So far we have hogged this signal, which means the peripherals +are always on and it is not possible to add peripherals that depend on +the sleep-moci to be on. With this change, we replace the hog with a +regulator so that peripherals can add their own regulators that use the +same gpio. Carrier boards that allow peripherals to be powered off in +suspend can disable this regulator and implement their own regulator to +control the sleep-moci. + +Upstream-Status: Submitted [https://lore.kernel.org/linux-devicetree/20240301084901.16656-1-eichest@gmail.com/] +Signed-off-by: Stefan Eichenberger <stefan.eichenberger@toradex.com> +--- + arch/arm64/boot/dts/ti/k3-am62-verdin.dtsi | 24 ++++++++++++++-------- + 1 file changed, 16 insertions(+), 8 deletions(-) + +diff --git a/arch/arm64/boot/dts/ti/k3-am62-verdin.dtsi b/arch/arm64/boot/dts/ti/k3-am62-verdin.dtsi +index 6a06724b6d16..ba3b3e18a46d 100644 +--- a/arch/arm64/boot/dts/ti/k3-am62-verdin.dtsi ++++ b/arch/arm64/boot/dts/ti/k3-am62-verdin.dtsi +@@ -122,6 +122,22 @@ reg_1v8_eth: regulator-1v8-eth { + vin-supply = <®_1v8>; + }; + ++ /* ++ * By default we enable CTRL_SLEEP_MOCI#, this is required to have ++ * peripherals on the carrier board powered. ++ * If more granularity or power saving is required this can be disabled ++ * in the carrier board device tree files. ++ */ ++ reg_force_sleep_moci: regulator-force-sleep-moci { ++ compatible = "regulator-fixed"; ++ enable-active-high; ++ /* Verdin CTRL_SLEEP_MOCI# (SODIMM 256) */ ++ gpio = <&main_gpio0 31 GPIO_ACTIVE_HIGH>; ++ regulator-always-on; ++ regulator-boot-on; ++ regulator-name = "CTRL_SLEEP_MOCI#"; ++ }; ++ + /* Verdin SD_1 Power Supply */ + reg_sdhc1_vmmc: regulator-sdhci1 { + compatible = "regulator-fixed"; +@@ -951,14 +967,6 @@ &main_gpio0 { + "", + "", + ""; +- +- verdin_ctrl_sleep_moci: ctrl-sleep-moci-hog { +- gpio-hog; +- /* Verdin CTRL_SLEEP_MOCI# (SODIMM 256) */ +- gpios = <31 GPIO_ACTIVE_HIGH>; +- line-name = "CTRL_SLEEP_MOCI#"; +- output-high; +- }; + }; + + &main_gpio1 { +-- +2.40.1 + diff --git a/recipes-kernel/linux/linux-toradex-upstream-6.6/0001-drm-bridge-lt8912b-Add-suspend-resume-support.patch b/recipes-kernel/linux/linux-toradex-upstream-6.6/0001-drm-bridge-lt8912b-Add-suspend-resume-support.patch new file mode 100644 index 0000000..347c4f2 --- /dev/null +++ b/recipes-kernel/linux/linux-toradex-upstream-6.6/0001-drm-bridge-lt8912b-Add-suspend-resume-support.patch @@ -0,0 +1,68 @@ +From 0b82a2b70f890e8dd7a46dfbfcce00bd7e434762 Mon Sep 17 00:00:00 2001 +From: Stefan Eichenberger <stefan.eichenberger@toradex.com> +Date: Wed, 15 Nov 2023 13:13:36 +0100 +Subject: [PATCH] drm/bridge: lt8912b: Add suspend/resume support + +Add support for suspend and resume. The lt8912b will power off when +going into suspend and power on when resuming. + +Upstream-Status: Backport [0b82a2b70f890e8dd7a46dfbfcce00bd7e434762] + +Signed-off-by: Stefan Eichenberger <stefan.eichenberger@toradex.com> +Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com> +Reviewed-by: Robert Foss <rfoss@kernel.org> +Signed-off-by: Robert Foss <rfoss@kernel.org> +Link: https://patchwork.freedesktop.org/patch/msgid/20231115121338.22959-2-francesco@dolcini.it +--- + drivers/gpu/drm/bridge/lontium-lt8912b.c | 28 ++++++++++++++++++++++++ + 1 file changed, 28 insertions(+) + +diff --git a/drivers/gpu/drm/bridge/lontium-lt8912b.c b/drivers/gpu/drm/bridge/lontium-lt8912b.c +index 03532efb893b..097ab04234b7 100644 +--- a/drivers/gpu/drm/bridge/lontium-lt8912b.c ++++ b/drivers/gpu/drm/bridge/lontium-lt8912b.c +@@ -634,6 +634,33 @@ static const struct drm_bridge_funcs lt8912_bridge_funcs = { + .get_edid = lt8912_bridge_get_edid, + }; + ++static int lt8912_bridge_resume(struct device *dev) ++{ ++ struct lt8912 *lt = dev_get_drvdata(dev); ++ int ret; ++ ++ ret = lt8912_hard_power_on(lt); ++ if (ret) ++ return ret; ++ ++ ret = lt8912_soft_power_on(lt); ++ if (ret) ++ return ret; ++ ++ return lt8912_video_on(lt); ++} ++ ++static int lt8912_bridge_suspend(struct device *dev) ++{ ++ struct lt8912 *lt = dev_get_drvdata(dev); ++ ++ lt8912_hard_power_off(lt); ++ ++ return 0; ++} ++ ++static DEFINE_SIMPLE_DEV_PM_OPS(lt8912_bridge_pm_ops, lt8912_bridge_suspend, lt8912_bridge_resume); ++ + static int lt8912_parse_dt(struct lt8912 *lt) + { + struct gpio_desc *gp_reset; +@@ -770,6 +797,7 @@ static struct i2c_driver lt8912_i2c_driver = { + .driver = { + .name = "lt8912", + .of_match_table = lt8912_dt_match, ++ .pm = pm_sleep_ptr(<8912_bridge_pm_ops), + }, + .probe = lt8912_probe, + .remove = lt8912_remove, +-- +2.40.1 + diff --git a/recipes-kernel/linux/linux-toradex-upstream-6.6/0002-arm64-dts-freescale-imx8mp-verdin-dahlia-support-.patch b/recipes-kernel/linux/linux-toradex-upstream-6.6/0002-arm64-dts-freescale-imx8mp-verdin-dahlia-support-.patch new file mode 100644 index 0000000..ac9e06c --- /dev/null +++ b/recipes-kernel/linux/linux-toradex-upstream-6.6/0002-arm64-dts-freescale-imx8mp-verdin-dahlia-support-.patch @@ -0,0 +1,99 @@ +From 9a7d42b76d21916d2eef2dfd6d61a7bdde97fb2b Mon Sep 17 00:00:00 2001 +From: Stefan Eichenberger <stefan.eichenberger@toradex.com> +Date: Fri, 12 Jan 2024 16:12:14 +0100 +Subject: [PATCH v1 2/4] arm64: dts: freescale: imx8mp-verdin-dahlia: support + sleep-moci + +Previously, we had the sleep-moci pin set to always on. However, the +Dahlia carrier board supports disabling the sleep-moci when the system +is suspended to power down peripherals that support it. This reduces +overall power consumption. This commit adds support for this feature by +disabling the reg_force_sleep_moci regulator and adding two new +regulators for the USB hub and PCIe that can be turned off when the +system is suspended. + +Upstream-Status: Submitted [https://lore.kernel.org/linux-devicetree/20240405160720.5977-1-eichest@gmail.com/] +Signed-off-by: Stefan Eichenberger <stefan.eichenberger@toradex.com> +--- + .../dts/freescale/imx8mp-verdin-dahlia.dtsi | 44 +++++++++++++++++++ + 1 file changed, 44 insertions(+) + +diff --git a/arch/arm64/boot/dts/freescale/imx8mp-verdin-dahlia.dtsi b/arch/arm64/boot/dts/freescale/imx8mp-verdin-dahlia.dtsi +index e68e0e6f21e9..abad1887040a 100644 +--- a/arch/arm64/boot/dts/freescale/imx8mp-verdin-dahlia.dtsi ++++ b/arch/arm64/boot/dts/freescale/imx8mp-verdin-dahlia.dtsi +@@ -32,6 +32,25 @@ simple-audio-card,cpu { + sound-dai = <&sai1>; + }; + }; ++ ++ reg_usb_hub: regulator-usb-hub { ++ compatible = "regulator-fixed"; ++ enable-active-high; ++ /* Verdin CTRL_SLEEP_MOCI# (SODIMM 256) */ ++ gpio = <&gpio4 29 GPIO_ACTIVE_HIGH>; ++ regulator-boot-on; ++ regulator-name = "HUB_PWR_EN"; ++ }; ++ ++ reg_pcie: regulator-pcie { ++ compatible = "regulator-fixed"; ++ enable-active-high; ++ /* Verdin CTRL_SLEEP_MOCI# (SODIMM 256) */ ++ gpio = <&gpio4 29 GPIO_ACTIVE_HIGH>; ++ regulator-boot-on; ++ regulator-name = "PCIE_1_PWR_EN"; ++ startup-delay-us = <100000>; ++ }; + }; + + &backlight { +@@ -117,6 +136,7 @@ wm8904_1a: audio-codec@1a { + + /* Verdin PCIE_1 */ + &pcie { ++ vpcie-supply = <®_pcie>; + status = "okay"; + }; + +@@ -143,6 +163,11 @@ ®_usdhc2_vmmc { + vin-supply = <®_3p3v>; + }; + ++/* We support turning off sleep moci on Dahlia */ ++®_force_sleep_moci { ++ status = "disabled"; ++}; ++ + /* Verdin I2S_1 */ + &sai1 { + assigned-clocks = <&clk IMX8MP_CLK_SAI1>; +@@ -186,6 +211,25 @@ &usb3_phy1 { + status = "okay"; + }; + ++&usb_dwc3_1 { ++ #address-cells = <1>; ++ #size-cells = <0>; ++ ++ usb_hub_3_0: usb-hub@1 { ++ compatible = "usb424,5744"; ++ reg = <1>; ++ peer-hub = <&usb_hub_2_0>; ++ vdd-supply = <®_usb_hub>; ++ }; ++ ++ usb_hub_2_0: usb-hub@2 { ++ compatible = "usb424,2744"; ++ reg = <2>; ++ peer-hub = <&usb_hub_3_0>; ++ vdd-supply = <®_usb_hub>; ++ }; ++}; ++ + /* Verdin SD_1 */ + &usdhc2 { + status = "okay"; +-- +2.40.1 + diff --git a/recipes-kernel/linux/linux-toradex-upstream-6.6/0002-arm64-dts-ti-k3-am62-verdin-dahlia-support-sleep-.patch b/recipes-kernel/linux/linux-toradex-upstream-6.6/0002-arm64-dts-ti-k3-am62-verdin-dahlia-support-sleep-.patch new file mode 100644 index 0000000..9f02980 --- /dev/null +++ b/recipes-kernel/linux/linux-toradex-upstream-6.6/0002-arm64-dts-ti-k3-am62-verdin-dahlia-support-sleep-.patch @@ -0,0 +1,70 @@ +From ae6bfe80045f0b01b352dc03ff99c9afdcaff98b Mon Sep 17 00:00:00 2001 +From: Stefan Eichenberger <stefan.eichenberger@toradex.com> +Date: Fri, 26 Jan 2024 13:58:53 +0100 +Subject: [PATCH v1 2/2] arm64: dts: ti: k3-am62-verdin-dahlia: support + sleep-moci + +Previously, we had the sleep-moci pin set to always on. However, the +Dahlia carrier board supports disabling the sleep-moci when the system +is suspended to power down peripherals that support it. This reduces +overall power consumption. This commit adds support for this feature by +disabling the reg_force_sleep_moci regulator and adding a new regulator +for the USB hub that can be turned off when the system is suspended. + +Upstream-Status: Submitted [https://lore.kernel.org/linux-devicetree/20240301084901.16656-1-eichest@gmail.com/] +Signed-off-by: Stefan Eichenberger <stefan.eichenberger@toradex.com> +--- + .../boot/dts/ti/k3-am62-verdin-dahlia.dtsi | 22 +++++++++++++++++++ + 1 file changed, 22 insertions(+) + +diff --git a/arch/arm64/boot/dts/ti/k3-am62-verdin-dahlia.dtsi b/arch/arm64/boot/dts/ti/k3-am62-verdin-dahlia.dtsi +index bf6d27e70bc4..bb066e726527 100644 +--- a/arch/arm64/boot/dts/ti/k3-am62-verdin-dahlia.dtsi ++++ b/arch/arm64/boot/dts/ti/k3-am62-verdin-dahlia.dtsi +@@ -43,6 +43,15 @@ simple-audio-card,cpu { + sound-dai = <&mcasp0>; + }; + }; ++ ++ reg_usb_hub: regulator-usb-hub { ++ compatible = "regulator-fixed"; ++ enable-active-high; ++ /* Verdin CTRL_SLEEP_MOCI# (SODIMM 256) */ ++ gpio = <&main_gpio0 31 GPIO_ACTIVE_HIGH>; ++ regulator-boot-on; ++ regulator-name = "HUB_PWR_EN"; ++ }; + }; + + /* Verdin ETHs */ +@@ -183,6 +192,11 @@ &ospi0 { + status = "okay"; + }; + ++/* Do not force CTRL_SLEEP_MOCI# always enabled */ ++®_force_sleep_moci { ++ status = "disabled"; ++}; ++ + /* Verdin SD_1 */ + &sdhci1 { + ti,driver-strength-ohm = <33>; +@@ -204,7 +218,15 @@ &usbss1 { + }; + + &usb1 { ++ #address-cells = <1>; ++ #size-cells = <0>; + status = "okay"; ++ ++ usb-hub@1 { ++ compatible = "usb424,2744"; ++ reg = <1>; ++ vdd-supply = <®_usb_hub>; ++ }; + }; + + /* Verdin CTRL_WAKE1_MICO# */ +-- +2.40.1 + diff --git a/recipes-kernel/linux/linux-toradex-upstream-6.6/0002-drm-bridge-lt8912b-Add-power-supplies.patch b/recipes-kernel/linux/linux-toradex-upstream-6.6/0002-drm-bridge-lt8912b-Add-power-supplies.patch new file mode 100644 index 0000000..e4a81b3 --- /dev/null +++ b/recipes-kernel/linux/linux-toradex-upstream-6.6/0002-drm-bridge-lt8912b-Add-power-supplies.patch @@ -0,0 +1,92 @@ +From f6d8a80f1d10ff01cff3ac26e242165a270bbbad Mon Sep 17 00:00:00 2001 +From: Stefan Eichenberger <stefan.eichenberger@toradex.com> +Date: Wed, 15 Nov 2023 13:13:38 +0100 +Subject: [PATCH] drm/bridge: lt8912b: Add power supplies + +Add supplies to the driver that can be used to turn the Lontium lt8912b +on and off. It can have up to 7 independent supplies, we add them all +and enable/disable them with bulk_enable/disable. + +Upstream-Status: Backport [f168c7f7d1a0cb12a4888af9f3f907139372f137] + +Signed-off-by: Stefan Eichenberger <stefan.eichenberger@toradex.com> +Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com> +Reviewed-by: Robert Foss <rfoss@kernel.org> +Signed-off-by: Robert Foss <rfoss@kernel.org> +Link: https://patchwork.freedesktop.org/patch/msgid/20231115121338.22959-4-francesco@dolcini.it +--- + drivers/gpu/drm/bridge/lontium-lt8912b.c | 30 ++++++++++++++++++++++++ + 1 file changed, 30 insertions(+) + +diff --git a/drivers/gpu/drm/bridge/lontium-lt8912b.c b/drivers/gpu/drm/bridge/lontium-lt8912b.c +index 097ab04234b7..273157428c82 100644 +--- a/drivers/gpu/drm/bridge/lontium-lt8912b.c ++++ b/drivers/gpu/drm/bridge/lontium-lt8912b.c +@@ -43,6 +43,8 @@ struct lt8912 { + + struct videomode mode; + ++ struct regulator_bulk_data supplies[7]; ++ + u8 data_lanes; + bool is_power_on; + }; +@@ -257,6 +259,12 @@ static int lt8912_free_i2c(struct lt8912 *lt) + + static int lt8912_hard_power_on(struct lt8912 *lt) + { ++ int ret; ++ ++ ret = regulator_bulk_enable(ARRAY_SIZE(lt->supplies), lt->supplies); ++ if (ret) ++ return ret; ++ + gpiod_set_value_cansleep(lt->gp_reset, 0); + msleep(20); + +@@ -267,6 +275,9 @@ static void lt8912_hard_power_off(struct lt8912 *lt) + { + gpiod_set_value_cansleep(lt->gp_reset, 1); + msleep(20); ++ ++ regulator_bulk_disable(ARRAY_SIZE(lt->supplies), lt->supplies); ++ + lt->is_power_on = false; + } + +@@ -661,6 +672,21 @@ static int lt8912_bridge_suspend(struct device *dev) + + static DEFINE_SIMPLE_DEV_PM_OPS(lt8912_bridge_pm_ops, lt8912_bridge_suspend, lt8912_bridge_resume); + ++static int lt8912_get_regulators(struct lt8912 *lt) ++{ ++ unsigned int i; ++ const char * const supply_names[] = { ++ "vdd", "vccmipirx", "vccsysclk", "vcclvdstx", ++ "vcchdmitx", "vcclvdspll", "vcchdmipll" ++ }; ++ ++ for (i = 0; i < ARRAY_SIZE(lt->supplies); i++) ++ lt->supplies[i].supply = supply_names[i]; ++ ++ return devm_regulator_bulk_get(lt->dev, ARRAY_SIZE(lt->supplies), ++ lt->supplies); ++} ++ + static int lt8912_parse_dt(struct lt8912 *lt) + { + struct gpio_desc *gp_reset; +@@ -712,6 +738,10 @@ static int lt8912_parse_dt(struct lt8912 *lt) + goto err_free_host_node; + } + ++ ret = lt8912_get_regulators(lt); ++ if (ret) ++ goto err_free_host_node; ++ + of_node_put(port_node); + return 0; + +-- +2.40.1 + diff --git a/recipes-kernel/linux/linux-toradex-upstream-6.6/0003-arm64-dts-freescale-imx8mm-verdin-replace-sleep-m.patch b/recipes-kernel/linux/linux-toradex-upstream-6.6/0003-arm64-dts-freescale-imx8mm-verdin-replace-sleep-m.patch new file mode 100644 index 0000000..2fdde24 --- /dev/null +++ b/recipes-kernel/linux/linux-toradex-upstream-6.6/0003-arm64-dts-freescale-imx8mm-verdin-replace-sleep-m.patch @@ -0,0 +1,120 @@ +From dbe145ebf4edaec4bcd9cc632defe58dad030626 Mon Sep 17 00:00:00 2001 +From: Stefan Eichenberger <stefan.eichenberger@toradex.com> +Date: Fri, 26 Jan 2024 13:37:52 +0100 +Subject: [PATCH v1 3/4] arm64: dts: freescale: imx8mm-verdin: replace + sleep-moci hog with regulator + +The Verdin family has a signal called sleep-moci which can be used to +turn off peripherals on the carrier board when the SoM goes into +suspend. So far we have hogged this signal, which means the peripherals +are always on and it is not possible to add peripherals that depend on +the sleep-moci to be on. With this change, we replace the hog with a +regulator so that peripherals can add their own regulators that use the +same gpio. Carrier boards that allow peripherals to be powered off in +suspend can disable this regulator and implement their own regulator to +control the sleep-moci. + +Upstream-Status: Submitted [https://lore.kernel.org/linux-devicetree/20240405160720.5977-1-eichest@gmail.com/] +Signed-off-by: Stefan Eichenberger <stefan.eichenberger@toradex.com> +--- + .../dts/freescale/imx8mm-verdin-dahlia.dtsi | 5 ++++ + .../boot/dts/freescale/imx8mm-verdin-dev.dtsi | 5 ++++ + .../dts/freescale/imx8mm-verdin-yavia.dtsi | 5 ++++ + .../boot/dts/freescale/imx8mm-verdin.dtsi | 26 ++++++++++++------- + 4 files changed, 31 insertions(+), 10 deletions(-) + +diff --git a/arch/arm64/boot/dts/freescale/imx8mm-verdin-dahlia.dtsi b/arch/arm64/boot/dts/freescale/imx8mm-verdin-dahlia.dtsi +index 1cff0b829357..b64dac4f29c2 100644 +--- a/arch/arm64/boot/dts/freescale/imx8mm-verdin-dahlia.dtsi ++++ b/arch/arm64/boot/dts/freescale/imx8mm-verdin-dahlia.dtsi +@@ -58,6 +58,11 @@ &flexspi { + status = "okay"; + }; + ++&gpio5 { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&pinctrl_ctrl_sleep_moci>; ++}; ++ + /* Current measurement into module VCC */ + &hwmon { + status = "okay"; +diff --git a/arch/arm64/boot/dts/freescale/imx8mm-verdin-dev.dtsi b/arch/arm64/boot/dts/freescale/imx8mm-verdin-dev.dtsi +index 3c4b8ca125e3..95b7c9a03a23 100644 +--- a/arch/arm64/boot/dts/freescale/imx8mm-verdin-dev.dtsi ++++ b/arch/arm64/boot/dts/freescale/imx8mm-verdin-dev.dtsi +@@ -78,6 +78,11 @@ &i2c3 { + status = "okay"; + }; + ++&gpio5 { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&pinctrl_ctrl_sleep_moci>; ++}; ++ + &gpio_expander_21 { + status = "okay"; + }; +diff --git a/arch/arm64/boot/dts/freescale/imx8mm-verdin-yavia.dtsi b/arch/arm64/boot/dts/freescale/imx8mm-verdin-yavia.dtsi +index 1e28c78e381f..763f069e8405 100644 +--- a/arch/arm64/boot/dts/freescale/imx8mm-verdin-yavia.dtsi ++++ b/arch/arm64/boot/dts/freescale/imx8mm-verdin-yavia.dtsi +@@ -81,6 +81,11 @@ &gpio3 { + pinctrl-0 = <&pinctrl_gpios_ext_yavia>; + }; + ++&gpio5 { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&pinctrl_ctrl_sleep_moci>; ++}; ++ + &hwmon_temp { + status = "okay"; + }; +diff --git a/arch/arm64/boot/dts/freescale/imx8mm-verdin.dtsi b/arch/arm64/boot/dts/freescale/imx8mm-verdin.dtsi +index 6f0811587142..4768b05fd765 100644 +--- a/arch/arm64/boot/dts/freescale/imx8mm-verdin.dtsi ++++ b/arch/arm64/boot/dts/freescale/imx8mm-verdin.dtsi +@@ -110,6 +110,22 @@ reg_ethphy: regulator-ethphy { + startup-delay-us = <200000>; + }; + ++ /* ++ * By default we enable CTRL_SLEEP_MOCI#, this is required to have ++ * peripherals on the carrier board powered. ++ * If more granularity or power saving is required this can be disabled ++ * in the carrier board device tree files. ++ */ ++ reg_force_sleep_moci: regulator-force-sleep-moci { ++ compatible = "regulator-fixed"; ++ enable-active-high; ++ /* Verdin CTRL_SLEEP_MOCI# (SODIMM 256) */ ++ gpio = <&gpio5 1 GPIO_ACTIVE_HIGH>; ++ regulator-always-on; ++ regulator-boot-on; ++ regulator-name = "CTRL_SLEEP_MOCI#"; ++ }; ++ + reg_usb_otg1_vbus: regulator-usb-otg1 { + compatible = "regulator-fixed"; + enable-active-high; +@@ -333,16 +349,6 @@ &gpio5 { + "SODIMM_212", + "SODIMM_151", + "SODIMM_153"; +- +- ctrl-sleep-moci-hog { +- gpio-hog; +- /* Verdin CTRL_SLEEP_MOCI# (SODIMM 256) */ +- gpios = <1 GPIO_ACTIVE_HIGH>; +- line-name = "CTRL_SLEEP_MOCI#"; +- output-high; +- pinctrl-names = "default"; +- pinctrl-0 = <&pinctrl_ctrl_sleep_moci>; +- }; + }; + + /* On-module I2C */ +-- +2.40.1 + diff --git a/recipes-kernel/linux/linux-toradex-upstream-6.6/0004-arm64-dts-freescale-imx8mm-verdin-dahlia-support-.patch b/recipes-kernel/linux/linux-toradex-upstream-6.6/0004-arm64-dts-freescale-imx8mm-verdin-dahlia-support-.patch new file mode 100644 index 0000000..7749b0e --- /dev/null +++ b/recipes-kernel/linux/linux-toradex-upstream-6.6/0004-arm64-dts-freescale-imx8mm-verdin-dahlia-support-.patch @@ -0,0 +1,90 @@ +From fad8b15c2eabbded61c821a04238b5fa2fb596c9 Mon Sep 17 00:00:00 2001 +From: Stefan Eichenberger <stefan.eichenberger@toradex.com> +Date: Fri, 26 Jan 2024 13:41:14 +0100 +Subject: [PATCH v1 4/4] arm64: dts: freescale: imx8mm-verdin-dahlia: support + sleep-moci + +Previously, we had the sleep-moci pin set to always on. However, the +Dahlia carrier board supports disabling the sleep-moci when the system +is suspended to power down peripherals that support it. This reduces +overall power consumption. This commit adds support for this feature by +disabling the reg_force_sleep_moci regulator and adding two new +regulators for the USB hub and PCIe that can be turned off when the +system is suspended. + +Upstream-Status: Submitted [https://lore.kernel.org/linux-devicetree/20240405160720.5977-1-eichest@gmail.com/] +Signed-off-by: Stefan Eichenberger <stefan.eichenberger@toradex.com> +--- + .../dts/freescale/imx8mm-verdin-dahlia.dtsi | 33 +++++++++++++++++++ + 1 file changed, 33 insertions(+) + +diff --git a/arch/arm64/boot/dts/freescale/imx8mm-verdin-dahlia.dtsi b/arch/arm64/boot/dts/freescale/imx8mm-verdin-dahlia.dtsi +index b64dac4f29c2..393fc9e20423 100644 +--- a/arch/arm64/boot/dts/freescale/imx8mm-verdin-dahlia.dtsi ++++ b/arch/arm64/boot/dts/freescale/imx8mm-verdin-dahlia.dtsi +@@ -32,6 +32,25 @@ simple-audio-card,cpu { + sound-dai = <&sai2>; + }; + }; ++ ++ reg_usb_hub: regulator-usb-hub { ++ compatible = "regulator-fixed"; ++ enable-active-high; ++ /* Verdin CTRL_SLEEP_MOCI# (SODIMM 256) */ ++ gpio = <&gpio5 1 GPIO_ACTIVE_HIGH>; ++ regulator-boot-on; ++ regulator-name = "HUB_PWR_EN"; ++ }; ++ ++ reg_pcie: regulator-pcie { ++ compatible = "regulator-fixed"; ++ enable-active-high; ++ /* Verdin CTRL_SLEEP_MOCI# (SODIMM 256) */ ++ gpio = <&gpio5 1 GPIO_ACTIVE_HIGH>; ++ regulator-boot-on; ++ regulator-name = "PCIE_1_PWR_EN"; ++ startup-delay-us = <100000>; ++ }; + }; + + /* Verdin SPI_1 */ +@@ -98,6 +117,7 @@ wm8904_1a: audio-codec@1a { + + /* Verdin PCIE_1 */ + &pcie0 { ++ vpcie-supply = <®_pcie>; + status = "okay"; + }; + +@@ -120,6 +140,11 @@ &pwm3 { + status = "okay"; + }; + ++/* We support turning off sleep moci on Dahlia */ ++®_force_sleep_moci { ++ status = "disabled"; ++}; ++ + /* Verdin I2S_1 */ + &sai2 { + status = "okay"; +@@ -148,8 +173,16 @@ &usbotg1 { + + /* Verdin USB_2 */ + &usbotg2 { ++ #address-cells = <1>; ++ #size-cells = <0>; + disable-over-current; + status = "okay"; ++ ++ usb-hub@1 { ++ compatible = "usb424,2744"; ++ reg = <1>; ++ vdd-supply = <®_usb_hub>; ++ }; + }; + + /* Verdin SD_1 */ +-- +2.40.1 + diff --git a/recipes-kernel/linux/linux-toradex-upstream-6.6/aarch64/defconfig b/recipes-kernel/linux/linux-toradex-upstream-6.6/aarch64/defconfig index 6fc8118..abccec4 100644 --- a/recipes-kernel/linux/linux-toradex-upstream-6.6/aarch64/defconfig +++ b/recipes-kernel/linux/linux-toradex-upstream-6.6/aarch64/defconfig @@ -31,6 +31,7 @@ CONFIG_SCHED_AUTOGROUP=y CONFIG_BLK_DEV_INITRD=y CONFIG_KALLSYMS_ALL=y CONFIG_PROFILING=y +CONFIG_KEXEC=y CONFIG_KEXEC_FILE=y CONFIG_CRASH_DUMP=y CONFIG_ARCH_K3=y @@ -372,12 +373,12 @@ CONFIG_SERIO_AMBAKMI=y CONFIG_LEGACY_PTY_COUNT=16 CONFIG_SERIAL_8250=y CONFIG_SERIAL_8250_CONSOLE=y +CONFIG_SERIAL_8250_NR_UARTS=6 +CONFIG_SERIAL_8250_RUNTIME_UARTS=6 CONFIG_SERIAL_8250_EXTENDED=y CONFIG_SERIAL_8250_SHARE_IRQ=y CONFIG_SERIAL_8250_DW=y CONFIG_SERIAL_8250_OMAP=y -CONFIG_SERIAL_8250_NR_UARTS=6 -CONFIG_SERIAL_8250_RUNTIME_UARTS=6 CONFIG_SERIAL_OF_PLATFORM=y CONFIG_SERIAL_AMBA_PL011=y CONFIG_SERIAL_AMBA_PL011_CONSOLE=y @@ -457,6 +458,7 @@ CONFIG_GPIO_MAX77620=y CONFIG_POWER_RESET_BRCMSTB=y CONFIG_POWER_RESET_XGENE=y CONFIG_POWER_RESET_SYSCON=y +CONFIG_POWER_RESET_SYSCON_POWEROFF=y CONFIG_SYSCON_REBOOT_MODE=y CONFIG_NVMEM_REBOOT_MODE=m CONFIG_BATTERY_QCOM_BATTMGR=m @@ -940,7 +942,6 @@ CONFIG_INTERCONNECT_IMX8MQ=m CONFIG_INTERCONNECT_IMX8MP=y CONFIG_COUNTER=m CONFIG_HTE=y -CONFIG_EXFAT_FS=m CONFIG_EXT2_FS=y CONFIG_EXT3_FS=y CONFIG_EXT4_FS_POSIX_ACL=y @@ -953,6 +954,7 @@ CONFIG_AUTOFS_FS=y CONFIG_FUSE_FS=m CONFIG_CUSE=m CONFIG_VFAT_FS=y +CONFIG_EXFAT_FS=m CONFIG_NTFS_FS=m CONFIG_NTFS_RW=y CONFIG_TMPFS_POSIX_ACL=y diff --git a/recipes-kernel/linux/linux-toradex-upstream-6.6/defconfig b/recipes-kernel/linux/linux-toradex-upstream-6.6/defconfig index 0bbb726..d2b8d0b 100644 --- a/recipes-kernel/linux/linux-toradex-upstream-6.6/defconfig +++ b/recipes-kernel/linux/linux-toradex-upstream-6.6/defconfig @@ -17,7 +17,6 @@ CONFIG_USER_NS=y CONFIG_RELAY=y CONFIG_BLK_DEV_INITRD=y CONFIG_EXPERT=y -CONFIG_KALLSYMS_ALL=y CONFIG_PERF_EVENTS=y CONFIG_ARCH_MULTI_V6=y CONFIG_ARCH_MXC=y @@ -77,7 +76,7 @@ CONFIG_RFKILL_INPUT=y CONFIG_PCI=y CONFIG_PCI_MSI=y # CONFIG_VGA_ARB is not set -CONFIG_PCI_IMX6=y +CONFIG_PCI_IMX6_HOST=y CONFIG_DEVTMPFS=y CONFIG_DEVTMPFS_MOUNT=y # CONFIG_STANDALONE is not set @@ -123,9 +122,9 @@ CONFIG_NETDEVICES=y # CONFIG_NET_VENDOR_MICREL is not set # CONFIG_NET_VENDOR_MICROCHIP is not set # CONFIG_NET_VENDOR_NATSEMI is not set +# CONFIG_NET_VENDOR_QUALCOMM is not set # CONFIG_NET_VENDOR_SEEQ is not set CONFIG_SMC91X=y -CONFIG_SMC911X=y CONFIG_SMSC911X=y # CONFIG_NET_VENDOR_STMICRO is not set CONFIG_MICREL_PHY=y @@ -226,7 +225,6 @@ CONFIG_VIDEO_TC358743=m # CONFIG_CXD2880_SPI_DRV is not set CONFIG_IMX_IPUV3_CORE=y CONFIG_DRM=y -CONFIG_DRM_DEBUG_MODESET_LOCK=y CONFIG_DRM_PANEL_LVDS=y CONFIG_DRM_PANEL_SIMPLE=y CONFIG_DRM_PANEL_EDP=y @@ -243,11 +241,9 @@ CONFIG_DRM_ETNAVIV=y CONFIG_DRM_MXSFB=y CONFIG_FB=y CONFIG_FB_MODE_HELPERS=y -# CONFIG_FB_MX3 is not set CONFIG_BACKLIGHT_CLASS_DEVICE=y CONFIG_BACKLIGHT_PWM=y CONFIG_BACKLIGHT_GPIO=y -CONFIG_FRAMEBUFFER_CONSOLE=y CONFIG_LOGO=y CONFIG_SOUND=y CONFIG_SND=y @@ -320,7 +316,6 @@ CONFIG_LEDS_TRIGGER_TIMER=y CONFIG_LEDS_TRIGGER_ONESHOT=y CONFIG_LEDS_TRIGGER_HEARTBEAT=y CONFIG_LEDS_TRIGGER_BACKLIGHT=y -CONFIG_LEDS_TRIGGER_GPIO=y CONFIG_LEDS_TRIGGER_DEFAULT_ON=y CONFIG_RTC_CLASS=y CONFIG_RTC_INTF_DEV_UIE_EMUL=y @@ -333,7 +328,6 @@ CONFIG_IMX_SDMA=m CONFIG_MXS_DMA=y CONFIG_DMATEST=m CONFIG_STAGING=y -CONFIG_R8188EU=m CONFIG_STAGING_MEDIA=y CONFIG_VIDEO_IMX_MEDIA=y CONFIG_COMMON_CLK_PWM=y @@ -357,7 +351,6 @@ CONFIG_NVMEM_SNVS_LPGPR=y CONFIG_TEE=y CONFIG_OPTEE=y CONFIG_MUX_MMIO=y -CONFIG_EXFAT_FS=m CONFIG_EXT2_FS=m CONFIG_EXT2_FS_XATTR=y CONFIG_EXT2_FS_POSIX_ACL=y @@ -368,8 +361,7 @@ CONFIG_EXT3_FS_SECURITY=y CONFIG_EXT4_FS=y CONFIG_QUOTA=y CONFIG_QUOTA_NETLINK_INTERFACE=y -# CONFIG_PRINT_QUOTA_WARNING is not set -CONFIG_AUTOFS4_FS=y +CONFIG_AUTOFS_FS=y CONFIG_FUSE_FS=m CONFIG_ISO9660_FS=m CONFIG_JOLIET=y @@ -377,6 +369,7 @@ CONFIG_ZISOFS=y CONFIG_UDF_FS=m CONFIG_MSDOS_FS=m CONFIG_VFAT_FS=y +CONFIG_EXFAT_FS=m CONFIG_NTFS3_FS=m CONFIG_TMPFS_POSIX_ACL=y CONFIG_JFFS2_FS=m @@ -401,6 +394,7 @@ CONFIG_CRYPTO_DEV_SAHARA=y CONFIG_CRYPTO_DEV_MXS_DCP=y CONFIG_CRC_CCITT=y CONFIG_CRC_T10DIF=y +CONFIG_CRC_ITU_T=y CONFIG_CRC7=m CONFIG_LIBCRC32C=m CONFIG_CMA_SIZE_MBYTES=256 diff --git a/recipes-kernel/linux/linux-toradex-upstream-6.6/toradex_imx_v6_v7.config b/recipes-kernel/linux/linux-toradex-upstream-6.6/toradex_imx_v6_v7.config index c63dc9d..7ba0d3d 100644 --- a/recipes-kernel/linux/linux-toradex-upstream-6.6/toradex_imx_v6_v7.config +++ b/recipes-kernel/linux/linux-toradex-upstream-6.6/toradex_imx_v6_v7.config @@ -134,6 +134,7 @@ CONFIG_FB_MX3=n CONFIG_RTC_DRV_MXC_V2=n CONFIG_PWM_IMX_TPM=n CONFIG_FSL_EDMA=n +CONFIG_GPIO_VF610=n # Disable not needed functionality CONFIG_KEXEC=n @@ -156,6 +157,7 @@ CONFIG_SERIO=n CONFIG_PTP_1588_CLOCK_KVM=n CONFIG_TOUCHSCREEN_ADS7846=n +CONFIG_TOUCHSCREEN_CYTTSP5=n CONFIG_TOUCHSCREEN_DA9052=n CONFIG_TOUCHSCREEN_EGALAX=n CONFIG_TOUCHSCREEN_GOODIX=n @@ -167,6 +169,7 @@ CONFIG_TOUCHSCREEN_MC13783=n CONFIG_TOUCHSCREEN_TSC2004=n CONFIG_TOUCHSCREEN_TSC2007=n CONFIG_TOUCHSCREEN_SX8654=n +CONFIG_SENSORS_SY7636A=n CONFIG_TOUCHSCREEN_COLIBRI_VF50=n CONFIG_I2C_MUX=n @@ -175,6 +178,7 @@ CONFIG_I2C_HELPER_AUTO=n CONFIG_I2C_ALGOPCF=n CONFIG_I2C_ALGOPCA=n +CONFIG_GPIO_BD71815=n CONFIG_GPIO_SIOX=n CONFIG_GPIO_MAX732X=n CONFIG_GPIO_PCA953X=n @@ -182,24 +186,32 @@ CONFIG_GPIO_PCF857X=n CONFIG_GPIO_STMPE=n CONFIG_GPIO_74X164=n +CONFIG_W1=n + CONFIG_RN5T618_POWER=n CONFIG_SENSORS_MC13783_ADC=n +CONFIG_SENSORS_PWM_FAN=n +CONFIG_IIO_ST_ACCEL_3AXIS=n CONFIG_DA9063_WATCHDOG=n CONFIG_DA9062_WATCHDOG=n +CONFIG_MFD_ROHM_BD71828=n CONFIG_MFD_DA9052_I2C=n CONFIG_MFD_DA9062=n CONFIG_MFD_DA9063=n CONFIG_MFD_MC13XXX_SPI=n CONFIG_MFD_MC13XXX_I2C=n +CONFIG_MFD_SY7636A=n +CONFIG_REGULATOR_BD71815=n CONFIG_REGULATOR_DA9052=n CONFIG_REGULATOR_DA9062=n CONFIG_REGULATOR_DA9063=n CONFIG_REGULATOR_LTC3676=n CONFIG_REGULATOR_MC13783=n CONFIG_REGULATOR_MC13892=n +CONFIG_REGULATOR_SY7636A=n CONFIG_DVB_NET=n @@ -211,6 +223,8 @@ CONFIG_VIDEO_TC358743=m CONFIG_CXD2880_SPI_DRV=n +CONFIG_DRM_I2C_NXP_TDA998X=n + # This compiles all media-related drivers as modules and disables TV stuff CONFIG_MEDIA_SUPPORT=y CONFIG_VIDEO_IMX_MEDIA=y @@ -239,6 +253,7 @@ CONFIG_SND_SOC_ES8328_SPI=n CONFIG_HID_WACOM=n CONFIG_I2C_HID_OF=n +CONFIG_RTC_DRV_BD70528=n CONFIG_RTC_DRV_ISL1208=n CONFIG_RTC_DRV_PCF8523=n CONFIG_RTC_DRV_PCF8563=n @@ -248,6 +263,8 @@ CONFIG_RTC_DRV_RV3029C2=n CONFIG_RTC_DRV_DA9063=n CONFIG_RTC_DRV_MC13XXX=n +CONFIG_COMMON_CLK_BD718XX=n + CONFIG_MMA8452=n CONFIG_RN5T618_ADC=n CONFIG_SENSORS_ISL29018=n @@ -263,6 +280,7 @@ CONFIG_WLCORE=n CONFIG_CS89x0_PLATFORM=n +CONFIG_NET_VENDOR_QUALCOMM=n CONFIG_AT803X_PHY=n CONFIG_USB_RTL8152=m CONFIG_USB_LAN78XX=m diff --git a/recipes-kernel/linux/linux-toradex-upstream-rt_6.6.bb b/recipes-kernel/linux/linux-toradex-upstream-rt_6.6.bb index 58f5a0e..7380678 100644 --- a/recipes-kernel/linux/linux-toradex-upstream-rt_6.6.bb +++ b/recipes-kernel/linux/linux-toradex-upstream-rt_6.6.bb @@ -1,8 +1,6 @@ LINUX_VERSION ?= "6.6.20-rt25" require recipes-kernel/linux/linux-toradex-upstream_6.6.bb -FILESEXTRAPATHS:prepend := "${THISDIR}/linux-toradex-upstream-6.6:" - SUMMARY = "Toradex mainline real-time Linux kernel" # To build the RT kernel we use the RT kernel git repo rather than applying # the RT patch on top of a vanilla kernel. diff --git a/recipes-kernel/linux/linux-toradex-upstream_6.6.bb b/recipes-kernel/linux/linux-toradex-upstream_6.6.bb index 1704c14..b0e9c5e 100644 --- a/recipes-kernel/linux/linux-toradex-upstream_6.6.bb +++ b/recipes-kernel/linux/linux-toradex-upstream_6.6.bb @@ -1,6 +1,6 @@ require linux-toradex-upstream.inc -FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}-${PV}:" +FILESEXTRAPATHS:prepend := "${THISDIR}/linux-toradex-upstream-6.6:" LINUX_REPO = "git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git" @@ -21,6 +21,14 @@ TDX_PATCHES = " \ file://0003-dt-bindings-power-reset-gpio-poweroff-Add-priority-p.patch \ file://0004-media-i2c-ov5640-Implement-get_mbus_config.patch \ file://0004-power-reset-gpio-poweroff-make-sys-handler-priority-.patch \ + file://0001-drm-bridge-lt8912b-Add-suspend-resume-support.patch \ + file://0002-drm-bridge-lt8912b-Add-power-supplies.patch \ + file://0001-arm64-dts-freescale-imx8mp-verdin-replace-sleep-m.patch \ + file://0002-arm64-dts-freescale-imx8mp-verdin-dahlia-support-.patch \ + file://0003-arm64-dts-freescale-imx8mm-verdin-replace-sleep-m.patch \ + file://0004-arm64-dts-freescale-imx8mm-verdin-dahlia-support-.patch \ + file://0001-arm64-dts-ti-k3-am62-verdin-replace-sleep-moci-ho.patch \ + file://0002-arm64-dts-ti-k3-am62-verdin-dahlia-support-sleep-.patch \ " PV = "6.6" LINUX_VERSION ?= "6.6.20" |