There is a variation of the Kobo Clara HD containing a PMIC with different default settings for the regulators in the OTP and therefore also regulators wired up in a different way, so add a proper devicetree for it to avoid some magic smoke. Signed-off-by: Andreas Kemnade <andreas@xxxxxxxxxxxx> --- arch/arm/boot/dts/nxp/imx/Makefile | 1 + .../dts/nxp/imx/imx6sll-kobo-clarahd-b.dts | 79 +++++++++++++++++++ 2 files changed, 80 insertions(+) create mode 100644 arch/arm/boot/dts/nxp/imx/imx6sll-kobo-clarahd-b.dts diff --git a/arch/arm/boot/dts/nxp/imx/Makefile b/arch/arm/boot/dts/nxp/imx/Makefile index 4052cad859fa9..a4826d128dfc7 100644 --- a/arch/arm/boot/dts/nxp/imx/Makefile +++ b/arch/arm/boot/dts/nxp/imx/Makefile @@ -288,6 +288,7 @@ dtb-$(CONFIG_SOC_IMX6SL) += \ dtb-$(CONFIG_SOC_IMX6SLL) += \ imx6sll-evk.dtb \ imx6sll-kobo-clarahd.dtb \ + imx6sll-kobo-clarahd-b.dtb \ imx6sll-kobo-librah2o.dtb dtb-$(CONFIG_SOC_IMX6SX) += \ imx6sx-nitrogen6sx.dtb \ diff --git a/arch/arm/boot/dts/nxp/imx/imx6sll-kobo-clarahd-b.dts b/arch/arm/boot/dts/nxp/imx/imx6sll-kobo-clarahd-b.dts new file mode 100644 index 0000000000000..09b890fe915ab --- /dev/null +++ b/arch/arm/boot/dts/nxp/imx/imx6sll-kobo-clarahd-b.dts @@ -0,0 +1,79 @@ +// SPDX-License-Identifier: (GPL-2.0) +/* + * Device tree for the Kobo Clara HD Rev B ebook reader + * + * Name on mainboard is: 37NB-E60K00+4B0 + * Serials start with: E60K02 (a number also seen in + * vendor kernel sources) + * + * Copyright 2024 Andreas Kemnade + */ + +/dts-v1/; + +#include "imx6sll-kobo-clarahd.dts" + +/ { + model = "Kobo Clara HD Rev B"; + compatible = "kobo,clarahd-b", "kobo,clarahd", "fsl,imx6sll"; +}; + +&cpu0 { + arm-supply = <&dcdc5_reg>; + soc-supply = <&dcdc2_reg>; +}; + +&dcdc1_reg { + /delete-property/ regulator-min-microvolt; + /delete-property/ regulator-max-microvolt; + + regulator-state-mem { + regulator-suspend-min-microvolt = <1040000>; + regulator-suspend-max-microvolt = <1040000>; + }; +}; + +&dcdc2_reg { + regulator-min-microvolt = <660000>; + regulator-max-microvolt = <1000000>; + + regulator-state-mem { + regulator-suspend-min-microvolt = <660000>; + regulator-suspend-max-microvolt = <660000>; + }; +}; + +&dcdc3_reg { + /delete-property/ regulator-min-microvolt; + /delete-property/ regulator-max-microvolt; + + regulator-state-mem { + regulator-suspend-min-microvolt = <3300000>; + regulator-suspend-max-microvolt = <3300000>; + }; +}; + +&dcdc4_reg { + /delete-property/ regulator-min-microvolt; + /delete-property/ regulator-max-microvolt; + + regulator-state-mem { + regulator-suspend-min-microvolt = <1700000>; + regulator-suspend-max-microvolt = <1700000>; + }; +}; + +&dcdc5_reg { + regulator-min-microvolt = <710000>; + regulator-max-microvolt = <1100000>; + + regulator-state-mem { + regulator-suspend-min-microvolt = <710000>; + regulator-suspend-max-microvolt = <710000>; + }; +}; + +&ldo8_reg { + /delete-property/ regulator-min-microvolt; + /delete-property/ regulator-max-microvolt; +}; -- 2.39.2