* [PATCH v3 2/3] ARM: dts: add Netronix E60K02 board common file
@ 2019-10-10 19:23 ` Andreas Kemnade
0 siblings, 0 replies; 51+ messages in thread
From: Andreas Kemnade @ 2019-10-10 19:23 UTC (permalink / raw)
To: robh+dt, mark.rutland, shawnguo, s.hauer, kernel, festevam,
linux-imx, manivannan.sadhasivam, andrew.smirnov, marex, angus,
devicetree, linux-kernel, linux-arm-kernel, j.neuschaefer,
Discussions about the Letux Kernel, Marco Felsch
Cc: Andreas Kemnade
The Netronix board E60K02 can be found some several Ebook-Readers,
at least the Kobo Clara HD and the Tolino Shine 3. The board
is equipped with different SoCs requiring different pinmuxes.
For now the following peripherals are included:
- LED
- Power Key
- Cover (gpio via hall sensor)
- RC5T619 PMIC (the kernel misses support for rtc and charger
subdevices).
- Backlight via lm3630a
- Wifi sdio chip detection (mmc-powerseq and stuff)
It is based on vendor kernel but heavily reworked due to many
changed bindings.
Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
---
Changes in v3:
- better led name
- correct memory size
- comments about missing devices
Changes in v2:
- reordered, was 1/3
- moved pinmuxes to their actual users, not the parents
of them
- removed some already-disabled stuff
- minor cleanups
backligt dependencies:
module autoloading:
https://patchwork.kernel.org/patch/11139987/
enable-gpios property (accepted and acked):
https://patchwork.kernel.org/patch/11143795/
arch/arm/boot/dts/e60k02.dtsi | 337 ++++++++++++++++++++++++++++++++++
1 file changed, 337 insertions(+)
create mode 100644 arch/arm/boot/dts/e60k02.dtsi
diff --git a/arch/arm/boot/dts/e60k02.dtsi b/arch/arm/boot/dts/e60k02.dtsi
new file mode 100644
index 0000000000000..84c0447b9a1bd
--- /dev/null
+++ b/arch/arm/boot/dts/e60k02.dtsi
@@ -0,0 +1,337 @@
+// SPDX-License-Identifier: GPL-2.0
+/*
+ * Copyright 2019 Andreas Kemnade
+ * based on works
+ * Copyright 2016 Freescale Semiconductor, Inc.
+ * and
+ * Copyright (C) 2014 Ricoh Electronic Devices Co., Ltd
+ *
+ * Netronix E60K02 board common.
+ * This board is equipped with different SoCs and
+ * found in ebook-readers like the Kobo Clara HD (with i.MX6SLL) and
+ * the Tolino Shine 3 (with i.MX6SL)
+ */
+#include <dt-bindings/input/input.h>
+
+/ {
+
+ chosen {
+ stdout-path = &uart1;
+ };
+
+ gpio-keys {
+ compatible = "gpio-keys";
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_gpio_keys>;
+ power {
+ label = "Power";
+ gpios = <&gpio5 8 GPIO_ACTIVE_LOW>;
+ linux,code = <KEY_POWER>;
+ gpio-key,wakeup;
+ };
+ cover {
+ label = "Cover";
+ gpios = <&gpio5 12 GPIO_ACTIVE_LOW>;
+ linux,code = <SW_LID>;
+ linux,input-type = <EV_SW>;
+ gpio-key,wakeup;
+ };
+ };
+
+ leds {
+ compatible = "gpio-leds";
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_led>;
+
+ on {
+ label = "e60k02:white:on";
+ gpios = <&gpio5 7 GPIO_ACTIVE_LOW>;
+ linux,default-trigger = "timer";
+ };
+ };
+
+ memory {
+ reg = <0x80000000 0x20000000>;
+ };
+
+ reg_wifi: regulator-wifi {
+ compatible = "regulator-fixed";
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_wifi_power>;
+ regulator-name = "SD3_SPWR";
+ regulator-min-microvolt = <3000000>;
+ regulator-max-microvolt = <3000000>;
+
+ gpio = <&gpio4 29 GPIO_ACTIVE_HIGH>;
+ enable-active-high;
+
+ };
+
+ wifi_pwrseq: wifi_pwrseq {
+ compatible = "mmc-pwrseq-simple";
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_wifi_reset>;
+ post-power-on-delay-ms = <20>;
+ reset-gpios = <&gpio5 0 GPIO_ACTIVE_LOW>;
+ };
+
+};
+
+
+&i2c1 {
+ clock-frequency = <100000>;
+ pinctrl-names = "default","sleep";
+ pinctrl-0 = <&pinctrl_i2c1>;
+ pinctrl-1 = <&pinctrl_i2c1_sleep>;
+ status = "okay";
+
+ lm3630a: backlight@36 {
+ reg = <0x36>;
+
+ compatible = "ti,lm3630a";
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_lm3630a_bl_gpio>;
+ enable-gpios = <&gpio2 10 GPIO_ACTIVE_HIGH>;
+
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ led@0 {
+ reg = <0>;
+ led-sources = <0>;
+ label = "backlight_warm";
+ default-brightness = <0>;
+ max-brightness = <255>;
+ };
+
+ led@1 {
+ reg = <1>;
+ led-sources = <1>;
+ label = "backlight_cold";
+ default-brightness = <0>;
+ max-brightness = <255>;
+ };
+
+ };
+};
+
+&i2c2 {
+ clock-frequency = <100000>;
+ pinctrl-names = "default","sleep";
+ pinctrl-0 = <&pinctrl_i2c2>;
+ pinctrl-1 = <&pinctrl_i2c2_sleep>;
+ status = "okay";
+
+ /* TODO: CYTTSP5 touch controller at 0x24 */
+
+ /* TODO: TPS65185 PMIC for E Ink at 0x68 */
+
+};
+
+&i2c3 {
+ clock-frequency = <100000>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_i2c3>;
+ status = "okay";
+
+ ricoh619: pmic@32 {
+ compatible = "ricoh,rc5t619";
+ reg = <0x32>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_ricoh_gpio>;
+ system-power-controller;
+
+ regulators {
+ dcdc1_reg: DCDC1 {
+ regulator-name = "DCDC1";
+ regulator-min-microvolt = <300000>;
+ regulator-max-microvolt = <1875000>;
+ regulator-always-on;
+ regulator-boot-on;
+ regulator-state-mem {
+ regulator-on-in-suspend;
+ regulator-suspend-max-microvolt = <900000>;
+ regulator-suspend-min-microvolt = <900000>;
+ };
+ };
+
+ /* Core3_3V3 */
+ dcdc2_reg: DCDC2 {
+ regulator-name = "DCDC2";
+ regulator-always-on;
+ regulator-boot-on;
+ regulator-state-mem {
+ regulator-on-in-suspend;
+ regulator-suspend-max-microvolt = <3300000>;
+ regulator-suspend-min-microvolt = <3300000>;
+ };
+ };
+
+ dcdc3_reg: DCDC3 {
+ regulator-name = "DCDC3";
+ regulator-min-microvolt = <300000>;
+ regulator-max-microvolt = <1875000>;
+ regulator-always-on;
+ regulator-boot-on;
+ regulator-state-mem {
+ regulator-on-in-suspend;
+ regulator-suspend-max-microvolt = <1140000>;
+ regulator-suspend-min-microvolt = <1140000>;
+ };
+ };
+
+ /* Core4_1V2 */
+ dcdc4_reg: DCDC4 {
+ regulator-name = "DCDC4";
+ regulator-min-microvolt = <1200000>;
+ regulator-max-microvolt = <1200000>;
+ regulator-always-on;
+ regulator-boot-on;
+ regulator-state-mem {
+ regulator-on-in-suspend;
+ regulator-suspend-max-microvolt = <1140000>;
+ regulator-suspend-min-microvolt = <1140000>;
+ };
+ };
+
+ /* Core4_1V8 */
+ dcdc5_reg: DCDC5 {
+ regulator-name = "DCDC5";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ regulator-always-on;
+ regulator-boot-on;
+ regulator-state-mem {
+ regulator-on-in-suspend;
+ regulator-suspend-max-microvolt = <1700000>;
+ regulator-suspend-min-microvolt = <1700000>;
+ };
+ };
+
+ /* IR_3V3 */
+ ldo1_reg: LDO1 {
+ regulator-name = "LDO1";
+ regulator-boot-on;
+ };
+
+ /* Core1_3V3 */
+ ldo2_reg: LDO2 {
+ regulator-name = "LDO2";
+ regulator-always-on;
+ regulator-boot-on;
+ regulator-state-mem {
+ regulator-on-in-suspend;
+ regulator-suspend-max-microvolt = <3000000>;
+ regulator-suspend-min-microvolt = <3000000>;
+ };
+ };
+
+ /* Core5_1V2 */
+ ldo3_reg: LDO3 {
+ regulator-name = "LDO3";
+ regulator-always-on;
+ regulator-boot-on;
+ };
+
+ ldo4_reg: LDO4 {
+ regulator-name = "LDO4";
+ regulator-boot-on;
+ };
+
+ /* SPD_3V3 */
+ ldo5_reg: LDO5 {
+ regulator-name = "LDO5";
+ regulator-always-on;
+ regulator-boot-on;
+ };
+
+ /* DDR_0V6 */
+ ldo6_reg: LDO6 {
+ regulator-name = "LDO6";
+ regulator-always-on;
+ regulator-boot-on;
+ };
+
+ /* VDD_PWM */
+ ldo7_reg: LDO7 {
+ regulator-name = "LDO7";
+ regulator-always-on;
+ regulator-boot-on;
+ };
+
+ /* ldo_1v8 */
+ ldo8_reg: LDO8 {
+ regulator-name = "LDO8";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ regulator-always-on;
+ regulator-boot-on;
+ };
+
+ ldo9_reg: LDO9 {
+ regulator-name = "LDO9";
+ regulator-boot-on;
+ };
+
+ ldo10_reg: LDO10 {
+ regulator-name = "LDO10";
+ regulator-boot-on;
+ };
+
+ ldortc1_reg: LDORTC1 {
+ regulator-name = "LDORTC1";
+ regulator-boot-on;
+ };
+
+ ldortc2_reg: LDORTC2 {
+ regulator-name = "LDORTC2";
+ regulator-boot-on;
+ };
+ };
+
+ };
+
+};
+
+&snvs_rtc {
+ /* we are using the rtc in the pmic, not disabled imx6sll.dtsi */
+ status = "disabled";
+};
+
+&uart1 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_uart1>;
+ status = "okay";
+};
+
+&usdhc2 {
+ pinctrl-names = "default", "state_100mhz", "state_200mhz","sleep";
+ pinctrl-0 = <&pinctrl_usdhc2>;
+ pinctrl-1 = <&pinctrl_usdhc2_100mhz>;
+ pinctrl-2 = <&pinctrl_usdhc2_200mhz>;
+ pinctrl-3 = <&pinctrl_usdhc2_sleep>;
+ non-removable;
+ status = "okay";
+};
+
+&usdhc3 {
+ pinctrl-names = "default", "state_100mhz", "state_200mhz","sleep";
+ pinctrl-0 = <&pinctrl_usdhc3>;
+ pinctrl-1 = <&pinctrl_usdhc3_100mhz>;
+ pinctrl-2 = <&pinctrl_usdhc3_200mhz>;
+ pinctrl-3 = <&pinctrl_usdhc3_sleep>;
+ vmmc-supply = <®_wifi>;
+ mmc-pwrseq = <&wifi_pwrseq>;
+ cap-power-off-card;
+ non-removable;
+ status = "okay";
+};
+
+&usbotg1 {
+ pinctrl-names = "default";
+ disable-over-current;
+ srp-disable;
+ hnp-disable;
+ adp-disable;
+ status = "okay";
+};
--
2.20.1
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply related [flat|nested] 51+ messages in thread
* [PATCH v3 2/3] ARM: dts: add Netronix E60K02 board common file
@ 2019-10-10 19:23 ` Andreas Kemnade
0 siblings, 0 replies; 51+ messages in thread
From: Andreas Kemnade @ 2019-10-10 19:23 UTC (permalink / raw)
To: robh+dt, mark.rutland, shawnguo, s.hauer, kernel, festevam,
linux-imx, manivannan.sadhasivam, andrew.smirnov, marex, angus,
devicetree, linux-kernel, linux-arm-kernel, j.neuschaefer,
Discussions about the Letux Kernel, Marco Felsch
Cc: Andreas Kemnade
The Netronix board E60K02 can be found some several Ebook-Readers,
at least the Kobo Clara HD and the Tolino Shine 3. The board
is equipped with different SoCs requiring different pinmuxes.
For now the following peripherals are included:
- LED
- Power Key
- Cover (gpio via hall sensor)
- RC5T619 PMIC (the kernel misses support for rtc and charger
subdevices).
- Backlight via lm3630a
- Wifi sdio chip detection (mmc-powerseq and stuff)
It is based on vendor kernel but heavily reworked due to many
changed bindings.
Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
---
Changes in v3:
- better led name
- correct memory size
- comments about missing devices
Changes in v2:
- reordered, was 1/3
- moved pinmuxes to their actual users, not the parents
of them
- removed some already-disabled stuff
- minor cleanups
backligt dependencies:
module autoloading:
https://patchwork.kernel.org/patch/11139987/
enable-gpios property (accepted and acked):
https://patchwork.kernel.org/patch/11143795/
arch/arm/boot/dts/e60k02.dtsi | 337 ++++++++++++++++++++++++++++++++++
1 file changed, 337 insertions(+)
create mode 100644 arch/arm/boot/dts/e60k02.dtsi
diff --git a/arch/arm/boot/dts/e60k02.dtsi b/arch/arm/boot/dts/e60k02.dtsi
new file mode 100644
index 0000000000000..84c0447b9a1bd
--- /dev/null
+++ b/arch/arm/boot/dts/e60k02.dtsi
@@ -0,0 +1,337 @@
+// SPDX-License-Identifier: GPL-2.0
+/*
+ * Copyright 2019 Andreas Kemnade
+ * based on works
+ * Copyright 2016 Freescale Semiconductor, Inc.
+ * and
+ * Copyright (C) 2014 Ricoh Electronic Devices Co., Ltd
+ *
+ * Netronix E60K02 board common.
+ * This board is equipped with different SoCs and
+ * found in ebook-readers like the Kobo Clara HD (with i.MX6SLL) and
+ * the Tolino Shine 3 (with i.MX6SL)
+ */
+#include <dt-bindings/input/input.h>
+
+/ {
+
+ chosen {
+ stdout-path = &uart1;
+ };
+
+ gpio-keys {
+ compatible = "gpio-keys";
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_gpio_keys>;
+ power {
+ label = "Power";
+ gpios = <&gpio5 8 GPIO_ACTIVE_LOW>;
+ linux,code = <KEY_POWER>;
+ gpio-key,wakeup;
+ };
+ cover {
+ label = "Cover";
+ gpios = <&gpio5 12 GPIO_ACTIVE_LOW>;
+ linux,code = <SW_LID>;
+ linux,input-type = <EV_SW>;
+ gpio-key,wakeup;
+ };
+ };
+
+ leds {
+ compatible = "gpio-leds";
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_led>;
+
+ on {
+ label = "e60k02:white:on";
+ gpios = <&gpio5 7 GPIO_ACTIVE_LOW>;
+ linux,default-trigger = "timer";
+ };
+ };
+
+ memory {
+ reg = <0x80000000 0x20000000>;
+ };
+
+ reg_wifi: regulator-wifi {
+ compatible = "regulator-fixed";
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_wifi_power>;
+ regulator-name = "SD3_SPWR";
+ regulator-min-microvolt = <3000000>;
+ regulator-max-microvolt = <3000000>;
+
+ gpio = <&gpio4 29 GPIO_ACTIVE_HIGH>;
+ enable-active-high;
+
+ };
+
+ wifi_pwrseq: wifi_pwrseq {
+ compatible = "mmc-pwrseq-simple";
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_wifi_reset>;
+ post-power-on-delay-ms = <20>;
+ reset-gpios = <&gpio5 0 GPIO_ACTIVE_LOW>;
+ };
+
+};
+
+
+&i2c1 {
+ clock-frequency = <100000>;
+ pinctrl-names = "default","sleep";
+ pinctrl-0 = <&pinctrl_i2c1>;
+ pinctrl-1 = <&pinctrl_i2c1_sleep>;
+ status = "okay";
+
+ lm3630a: backlight@36 {
+ reg = <0x36>;
+
+ compatible = "ti,lm3630a";
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_lm3630a_bl_gpio>;
+ enable-gpios = <&gpio2 10 GPIO_ACTIVE_HIGH>;
+
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ led@0 {
+ reg = <0>;
+ led-sources = <0>;
+ label = "backlight_warm";
+ default-brightness = <0>;
+ max-brightness = <255>;
+ };
+
+ led@1 {
+ reg = <1>;
+ led-sources = <1>;
+ label = "backlight_cold";
+ default-brightness = <0>;
+ max-brightness = <255>;
+ };
+
+ };
+};
+
+&i2c2 {
+ clock-frequency = <100000>;
+ pinctrl-names = "default","sleep";
+ pinctrl-0 = <&pinctrl_i2c2>;
+ pinctrl-1 = <&pinctrl_i2c2_sleep>;
+ status = "okay";
+
+ /* TODO: CYTTSP5 touch controller at 0x24 */
+
+ /* TODO: TPS65185 PMIC for E Ink at 0x68 */
+
+};
+
+&i2c3 {
+ clock-frequency = <100000>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_i2c3>;
+ status = "okay";
+
+ ricoh619: pmic@32 {
+ compatible = "ricoh,rc5t619";
+ reg = <0x32>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_ricoh_gpio>;
+ system-power-controller;
+
+ regulators {
+ dcdc1_reg: DCDC1 {
+ regulator-name = "DCDC1";
+ regulator-min-microvolt = <300000>;
+ regulator-max-microvolt = <1875000>;
+ regulator-always-on;
+ regulator-boot-on;
+ regulator-state-mem {
+ regulator-on-in-suspend;
+ regulator-suspend-max-microvolt = <900000>;
+ regulator-suspend-min-microvolt = <900000>;
+ };
+ };
+
+ /* Core3_3V3 */
+ dcdc2_reg: DCDC2 {
+ regulator-name = "DCDC2";
+ regulator-always-on;
+ regulator-boot-on;
+ regulator-state-mem {
+ regulator-on-in-suspend;
+ regulator-suspend-max-microvolt = <3300000>;
+ regulator-suspend-min-microvolt = <3300000>;
+ };
+ };
+
+ dcdc3_reg: DCDC3 {
+ regulator-name = "DCDC3";
+ regulator-min-microvolt = <300000>;
+ regulator-max-microvolt = <1875000>;
+ regulator-always-on;
+ regulator-boot-on;
+ regulator-state-mem {
+ regulator-on-in-suspend;
+ regulator-suspend-max-microvolt = <1140000>;
+ regulator-suspend-min-microvolt = <1140000>;
+ };
+ };
+
+ /* Core4_1V2 */
+ dcdc4_reg: DCDC4 {
+ regulator-name = "DCDC4";
+ regulator-min-microvolt = <1200000>;
+ regulator-max-microvolt = <1200000>;
+ regulator-always-on;
+ regulator-boot-on;
+ regulator-state-mem {
+ regulator-on-in-suspend;
+ regulator-suspend-max-microvolt = <1140000>;
+ regulator-suspend-min-microvolt = <1140000>;
+ };
+ };
+
+ /* Core4_1V8 */
+ dcdc5_reg: DCDC5 {
+ regulator-name = "DCDC5";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ regulator-always-on;
+ regulator-boot-on;
+ regulator-state-mem {
+ regulator-on-in-suspend;
+ regulator-suspend-max-microvolt = <1700000>;
+ regulator-suspend-min-microvolt = <1700000>;
+ };
+ };
+
+ /* IR_3V3 */
+ ldo1_reg: LDO1 {
+ regulator-name = "LDO1";
+ regulator-boot-on;
+ };
+
+ /* Core1_3V3 */
+ ldo2_reg: LDO2 {
+ regulator-name = "LDO2";
+ regulator-always-on;
+ regulator-boot-on;
+ regulator-state-mem {
+ regulator-on-in-suspend;
+ regulator-suspend-max-microvolt = <3000000>;
+ regulator-suspend-min-microvolt = <3000000>;
+ };
+ };
+
+ /* Core5_1V2 */
+ ldo3_reg: LDO3 {
+ regulator-name = "LDO3";
+ regulator-always-on;
+ regulator-boot-on;
+ };
+
+ ldo4_reg: LDO4 {
+ regulator-name = "LDO4";
+ regulator-boot-on;
+ };
+
+ /* SPD_3V3 */
+ ldo5_reg: LDO5 {
+ regulator-name = "LDO5";
+ regulator-always-on;
+ regulator-boot-on;
+ };
+
+ /* DDR_0V6 */
+ ldo6_reg: LDO6 {
+ regulator-name = "LDO6";
+ regulator-always-on;
+ regulator-boot-on;
+ };
+
+ /* VDD_PWM */
+ ldo7_reg: LDO7 {
+ regulator-name = "LDO7";
+ regulator-always-on;
+ regulator-boot-on;
+ };
+
+ /* ldo_1v8 */
+ ldo8_reg: LDO8 {
+ regulator-name = "LDO8";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ regulator-always-on;
+ regulator-boot-on;
+ };
+
+ ldo9_reg: LDO9 {
+ regulator-name = "LDO9";
+ regulator-boot-on;
+ };
+
+ ldo10_reg: LDO10 {
+ regulator-name = "LDO10";
+ regulator-boot-on;
+ };
+
+ ldortc1_reg: LDORTC1 {
+ regulator-name = "LDORTC1";
+ regulator-boot-on;
+ };
+
+ ldortc2_reg: LDORTC2 {
+ regulator-name = "LDORTC2";
+ regulator-boot-on;
+ };
+ };
+
+ };
+
+};
+
+&snvs_rtc {
+ /* we are using the rtc in the pmic, not disabled imx6sll.dtsi */
+ status = "disabled";
+};
+
+&uart1 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_uart1>;
+ status = "okay";
+};
+
+&usdhc2 {
+ pinctrl-names = "default", "state_100mhz", "state_200mhz","sleep";
+ pinctrl-0 = <&pinctrl_usdhc2>;
+ pinctrl-1 = <&pinctrl_usdhc2_100mhz>;
+ pinctrl-2 = <&pinctrl_usdhc2_200mhz>;
+ pinctrl-3 = <&pinctrl_usdhc2_sleep>;
+ non-removable;
+ status = "okay";
+};
+
+&usdhc3 {
+ pinctrl-names = "default", "state_100mhz", "state_200mhz","sleep";
+ pinctrl-0 = <&pinctrl_usdhc3>;
+ pinctrl-1 = <&pinctrl_usdhc3_100mhz>;
+ pinctrl-2 = <&pinctrl_usdhc3_200mhz>;
+ pinctrl-3 = <&pinctrl_usdhc3_sleep>;
+ vmmc-supply = <®_wifi>;
+ mmc-pwrseq = <&wifi_pwrseq>;
+ cap-power-off-card;
+ non-removable;
+ status = "okay";
+};
+
+&usbotg1 {
+ pinctrl-names = "default";
+ disable-over-current;
+ srp-disable;
+ hnp-disable;
+ adp-disable;
+ status = "okay";
+};
--
2.20.1
^ permalink raw reply related [flat|nested] 51+ messages in thread
* Re: [PATCH v3 2/3] ARM: dts: add Netronix E60K02 board common file
2019-10-10 19:23 ` Andreas Kemnade
(?)
@ 2019-10-11 6:56 ` Marco Felsch
-1 siblings, 0 replies; 51+ messages in thread
From: Marco Felsch @ 2019-10-11 6:56 UTC (permalink / raw)
To: Andreas Kemnade
Cc: robh+dt, mark.rutland, shawnguo, s.hauer, kernel, festevam,
linux-imx, manivannan.sadhasivam, andrew.smirnov, marex, angus,
devicetree, linux-kernel, linux-arm-kernel, j.neuschaefer,
Discussions about the Letux Kernel
Hi Andreas,
On 19-10-10 21:23, Andreas Kemnade wrote:
> The Netronix board E60K02 can be found some several Ebook-Readers,
> at least the Kobo Clara HD and the Tolino Shine 3. The board
> is equipped with different SoCs requiring different pinmuxes.
>
> For now the following peripherals are included:
> - LED
> - Power Key
> - Cover (gpio via hall sensor)
> - RC5T619 PMIC (the kernel misses support for rtc and charger
> subdevices).
> - Backlight via lm3630a
> - Wifi sdio chip detection (mmc-powerseq and stuff)
>
> It is based on vendor kernel but heavily reworked due to many
> changed bindings.
>
> Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
> ---
> Changes in v3:
> - better led name
> - correct memory size
> - comments about missing devices
>
> Changes in v2:
> - reordered, was 1/3
> - moved pinmuxes to their actual users, not the parents
> of them
> - removed some already-disabled stuff
> - minor cleanups
You won't change the muxing, so a this dtsi can be self contained?
Regards,
Marco
> backligt dependencies:
> module autoloading:
> https://patchwork.kernel.org/patch/11139987/
> enable-gpios property (accepted and acked):
> https://patchwork.kernel.org/patch/11143795/
>
> arch/arm/boot/dts/e60k02.dtsi | 337 ++++++++++++++++++++++++++++++++++
> 1 file changed, 337 insertions(+)
> create mode 100644 arch/arm/boot/dts/e60k02.dtsi
>
> diff --git a/arch/arm/boot/dts/e60k02.dtsi b/arch/arm/boot/dts/e60k02.dtsi
> new file mode 100644
> index 0000000000000..84c0447b9a1bd
> --- /dev/null
> +++ b/arch/arm/boot/dts/e60k02.dtsi
> @@ -0,0 +1,337 @@
> +// SPDX-License-Identifier: GPL-2.0
> +/*
> + * Copyright 2019 Andreas Kemnade
> + * based on works
> + * Copyright 2016 Freescale Semiconductor, Inc.
> + * and
> + * Copyright (C) 2014 Ricoh Electronic Devices Co., Ltd
> + *
> + * Netronix E60K02 board common.
> + * This board is equipped with different SoCs and
> + * found in ebook-readers like the Kobo Clara HD (with i.MX6SLL) and
> + * the Tolino Shine 3 (with i.MX6SL)
> + */
> +#include <dt-bindings/input/input.h>
> +
> +/ {
> +
> + chosen {
> + stdout-path = &uart1;
> + };
> +
> + gpio-keys {
> + compatible = "gpio-keys";
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_gpio_keys>;
> + power {
> + label = "Power";
> + gpios = <&gpio5 8 GPIO_ACTIVE_LOW>;
> + linux,code = <KEY_POWER>;
> + gpio-key,wakeup;
> + };
> + cover {
> + label = "Cover";
> + gpios = <&gpio5 12 GPIO_ACTIVE_LOW>;
> + linux,code = <SW_LID>;
> + linux,input-type = <EV_SW>;
> + gpio-key,wakeup;
> + };
> + };
> +
> + leds {
> + compatible = "gpio-leds";
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_led>;
> +
> + on {
> + label = "e60k02:white:on";
> + gpios = <&gpio5 7 GPIO_ACTIVE_LOW>;
> + linux,default-trigger = "timer";
> + };
> + };
> +
> + memory {
> + reg = <0x80000000 0x20000000>;
> + };
> +
> + reg_wifi: regulator-wifi {
> + compatible = "regulator-fixed";
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_wifi_power>;
> + regulator-name = "SD3_SPWR";
> + regulator-min-microvolt = <3000000>;
> + regulator-max-microvolt = <3000000>;
> +
> + gpio = <&gpio4 29 GPIO_ACTIVE_HIGH>;
> + enable-active-high;
> +
> + };
> +
> + wifi_pwrseq: wifi_pwrseq {
> + compatible = "mmc-pwrseq-simple";
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_wifi_reset>;
> + post-power-on-delay-ms = <20>;
> + reset-gpios = <&gpio5 0 GPIO_ACTIVE_LOW>;
> + };
> +
> +};
> +
> +
> +&i2c1 {
> + clock-frequency = <100000>;
> + pinctrl-names = "default","sleep";
> + pinctrl-0 = <&pinctrl_i2c1>;
> + pinctrl-1 = <&pinctrl_i2c1_sleep>;
> + status = "okay";
> +
> + lm3630a: backlight@36 {
> + reg = <0x36>;
> +
> + compatible = "ti,lm3630a";
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_lm3630a_bl_gpio>;
> + enable-gpios = <&gpio2 10 GPIO_ACTIVE_HIGH>;
> +
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + led@0 {
> + reg = <0>;
> + led-sources = <0>;
> + label = "backlight_warm";
> + default-brightness = <0>;
> + max-brightness = <255>;
> + };
> +
> + led@1 {
> + reg = <1>;
> + led-sources = <1>;
> + label = "backlight_cold";
> + default-brightness = <0>;
> + max-brightness = <255>;
> + };
> +
> + };
> +};
> +
> +&i2c2 {
> + clock-frequency = <100000>;
> + pinctrl-names = "default","sleep";
> + pinctrl-0 = <&pinctrl_i2c2>;
> + pinctrl-1 = <&pinctrl_i2c2_sleep>;
> + status = "okay";
> +
> + /* TODO: CYTTSP5 touch controller at 0x24 */
> +
> + /* TODO: TPS65185 PMIC for E Ink at 0x68 */
> +
> +};
> +
> +&i2c3 {
> + clock-frequency = <100000>;
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_i2c3>;
> + status = "okay";
> +
> + ricoh619: pmic@32 {
> + compatible = "ricoh,rc5t619";
> + reg = <0x32>;
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_ricoh_gpio>;
> + system-power-controller;
> +
> + regulators {
> + dcdc1_reg: DCDC1 {
> + regulator-name = "DCDC1";
> + regulator-min-microvolt = <300000>;
> + regulator-max-microvolt = <1875000>;
> + regulator-always-on;
> + regulator-boot-on;
> + regulator-state-mem {
> + regulator-on-in-suspend;
> + regulator-suspend-max-microvolt = <900000>;
> + regulator-suspend-min-microvolt = <900000>;
> + };
> + };
> +
> + /* Core3_3V3 */
> + dcdc2_reg: DCDC2 {
> + regulator-name = "DCDC2";
> + regulator-always-on;
> + regulator-boot-on;
> + regulator-state-mem {
> + regulator-on-in-suspend;
> + regulator-suspend-max-microvolt = <3300000>;
> + regulator-suspend-min-microvolt = <3300000>;
> + };
> + };
> +
> + dcdc3_reg: DCDC3 {
> + regulator-name = "DCDC3";
> + regulator-min-microvolt = <300000>;
> + regulator-max-microvolt = <1875000>;
> + regulator-always-on;
> + regulator-boot-on;
> + regulator-state-mem {
> + regulator-on-in-suspend;
> + regulator-suspend-max-microvolt = <1140000>;
> + regulator-suspend-min-microvolt = <1140000>;
> + };
> + };
> +
> + /* Core4_1V2 */
> + dcdc4_reg: DCDC4 {
> + regulator-name = "DCDC4";
> + regulator-min-microvolt = <1200000>;
> + regulator-max-microvolt = <1200000>;
> + regulator-always-on;
> + regulator-boot-on;
> + regulator-state-mem {
> + regulator-on-in-suspend;
> + regulator-suspend-max-microvolt = <1140000>;
> + regulator-suspend-min-microvolt = <1140000>;
> + };
> + };
> +
> + /* Core4_1V8 */
> + dcdc5_reg: DCDC5 {
> + regulator-name = "DCDC5";
> + regulator-min-microvolt = <1800000>;
> + regulator-max-microvolt = <1800000>;
> + regulator-always-on;
> + regulator-boot-on;
> + regulator-state-mem {
> + regulator-on-in-suspend;
> + regulator-suspend-max-microvolt = <1700000>;
> + regulator-suspend-min-microvolt = <1700000>;
> + };
> + };
> +
> + /* IR_3V3 */
> + ldo1_reg: LDO1 {
> + regulator-name = "LDO1";
> + regulator-boot-on;
> + };
> +
> + /* Core1_3V3 */
> + ldo2_reg: LDO2 {
> + regulator-name = "LDO2";
> + regulator-always-on;
> + regulator-boot-on;
> + regulator-state-mem {
> + regulator-on-in-suspend;
> + regulator-suspend-max-microvolt = <3000000>;
> + regulator-suspend-min-microvolt = <3000000>;
> + };
> + };
> +
> + /* Core5_1V2 */
> + ldo3_reg: LDO3 {
> + regulator-name = "LDO3";
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + ldo4_reg: LDO4 {
> + regulator-name = "LDO4";
> + regulator-boot-on;
> + };
> +
> + /* SPD_3V3 */
> + ldo5_reg: LDO5 {
> + regulator-name = "LDO5";
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + /* DDR_0V6 */
> + ldo6_reg: LDO6 {
> + regulator-name = "LDO6";
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + /* VDD_PWM */
> + ldo7_reg: LDO7 {
> + regulator-name = "LDO7";
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + /* ldo_1v8 */
> + ldo8_reg: LDO8 {
> + regulator-name = "LDO8";
> + regulator-min-microvolt = <1800000>;
> + regulator-max-microvolt = <1800000>;
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + ldo9_reg: LDO9 {
> + regulator-name = "LDO9";
> + regulator-boot-on;
> + };
> +
> + ldo10_reg: LDO10 {
> + regulator-name = "LDO10";
> + regulator-boot-on;
> + };
> +
> + ldortc1_reg: LDORTC1 {
> + regulator-name = "LDORTC1";
> + regulator-boot-on;
> + };
> +
> + ldortc2_reg: LDORTC2 {
> + regulator-name = "LDORTC2";
> + regulator-boot-on;
> + };
> + };
> +
> + };
> +
> +};
> +
> +&snvs_rtc {
> + /* we are using the rtc in the pmic, not disabled imx6sll.dtsi */
> + status = "disabled";
> +};
> +
> +&uart1 {
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_uart1>;
> + status = "okay";
> +};
> +
> +&usdhc2 {
> + pinctrl-names = "default", "state_100mhz", "state_200mhz","sleep";
> + pinctrl-0 = <&pinctrl_usdhc2>;
> + pinctrl-1 = <&pinctrl_usdhc2_100mhz>;
> + pinctrl-2 = <&pinctrl_usdhc2_200mhz>;
> + pinctrl-3 = <&pinctrl_usdhc2_sleep>;
> + non-removable;
> + status = "okay";
> +};
> +
> +&usdhc3 {
> + pinctrl-names = "default", "state_100mhz", "state_200mhz","sleep";
> + pinctrl-0 = <&pinctrl_usdhc3>;
> + pinctrl-1 = <&pinctrl_usdhc3_100mhz>;
> + pinctrl-2 = <&pinctrl_usdhc3_200mhz>;
> + pinctrl-3 = <&pinctrl_usdhc3_sleep>;
> + vmmc-supply = <®_wifi>;
> + mmc-pwrseq = <&wifi_pwrseq>;
> + cap-power-off-card;
> + non-removable;
> + status = "okay";
> +};
> +
> +&usbotg1 {
> + pinctrl-names = "default";
> + disable-over-current;
> + srp-disable;
> + hnp-disable;
> + adp-disable;
> + status = "okay";
> +};
> --
> 2.20.1
>
>
> _______________________________________________
> linux-arm-kernel mailing list
> linux-arm-kernel@lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
>
--
Pengutronix e.K. | |
Industrial Linux Solutions | http://www.pengutronix.de/ |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
^ permalink raw reply [flat|nested] 51+ messages in thread
* Re: [PATCH v3 2/3] ARM: dts: add Netronix E60K02 board common file
@ 2019-10-11 6:56 ` Marco Felsch
0 siblings, 0 replies; 51+ messages in thread
From: Marco Felsch @ 2019-10-11 6:56 UTC (permalink / raw)
To: Andreas Kemnade
Cc: mark.rutland, marex, devicetree, andrew.smirnov, shawnguo,
s.hauer, angus, linux-kernel, j.neuschaefer, robh+dt, linux-imx,
kernel, manivannan.sadhasivam,
Discussions about the Letux Kernel, festevam, linux-arm-kernel
Hi Andreas,
On 19-10-10 21:23, Andreas Kemnade wrote:
> The Netronix board E60K02 can be found some several Ebook-Readers,
> at least the Kobo Clara HD and the Tolino Shine 3. The board
> is equipped with different SoCs requiring different pinmuxes.
>
> For now the following peripherals are included:
> - LED
> - Power Key
> - Cover (gpio via hall sensor)
> - RC5T619 PMIC (the kernel misses support for rtc and charger
> subdevices).
> - Backlight via lm3630a
> - Wifi sdio chip detection (mmc-powerseq and stuff)
>
> It is based on vendor kernel but heavily reworked due to many
> changed bindings.
>
> Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
> ---
> Changes in v3:
> - better led name
> - correct memory size
> - comments about missing devices
>
> Changes in v2:
> - reordered, was 1/3
> - moved pinmuxes to their actual users, not the parents
> of them
> - removed some already-disabled stuff
> - minor cleanups
You won't change the muxing, so a this dtsi can be self contained?
Regards,
Marco
> backligt dependencies:
> module autoloading:
> https://patchwork.kernel.org/patch/11139987/
> enable-gpios property (accepted and acked):
> https://patchwork.kernel.org/patch/11143795/
>
> arch/arm/boot/dts/e60k02.dtsi | 337 ++++++++++++++++++++++++++++++++++
> 1 file changed, 337 insertions(+)
> create mode 100644 arch/arm/boot/dts/e60k02.dtsi
>
> diff --git a/arch/arm/boot/dts/e60k02.dtsi b/arch/arm/boot/dts/e60k02.dtsi
> new file mode 100644
> index 0000000000000..84c0447b9a1bd
> --- /dev/null
> +++ b/arch/arm/boot/dts/e60k02.dtsi
> @@ -0,0 +1,337 @@
> +// SPDX-License-Identifier: GPL-2.0
> +/*
> + * Copyright 2019 Andreas Kemnade
> + * based on works
> + * Copyright 2016 Freescale Semiconductor, Inc.
> + * and
> + * Copyright (C) 2014 Ricoh Electronic Devices Co., Ltd
> + *
> + * Netronix E60K02 board common.
> + * This board is equipped with different SoCs and
> + * found in ebook-readers like the Kobo Clara HD (with i.MX6SLL) and
> + * the Tolino Shine 3 (with i.MX6SL)
> + */
> +#include <dt-bindings/input/input.h>
> +
> +/ {
> +
> + chosen {
> + stdout-path = &uart1;
> + };
> +
> + gpio-keys {
> + compatible = "gpio-keys";
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_gpio_keys>;
> + power {
> + label = "Power";
> + gpios = <&gpio5 8 GPIO_ACTIVE_LOW>;
> + linux,code = <KEY_POWER>;
> + gpio-key,wakeup;
> + };
> + cover {
> + label = "Cover";
> + gpios = <&gpio5 12 GPIO_ACTIVE_LOW>;
> + linux,code = <SW_LID>;
> + linux,input-type = <EV_SW>;
> + gpio-key,wakeup;
> + };
> + };
> +
> + leds {
> + compatible = "gpio-leds";
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_led>;
> +
> + on {
> + label = "e60k02:white:on";
> + gpios = <&gpio5 7 GPIO_ACTIVE_LOW>;
> + linux,default-trigger = "timer";
> + };
> + };
> +
> + memory {
> + reg = <0x80000000 0x20000000>;
> + };
> +
> + reg_wifi: regulator-wifi {
> + compatible = "regulator-fixed";
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_wifi_power>;
> + regulator-name = "SD3_SPWR";
> + regulator-min-microvolt = <3000000>;
> + regulator-max-microvolt = <3000000>;
> +
> + gpio = <&gpio4 29 GPIO_ACTIVE_HIGH>;
> + enable-active-high;
> +
> + };
> +
> + wifi_pwrseq: wifi_pwrseq {
> + compatible = "mmc-pwrseq-simple";
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_wifi_reset>;
> + post-power-on-delay-ms = <20>;
> + reset-gpios = <&gpio5 0 GPIO_ACTIVE_LOW>;
> + };
> +
> +};
> +
> +
> +&i2c1 {
> + clock-frequency = <100000>;
> + pinctrl-names = "default","sleep";
> + pinctrl-0 = <&pinctrl_i2c1>;
> + pinctrl-1 = <&pinctrl_i2c1_sleep>;
> + status = "okay";
> +
> + lm3630a: backlight@36 {
> + reg = <0x36>;
> +
> + compatible = "ti,lm3630a";
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_lm3630a_bl_gpio>;
> + enable-gpios = <&gpio2 10 GPIO_ACTIVE_HIGH>;
> +
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + led@0 {
> + reg = <0>;
> + led-sources = <0>;
> + label = "backlight_warm";
> + default-brightness = <0>;
> + max-brightness = <255>;
> + };
> +
> + led@1 {
> + reg = <1>;
> + led-sources = <1>;
> + label = "backlight_cold";
> + default-brightness = <0>;
> + max-brightness = <255>;
> + };
> +
> + };
> +};
> +
> +&i2c2 {
> + clock-frequency = <100000>;
> + pinctrl-names = "default","sleep";
> + pinctrl-0 = <&pinctrl_i2c2>;
> + pinctrl-1 = <&pinctrl_i2c2_sleep>;
> + status = "okay";
> +
> + /* TODO: CYTTSP5 touch controller at 0x24 */
> +
> + /* TODO: TPS65185 PMIC for E Ink at 0x68 */
> +
> +};
> +
> +&i2c3 {
> + clock-frequency = <100000>;
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_i2c3>;
> + status = "okay";
> +
> + ricoh619: pmic@32 {
> + compatible = "ricoh,rc5t619";
> + reg = <0x32>;
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_ricoh_gpio>;
> + system-power-controller;
> +
> + regulators {
> + dcdc1_reg: DCDC1 {
> + regulator-name = "DCDC1";
> + regulator-min-microvolt = <300000>;
> + regulator-max-microvolt = <1875000>;
> + regulator-always-on;
> + regulator-boot-on;
> + regulator-state-mem {
> + regulator-on-in-suspend;
> + regulator-suspend-max-microvolt = <900000>;
> + regulator-suspend-min-microvolt = <900000>;
> + };
> + };
> +
> + /* Core3_3V3 */
> + dcdc2_reg: DCDC2 {
> + regulator-name = "DCDC2";
> + regulator-always-on;
> + regulator-boot-on;
> + regulator-state-mem {
> + regulator-on-in-suspend;
> + regulator-suspend-max-microvolt = <3300000>;
> + regulator-suspend-min-microvolt = <3300000>;
> + };
> + };
> +
> + dcdc3_reg: DCDC3 {
> + regulator-name = "DCDC3";
> + regulator-min-microvolt = <300000>;
> + regulator-max-microvolt = <1875000>;
> + regulator-always-on;
> + regulator-boot-on;
> + regulator-state-mem {
> + regulator-on-in-suspend;
> + regulator-suspend-max-microvolt = <1140000>;
> + regulator-suspend-min-microvolt = <1140000>;
> + };
> + };
> +
> + /* Core4_1V2 */
> + dcdc4_reg: DCDC4 {
> + regulator-name = "DCDC4";
> + regulator-min-microvolt = <1200000>;
> + regulator-max-microvolt = <1200000>;
> + regulator-always-on;
> + regulator-boot-on;
> + regulator-state-mem {
> + regulator-on-in-suspend;
> + regulator-suspend-max-microvolt = <1140000>;
> + regulator-suspend-min-microvolt = <1140000>;
> + };
> + };
> +
> + /* Core4_1V8 */
> + dcdc5_reg: DCDC5 {
> + regulator-name = "DCDC5";
> + regulator-min-microvolt = <1800000>;
> + regulator-max-microvolt = <1800000>;
> + regulator-always-on;
> + regulator-boot-on;
> + regulator-state-mem {
> + regulator-on-in-suspend;
> + regulator-suspend-max-microvolt = <1700000>;
> + regulator-suspend-min-microvolt = <1700000>;
> + };
> + };
> +
> + /* IR_3V3 */
> + ldo1_reg: LDO1 {
> + regulator-name = "LDO1";
> + regulator-boot-on;
> + };
> +
> + /* Core1_3V3 */
> + ldo2_reg: LDO2 {
> + regulator-name = "LDO2";
> + regulator-always-on;
> + regulator-boot-on;
> + regulator-state-mem {
> + regulator-on-in-suspend;
> + regulator-suspend-max-microvolt = <3000000>;
> + regulator-suspend-min-microvolt = <3000000>;
> + };
> + };
> +
> + /* Core5_1V2 */
> + ldo3_reg: LDO3 {
> + regulator-name = "LDO3";
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + ldo4_reg: LDO4 {
> + regulator-name = "LDO4";
> + regulator-boot-on;
> + };
> +
> + /* SPD_3V3 */
> + ldo5_reg: LDO5 {
> + regulator-name = "LDO5";
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + /* DDR_0V6 */
> + ldo6_reg: LDO6 {
> + regulator-name = "LDO6";
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + /* VDD_PWM */
> + ldo7_reg: LDO7 {
> + regulator-name = "LDO7";
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + /* ldo_1v8 */
> + ldo8_reg: LDO8 {
> + regulator-name = "LDO8";
> + regulator-min-microvolt = <1800000>;
> + regulator-max-microvolt = <1800000>;
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + ldo9_reg: LDO9 {
> + regulator-name = "LDO9";
> + regulator-boot-on;
> + };
> +
> + ldo10_reg: LDO10 {
> + regulator-name = "LDO10";
> + regulator-boot-on;
> + };
> +
> + ldortc1_reg: LDORTC1 {
> + regulator-name = "LDORTC1";
> + regulator-boot-on;
> + };
> +
> + ldortc2_reg: LDORTC2 {
> + regulator-name = "LDORTC2";
> + regulator-boot-on;
> + };
> + };
> +
> + };
> +
> +};
> +
> +&snvs_rtc {
> + /* we are using the rtc in the pmic, not disabled imx6sll.dtsi */
> + status = "disabled";
> +};
> +
> +&uart1 {
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_uart1>;
> + status = "okay";
> +};
> +
> +&usdhc2 {
> + pinctrl-names = "default", "state_100mhz", "state_200mhz","sleep";
> + pinctrl-0 = <&pinctrl_usdhc2>;
> + pinctrl-1 = <&pinctrl_usdhc2_100mhz>;
> + pinctrl-2 = <&pinctrl_usdhc2_200mhz>;
> + pinctrl-3 = <&pinctrl_usdhc2_sleep>;
> + non-removable;
> + status = "okay";
> +};
> +
> +&usdhc3 {
> + pinctrl-names = "default", "state_100mhz", "state_200mhz","sleep";
> + pinctrl-0 = <&pinctrl_usdhc3>;
> + pinctrl-1 = <&pinctrl_usdhc3_100mhz>;
> + pinctrl-2 = <&pinctrl_usdhc3_200mhz>;
> + pinctrl-3 = <&pinctrl_usdhc3_sleep>;
> + vmmc-supply = <®_wifi>;
> + mmc-pwrseq = <&wifi_pwrseq>;
> + cap-power-off-card;
> + non-removable;
> + status = "okay";
> +};
> +
> +&usbotg1 {
> + pinctrl-names = "default";
> + disable-over-current;
> + srp-disable;
> + hnp-disable;
> + adp-disable;
> + status = "okay";
> +};
> --
> 2.20.1
>
>
> _______________________________________________
> linux-arm-kernel mailing list
> linux-arm-kernel@lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
>
--
Pengutronix e.K. | |
Industrial Linux Solutions | http://www.pengutronix.de/ |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 51+ messages in thread
* Re: [PATCH v3 2/3] ARM: dts: add Netronix E60K02 board common file
@ 2019-10-11 6:56 ` Marco Felsch
0 siblings, 0 replies; 51+ messages in thread
From: Marco Felsch @ 2019-10-11 6:56 UTC (permalink / raw)
To: Andreas Kemnade
Cc: robh+dt, mark.rutland, shawnguo, s.hauer, kernel, festevam,
linux-imx, manivannan.sadhasivam, andrew.smirnov, marex, angus,
devicetree, linux-kernel, linux-arm-kernel, j.neuschaefer,
Discussions about the Letux Kernel
Hi Andreas,
On 19-10-10 21:23, Andreas Kemnade wrote:
> The Netronix board E60K02 can be found some several Ebook-Readers,
> at least the Kobo Clara HD and the Tolino Shine 3. The board
> is equipped with different SoCs requiring different pinmuxes.
>
> For now the following peripherals are included:
> - LED
> - Power Key
> - Cover (gpio via hall sensor)
> - RC5T619 PMIC (the kernel misses support for rtc and charger
> subdevices).
> - Backlight via lm3630a
> - Wifi sdio chip detection (mmc-powerseq and stuff)
>
> It is based on vendor kernel but heavily reworked due to many
> changed bindings.
>
> Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
> ---
> Changes in v3:
> - better led name
> - correct memory size
> - comments about missing devices
>
> Changes in v2:
> - reordered, was 1/3
> - moved pinmuxes to their actual users, not the parents
> of them
> - removed some already-disabled stuff
> - minor cleanups
You won't change the muxing, so a this dtsi can be self contained?
Regards,
Marco
> backligt dependencies:
> module autoloading:
> https://patchwork.kernel.org/patch/11139987/
> enable-gpios property (accepted and acked):
> https://patchwork.kernel.org/patch/11143795/
>
> arch/arm/boot/dts/e60k02.dtsi | 337 ++++++++++++++++++++++++++++++++++
> 1 file changed, 337 insertions(+)
> create mode 100644 arch/arm/boot/dts/e60k02.dtsi
>
> diff --git a/arch/arm/boot/dts/e60k02.dtsi b/arch/arm/boot/dts/e60k02.dtsi
> new file mode 100644
> index 0000000000000..84c0447b9a1bd
> --- /dev/null
> +++ b/arch/arm/boot/dts/e60k02.dtsi
> @@ -0,0 +1,337 @@
> +// SPDX-License-Identifier: GPL-2.0
> +/*
> + * Copyright 2019 Andreas Kemnade
> + * based on works
> + * Copyright 2016 Freescale Semiconductor, Inc.
> + * and
> + * Copyright (C) 2014 Ricoh Electronic Devices Co., Ltd
> + *
> + * Netronix E60K02 board common.
> + * This board is equipped with different SoCs and
> + * found in ebook-readers like the Kobo Clara HD (with i.MX6SLL) and
> + * the Tolino Shine 3 (with i.MX6SL)
> + */
> +#include <dt-bindings/input/input.h>
> +
> +/ {
> +
> + chosen {
> + stdout-path = &uart1;
> + };
> +
> + gpio-keys {
> + compatible = "gpio-keys";
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_gpio_keys>;
> + power {
> + label = "Power";
> + gpios = <&gpio5 8 GPIO_ACTIVE_LOW>;
> + linux,code = <KEY_POWER>;
> + gpio-key,wakeup;
> + };
> + cover {
> + label = "Cover";
> + gpios = <&gpio5 12 GPIO_ACTIVE_LOW>;
> + linux,code = <SW_LID>;
> + linux,input-type = <EV_SW>;
> + gpio-key,wakeup;
> + };
> + };
> +
> + leds {
> + compatible = "gpio-leds";
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_led>;
> +
> + on {
> + label = "e60k02:white:on";
> + gpios = <&gpio5 7 GPIO_ACTIVE_LOW>;
> + linux,default-trigger = "timer";
> + };
> + };
> +
> + memory {
> + reg = <0x80000000 0x20000000>;
> + };
> +
> + reg_wifi: regulator-wifi {
> + compatible = "regulator-fixed";
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_wifi_power>;
> + regulator-name = "SD3_SPWR";
> + regulator-min-microvolt = <3000000>;
> + regulator-max-microvolt = <3000000>;
> +
> + gpio = <&gpio4 29 GPIO_ACTIVE_HIGH>;
> + enable-active-high;
> +
> + };
> +
> + wifi_pwrseq: wifi_pwrseq {
> + compatible = "mmc-pwrseq-simple";
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_wifi_reset>;
> + post-power-on-delay-ms = <20>;
> + reset-gpios = <&gpio5 0 GPIO_ACTIVE_LOW>;
> + };
> +
> +};
> +
> +
> +&i2c1 {
> + clock-frequency = <100000>;
> + pinctrl-names = "default","sleep";
> + pinctrl-0 = <&pinctrl_i2c1>;
> + pinctrl-1 = <&pinctrl_i2c1_sleep>;
> + status = "okay";
> +
> + lm3630a: backlight@36 {
> + reg = <0x36>;
> +
> + compatible = "ti,lm3630a";
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_lm3630a_bl_gpio>;
> + enable-gpios = <&gpio2 10 GPIO_ACTIVE_HIGH>;
> +
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + led@0 {
> + reg = <0>;
> + led-sources = <0>;
> + label = "backlight_warm";
> + default-brightness = <0>;
> + max-brightness = <255>;
> + };
> +
> + led@1 {
> + reg = <1>;
> + led-sources = <1>;
> + label = "backlight_cold";
> + default-brightness = <0>;
> + max-brightness = <255>;
> + };
> +
> + };
> +};
> +
> +&i2c2 {
> + clock-frequency = <100000>;
> + pinctrl-names = "default","sleep";
> + pinctrl-0 = <&pinctrl_i2c2>;
> + pinctrl-1 = <&pinctrl_i2c2_sleep>;
> + status = "okay";
> +
> + /* TODO: CYTTSP5 touch controller at 0x24 */
> +
> + /* TODO: TPS65185 PMIC for E Ink at 0x68 */
> +
> +};
> +
> +&i2c3 {
> + clock-frequency = <100000>;
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_i2c3>;
> + status = "okay";
> +
> + ricoh619: pmic@32 {
> + compatible = "ricoh,rc5t619";
> + reg = <0x32>;
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_ricoh_gpio>;
> + system-power-controller;
> +
> + regulators {
> + dcdc1_reg: DCDC1 {
> + regulator-name = "DCDC1";
> + regulator-min-microvolt = <300000>;
> + regulator-max-microvolt = <1875000>;
> + regulator-always-on;
> + regulator-boot-on;
> + regulator-state-mem {
> + regulator-on-in-suspend;
> + regulator-suspend-max-microvolt = <900000>;
> + regulator-suspend-min-microvolt = <900000>;
> + };
> + };
> +
> + /* Core3_3V3 */
> + dcdc2_reg: DCDC2 {
> + regulator-name = "DCDC2";
> + regulator-always-on;
> + regulator-boot-on;
> + regulator-state-mem {
> + regulator-on-in-suspend;
> + regulator-suspend-max-microvolt = <3300000>;
> + regulator-suspend-min-microvolt = <3300000>;
> + };
> + };
> +
> + dcdc3_reg: DCDC3 {
> + regulator-name = "DCDC3";
> + regulator-min-microvolt = <300000>;
> + regulator-max-microvolt = <1875000>;
> + regulator-always-on;
> + regulator-boot-on;
> + regulator-state-mem {
> + regulator-on-in-suspend;
> + regulator-suspend-max-microvolt = <1140000>;
> + regulator-suspend-min-microvolt = <1140000>;
> + };
> + };
> +
> + /* Core4_1V2 */
> + dcdc4_reg: DCDC4 {
> + regulator-name = "DCDC4";
> + regulator-min-microvolt = <1200000>;
> + regulator-max-microvolt = <1200000>;
> + regulator-always-on;
> + regulator-boot-on;
> + regulator-state-mem {
> + regulator-on-in-suspend;
> + regulator-suspend-max-microvolt = <1140000>;
> + regulator-suspend-min-microvolt = <1140000>;
> + };
> + };
> +
> + /* Core4_1V8 */
> + dcdc5_reg: DCDC5 {
> + regulator-name = "DCDC5";
> + regulator-min-microvolt = <1800000>;
> + regulator-max-microvolt = <1800000>;
> + regulator-always-on;
> + regulator-boot-on;
> + regulator-state-mem {
> + regulator-on-in-suspend;
> + regulator-suspend-max-microvolt = <1700000>;
> + regulator-suspend-min-microvolt = <1700000>;
> + };
> + };
> +
> + /* IR_3V3 */
> + ldo1_reg: LDO1 {
> + regulator-name = "LDO1";
> + regulator-boot-on;
> + };
> +
> + /* Core1_3V3 */
> + ldo2_reg: LDO2 {
> + regulator-name = "LDO2";
> + regulator-always-on;
> + regulator-boot-on;
> + regulator-state-mem {
> + regulator-on-in-suspend;
> + regulator-suspend-max-microvolt = <3000000>;
> + regulator-suspend-min-microvolt = <3000000>;
> + };
> + };
> +
> + /* Core5_1V2 */
> + ldo3_reg: LDO3 {
> + regulator-name = "LDO3";
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + ldo4_reg: LDO4 {
> + regulator-name = "LDO4";
> + regulator-boot-on;
> + };
> +
> + /* SPD_3V3 */
> + ldo5_reg: LDO5 {
> + regulator-name = "LDO5";
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + /* DDR_0V6 */
> + ldo6_reg: LDO6 {
> + regulator-name = "LDO6";
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + /* VDD_PWM */
> + ldo7_reg: LDO7 {
> + regulator-name = "LDO7";
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + /* ldo_1v8 */
> + ldo8_reg: LDO8 {
> + regulator-name = "LDO8";
> + regulator-min-microvolt = <1800000>;
> + regulator-max-microvolt = <1800000>;
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + ldo9_reg: LDO9 {
> + regulator-name = "LDO9";
> + regulator-boot-on;
> + };
> +
> + ldo10_reg: LDO10 {
> + regulator-name = "LDO10";
> + regulator-boot-on;
> + };
> +
> + ldortc1_reg: LDORTC1 {
> + regulator-name = "LDORTC1";
> + regulator-boot-on;
> + };
> +
> + ldortc2_reg: LDORTC2 {
> + regulator-name = "LDORTC2";
> + regulator-boot-on;
> + };
> + };
> +
> + };
> +
> +};
> +
> +&snvs_rtc {
> + /* we are using the rtc in the pmic, not disabled imx6sll.dtsi */
> + status = "disabled";
> +};
> +
> +&uart1 {
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_uart1>;
> + status = "okay";
> +};
> +
> +&usdhc2 {
> + pinctrl-names = "default", "state_100mhz", "state_200mhz","sleep";
> + pinctrl-0 = <&pinctrl_usdhc2>;
> + pinctrl-1 = <&pinctrl_usdhc2_100mhz>;
> + pinctrl-2 = <&pinctrl_usdhc2_200mhz>;
> + pinctrl-3 = <&pinctrl_usdhc2_sleep>;
> + non-removable;
> + status = "okay";
> +};
> +
> +&usdhc3 {
> + pinctrl-names = "default", "state_100mhz", "state_200mhz","sleep";
> + pinctrl-0 = <&pinctrl_usdhc3>;
> + pinctrl-1 = <&pinctrl_usdhc3_100mhz>;
> + pinctrl-2 = <&pinctrl_usdhc3_200mhz>;
> + pinctrl-3 = <&pinctrl_usdhc3_sleep>;
> + vmmc-supply = <®_wifi>;
> + mmc-pwrseq = <&wifi_pwrseq>;
> + cap-power-off-card;
> + non-removable;
> + status = "okay";
> +};
> +
> +&usbotg1 {
> + pinctrl-names = "default";
> + disable-over-current;
> + srp-disable;
> + hnp-disable;
> + adp-disable;
> + status = "okay";
> +};
> --
> 2.20.1
>
>
> _______________________________________________
> linux-arm-kernel mailing list
> linux-arm-kernel@lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
>
--
Pengutronix e.K. | |
Industrial Linux Solutions | http://www.pengutronix.de/ |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
^ permalink raw reply [flat|nested] 51+ messages in thread
* Re: [PATCH v3 2/3] ARM: dts: add Netronix E60K02 board common file
2019-10-11 6:56 ` Marco Felsch
(?)
@ 2019-10-11 7:41 ` Andreas Kemnade
-1 siblings, 0 replies; 51+ messages in thread
From: Andreas Kemnade @ 2019-10-11 7:41 UTC (permalink / raw)
To: Marco Felsch
Cc: robh+dt, mark.rutland, shawnguo, s.hauer, kernel, festevam,
linux-imx, manivannan.sadhasivam, andrew.smirnov, marex, angus,
devicetree, linux-kernel, linux-arm-kernel, j.neuschaefer,
Discussions about the Letux Kernel
On Fri, 11 Oct 2019 08:56:09 +0200
Marco Felsch <m.felsch@pengutronix.de> wrote:
> Hi Andreas,
>
> On 19-10-10 21:23, Andreas Kemnade wrote:
> > The Netronix board E60K02 can be found some several Ebook-Readers,
> > at least the Kobo Clara HD and the Tolino Shine 3. The board
> > is equipped with different SoCs requiring different pinmuxes.
> >
> > For now the following peripherals are included:
> > - LED
> > - Power Key
> > - Cover (gpio via hall sensor)
> > - RC5T619 PMIC (the kernel misses support for rtc and charger
> > subdevices).
> > - Backlight via lm3630a
> > - Wifi sdio chip detection (mmc-powerseq and stuff)
> >
> > It is based on vendor kernel but heavily reworked due to many
> > changed bindings.
> >
> > Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
> > ---
> > Changes in v3:
> > - better led name
> > - correct memory size
> > - comments about missing devices
> >
> > Changes in v2:
> > - reordered, was 1/3
> > - moved pinmuxes to their actual users, not the parents
> > of them
> > - removed some already-disabled stuff
> > - minor cleanups
>
> You won't change the muxing, so a this dtsi can be self contained?
>
So you want me to put a big
#if defined(MX6SLL)
[...]
pinctrl_i2c1: i2c1grp {
fsl,pins = <
MX6SLL_PAD_I2C1_SCL__I2C1_SCL 0x4001f8b1
MX6SLL_PAD_I2C1_SDA__I2C1_SDA 0x4001f8b1
>;
};
#elif (MX6SL)
[...]
pinctrl_i2c1: i2c1grp {
fsl,pins = <
MX6SL_PAD_I2C1_SCL__I2C1_SCL 0x4001f8b1
MX6SL_PAD_I2C1_SDA__I2C1_SDA 0x4001f8b1
>;
};
#endif
in the dtsi?
Regards,
Andreas
^ permalink raw reply [flat|nested] 51+ messages in thread
* Re: [PATCH v3 2/3] ARM: dts: add Netronix E60K02 board common file
@ 2019-10-11 7:41 ` Andreas Kemnade
0 siblings, 0 replies; 51+ messages in thread
From: Andreas Kemnade @ 2019-10-11 7:41 UTC (permalink / raw)
To: Marco Felsch
Cc: mark.rutland, marex, devicetree, andrew.smirnov, shawnguo,
s.hauer, angus, linux-kernel, j.neuschaefer, robh+dt, linux-imx,
kernel, manivannan.sadhasivam,
Discussions about the Letux Kernel, festevam, linux-arm-kernel
On Fri, 11 Oct 2019 08:56:09 +0200
Marco Felsch <m.felsch@pengutronix.de> wrote:
> Hi Andreas,
>
> On 19-10-10 21:23, Andreas Kemnade wrote:
> > The Netronix board E60K02 can be found some several Ebook-Readers,
> > at least the Kobo Clara HD and the Tolino Shine 3. The board
> > is equipped with different SoCs requiring different pinmuxes.
> >
> > For now the following peripherals are included:
> > - LED
> > - Power Key
> > - Cover (gpio via hall sensor)
> > - RC5T619 PMIC (the kernel misses support for rtc and charger
> > subdevices).
> > - Backlight via lm3630a
> > - Wifi sdio chip detection (mmc-powerseq and stuff)
> >
> > It is based on vendor kernel but heavily reworked due to many
> > changed bindings.
> >
> > Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
> > ---
> > Changes in v3:
> > - better led name
> > - correct memory size
> > - comments about missing devices
> >
> > Changes in v2:
> > - reordered, was 1/3
> > - moved pinmuxes to their actual users, not the parents
> > of them
> > - removed some already-disabled stuff
> > - minor cleanups
>
> You won't change the muxing, so a this dtsi can be self contained?
>
So you want me to put a big
#if defined(MX6SLL)
[...]
pinctrl_i2c1: i2c1grp {
fsl,pins = <
MX6SLL_PAD_I2C1_SCL__I2C1_SCL 0x4001f8b1
MX6SLL_PAD_I2C1_SDA__I2C1_SDA 0x4001f8b1
>;
};
#elif (MX6SL)
[...]
pinctrl_i2c1: i2c1grp {
fsl,pins = <
MX6SL_PAD_I2C1_SCL__I2C1_SCL 0x4001f8b1
MX6SL_PAD_I2C1_SDA__I2C1_SDA 0x4001f8b1
>;
};
#endif
in the dtsi?
Regards,
Andreas
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 51+ messages in thread
* Re: [PATCH v3 2/3] ARM: dts: add Netronix E60K02 board common file
@ 2019-10-11 7:41 ` Andreas Kemnade
0 siblings, 0 replies; 51+ messages in thread
From: Andreas Kemnade @ 2019-10-11 7:41 UTC (permalink / raw)
To: Marco Felsch
Cc: robh+dt, mark.rutland, shawnguo, s.hauer, kernel, festevam,
linux-imx, manivannan.sadhasivam, andrew.smirnov, marex, angus,
devicetree, linux-kernel, linux-arm-kernel, j.neuschaefer,
Discussions about the Letux Kernel
On Fri, 11 Oct 2019 08:56:09 +0200
Marco Felsch <m.felsch@pengutronix.de> wrote:
> Hi Andreas,
>
> On 19-10-10 21:23, Andreas Kemnade wrote:
> > The Netronix board E60K02 can be found some several Ebook-Readers,
> > at least the Kobo Clara HD and the Tolino Shine 3. The board
> > is equipped with different SoCs requiring different pinmuxes.
> >
> > For now the following peripherals are included:
> > - LED
> > - Power Key
> > - Cover (gpio via hall sensor)
> > - RC5T619 PMIC (the kernel misses support for rtc and charger
> > subdevices).
> > - Backlight via lm3630a
> > - Wifi sdio chip detection (mmc-powerseq and stuff)
> >
> > It is based on vendor kernel but heavily reworked due to many
> > changed bindings.
> >
> > Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
> > ---
> > Changes in v3:
> > - better led name
> > - correct memory size
> > - comments about missing devices
> >
> > Changes in v2:
> > - reordered, was 1/3
> > - moved pinmuxes to their actual users, not the parents
> > of them
> > - removed some already-disabled stuff
> > - minor cleanups
>
> You won't change the muxing, so a this dtsi can be self contained?
>
So you want me to put a big
#if defined(MX6SLL)
[...]
pinctrl_i2c1: i2c1grp {
fsl,pins = <
MX6SLL_PAD_I2C1_SCL__I2C1_SCL 0x4001f8b1
MX6SLL_PAD_I2C1_SDA__I2C1_SDA 0x4001f8b1
>;
};
#elif (MX6SL)
[...]
pinctrl_i2c1: i2c1grp {
fsl,pins = <
MX6SL_PAD_I2C1_SCL__I2C1_SCL 0x4001f8b1
MX6SL_PAD_I2C1_SDA__I2C1_SDA 0x4001f8b1
>;
};
#endif
in the dtsi?
Regards,
Andreas
^ permalink raw reply [flat|nested] 51+ messages in thread
* Re: [PATCH v3 2/3] ARM: dts: add Netronix E60K02 board common file
2019-10-11 7:41 ` Andreas Kemnade
(?)
@ 2019-10-11 14:29 ` Rob Herring
-1 siblings, 0 replies; 51+ messages in thread
From: Rob Herring @ 2019-10-11 14:29 UTC (permalink / raw)
To: Andreas Kemnade
Cc: Marco Felsch, mark.rutland, shawnguo, s.hauer, kernel, festevam,
linux-imx, manivannan.sadhasivam, andrew.smirnov, marex, angus,
devicetree, linux-kernel, linux-arm-kernel, j.neuschaefer,
Discussions about the Letux Kernel
On Fri, Oct 11, 2019 at 09:41:48AM +0200, Andreas Kemnade wrote:
> On Fri, 11 Oct 2019 08:56:09 +0200
> Marco Felsch <m.felsch@pengutronix.de> wrote:
>
> > Hi Andreas,
> >
> > On 19-10-10 21:23, Andreas Kemnade wrote:
> > > The Netronix board E60K02 can be found some several Ebook-Readers,
> > > at least the Kobo Clara HD and the Tolino Shine 3. The board
> > > is equipped with different SoCs requiring different pinmuxes.
> > >
> > > For now the following peripherals are included:
> > > - LED
> > > - Power Key
> > > - Cover (gpio via hall sensor)
> > > - RC5T619 PMIC (the kernel misses support for rtc and charger
> > > subdevices).
> > > - Backlight via lm3630a
> > > - Wifi sdio chip detection (mmc-powerseq and stuff)
> > >
> > > It is based on vendor kernel but heavily reworked due to many
> > > changed bindings.
> > >
> > > Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
> > > ---
> > > Changes in v3:
> > > - better led name
> > > - correct memory size
> > > - comments about missing devices
> > >
> > > Changes in v2:
> > > - reordered, was 1/3
> > > - moved pinmuxes to their actual users, not the parents
> > > of them
> > > - removed some already-disabled stuff
> > > - minor cleanups
> >
> > You won't change the muxing, so a this dtsi can be self contained?
> >
> So you want me to put a big
> #if defined(MX6SLL)
Not sure what the comment meant, but no, don't do this. C defines in dts
files are for symbolic names for numbers and assembling bitfields and
that's it.
> [...]
> pinctrl_i2c1: i2c1grp {
> fsl,pins = <
> MX6SLL_PAD_I2C1_SCL__I2C1_SCL 0x4001f8b1
> MX6SLL_PAD_I2C1_SDA__I2C1_SDA 0x4001f8b1
> >;
> };
>
> #elif (MX6SL)
> [...]
> pinctrl_i2c1: i2c1grp {
> fsl,pins = <
> MX6SL_PAD_I2C1_SCL__I2C1_SCL 0x4001f8b1
> MX6SL_PAD_I2C1_SDA__I2C1_SDA 0x4001f8b1
> >;
> };
>
> #endif
> in the dtsi?
>
> Regards,
> Andreas
^ permalink raw reply [flat|nested] 51+ messages in thread
* Re: [PATCH v3 2/3] ARM: dts: add Netronix E60K02 board common file
@ 2019-10-11 14:29 ` Rob Herring
0 siblings, 0 replies; 51+ messages in thread
From: Rob Herring @ 2019-10-11 14:29 UTC (permalink / raw)
To: Andreas Kemnade
Cc: mark.rutland, marex, devicetree, andrew.smirnov, shawnguo,
s.hauer, angus, Marco Felsch, linux-kernel, linux-imx, kernel,
manivannan.sadhasivam, j.neuschaefer,
Discussions about the Letux Kernel, festevam, linux-arm-kernel
On Fri, Oct 11, 2019 at 09:41:48AM +0200, Andreas Kemnade wrote:
> On Fri, 11 Oct 2019 08:56:09 +0200
> Marco Felsch <m.felsch@pengutronix.de> wrote:
>
> > Hi Andreas,
> >
> > On 19-10-10 21:23, Andreas Kemnade wrote:
> > > The Netronix board E60K02 can be found some several Ebook-Readers,
> > > at least the Kobo Clara HD and the Tolino Shine 3. The board
> > > is equipped with different SoCs requiring different pinmuxes.
> > >
> > > For now the following peripherals are included:
> > > - LED
> > > - Power Key
> > > - Cover (gpio via hall sensor)
> > > - RC5T619 PMIC (the kernel misses support for rtc and charger
> > > subdevices).
> > > - Backlight via lm3630a
> > > - Wifi sdio chip detection (mmc-powerseq and stuff)
> > >
> > > It is based on vendor kernel but heavily reworked due to many
> > > changed bindings.
> > >
> > > Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
> > > ---
> > > Changes in v3:
> > > - better led name
> > > - correct memory size
> > > - comments about missing devices
> > >
> > > Changes in v2:
> > > - reordered, was 1/3
> > > - moved pinmuxes to their actual users, not the parents
> > > of them
> > > - removed some already-disabled stuff
> > > - minor cleanups
> >
> > You won't change the muxing, so a this dtsi can be self contained?
> >
> So you want me to put a big
> #if defined(MX6SLL)
Not sure what the comment meant, but no, don't do this. C defines in dts
files are for symbolic names for numbers and assembling bitfields and
that's it.
> [...]
> pinctrl_i2c1: i2c1grp {
> fsl,pins = <
> MX6SLL_PAD_I2C1_SCL__I2C1_SCL 0x4001f8b1
> MX6SLL_PAD_I2C1_SDA__I2C1_SDA 0x4001f8b1
> >;
> };
>
> #elif (MX6SL)
> [...]
> pinctrl_i2c1: i2c1grp {
> fsl,pins = <
> MX6SL_PAD_I2C1_SCL__I2C1_SCL 0x4001f8b1
> MX6SL_PAD_I2C1_SDA__I2C1_SDA 0x4001f8b1
> >;
> };
>
> #endif
> in the dtsi?
>
> Regards,
> Andreas
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 51+ messages in thread
* Re: [PATCH v3 2/3] ARM: dts: add Netronix E60K02 board common file
@ 2019-10-11 14:29 ` Rob Herring
0 siblings, 0 replies; 51+ messages in thread
From: Rob Herring @ 2019-10-11 14:29 UTC (permalink / raw)
To: Andreas Kemnade
Cc: Marco Felsch, mark.rutland, shawnguo, s.hauer, kernel, festevam,
linux-imx, manivannan.sadhasivam, andrew.smirnov, marex, angus,
devicetree, linux-kernel, linux-arm-kernel, j.neuschaefer,
Discussions about the Letux Kernel
On Fri, Oct 11, 2019 at 09:41:48AM +0200, Andreas Kemnade wrote:
> On Fri, 11 Oct 2019 08:56:09 +0200
> Marco Felsch <m.felsch@pengutronix.de> wrote:
>
> > Hi Andreas,
> >
> > On 19-10-10 21:23, Andreas Kemnade wrote:
> > > The Netronix board E60K02 can be found some several Ebook-Readers,
> > > at least the Kobo Clara HD and the Tolino Shine 3. The board
> > > is equipped with different SoCs requiring different pinmuxes.
> > >
> > > For now the following peripherals are included:
> > > - LED
> > > - Power Key
> > > - Cover (gpio via hall sensor)
> > > - RC5T619 PMIC (the kernel misses support for rtc and charger
> > > subdevices).
> > > - Backlight via lm3630a
> > > - Wifi sdio chip detection (mmc-powerseq and stuff)
> > >
> > > It is based on vendor kernel but heavily reworked due to many
> > > changed bindings.
> > >
> > > Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
> > > ---
> > > Changes in v3:
> > > - better led name
> > > - correct memory size
> > > - comments about missing devices
> > >
> > > Changes in v2:
> > > - reordered, was 1/3
> > > - moved pinmuxes to their actual users, not the parents
> > > of them
> > > - removed some already-disabled stuff
> > > - minor cleanups
> >
> > You won't change the muxing, so a this dtsi can be self contained?
> >
> So you want me to put a big
> #if defined(MX6SLL)
Not sure what the comment meant, but no, don't do this. C defines in dts
files are for symbolic names for numbers and assembling bitfields and
that's it.
> [...]
> pinctrl_i2c1: i2c1grp {
> fsl,pins = <
> MX6SLL_PAD_I2C1_SCL__I2C1_SCL 0x4001f8b1
> MX6SLL_PAD_I2C1_SDA__I2C1_SDA 0x4001f8b1
> >;
> };
>
> #elif (MX6SL)
> [...]
> pinctrl_i2c1: i2c1grp {
> fsl,pins = <
> MX6SL_PAD_I2C1_SCL__I2C1_SCL 0x4001f8b1
> MX6SL_PAD_I2C1_SDA__I2C1_SDA 0x4001f8b1
> >;
> };
>
> #endif
> in the dtsi?
>
> Regards,
> Andreas
^ permalink raw reply [flat|nested] 51+ messages in thread
* Re: [PATCH v3 2/3] ARM: dts: add Netronix E60K02 board common file
2019-10-11 14:29 ` Rob Herring
(?)
@ 2019-10-11 15:05 ` Andreas Kemnade
-1 siblings, 0 replies; 51+ messages in thread
From: Andreas Kemnade @ 2019-10-11 15:05 UTC (permalink / raw)
To: Rob Herring
Cc: Marco Felsch, mark.rutland, shawnguo, s.hauer, kernel, festevam,
linux-imx, manivannan.sadhasivam, andrew.smirnov, marex, angus,
devicetree, linux-kernel, linux-arm-kernel, j.neuschaefer,
Discussions about the Letux Kernel
[-- Attachment #1: Type: text/plain, Size: 1968 bytes --]
On Fri, 11 Oct 2019 09:29:27 -0500
Rob Herring <robh@kernel.org> wrote:
> On Fri, Oct 11, 2019 at 09:41:48AM +0200, Andreas Kemnade wrote:
> > On Fri, 11 Oct 2019 08:56:09 +0200
> > Marco Felsch <m.felsch@pengutronix.de> wrote:
> >
> > > Hi Andreas,
> > >
> > > On 19-10-10 21:23, Andreas Kemnade wrote:
> > > > The Netronix board E60K02 can be found some several Ebook-Readers,
> > > > at least the Kobo Clara HD and the Tolino Shine 3. The board
> > > > is equipped with different SoCs requiring different pinmuxes.
> > > >
> > > > For now the following peripherals are included:
> > > > - LED
> > > > - Power Key
> > > > - Cover (gpio via hall sensor)
> > > > - RC5T619 PMIC (the kernel misses support for rtc and charger
> > > > subdevices).
> > > > - Backlight via lm3630a
> > > > - Wifi sdio chip detection (mmc-powerseq and stuff)
> > > >
> > > > It is based on vendor kernel but heavily reworked due to many
> > > > changed bindings.
> > > >
> > > > Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
> > > > ---
> > > > Changes in v3:
> > > > - better led name
> > > > - correct memory size
> > > > - comments about missing devices
> > > >
> > > > Changes in v2:
> > > > - reordered, was 1/3
> > > > - moved pinmuxes to their actual users, not the parents
> > > > of them
> > > > - removed some already-disabled stuff
> > > > - minor cleanups
> > >
> > > You won't change the muxing, so a this dtsi can be self contained?
> > >
> > So you want me to put a big
> > #if defined(MX6SLL)
>
> Not sure what the comment meant, but no, don't do this. C defines in dts
> files are for symbolic names for numbers and assembling bitfields and
> that's it.
yes, that is also my opinion. For now, there is only one user
of this .dtsi, but I have another one in preparation. That is the
reason for splitting things between .dts and .dtsi to avoid such ugly
ifdefs
Regards,
Andreas
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 51+ messages in thread
* Re: [PATCH v3 2/3] ARM: dts: add Netronix E60K02 board common file
@ 2019-10-11 15:05 ` Andreas Kemnade
0 siblings, 0 replies; 51+ messages in thread
From: Andreas Kemnade @ 2019-10-11 15:05 UTC (permalink / raw)
To: Rob Herring
Cc: mark.rutland, marex, devicetree, andrew.smirnov, shawnguo,
s.hauer, angus, Marco Felsch, linux-kernel, linux-imx, kernel,
manivannan.sadhasivam, j.neuschaefer,
Discussions about the Letux Kernel, festevam, linux-arm-kernel
[-- Attachment #1.1: Type: text/plain, Size: 1968 bytes --]
On Fri, 11 Oct 2019 09:29:27 -0500
Rob Herring <robh@kernel.org> wrote:
> On Fri, Oct 11, 2019 at 09:41:48AM +0200, Andreas Kemnade wrote:
> > On Fri, 11 Oct 2019 08:56:09 +0200
> > Marco Felsch <m.felsch@pengutronix.de> wrote:
> >
> > > Hi Andreas,
> > >
> > > On 19-10-10 21:23, Andreas Kemnade wrote:
> > > > The Netronix board E60K02 can be found some several Ebook-Readers,
> > > > at least the Kobo Clara HD and the Tolino Shine 3. The board
> > > > is equipped with different SoCs requiring different pinmuxes.
> > > >
> > > > For now the following peripherals are included:
> > > > - LED
> > > > - Power Key
> > > > - Cover (gpio via hall sensor)
> > > > - RC5T619 PMIC (the kernel misses support for rtc and charger
> > > > subdevices).
> > > > - Backlight via lm3630a
> > > > - Wifi sdio chip detection (mmc-powerseq and stuff)
> > > >
> > > > It is based on vendor kernel but heavily reworked due to many
> > > > changed bindings.
> > > >
> > > > Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
> > > > ---
> > > > Changes in v3:
> > > > - better led name
> > > > - correct memory size
> > > > - comments about missing devices
> > > >
> > > > Changes in v2:
> > > > - reordered, was 1/3
> > > > - moved pinmuxes to their actual users, not the parents
> > > > of them
> > > > - removed some already-disabled stuff
> > > > - minor cleanups
> > >
> > > You won't change the muxing, so a this dtsi can be self contained?
> > >
> > So you want me to put a big
> > #if defined(MX6SLL)
>
> Not sure what the comment meant, but no, don't do this. C defines in dts
> files are for symbolic names for numbers and assembling bitfields and
> that's it.
yes, that is also my opinion. For now, there is only one user
of this .dtsi, but I have another one in preparation. That is the
reason for splitting things between .dts and .dtsi to avoid such ugly
ifdefs
Regards,
Andreas
[-- Attachment #1.2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
[-- Attachment #2: Type: text/plain, Size: 176 bytes --]
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 51+ messages in thread
* Re: [PATCH v3 2/3] ARM: dts: add Netronix E60K02 board common file
@ 2019-10-11 15:05 ` Andreas Kemnade
0 siblings, 0 replies; 51+ messages in thread
From: Andreas Kemnade @ 2019-10-11 15:05 UTC (permalink / raw)
To: Rob Herring
Cc: Marco Felsch, mark.rutland, shawnguo, s.hauer, kernel, festevam,
linux-imx, manivannan.sadhasivam, andrew.smirnov, marex, angus,
devicetree, linux-kernel, linux-arm-kernel, j.neuschaefer,
Discussions about the Letux Kernel
[-- Attachment #1: Type: text/plain, Size: 1968 bytes --]
On Fri, 11 Oct 2019 09:29:27 -0500
Rob Herring <robh@kernel.org> wrote:
> On Fri, Oct 11, 2019 at 09:41:48AM +0200, Andreas Kemnade wrote:
> > On Fri, 11 Oct 2019 08:56:09 +0200
> > Marco Felsch <m.felsch@pengutronix.de> wrote:
> >
> > > Hi Andreas,
> > >
> > > On 19-10-10 21:23, Andreas Kemnade wrote:
> > > > The Netronix board E60K02 can be found some several Ebook-Readers,
> > > > at least the Kobo Clara HD and the Tolino Shine 3. The board
> > > > is equipped with different SoCs requiring different pinmuxes.
> > > >
> > > > For now the following peripherals are included:
> > > > - LED
> > > > - Power Key
> > > > - Cover (gpio via hall sensor)
> > > > - RC5T619 PMIC (the kernel misses support for rtc and charger
> > > > subdevices).
> > > > - Backlight via lm3630a
> > > > - Wifi sdio chip detection (mmc-powerseq and stuff)
> > > >
> > > > It is based on vendor kernel but heavily reworked due to many
> > > > changed bindings.
> > > >
> > > > Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
> > > > ---
> > > > Changes in v3:
> > > > - better led name
> > > > - correct memory size
> > > > - comments about missing devices
> > > >
> > > > Changes in v2:
> > > > - reordered, was 1/3
> > > > - moved pinmuxes to their actual users, not the parents
> > > > of them
> > > > - removed some already-disabled stuff
> > > > - minor cleanups
> > >
> > > You won't change the muxing, so a this dtsi can be self contained?
> > >
> > So you want me to put a big
> > #if defined(MX6SLL)
>
> Not sure what the comment meant, but no, don't do this. C defines in dts
> files are for symbolic names for numbers and assembling bitfields and
> that's it.
yes, that is also my opinion. For now, there is only one user
of this .dtsi, but I have another one in preparation. That is the
reason for splitting things between .dts and .dtsi to avoid such ugly
ifdefs
Regards,
Andreas
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 51+ messages in thread
* Re: [PATCH v3 2/3] ARM: dts: add Netronix E60K02 board common file
2019-10-11 15:05 ` Andreas Kemnade
(?)
@ 2019-10-11 15:22 ` Marco Felsch
-1 siblings, 0 replies; 51+ messages in thread
From: Marco Felsch @ 2019-10-11 15:22 UTC (permalink / raw)
To: Andreas Kemnade
Cc: Rob Herring, mark.rutland, marex, devicetree, andrew.smirnov,
shawnguo, s.hauer, angus, linux-kernel, linux-imx, kernel,
manivannan.sadhasivam, j.neuschaefer,
Discussions about the Letux Kernel, festevam, linux-arm-kernel
On 19-10-11 17:05, Andreas Kemnade wrote:
> On Fri, 11 Oct 2019 09:29:27 -0500
> Rob Herring <robh@kernel.org> wrote:
>
> > On Fri, Oct 11, 2019 at 09:41:48AM +0200, Andreas Kemnade wrote:
> > > On Fri, 11 Oct 2019 08:56:09 +0200
> > > Marco Felsch <m.felsch@pengutronix.de> wrote:
> > >
> > > > Hi Andreas,
> > > >
> > > > On 19-10-10 21:23, Andreas Kemnade wrote:
> > > > > The Netronix board E60K02 can be found some several Ebook-Readers,
> > > > > at least the Kobo Clara HD and the Tolino Shine 3. The board
> > > > > is equipped with different SoCs requiring different pinmuxes.
> > > > >
> > > > > For now the following peripherals are included:
> > > > > - LED
> > > > > - Power Key
> > > > > - Cover (gpio via hall sensor)
> > > > > - RC5T619 PMIC (the kernel misses support for rtc and charger
> > > > > subdevices).
> > > > > - Backlight via lm3630a
> > > > > - Wifi sdio chip detection (mmc-powerseq and stuff)
> > > > >
> > > > > It is based on vendor kernel but heavily reworked due to many
> > > > > changed bindings.
> > > > >
> > > > > Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
> > > > > ---
> > > > > Changes in v3:
> > > > > - better led name
> > > > > - correct memory size
> > > > > - comments about missing devices
> > > > >
> > > > > Changes in v2:
> > > > > - reordered, was 1/3
> > > > > - moved pinmuxes to their actual users, not the parents
> > > > > of them
> > > > > - removed some already-disabled stuff
> > > > > - minor cleanups
> > > >
> > > > You won't change the muxing, so a this dtsi can be self contained?
> > > >
> > > So you want me to put a big
> > > #if defined(MX6SLL)
> >
> > Not sure what the comment meant, but no, don't do this. C defines in dts
> > files are for symbolic names for numbers and assembling bitfields and
> > that's it.
>
> yes, that is also my opinion. For now, there is only one user
> of this .dtsi, but I have another one in preparation. That is the
> reason for splitting things between .dts and .dtsi to avoid such ugly
> ifdefs
Then IMHO the pnictrl-* entries shouldn't appear in the dsti.
Regards,
Marco
> Regards,
> Andreas
> _______________________________________________
> linux-arm-kernel mailing list
> linux-arm-kernel@lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
--
Pengutronix e.K. | |
Industrial Linux Solutions | http://www.pengutronix.de/ |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
^ permalink raw reply [flat|nested] 51+ messages in thread
* Re: [PATCH v3 2/3] ARM: dts: add Netronix E60K02 board common file
@ 2019-10-11 15:22 ` Marco Felsch
0 siblings, 0 replies; 51+ messages in thread
From: Marco Felsch @ 2019-10-11 15:22 UTC (permalink / raw)
To: Andreas Kemnade
Cc: mark.rutland, Rob Herring, marex, devicetree, andrew.smirnov,
festevam, s.hauer, angus, linux-kernel, j.neuschaefer, linux-imx,
kernel, manivannan.sadhasivam,
Discussions about the Letux Kernel, shawnguo, linux-arm-kernel
On 19-10-11 17:05, Andreas Kemnade wrote:
> On Fri, 11 Oct 2019 09:29:27 -0500
> Rob Herring <robh@kernel.org> wrote:
>
> > On Fri, Oct 11, 2019 at 09:41:48AM +0200, Andreas Kemnade wrote:
> > > On Fri, 11 Oct 2019 08:56:09 +0200
> > > Marco Felsch <m.felsch@pengutronix.de> wrote:
> > >
> > > > Hi Andreas,
> > > >
> > > > On 19-10-10 21:23, Andreas Kemnade wrote:
> > > > > The Netronix board E60K02 can be found some several Ebook-Readers,
> > > > > at least the Kobo Clara HD and the Tolino Shine 3. The board
> > > > > is equipped with different SoCs requiring different pinmuxes.
> > > > >
> > > > > For now the following peripherals are included:
> > > > > - LED
> > > > > - Power Key
> > > > > - Cover (gpio via hall sensor)
> > > > > - RC5T619 PMIC (the kernel misses support for rtc and charger
> > > > > subdevices).
> > > > > - Backlight via lm3630a
> > > > > - Wifi sdio chip detection (mmc-powerseq and stuff)
> > > > >
> > > > > It is based on vendor kernel but heavily reworked due to many
> > > > > changed bindings.
> > > > >
> > > > > Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
> > > > > ---
> > > > > Changes in v3:
> > > > > - better led name
> > > > > - correct memory size
> > > > > - comments about missing devices
> > > > >
> > > > > Changes in v2:
> > > > > - reordered, was 1/3
> > > > > - moved pinmuxes to their actual users, not the parents
> > > > > of them
> > > > > - removed some already-disabled stuff
> > > > > - minor cleanups
> > > >
> > > > You won't change the muxing, so a this dtsi can be self contained?
> > > >
> > > So you want me to put a big
> > > #if defined(MX6SLL)
> >
> > Not sure what the comment meant, but no, don't do this. C defines in dts
> > files are for symbolic names for numbers and assembling bitfields and
> > that's it.
>
> yes, that is also my opinion. For now, there is only one user
> of this .dtsi, but I have another one in preparation. That is the
> reason for splitting things between .dts and .dtsi to avoid such ugly
> ifdefs
Then IMHO the pnictrl-* entries shouldn't appear in the dsti.
Regards,
Marco
> Regards,
> Andreas
> _______________________________________________
> linux-arm-kernel mailing list
> linux-arm-kernel@lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
--
Pengutronix e.K. | |
Industrial Linux Solutions | http://www.pengutronix.de/ |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 51+ messages in thread
* Re: [PATCH v3 2/3] ARM: dts: add Netronix E60K02 board common file
@ 2019-10-11 15:22 ` Marco Felsch
0 siblings, 0 replies; 51+ messages in thread
From: Marco Felsch @ 2019-10-11 15:22 UTC (permalink / raw)
To: Andreas Kemnade
Cc: Rob Herring, mark.rutland, marex, devicetree, andrew.smirnov,
shawnguo, s.hauer, angus, linux-kernel, linux-imx, kernel,
manivannan.sadhasivam, j.neuschaefer,
Discussions about the Letux Kernel, festevam, linux-arm-kernel
On 19-10-11 17:05, Andreas Kemnade wrote:
> On Fri, 11 Oct 2019 09:29:27 -0500
> Rob Herring <robh@kernel.org> wrote:
>
> > On Fri, Oct 11, 2019 at 09:41:48AM +0200, Andreas Kemnade wrote:
> > > On Fri, 11 Oct 2019 08:56:09 +0200
> > > Marco Felsch <m.felsch@pengutronix.de> wrote:
> > >
> > > > Hi Andreas,
> > > >
> > > > On 19-10-10 21:23, Andreas Kemnade wrote:
> > > > > The Netronix board E60K02 can be found some several Ebook-Readers,
> > > > > at least the Kobo Clara HD and the Tolino Shine 3. The board
> > > > > is equipped with different SoCs requiring different pinmuxes.
> > > > >
> > > > > For now the following peripherals are included:
> > > > > - LED
> > > > > - Power Key
> > > > > - Cover (gpio via hall sensor)
> > > > > - RC5T619 PMIC (the kernel misses support for rtc and charger
> > > > > subdevices).
> > > > > - Backlight via lm3630a
> > > > > - Wifi sdio chip detection (mmc-powerseq and stuff)
> > > > >
> > > > > It is based on vendor kernel but heavily reworked due to many
> > > > > changed bindings.
> > > > >
> > > > > Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
> > > > > ---
> > > > > Changes in v3:
> > > > > - better led name
> > > > > - correct memory size
> > > > > - comments about missing devices
> > > > >
> > > > > Changes in v2:
> > > > > - reordered, was 1/3
> > > > > - moved pinmuxes to their actual users, not the parents
> > > > > of them
> > > > > - removed some already-disabled stuff
> > > > > - minor cleanups
> > > >
> > > > You won't change the muxing, so a this dtsi can be self contained?
> > > >
> > > So you want me to put a big
> > > #if defined(MX6SLL)
> >
> > Not sure what the comment meant, but no, don't do this. C defines in dts
> > files are for symbolic names for numbers and assembling bitfields and
> > that's it.
>
> yes, that is also my opinion. For now, there is only one user
> of this .dtsi, but I have another one in preparation. That is the
> reason for splitting things between .dts and .dtsi to avoid such ugly
> ifdefs
Then IMHO the pnictrl-* entries shouldn't appear in the dsti.
Regards,
Marco
> Regards,
> Andreas
> _______________________________________________
> linux-arm-kernel mailing list
> linux-arm-kernel@lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
--
Pengutronix e.K. | |
Industrial Linux Solutions | http://www.pengutronix.de/ |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
^ permalink raw reply [flat|nested] 51+ messages in thread
* Re: [PATCH v3 2/3] ARM: dts: add Netronix E60K02 board common file
2019-10-11 15:22 ` Marco Felsch
(?)
@ 2019-10-11 16:19 ` Andreas Kemnade
-1 siblings, 0 replies; 51+ messages in thread
From: Andreas Kemnade @ 2019-10-11 16:19 UTC (permalink / raw)
To: Marco Felsch
Cc: Rob Herring, mark.rutland, marex, devicetree, andrew.smirnov,
shawnguo, s.hauer, angus, linux-kernel, linux-imx, kernel,
manivannan.sadhasivam, j.neuschaefer,
Discussions about the Letux Kernel, festevam, linux-arm-kernel
[-- Attachment #1: Type: text/plain, Size: 3146 bytes --]
On Fri, 11 Oct 2019 17:22:14 +0200
Marco Felsch <m.felsch@pengutronix.de> wrote:
> On 19-10-11 17:05, Andreas Kemnade wrote:
> > On Fri, 11 Oct 2019 09:29:27 -0500
> > Rob Herring <robh@kernel.org> wrote:
> >
> > > On Fri, Oct 11, 2019 at 09:41:48AM +0200, Andreas Kemnade wrote:
> > > > On Fri, 11 Oct 2019 08:56:09 +0200
> > > > Marco Felsch <m.felsch@pengutronix.de> wrote:
> > > >
> > > > > Hi Andreas,
> > > > >
> > > > > On 19-10-10 21:23, Andreas Kemnade wrote:
> > > > > > The Netronix board E60K02 can be found some several Ebook-Readers,
> > > > > > at least the Kobo Clara HD and the Tolino Shine 3. The board
> > > > > > is equipped with different SoCs requiring different pinmuxes.
> > > > > >
> > > > > > For now the following peripherals are included:
> > > > > > - LED
> > > > > > - Power Key
> > > > > > - Cover (gpio via hall sensor)
> > > > > > - RC5T619 PMIC (the kernel misses support for rtc and charger
> > > > > > subdevices).
> > > > > > - Backlight via lm3630a
> > > > > > - Wifi sdio chip detection (mmc-powerseq and stuff)
> > > > > >
> > > > > > It is based on vendor kernel but heavily reworked due to many
> > > > > > changed bindings.
> > > > > >
> > > > > > Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
> > > > > > ---
> > > > > > Changes in v3:
> > > > > > - better led name
> > > > > > - correct memory size
> > > > > > - comments about missing devices
> > > > > >
> > > > > > Changes in v2:
> > > > > > - reordered, was 1/3
> > > > > > - moved pinmuxes to their actual users, not the parents
> > > > > > of them
> > > > > > - removed some already-disabled stuff
> > > > > > - minor cleanups
> > > > >
> > > > > You won't change the muxing, so a this dtsi can be self contained?
> > > > >
> > > > So you want me to put a big
> > > > #if defined(MX6SLL)
> > >
> > > Not sure what the comment meant, but no, don't do this. C defines in dts
> > > files are for symbolic names for numbers and assembling bitfields and
> > > that's it.
> >
> > yes, that is also my opinion. For now, there is only one user
> > of this .dtsi, but I have another one in preparation. That is the
> > reason for splitting things between .dts and .dtsi to avoid such ugly
> > ifdefs
>
> Then IMHO the pnictrl-* entries shouldn't appear in the dsti.
>
hmm, maybe now I understand your idea:
You do not want only to have
pinctrl_lm3630a_bl_gpio: lm3630a_bl_gpio_grp {
fsl,pins = <
MX6SLL_PAD_EPDC_PWR_CTRL3__GPIO2_IO10 0x10059 /* HWEN */
>;
};
in dts, but also do not have these in .dtsi:
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_lm3630a_bl_gpio>;
and instead have in dts:
&lm3630a {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_lm3630a_bl_gpio>;
};
just to make sure I get it right before doing the restructuring work. That way of structuring things did not come to my mind, but then the .dtsi is self-contained.
Regards,
Andreas
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 51+ messages in thread
* Re: [PATCH v3 2/3] ARM: dts: add Netronix E60K02 board common file
@ 2019-10-11 16:19 ` Andreas Kemnade
0 siblings, 0 replies; 51+ messages in thread
From: Andreas Kemnade @ 2019-10-11 16:19 UTC (permalink / raw)
To: Marco Felsch
Cc: mark.rutland, Rob Herring, marex, devicetree, andrew.smirnov,
festevam, s.hauer, angus, linux-kernel, j.neuschaefer, linux-imx,
kernel, manivannan.sadhasivam,
Discussions about the Letux Kernel, shawnguo, linux-arm-kernel
[-- Attachment #1.1: Type: text/plain, Size: 3146 bytes --]
On Fri, 11 Oct 2019 17:22:14 +0200
Marco Felsch <m.felsch@pengutronix.de> wrote:
> On 19-10-11 17:05, Andreas Kemnade wrote:
> > On Fri, 11 Oct 2019 09:29:27 -0500
> > Rob Herring <robh@kernel.org> wrote:
> >
> > > On Fri, Oct 11, 2019 at 09:41:48AM +0200, Andreas Kemnade wrote:
> > > > On Fri, 11 Oct 2019 08:56:09 +0200
> > > > Marco Felsch <m.felsch@pengutronix.de> wrote:
> > > >
> > > > > Hi Andreas,
> > > > >
> > > > > On 19-10-10 21:23, Andreas Kemnade wrote:
> > > > > > The Netronix board E60K02 can be found some several Ebook-Readers,
> > > > > > at least the Kobo Clara HD and the Tolino Shine 3. The board
> > > > > > is equipped with different SoCs requiring different pinmuxes.
> > > > > >
> > > > > > For now the following peripherals are included:
> > > > > > - LED
> > > > > > - Power Key
> > > > > > - Cover (gpio via hall sensor)
> > > > > > - RC5T619 PMIC (the kernel misses support for rtc and charger
> > > > > > subdevices).
> > > > > > - Backlight via lm3630a
> > > > > > - Wifi sdio chip detection (mmc-powerseq and stuff)
> > > > > >
> > > > > > It is based on vendor kernel but heavily reworked due to many
> > > > > > changed bindings.
> > > > > >
> > > > > > Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
> > > > > > ---
> > > > > > Changes in v3:
> > > > > > - better led name
> > > > > > - correct memory size
> > > > > > - comments about missing devices
> > > > > >
> > > > > > Changes in v2:
> > > > > > - reordered, was 1/3
> > > > > > - moved pinmuxes to their actual users, not the parents
> > > > > > of them
> > > > > > - removed some already-disabled stuff
> > > > > > - minor cleanups
> > > > >
> > > > > You won't change the muxing, so a this dtsi can be self contained?
> > > > >
> > > > So you want me to put a big
> > > > #if defined(MX6SLL)
> > >
> > > Not sure what the comment meant, but no, don't do this. C defines in dts
> > > files are for symbolic names for numbers and assembling bitfields and
> > > that's it.
> >
> > yes, that is also my opinion. For now, there is only one user
> > of this .dtsi, but I have another one in preparation. That is the
> > reason for splitting things between .dts and .dtsi to avoid such ugly
> > ifdefs
>
> Then IMHO the pnictrl-* entries shouldn't appear in the dsti.
>
hmm, maybe now I understand your idea:
You do not want only to have
pinctrl_lm3630a_bl_gpio: lm3630a_bl_gpio_grp {
fsl,pins = <
MX6SLL_PAD_EPDC_PWR_CTRL3__GPIO2_IO10 0x10059 /* HWEN */
>;
};
in dts, but also do not have these in .dtsi:
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_lm3630a_bl_gpio>;
and instead have in dts:
&lm3630a {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_lm3630a_bl_gpio>;
};
just to make sure I get it right before doing the restructuring work. That way of structuring things did not come to my mind, but then the .dtsi is self-contained.
Regards,
Andreas
[-- Attachment #1.2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
[-- Attachment #2: Type: text/plain, Size: 176 bytes --]
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 51+ messages in thread
* Re: [PATCH v3 2/3] ARM: dts: add Netronix E60K02 board common file
@ 2019-10-11 16:19 ` Andreas Kemnade
0 siblings, 0 replies; 51+ messages in thread
From: Andreas Kemnade @ 2019-10-11 16:19 UTC (permalink / raw)
To: Marco Felsch
Cc: Rob Herring, mark.rutland, marex, devicetree, andrew.smirnov,
shawnguo, s.hauer, angus, linux-kernel, linux-imx, kernel,
manivannan.sadhasivam, j.neuschaefer,
Discussions about the Letux Kernel, festevam, linux-arm-kernel
[-- Attachment #1: Type: text/plain, Size: 3146 bytes --]
On Fri, 11 Oct 2019 17:22:14 +0200
Marco Felsch <m.felsch@pengutronix.de> wrote:
> On 19-10-11 17:05, Andreas Kemnade wrote:
> > On Fri, 11 Oct 2019 09:29:27 -0500
> > Rob Herring <robh@kernel.org> wrote:
> >
> > > On Fri, Oct 11, 2019 at 09:41:48AM +0200, Andreas Kemnade wrote:
> > > > On Fri, 11 Oct 2019 08:56:09 +0200
> > > > Marco Felsch <m.felsch@pengutronix.de> wrote:
> > > >
> > > > > Hi Andreas,
> > > > >
> > > > > On 19-10-10 21:23, Andreas Kemnade wrote:
> > > > > > The Netronix board E60K02 can be found some several Ebook-Readers,
> > > > > > at least the Kobo Clara HD and the Tolino Shine 3. The board
> > > > > > is equipped with different SoCs requiring different pinmuxes.
> > > > > >
> > > > > > For now the following peripherals are included:
> > > > > > - LED
> > > > > > - Power Key
> > > > > > - Cover (gpio via hall sensor)
> > > > > > - RC5T619 PMIC (the kernel misses support for rtc and charger
> > > > > > subdevices).
> > > > > > - Backlight via lm3630a
> > > > > > - Wifi sdio chip detection (mmc-powerseq and stuff)
> > > > > >
> > > > > > It is based on vendor kernel but heavily reworked due to many
> > > > > > changed bindings.
> > > > > >
> > > > > > Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
> > > > > > ---
> > > > > > Changes in v3:
> > > > > > - better led name
> > > > > > - correct memory size
> > > > > > - comments about missing devices
> > > > > >
> > > > > > Changes in v2:
> > > > > > - reordered, was 1/3
> > > > > > - moved pinmuxes to their actual users, not the parents
> > > > > > of them
> > > > > > - removed some already-disabled stuff
> > > > > > - minor cleanups
> > > > >
> > > > > You won't change the muxing, so a this dtsi can be self contained?
> > > > >
> > > > So you want me to put a big
> > > > #if defined(MX6SLL)
> > >
> > > Not sure what the comment meant, but no, don't do this. C defines in dts
> > > files are for symbolic names for numbers and assembling bitfields and
> > > that's it.
> >
> > yes, that is also my opinion. For now, there is only one user
> > of this .dtsi, but I have another one in preparation. That is the
> > reason for splitting things between .dts and .dtsi to avoid such ugly
> > ifdefs
>
> Then IMHO the pnictrl-* entries shouldn't appear in the dsti.
>
hmm, maybe now I understand your idea:
You do not want only to have
pinctrl_lm3630a_bl_gpio: lm3630a_bl_gpio_grp {
fsl,pins = <
MX6SLL_PAD_EPDC_PWR_CTRL3__GPIO2_IO10 0x10059 /* HWEN */
>;
};
in dts, but also do not have these in .dtsi:
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_lm3630a_bl_gpio>;
and instead have in dts:
&lm3630a {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_lm3630a_bl_gpio>;
};
just to make sure I get it right before doing the restructuring work. That way of structuring things did not come to my mind, but then the .dtsi is self-contained.
Regards,
Andreas
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 51+ messages in thread
* Re: [PATCH v3 2/3] ARM: dts: add Netronix E60K02 board common file
2019-10-11 16:19 ` Andreas Kemnade
(?)
@ 2019-10-11 16:56 ` Marco Felsch
-1 siblings, 0 replies; 51+ messages in thread
From: Marco Felsch @ 2019-10-11 16:56 UTC (permalink / raw)
To: Andreas Kemnade
Cc: Rob Herring, mark.rutland, marex, devicetree, andrew.smirnov,
shawnguo, s.hauer, angus, linux-kernel, linux-imx, kernel,
manivannan.sadhasivam, j.neuschaefer,
Discussions about the Letux Kernel, festevam, linux-arm-kernel
On 19-10-11 18:19, Andreas Kemnade wrote:
> On Fri, 11 Oct 2019 17:22:14 +0200
> Marco Felsch <m.felsch@pengutronix.de> wrote:
>
> > On 19-10-11 17:05, Andreas Kemnade wrote:
> > > On Fri, 11 Oct 2019 09:29:27 -0500
> > > Rob Herring <robh@kernel.org> wrote:
> > >
> > > > On Fri, Oct 11, 2019 at 09:41:48AM +0200, Andreas Kemnade wrote:
> > > > > On Fri, 11 Oct 2019 08:56:09 +0200
> > > > > Marco Felsch <m.felsch@pengutronix.de> wrote:
> > > > >
> > > > > > Hi Andreas,
> > > > > >
> > > > > > On 19-10-10 21:23, Andreas Kemnade wrote:
> > > > > > > The Netronix board E60K02 can be found some several Ebook-Readers,
> > > > > > > at least the Kobo Clara HD and the Tolino Shine 3. The board
> > > > > > > is equipped with different SoCs requiring different pinmuxes.
> > > > > > >
> > > > > > > For now the following peripherals are included:
> > > > > > > - LED
> > > > > > > - Power Key
> > > > > > > - Cover (gpio via hall sensor)
> > > > > > > - RC5T619 PMIC (the kernel misses support for rtc and charger
> > > > > > > subdevices).
> > > > > > > - Backlight via lm3630a
> > > > > > > - Wifi sdio chip detection (mmc-powerseq and stuff)
> > > > > > >
> > > > > > > It is based on vendor kernel but heavily reworked due to many
> > > > > > > changed bindings.
> > > > > > >
> > > > > > > Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
> > > > > > > ---
> > > > > > > Changes in v3:
> > > > > > > - better led name
> > > > > > > - correct memory size
> > > > > > > - comments about missing devices
> > > > > > >
> > > > > > > Changes in v2:
> > > > > > > - reordered, was 1/3
> > > > > > > - moved pinmuxes to their actual users, not the parents
> > > > > > > of them
> > > > > > > - removed some already-disabled stuff
> > > > > > > - minor cleanups
> > > > > >
> > > > > > You won't change the muxing, so a this dtsi can be self contained?
> > > > > >
> > > > > So you want me to put a big
> > > > > #if defined(MX6SLL)
> > > >
> > > > Not sure what the comment meant, but no, don't do this. C defines in dts
> > > > files are for symbolic names for numbers and assembling bitfields and
> > > > that's it.
> > >
> > > yes, that is also my opinion. For now, there is only one user
> > > of this .dtsi, but I have another one in preparation. That is the
> > > reason for splitting things between .dts and .dtsi to avoid such ugly
> > > ifdefs
> >
> > Then IMHO the pnictrl-* entries shouldn't appear in the dsti.
> >
> hmm, maybe now I understand your idea:
> You do not want only to have
>
> pinctrl_lm3630a_bl_gpio: lm3630a_bl_gpio_grp {
> fsl,pins = <
> MX6SLL_PAD_EPDC_PWR_CTRL3__GPIO2_IO10 0x10059 /* HWEN */
> >;
> };
> in dts, but also do not have these in .dtsi:
>
> pinctrl-names = "default";
> pinctrl-0 = <&pinctrl_lm3630a_bl_gpio>;
>
> and instead have in dts:
> &lm3630a {
> pinctrl-names = "default";
> pinctrl-0 = <&pinctrl_lm3630a_bl_gpio>;
>
> };
>
>
> just to make sure I get it right before doing the restructuring work. That way of structuring things did not come to my mind, but then the .dtsi is self-contained.
That is what I mean but wait for Shawn's comments. It's just my opinion
that .dtsi and .dts files should be self-contained.
Regards,
Marco
> Regards,
> Andreas
--
Pengutronix e.K. | |
Industrial Linux Solutions | http://www.pengutronix.de/ |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
^ permalink raw reply [flat|nested] 51+ messages in thread
* Re: [PATCH v3 2/3] ARM: dts: add Netronix E60K02 board common file
@ 2019-10-11 16:56 ` Marco Felsch
0 siblings, 0 replies; 51+ messages in thread
From: Marco Felsch @ 2019-10-11 16:56 UTC (permalink / raw)
To: Andreas Kemnade
Cc: mark.rutland, Rob Herring, marex, devicetree, andrew.smirnov,
festevam, s.hauer, angus, linux-kernel, j.neuschaefer, linux-imx,
kernel, manivannan.sadhasivam,
Discussions about the Letux Kernel, shawnguo, linux-arm-kernel
On 19-10-11 18:19, Andreas Kemnade wrote:
> On Fri, 11 Oct 2019 17:22:14 +0200
> Marco Felsch <m.felsch@pengutronix.de> wrote:
>
> > On 19-10-11 17:05, Andreas Kemnade wrote:
> > > On Fri, 11 Oct 2019 09:29:27 -0500
> > > Rob Herring <robh@kernel.org> wrote:
> > >
> > > > On Fri, Oct 11, 2019 at 09:41:48AM +0200, Andreas Kemnade wrote:
> > > > > On Fri, 11 Oct 2019 08:56:09 +0200
> > > > > Marco Felsch <m.felsch@pengutronix.de> wrote:
> > > > >
> > > > > > Hi Andreas,
> > > > > >
> > > > > > On 19-10-10 21:23, Andreas Kemnade wrote:
> > > > > > > The Netronix board E60K02 can be found some several Ebook-Readers,
> > > > > > > at least the Kobo Clara HD and the Tolino Shine 3. The board
> > > > > > > is equipped with different SoCs requiring different pinmuxes.
> > > > > > >
> > > > > > > For now the following peripherals are included:
> > > > > > > - LED
> > > > > > > - Power Key
> > > > > > > - Cover (gpio via hall sensor)
> > > > > > > - RC5T619 PMIC (the kernel misses support for rtc and charger
> > > > > > > subdevices).
> > > > > > > - Backlight via lm3630a
> > > > > > > - Wifi sdio chip detection (mmc-powerseq and stuff)
> > > > > > >
> > > > > > > It is based on vendor kernel but heavily reworked due to many
> > > > > > > changed bindings.
> > > > > > >
> > > > > > > Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
> > > > > > > ---
> > > > > > > Changes in v3:
> > > > > > > - better led name
> > > > > > > - correct memory size
> > > > > > > - comments about missing devices
> > > > > > >
> > > > > > > Changes in v2:
> > > > > > > - reordered, was 1/3
> > > > > > > - moved pinmuxes to their actual users, not the parents
> > > > > > > of them
> > > > > > > - removed some already-disabled stuff
> > > > > > > - minor cleanups
> > > > > >
> > > > > > You won't change the muxing, so a this dtsi can be self contained?
> > > > > >
> > > > > So you want me to put a big
> > > > > #if defined(MX6SLL)
> > > >
> > > > Not sure what the comment meant, but no, don't do this. C defines in dts
> > > > files are for symbolic names for numbers and assembling bitfields and
> > > > that's it.
> > >
> > > yes, that is also my opinion. For now, there is only one user
> > > of this .dtsi, but I have another one in preparation. That is the
> > > reason for splitting things between .dts and .dtsi to avoid such ugly
> > > ifdefs
> >
> > Then IMHO the pnictrl-* entries shouldn't appear in the dsti.
> >
> hmm, maybe now I understand your idea:
> You do not want only to have
>
> pinctrl_lm3630a_bl_gpio: lm3630a_bl_gpio_grp {
> fsl,pins = <
> MX6SLL_PAD_EPDC_PWR_CTRL3__GPIO2_IO10 0x10059 /* HWEN */
> >;
> };
> in dts, but also do not have these in .dtsi:
>
> pinctrl-names = "default";
> pinctrl-0 = <&pinctrl_lm3630a_bl_gpio>;
>
> and instead have in dts:
> &lm3630a {
> pinctrl-names = "default";
> pinctrl-0 = <&pinctrl_lm3630a_bl_gpio>;
>
> };
>
>
> just to make sure I get it right before doing the restructuring work. That way of structuring things did not come to my mind, but then the .dtsi is self-contained.
That is what I mean but wait for Shawn's comments. It's just my opinion
that .dtsi and .dts files should be self-contained.
Regards,
Marco
> Regards,
> Andreas
--
Pengutronix e.K. | |
Industrial Linux Solutions | http://www.pengutronix.de/ |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 51+ messages in thread
* Re: [PATCH v3 2/3] ARM: dts: add Netronix E60K02 board common file
@ 2019-10-11 16:56 ` Marco Felsch
0 siblings, 0 replies; 51+ messages in thread
From: Marco Felsch @ 2019-10-11 16:56 UTC (permalink / raw)
To: Andreas Kemnade
Cc: Rob Herring, mark.rutland, marex, devicetree, andrew.smirnov,
shawnguo, s.hauer, angus, linux-kernel, linux-imx, kernel,
manivannan.sadhasivam, j.neuschaefer,
Discussions about the Letux Kernel, festevam, linux-arm-kernel
On 19-10-11 18:19, Andreas Kemnade wrote:
> On Fri, 11 Oct 2019 17:22:14 +0200
> Marco Felsch <m.felsch@pengutronix.de> wrote:
>
> > On 19-10-11 17:05, Andreas Kemnade wrote:
> > > On Fri, 11 Oct 2019 09:29:27 -0500
> > > Rob Herring <robh@kernel.org> wrote:
> > >
> > > > On Fri, Oct 11, 2019 at 09:41:48AM +0200, Andreas Kemnade wrote:
> > > > > On Fri, 11 Oct 2019 08:56:09 +0200
> > > > > Marco Felsch <m.felsch@pengutronix.de> wrote:
> > > > >
> > > > > > Hi Andreas,
> > > > > >
> > > > > > On 19-10-10 21:23, Andreas Kemnade wrote:
> > > > > > > The Netronix board E60K02 can be found some several Ebook-Readers,
> > > > > > > at least the Kobo Clara HD and the Tolino Shine 3. The board
> > > > > > > is equipped with different SoCs requiring different pinmuxes.
> > > > > > >
> > > > > > > For now the following peripherals are included:
> > > > > > > - LED
> > > > > > > - Power Key
> > > > > > > - Cover (gpio via hall sensor)
> > > > > > > - RC5T619 PMIC (the kernel misses support for rtc and charger
> > > > > > > subdevices).
> > > > > > > - Backlight via lm3630a
> > > > > > > - Wifi sdio chip detection (mmc-powerseq and stuff)
> > > > > > >
> > > > > > > It is based on vendor kernel but heavily reworked due to many
> > > > > > > changed bindings.
> > > > > > >
> > > > > > > Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
> > > > > > > ---
> > > > > > > Changes in v3:
> > > > > > > - better led name
> > > > > > > - correct memory size
> > > > > > > - comments about missing devices
> > > > > > >
> > > > > > > Changes in v2:
> > > > > > > - reordered, was 1/3
> > > > > > > - moved pinmuxes to their actual users, not the parents
> > > > > > > of them
> > > > > > > - removed some already-disabled stuff
> > > > > > > - minor cleanups
> > > > > >
> > > > > > You won't change the muxing, so a this dtsi can be self contained?
> > > > > >
> > > > > So you want me to put a big
> > > > > #if defined(MX6SLL)
> > > >
> > > > Not sure what the comment meant, but no, don't do this. C defines in dts
> > > > files are for symbolic names for numbers and assembling bitfields and
> > > > that's it.
> > >
> > > yes, that is also my opinion. For now, there is only one user
> > > of this .dtsi, but I have another one in preparation. That is the
> > > reason for splitting things between .dts and .dtsi to avoid such ugly
> > > ifdefs
> >
> > Then IMHO the pnictrl-* entries shouldn't appear in the dsti.
> >
> hmm, maybe now I understand your idea:
> You do not want only to have
>
> pinctrl_lm3630a_bl_gpio: lm3630a_bl_gpio_grp {
> fsl,pins = <
> MX6SLL_PAD_EPDC_PWR_CTRL3__GPIO2_IO10 0x10059 /* HWEN */
> >;
> };
> in dts, but also do not have these in .dtsi:
>
> pinctrl-names = "default";
> pinctrl-0 = <&pinctrl_lm3630a_bl_gpio>;
>
> and instead have in dts:
> &lm3630a {
> pinctrl-names = "default";
> pinctrl-0 = <&pinctrl_lm3630a_bl_gpio>;
>
> };
>
>
> just to make sure I get it right before doing the restructuring work. That way of structuring things did not come to my mind, but then the .dtsi is self-contained.
That is what I mean but wait for Shawn's comments. It's just my opinion
that .dtsi and .dts files should be self-contained.
Regards,
Marco
> Regards,
> Andreas
--
Pengutronix e.K. | |
Industrial Linux Solutions | http://www.pengutronix.de/ |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
^ permalink raw reply [flat|nested] 51+ messages in thread
* Re: [PATCH v3 2/3] ARM: dts: add Netronix E60K02 board common file
2019-10-11 16:56 ` Marco Felsch
(?)
@ 2019-10-13 15:56 ` Andreas Kemnade
-1 siblings, 0 replies; 51+ messages in thread
From: Andreas Kemnade @ 2019-10-13 15:56 UTC (permalink / raw)
To: Marco Felsch, festevam
Cc: Rob Herring, mark.rutland, marex, devicetree, andrew.smirnov,
shawnguo, s.hauer, angus, linux-kernel, linux-imx, kernel,
manivannan.sadhasivam, j.neuschaefer,
Discussions about the Letux Kernel, linux-arm-kernel
[-- Attachment #1: Type: text/plain, Size: 4019 bytes --]
On Fri, 11 Oct 2019 18:56:33 +0200
Marco Felsch <m.felsch@pengutronix.de> wrote:
> On 19-10-11 18:19, Andreas Kemnade wrote:
> > On Fri, 11 Oct 2019 17:22:14 +0200
> > Marco Felsch <m.felsch@pengutronix.de> wrote:
> >
> > > On 19-10-11 17:05, Andreas Kemnade wrote:
> > > > On Fri, 11 Oct 2019 09:29:27 -0500
> > > > Rob Herring <robh@kernel.org> wrote:
> > > >
> > > > > On Fri, Oct 11, 2019 at 09:41:48AM +0200, Andreas Kemnade wrote:
> > > > > > On Fri, 11 Oct 2019 08:56:09 +0200
> > > > > > Marco Felsch <m.felsch@pengutronix.de> wrote:
> > > > > >
> > > > > > > Hi Andreas,
> > > > > > >
> > > > > > > On 19-10-10 21:23, Andreas Kemnade wrote:
> > > > > > > > The Netronix board E60K02 can be found some several Ebook-Readers,
> > > > > > > > at least the Kobo Clara HD and the Tolino Shine 3. The board
> > > > > > > > is equipped with different SoCs requiring different pinmuxes.
> > > > > > > >
> > > > > > > > For now the following peripherals are included:
> > > > > > > > - LED
> > > > > > > > - Power Key
> > > > > > > > - Cover (gpio via hall sensor)
> > > > > > > > - RC5T619 PMIC (the kernel misses support for rtc and charger
> > > > > > > > subdevices).
> > > > > > > > - Backlight via lm3630a
> > > > > > > > - Wifi sdio chip detection (mmc-powerseq and stuff)
> > > > > > > >
> > > > > > > > It is based on vendor kernel but heavily reworked due to many
> > > > > > > > changed bindings.
> > > > > > > >
> > > > > > > > Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
> > > > > > > > ---
> > > > > > > > Changes in v3:
> > > > > > > > - better led name
> > > > > > > > - correct memory size
> > > > > > > > - comments about missing devices
> > > > > > > >
> > > > > > > > Changes in v2:
> > > > > > > > - reordered, was 1/3
> > > > > > > > - moved pinmuxes to their actual users, not the parents
> > > > > > > > of them
> > > > > > > > - removed some already-disabled stuff
> > > > > > > > - minor cleanups
> > > > > > >
> > > > > > > You won't change the muxing, so a this dtsi can be self contained?
> > > > > > >
> > > > > > So you want me to put a big
> > > > > > #if defined(MX6SLL)
> > > > >
> > > > > Not sure what the comment meant, but no, don't do this. C defines in dts
> > > > > files are for symbolic names for numbers and assembling bitfields and
> > > > > that's it.
> > > >
> > > > yes, that is also my opinion. For now, there is only one user
> > > > of this .dtsi, but I have another one in preparation. That is the
> > > > reason for splitting things between .dts and .dtsi to avoid such ugly
> > > > ifdefs
> > >
> > > Then IMHO the pnictrl-* entries shouldn't appear in the dsti.
> > >
> > hmm, maybe now I understand your idea:
> > You do not want only to have
> >
> > pinctrl_lm3630a_bl_gpio: lm3630a_bl_gpio_grp {
> > fsl,pins = <
> > MX6SLL_PAD_EPDC_PWR_CTRL3__GPIO2_IO10 0x10059 /* HWEN */
> > >;
> > };
> > in dts, but also do not have these in .dtsi:
> >
> > pinctrl-names = "default";
> > pinctrl-0 = <&pinctrl_lm3630a_bl_gpio>;
> >
> > and instead have in dts:
> > &lm3630a {
> > pinctrl-names = "default";
> > pinctrl-0 = <&pinctrl_lm3630a_bl_gpio>;
> >
> > };
> >
> >
> > just to make sure I get it right before doing the restructuring work. That way of structuring things did not come to my mind, but then the .dtsi is self-contained.
>
> That is what I mean but wait for Shawn's comments. It's just my opinion
> that .dtsi and .dts files should be self-contained.
for files like the imx6sll.dtsi, I would clearly agree, here it might
hide errors like missing pinmuxes in the dts, so it is not so clear.
But if there is is consensus about .dtsi being self-contained I will not
refuse to restructurize my work.
Regards,
Andreas
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 51+ messages in thread
* Re: [PATCH v3 2/3] ARM: dts: add Netronix E60K02 board common file
@ 2019-10-13 15:56 ` Andreas Kemnade
0 siblings, 0 replies; 51+ messages in thread
From: Andreas Kemnade @ 2019-10-13 15:56 UTC (permalink / raw)
To: Marco Felsch, festevam
Cc: mark.rutland, Rob Herring, marex, devicetree, andrew.smirnov,
s.hauer, angus, linux-kernel, j.neuschaefer, linux-imx, kernel,
manivannan.sadhasivam, Discussions about the Letux Kernel,
shawnguo, linux-arm-kernel
[-- Attachment #1.1: Type: text/plain, Size: 4019 bytes --]
On Fri, 11 Oct 2019 18:56:33 +0200
Marco Felsch <m.felsch@pengutronix.de> wrote:
> On 19-10-11 18:19, Andreas Kemnade wrote:
> > On Fri, 11 Oct 2019 17:22:14 +0200
> > Marco Felsch <m.felsch@pengutronix.de> wrote:
> >
> > > On 19-10-11 17:05, Andreas Kemnade wrote:
> > > > On Fri, 11 Oct 2019 09:29:27 -0500
> > > > Rob Herring <robh@kernel.org> wrote:
> > > >
> > > > > On Fri, Oct 11, 2019 at 09:41:48AM +0200, Andreas Kemnade wrote:
> > > > > > On Fri, 11 Oct 2019 08:56:09 +0200
> > > > > > Marco Felsch <m.felsch@pengutronix.de> wrote:
> > > > > >
> > > > > > > Hi Andreas,
> > > > > > >
> > > > > > > On 19-10-10 21:23, Andreas Kemnade wrote:
> > > > > > > > The Netronix board E60K02 can be found some several Ebook-Readers,
> > > > > > > > at least the Kobo Clara HD and the Tolino Shine 3. The board
> > > > > > > > is equipped with different SoCs requiring different pinmuxes.
> > > > > > > >
> > > > > > > > For now the following peripherals are included:
> > > > > > > > - LED
> > > > > > > > - Power Key
> > > > > > > > - Cover (gpio via hall sensor)
> > > > > > > > - RC5T619 PMIC (the kernel misses support for rtc and charger
> > > > > > > > subdevices).
> > > > > > > > - Backlight via lm3630a
> > > > > > > > - Wifi sdio chip detection (mmc-powerseq and stuff)
> > > > > > > >
> > > > > > > > It is based on vendor kernel but heavily reworked due to many
> > > > > > > > changed bindings.
> > > > > > > >
> > > > > > > > Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
> > > > > > > > ---
> > > > > > > > Changes in v3:
> > > > > > > > - better led name
> > > > > > > > - correct memory size
> > > > > > > > - comments about missing devices
> > > > > > > >
> > > > > > > > Changes in v2:
> > > > > > > > - reordered, was 1/3
> > > > > > > > - moved pinmuxes to their actual users, not the parents
> > > > > > > > of them
> > > > > > > > - removed some already-disabled stuff
> > > > > > > > - minor cleanups
> > > > > > >
> > > > > > > You won't change the muxing, so a this dtsi can be self contained?
> > > > > > >
> > > > > > So you want me to put a big
> > > > > > #if defined(MX6SLL)
> > > > >
> > > > > Not sure what the comment meant, but no, don't do this. C defines in dts
> > > > > files are for symbolic names for numbers and assembling bitfields and
> > > > > that's it.
> > > >
> > > > yes, that is also my opinion. For now, there is only one user
> > > > of this .dtsi, but I have another one in preparation. That is the
> > > > reason for splitting things between .dts and .dtsi to avoid such ugly
> > > > ifdefs
> > >
> > > Then IMHO the pnictrl-* entries shouldn't appear in the dsti.
> > >
> > hmm, maybe now I understand your idea:
> > You do not want only to have
> >
> > pinctrl_lm3630a_bl_gpio: lm3630a_bl_gpio_grp {
> > fsl,pins = <
> > MX6SLL_PAD_EPDC_PWR_CTRL3__GPIO2_IO10 0x10059 /* HWEN */
> > >;
> > };
> > in dts, but also do not have these in .dtsi:
> >
> > pinctrl-names = "default";
> > pinctrl-0 = <&pinctrl_lm3630a_bl_gpio>;
> >
> > and instead have in dts:
> > &lm3630a {
> > pinctrl-names = "default";
> > pinctrl-0 = <&pinctrl_lm3630a_bl_gpio>;
> >
> > };
> >
> >
> > just to make sure I get it right before doing the restructuring work. That way of structuring things did not come to my mind, but then the .dtsi is self-contained.
>
> That is what I mean but wait for Shawn's comments. It's just my opinion
> that .dtsi and .dts files should be self-contained.
for files like the imx6sll.dtsi, I would clearly agree, here it might
hide errors like missing pinmuxes in the dts, so it is not so clear.
But if there is is consensus about .dtsi being self-contained I will not
refuse to restructurize my work.
Regards,
Andreas
[-- Attachment #1.2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
[-- Attachment #2: Type: text/plain, Size: 176 bytes --]
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 51+ messages in thread
* Re: [PATCH v3 2/3] ARM: dts: add Netronix E60K02 board common file
@ 2019-10-13 15:56 ` Andreas Kemnade
0 siblings, 0 replies; 51+ messages in thread
From: Andreas Kemnade @ 2019-10-13 15:56 UTC (permalink / raw)
To: Marco Felsch, festevam
Cc: Rob Herring, mark.rutland, marex, devicetree, andrew.smirnov,
shawnguo, s.hauer, angus, linux-kernel, linux-imx, kernel,
manivannan.sadhasivam, j.neuschaefer,
Discussions about the Letux Kernel, linux-arm-kernel
[-- Attachment #1: Type: text/plain, Size: 4019 bytes --]
On Fri, 11 Oct 2019 18:56:33 +0200
Marco Felsch <m.felsch@pengutronix.de> wrote:
> On 19-10-11 18:19, Andreas Kemnade wrote:
> > On Fri, 11 Oct 2019 17:22:14 +0200
> > Marco Felsch <m.felsch@pengutronix.de> wrote:
> >
> > > On 19-10-11 17:05, Andreas Kemnade wrote:
> > > > On Fri, 11 Oct 2019 09:29:27 -0500
> > > > Rob Herring <robh@kernel.org> wrote:
> > > >
> > > > > On Fri, Oct 11, 2019 at 09:41:48AM +0200, Andreas Kemnade wrote:
> > > > > > On Fri, 11 Oct 2019 08:56:09 +0200
> > > > > > Marco Felsch <m.felsch@pengutronix.de> wrote:
> > > > > >
> > > > > > > Hi Andreas,
> > > > > > >
> > > > > > > On 19-10-10 21:23, Andreas Kemnade wrote:
> > > > > > > > The Netronix board E60K02 can be found some several Ebook-Readers,
> > > > > > > > at least the Kobo Clara HD and the Tolino Shine 3. The board
> > > > > > > > is equipped with different SoCs requiring different pinmuxes.
> > > > > > > >
> > > > > > > > For now the following peripherals are included:
> > > > > > > > - LED
> > > > > > > > - Power Key
> > > > > > > > - Cover (gpio via hall sensor)
> > > > > > > > - RC5T619 PMIC (the kernel misses support for rtc and charger
> > > > > > > > subdevices).
> > > > > > > > - Backlight via lm3630a
> > > > > > > > - Wifi sdio chip detection (mmc-powerseq and stuff)
> > > > > > > >
> > > > > > > > It is based on vendor kernel but heavily reworked due to many
> > > > > > > > changed bindings.
> > > > > > > >
> > > > > > > > Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
> > > > > > > > ---
> > > > > > > > Changes in v3:
> > > > > > > > - better led name
> > > > > > > > - correct memory size
> > > > > > > > - comments about missing devices
> > > > > > > >
> > > > > > > > Changes in v2:
> > > > > > > > - reordered, was 1/3
> > > > > > > > - moved pinmuxes to their actual users, not the parents
> > > > > > > > of them
> > > > > > > > - removed some already-disabled stuff
> > > > > > > > - minor cleanups
> > > > > > >
> > > > > > > You won't change the muxing, so a this dtsi can be self contained?
> > > > > > >
> > > > > > So you want me to put a big
> > > > > > #if defined(MX6SLL)
> > > > >
> > > > > Not sure what the comment meant, but no, don't do this. C defines in dts
> > > > > files are for symbolic names for numbers and assembling bitfields and
> > > > > that's it.
> > > >
> > > > yes, that is also my opinion. For now, there is only one user
> > > > of this .dtsi, but I have another one in preparation. That is the
> > > > reason for splitting things between .dts and .dtsi to avoid such ugly
> > > > ifdefs
> > >
> > > Then IMHO the pnictrl-* entries shouldn't appear in the dsti.
> > >
> > hmm, maybe now I understand your idea:
> > You do not want only to have
> >
> > pinctrl_lm3630a_bl_gpio: lm3630a_bl_gpio_grp {
> > fsl,pins = <
> > MX6SLL_PAD_EPDC_PWR_CTRL3__GPIO2_IO10 0x10059 /* HWEN */
> > >;
> > };
> > in dts, but also do not have these in .dtsi:
> >
> > pinctrl-names = "default";
> > pinctrl-0 = <&pinctrl_lm3630a_bl_gpio>;
> >
> > and instead have in dts:
> > &lm3630a {
> > pinctrl-names = "default";
> > pinctrl-0 = <&pinctrl_lm3630a_bl_gpio>;
> >
> > };
> >
> >
> > just to make sure I get it right before doing the restructuring work. That way of structuring things did not come to my mind, but then the .dtsi is self-contained.
>
> That is what I mean but wait for Shawn's comments. It's just my opinion
> that .dtsi and .dts files should be self-contained.
for files like the imx6sll.dtsi, I would clearly agree, here it might
hide errors like missing pinmuxes in the dts, so it is not so clear.
But if there is is consensus about .dtsi being self-contained I will not
refuse to restructurize my work.
Regards,
Andreas
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 51+ messages in thread
* Re: [PATCH v3 2/3] ARM: dts: add Netronix E60K02 board common file
2019-10-13 15:56 ` Andreas Kemnade
@ 2019-10-25 9:14 ` Shawn Guo
-1 siblings, 0 replies; 51+ messages in thread
From: Shawn Guo @ 2019-10-25 9:14 UTC (permalink / raw)
To: Andreas Kemnade
Cc: Marco Felsch, festevam, Rob Herring, mark.rutland, marex,
devicetree, andrew.smirnov, s.hauer, angus, linux-kernel,
linux-imx, kernel, manivannan.sadhasivam, j.neuschaefer,
Discussions about the Letux Kernel, linux-arm-kernel
On Sun, Oct 13, 2019 at 05:56:44PM +0200, Andreas Kemnade wrote:
> On Fri, 11 Oct 2019 18:56:33 +0200
> Marco Felsch <m.felsch@pengutronix.de> wrote:
>
> > On 19-10-11 18:19, Andreas Kemnade wrote:
> > > On Fri, 11 Oct 2019 17:22:14 +0200
> > > Marco Felsch <m.felsch@pengutronix.de> wrote:
> > >
> > > > On 19-10-11 17:05, Andreas Kemnade wrote:
> > > > > On Fri, 11 Oct 2019 09:29:27 -0500
> > > > > Rob Herring <robh@kernel.org> wrote:
> > > > >
> > > > > > On Fri, Oct 11, 2019 at 09:41:48AM +0200, Andreas Kemnade wrote:
> > > > > > > On Fri, 11 Oct 2019 08:56:09 +0200
> > > > > > > Marco Felsch <m.felsch@pengutronix.de> wrote:
> > > > > > >
> > > > > > > > Hi Andreas,
> > > > > > > >
> > > > > > > > On 19-10-10 21:23, Andreas Kemnade wrote:
> > > > > > > > > The Netronix board E60K02 can be found some several Ebook-Readers,
> > > > > > > > > at least the Kobo Clara HD and the Tolino Shine 3. The board
> > > > > > > > > is equipped with different SoCs requiring different pinmuxes.
> > > > > > > > >
> > > > > > > > > For now the following peripherals are included:
> > > > > > > > > - LED
> > > > > > > > > - Power Key
> > > > > > > > > - Cover (gpio via hall sensor)
> > > > > > > > > - RC5T619 PMIC (the kernel misses support for rtc and charger
> > > > > > > > > subdevices).
> > > > > > > > > - Backlight via lm3630a
> > > > > > > > > - Wifi sdio chip detection (mmc-powerseq and stuff)
> > > > > > > > >
> > > > > > > > > It is based on vendor kernel but heavily reworked due to many
> > > > > > > > > changed bindings.
> > > > > > > > >
> > > > > > > > > Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
> > > > > > > > > ---
> > > > > > > > > Changes in v3:
> > > > > > > > > - better led name
> > > > > > > > > - correct memory size
> > > > > > > > > - comments about missing devices
> > > > > > > > >
> > > > > > > > > Changes in v2:
> > > > > > > > > - reordered, was 1/3
> > > > > > > > > - moved pinmuxes to their actual users, not the parents
> > > > > > > > > of them
> > > > > > > > > - removed some already-disabled stuff
> > > > > > > > > - minor cleanups
> > > > > > > >
> > > > > > > > You won't change the muxing, so a this dtsi can be self contained?
> > > > > > > >
> > > > > > > So you want me to put a big
> > > > > > > #if defined(MX6SLL)
> > > > > >
> > > > > > Not sure what the comment meant, but no, don't do this. C defines in dts
> > > > > > files are for symbolic names for numbers and assembling bitfields and
> > > > > > that's it.
> > > > >
> > > > > yes, that is also my opinion. For now, there is only one user
> > > > > of this .dtsi, but I have another one in preparation. That is the
> > > > > reason for splitting things between .dts and .dtsi to avoid such ugly
> > > > > ifdefs
> > > >
> > > > Then IMHO the pnictrl-* entries shouldn't appear in the dsti.
> > > >
> > > hmm, maybe now I understand your idea:
> > > You do not want only to have
> > >
> > > pinctrl_lm3630a_bl_gpio: lm3630a_bl_gpio_grp {
> > > fsl,pins = <
> > > MX6SLL_PAD_EPDC_PWR_CTRL3__GPIO2_IO10 0x10059 /* HWEN */
> > > >;
> > > };
> > > in dts, but also do not have these in .dtsi:
> > >
> > > pinctrl-names = "default";
> > > pinctrl-0 = <&pinctrl_lm3630a_bl_gpio>;
> > >
> > > and instead have in dts:
> > > &lm3630a {
> > > pinctrl-names = "default";
> > > pinctrl-0 = <&pinctrl_lm3630a_bl_gpio>;
> > >
> > > };
> > >
> > >
> > > just to make sure I get it right before doing the restructuring work. That way of structuring things did not come to my mind, but then the .dtsi is self-contained.
> >
> > That is what I mean but wait for Shawn's comments. It's just my opinion
> > that .dtsi and .dts files should be self-contained.
>
> for files like the imx6sll.dtsi, I would clearly agree, here it might
> hide errors like missing pinmuxes in the dts, so it is not so clear.
> But if there is is consensus about .dtsi being self-contained I will not
> refuse to restructurize my work.
Yes, I would appreciate the effort of keep .dtsi being self-contained.
Shawn
^ permalink raw reply [flat|nested] 51+ messages in thread
* Re: [PATCH v3 2/3] ARM: dts: add Netronix E60K02 board common file
@ 2019-10-25 9:14 ` Shawn Guo
0 siblings, 0 replies; 51+ messages in thread
From: Shawn Guo @ 2019-10-25 9:14 UTC (permalink / raw)
To: Andreas Kemnade
Cc: mark.rutland, Rob Herring, marex, devicetree, andrew.smirnov,
s.hauer, angus, Marco Felsch, linux-kernel, linux-imx, kernel,
manivannan.sadhasivam, j.neuschaefer,
Discussions about the Letux Kernel, festevam, linux-arm-kernel
On Sun, Oct 13, 2019 at 05:56:44PM +0200, Andreas Kemnade wrote:
> On Fri, 11 Oct 2019 18:56:33 +0200
> Marco Felsch <m.felsch@pengutronix.de> wrote:
>
> > On 19-10-11 18:19, Andreas Kemnade wrote:
> > > On Fri, 11 Oct 2019 17:22:14 +0200
> > > Marco Felsch <m.felsch@pengutronix.de> wrote:
> > >
> > > > On 19-10-11 17:05, Andreas Kemnade wrote:
> > > > > On Fri, 11 Oct 2019 09:29:27 -0500
> > > > > Rob Herring <robh@kernel.org> wrote:
> > > > >
> > > > > > On Fri, Oct 11, 2019 at 09:41:48AM +0200, Andreas Kemnade wrote:
> > > > > > > On Fri, 11 Oct 2019 08:56:09 +0200
> > > > > > > Marco Felsch <m.felsch@pengutronix.de> wrote:
> > > > > > >
> > > > > > > > Hi Andreas,
> > > > > > > >
> > > > > > > > On 19-10-10 21:23, Andreas Kemnade wrote:
> > > > > > > > > The Netronix board E60K02 can be found some several Ebook-Readers,
> > > > > > > > > at least the Kobo Clara HD and the Tolino Shine 3. The board
> > > > > > > > > is equipped with different SoCs requiring different pinmuxes.
> > > > > > > > >
> > > > > > > > > For now the following peripherals are included:
> > > > > > > > > - LED
> > > > > > > > > - Power Key
> > > > > > > > > - Cover (gpio via hall sensor)
> > > > > > > > > - RC5T619 PMIC (the kernel misses support for rtc and charger
> > > > > > > > > subdevices).
> > > > > > > > > - Backlight via lm3630a
> > > > > > > > > - Wifi sdio chip detection (mmc-powerseq and stuff)
> > > > > > > > >
> > > > > > > > > It is based on vendor kernel but heavily reworked due to many
> > > > > > > > > changed bindings.
> > > > > > > > >
> > > > > > > > > Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
> > > > > > > > > ---
> > > > > > > > > Changes in v3:
> > > > > > > > > - better led name
> > > > > > > > > - correct memory size
> > > > > > > > > - comments about missing devices
> > > > > > > > >
> > > > > > > > > Changes in v2:
> > > > > > > > > - reordered, was 1/3
> > > > > > > > > - moved pinmuxes to their actual users, not the parents
> > > > > > > > > of them
> > > > > > > > > - removed some already-disabled stuff
> > > > > > > > > - minor cleanups
> > > > > > > >
> > > > > > > > You won't change the muxing, so a this dtsi can be self contained?
> > > > > > > >
> > > > > > > So you want me to put a big
> > > > > > > #if defined(MX6SLL)
> > > > > >
> > > > > > Not sure what the comment meant, but no, don't do this. C defines in dts
> > > > > > files are for symbolic names for numbers and assembling bitfields and
> > > > > > that's it.
> > > > >
> > > > > yes, that is also my opinion. For now, there is only one user
> > > > > of this .dtsi, but I have another one in preparation. That is the
> > > > > reason for splitting things between .dts and .dtsi to avoid such ugly
> > > > > ifdefs
> > > >
> > > > Then IMHO the pnictrl-* entries shouldn't appear in the dsti.
> > > >
> > > hmm, maybe now I understand your idea:
> > > You do not want only to have
> > >
> > > pinctrl_lm3630a_bl_gpio: lm3630a_bl_gpio_grp {
> > > fsl,pins = <
> > > MX6SLL_PAD_EPDC_PWR_CTRL3__GPIO2_IO10 0x10059 /* HWEN */
> > > >;
> > > };
> > > in dts, but also do not have these in .dtsi:
> > >
> > > pinctrl-names = "default";
> > > pinctrl-0 = <&pinctrl_lm3630a_bl_gpio>;
> > >
> > > and instead have in dts:
> > > &lm3630a {
> > > pinctrl-names = "default";
> > > pinctrl-0 = <&pinctrl_lm3630a_bl_gpio>;
> > >
> > > };
> > >
> > >
> > > just to make sure I get it right before doing the restructuring work. That way of structuring things did not come to my mind, but then the .dtsi is self-contained.
> >
> > That is what I mean but wait for Shawn's comments. It's just my opinion
> > that .dtsi and .dts files should be self-contained.
>
> for files like the imx6sll.dtsi, I would clearly agree, here it might
> hide errors like missing pinmuxes in the dts, so it is not so clear.
> But if there is is consensus about .dtsi being self-contained I will not
> refuse to restructurize my work.
Yes, I would appreciate the effort of keep .dtsi being self-contained.
Shawn
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 51+ messages in thread
* Re: [PATCH v3 2/3] ARM: dts: add Netronix E60K02 board common file
2019-10-25 9:14 ` Shawn Guo
@ 2019-10-25 10:09 ` Andreas Kemnade
-1 siblings, 0 replies; 51+ messages in thread
From: Andreas Kemnade @ 2019-10-25 10:09 UTC (permalink / raw)
To: Shawn Guo
Cc: Marco Felsch, festevam, Rob Herring, mark.rutland, marex,
devicetree, andrew.smirnov, s.hauer, angus, linux-kernel,
linux-imx, kernel, manivannan.sadhasivam, j.neuschaefer,
Discussions about the Letux Kernel, linux-arm-kernel
Hi Shawn,
On Fri, 25 Oct 2019 17:14:04 +0800
Shawn Guo <shawnguo@kernel.org> wrote:
> On Sun, Oct 13, 2019 at 05:56:44PM +0200, Andreas Kemnade wrote:
> > On Fri, 11 Oct 2019 18:56:33 +0200
> > Marco Felsch <m.felsch@pengutronix.de> wrote:
> >
> > > On 19-10-11 18:19, Andreas Kemnade wrote:
> > > > On Fri, 11 Oct 2019 17:22:14 +0200
> > > > Marco Felsch <m.felsch@pengutronix.de> wrote:
> > > >
> > > > > On 19-10-11 17:05, Andreas Kemnade wrote:
> > > > > > On Fri, 11 Oct 2019 09:29:27 -0500
> > > > > > Rob Herring <robh@kernel.org> wrote:
> > > > > >
> > > > > > > On Fri, Oct 11, 2019 at 09:41:48AM +0200, Andreas Kemnade wrote:
> > > > > > > > On Fri, 11 Oct 2019 08:56:09 +0200
> > > > > > > > Marco Felsch <m.felsch@pengutronix.de> wrote:
> > > > > > > >
> > > > > > > > > Hi Andreas,
> > > > > > > > >
> > > > > > > > > On 19-10-10 21:23, Andreas Kemnade wrote:
> > > > > > > > > > The Netronix board E60K02 can be found some several Ebook-Readers,
> > > > > > > > > > at least the Kobo Clara HD and the Tolino Shine 3. The board
> > > > > > > > > > is equipped with different SoCs requiring different pinmuxes.
> > > > > > > > > >
> > > > > > > > > > For now the following peripherals are included:
> > > > > > > > > > - LED
> > > > > > > > > > - Power Key
> > > > > > > > > > - Cover (gpio via hall sensor)
> > > > > > > > > > - RC5T619 PMIC (the kernel misses support for rtc and charger
> > > > > > > > > > subdevices).
> > > > > > > > > > - Backlight via lm3630a
> > > > > > > > > > - Wifi sdio chip detection (mmc-powerseq and stuff)
> > > > > > > > > >
> > > > > > > > > > It is based on vendor kernel but heavily reworked due to many
> > > > > > > > > > changed bindings.
> > > > > > > > > >
> > > > > > > > > > Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
> > > > > > > > > > ---
> > > > > > > > > > Changes in v3:
> > > > > > > > > > - better led name
> > > > > > > > > > - correct memory size
> > > > > > > > > > - comments about missing devices
> > > > > > > > > >
> > > > > > > > > > Changes in v2:
> > > > > > > > > > - reordered, was 1/3
> > > > > > > > > > - moved pinmuxes to their actual users, not the parents
> > > > > > > > > > of them
> > > > > > > > > > - removed some already-disabled stuff
> > > > > > > > > > - minor cleanups
> > > > > > > > >
> > > > > > > > > You won't change the muxing, so a this dtsi can be self contained?
> > > > > > > > >
> > > > > > > > So you want me to put a big
> > > > > > > > #if defined(MX6SLL)
> > > > > > >
> > > > > > > Not sure what the comment meant, but no, don't do this. C defines in dts
> > > > > > > files are for symbolic names for numbers and assembling bitfields and
> > > > > > > that's it.
> > > > > >
> > > > > > yes, that is also my opinion. For now, there is only one user
> > > > > > of this .dtsi, but I have another one in preparation. That is the
> > > > > > reason for splitting things between .dts and .dtsi to avoid such ugly
> > > > > > ifdefs
> > > > >
> > > > > Then IMHO the pnictrl-* entries shouldn't appear in the dsti.
> > > > >
> > > > hmm, maybe now I understand your idea:
> > > > You do not want only to have
> > > >
> > > > pinctrl_lm3630a_bl_gpio: lm3630a_bl_gpio_grp {
> > > > fsl,pins = <
> > > > MX6SLL_PAD_EPDC_PWR_CTRL3__GPIO2_IO10 0x10059 /* HWEN */
> > > > >;
> > > > };
> > > > in dts, but also do not have these in .dtsi:
> > > >
> > > > pinctrl-names = "default";
> > > > pinctrl-0 = <&pinctrl_lm3630a_bl_gpio>;
> > > >
> > > > and instead have in dts:
> > > > &lm3630a {
> > > > pinctrl-names = "default";
> > > > pinctrl-0 = <&pinctrl_lm3630a_bl_gpio>;
> > > >
> > > > };
> > > >
> > > >
> > > > just to make sure I get it right before doing the restructuring work. That way of structuring things did not come to my mind, but then the .dtsi is self-contained.
> > >
> > > That is what I mean but wait for Shawn's comments. It's just my opinion
> > > that .dtsi and .dts files should be self-contained.
> >
> > for files like the imx6sll.dtsi, I would clearly agree, here it might
> > hide errors like missing pinmuxes in the dts, so it is not so clear.
> > But if there is is consensus about .dtsi being self-contained I will not
> > refuse to restructurize my work.
>
> Yes, I would appreciate the effort of keep .dtsi being self-contained.
ok, then I will restructurize as proposed and create a v4 this weekend.
Regards,
Andreas
^ permalink raw reply [flat|nested] 51+ messages in thread
* Re: [PATCH v3 2/3] ARM: dts: add Netronix E60K02 board common file
@ 2019-10-25 10:09 ` Andreas Kemnade
0 siblings, 0 replies; 51+ messages in thread
From: Andreas Kemnade @ 2019-10-25 10:09 UTC (permalink / raw)
To: Shawn Guo
Cc: mark.rutland, Rob Herring, marex, devicetree, andrew.smirnov,
s.hauer, angus, Marco Felsch, linux-kernel, linux-imx, kernel,
manivannan.sadhasivam, j.neuschaefer,
Discussions about the Letux Kernel, festevam, linux-arm-kernel
Hi Shawn,
On Fri, 25 Oct 2019 17:14:04 +0800
Shawn Guo <shawnguo@kernel.org> wrote:
> On Sun, Oct 13, 2019 at 05:56:44PM +0200, Andreas Kemnade wrote:
> > On Fri, 11 Oct 2019 18:56:33 +0200
> > Marco Felsch <m.felsch@pengutronix.de> wrote:
> >
> > > On 19-10-11 18:19, Andreas Kemnade wrote:
> > > > On Fri, 11 Oct 2019 17:22:14 +0200
> > > > Marco Felsch <m.felsch@pengutronix.de> wrote:
> > > >
> > > > > On 19-10-11 17:05, Andreas Kemnade wrote:
> > > > > > On Fri, 11 Oct 2019 09:29:27 -0500
> > > > > > Rob Herring <robh@kernel.org> wrote:
> > > > > >
> > > > > > > On Fri, Oct 11, 2019 at 09:41:48AM +0200, Andreas Kemnade wrote:
> > > > > > > > On Fri, 11 Oct 2019 08:56:09 +0200
> > > > > > > > Marco Felsch <m.felsch@pengutronix.de> wrote:
> > > > > > > >
> > > > > > > > > Hi Andreas,
> > > > > > > > >
> > > > > > > > > On 19-10-10 21:23, Andreas Kemnade wrote:
> > > > > > > > > > The Netronix board E60K02 can be found some several Ebook-Readers,
> > > > > > > > > > at least the Kobo Clara HD and the Tolino Shine 3. The board
> > > > > > > > > > is equipped with different SoCs requiring different pinmuxes.
> > > > > > > > > >
> > > > > > > > > > For now the following peripherals are included:
> > > > > > > > > > - LED
> > > > > > > > > > - Power Key
> > > > > > > > > > - Cover (gpio via hall sensor)
> > > > > > > > > > - RC5T619 PMIC (the kernel misses support for rtc and charger
> > > > > > > > > > subdevices).
> > > > > > > > > > - Backlight via lm3630a
> > > > > > > > > > - Wifi sdio chip detection (mmc-powerseq and stuff)
> > > > > > > > > >
> > > > > > > > > > It is based on vendor kernel but heavily reworked due to many
> > > > > > > > > > changed bindings.
> > > > > > > > > >
> > > > > > > > > > Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
> > > > > > > > > > ---
> > > > > > > > > > Changes in v3:
> > > > > > > > > > - better led name
> > > > > > > > > > - correct memory size
> > > > > > > > > > - comments about missing devices
> > > > > > > > > >
> > > > > > > > > > Changes in v2:
> > > > > > > > > > - reordered, was 1/3
> > > > > > > > > > - moved pinmuxes to their actual users, not the parents
> > > > > > > > > > of them
> > > > > > > > > > - removed some already-disabled stuff
> > > > > > > > > > - minor cleanups
> > > > > > > > >
> > > > > > > > > You won't change the muxing, so a this dtsi can be self contained?
> > > > > > > > >
> > > > > > > > So you want me to put a big
> > > > > > > > #if defined(MX6SLL)
> > > > > > >
> > > > > > > Not sure what the comment meant, but no, don't do this. C defines in dts
> > > > > > > files are for symbolic names for numbers and assembling bitfields and
> > > > > > > that's it.
> > > > > >
> > > > > > yes, that is also my opinion. For now, there is only one user
> > > > > > of this .dtsi, but I have another one in preparation. That is the
> > > > > > reason for splitting things between .dts and .dtsi to avoid such ugly
> > > > > > ifdefs
> > > > >
> > > > > Then IMHO the pnictrl-* entries shouldn't appear in the dsti.
> > > > >
> > > > hmm, maybe now I understand your idea:
> > > > You do not want only to have
> > > >
> > > > pinctrl_lm3630a_bl_gpio: lm3630a_bl_gpio_grp {
> > > > fsl,pins = <
> > > > MX6SLL_PAD_EPDC_PWR_CTRL3__GPIO2_IO10 0x10059 /* HWEN */
> > > > >;
> > > > };
> > > > in dts, but also do not have these in .dtsi:
> > > >
> > > > pinctrl-names = "default";
> > > > pinctrl-0 = <&pinctrl_lm3630a_bl_gpio>;
> > > >
> > > > and instead have in dts:
> > > > &lm3630a {
> > > > pinctrl-names = "default";
> > > > pinctrl-0 = <&pinctrl_lm3630a_bl_gpio>;
> > > >
> > > > };
> > > >
> > > >
> > > > just to make sure I get it right before doing the restructuring work. That way of structuring things did not come to my mind, but then the .dtsi is self-contained.
> > >
> > > That is what I mean but wait for Shawn's comments. It's just my opinion
> > > that .dtsi and .dts files should be self-contained.
> >
> > for files like the imx6sll.dtsi, I would clearly agree, here it might
> > hide errors like missing pinmuxes in the dts, so it is not so clear.
> > But if there is is consensus about .dtsi being self-contained I will not
> > refuse to restructurize my work.
>
> Yes, I would appreciate the effort of keep .dtsi being self-contained.
ok, then I will restructurize as proposed and create a v4 this weekend.
Regards,
Andreas
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 51+ messages in thread
* Re: [PATCH v3 2/3] ARM: dts: add Netronix E60K02 board common file
2019-10-10 19:23 ` Andreas Kemnade
@ 2019-10-25 13:06 ` Shawn Guo
-1 siblings, 0 replies; 51+ messages in thread
From: Shawn Guo @ 2019-10-25 13:06 UTC (permalink / raw)
To: Andreas Kemnade
Cc: robh+dt, mark.rutland, s.hauer, kernel, festevam, linux-imx,
manivannan.sadhasivam, andrew.smirnov, marex, angus, devicetree,
linux-kernel, linux-arm-kernel, j.neuschaefer,
Discussions about the Letux Kernel, Marco Felsch
On Thu, Oct 10, 2019 at 09:23:56PM +0200, Andreas Kemnade wrote:
> The Netronix board E60K02 can be found some several Ebook-Readers,
> at least the Kobo Clara HD and the Tolino Shine 3. The board
> is equipped with different SoCs requiring different pinmuxes.
>
> For now the following peripherals are included:
> - LED
> - Power Key
> - Cover (gpio via hall sensor)
> - RC5T619 PMIC (the kernel misses support for rtc and charger
> subdevices).
> - Backlight via lm3630a
> - Wifi sdio chip detection (mmc-powerseq and stuff)
>
> It is based on vendor kernel but heavily reworked due to many
> changed bindings.
>
> Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
> ---
> Changes in v3:
> - better led name
> - correct memory size
> - comments about missing devices
>
> Changes in v2:
> - reordered, was 1/3
> - moved pinmuxes to their actual users, not the parents
> of them
> - removed some already-disabled stuff
> - minor cleanups
>
> backligt dependencies:
> module autoloading:
> https://patchwork.kernel.org/patch/11139987/
> enable-gpios property (accepted and acked):
> https://patchwork.kernel.org/patch/11143795/
>
> arch/arm/boot/dts/e60k02.dtsi | 337 ++++++++++++++++++++++++++++++++++
> 1 file changed, 337 insertions(+)
> create mode 100644 arch/arm/boot/dts/e60k02.dtsi
>
> diff --git a/arch/arm/boot/dts/e60k02.dtsi b/arch/arm/boot/dts/e60k02.dtsi
> new file mode 100644
> index 0000000000000..84c0447b9a1bd
> --- /dev/null
> +++ b/arch/arm/boot/dts/e60k02.dtsi
> @@ -0,0 +1,337 @@
> +// SPDX-License-Identifier: GPL-2.0
> +/*
> + * Copyright 2019 Andreas Kemnade
> + * based on works
> + * Copyright 2016 Freescale Semiconductor, Inc.
> + * and
> + * Copyright (C) 2014 Ricoh Electronic Devices Co., Ltd
> + *
> + * Netronix E60K02 board common.
> + * This board is equipped with different SoCs and
> + * found in ebook-readers like the Kobo Clara HD (with i.MX6SLL) and
> + * the Tolino Shine 3 (with i.MX6SL)
> + */
> +#include <dt-bindings/input/input.h>
> +
> +/ {
> +
> + chosen {
> + stdout-path = &uart1;
> + };
> +
> + gpio-keys {
> + compatible = "gpio-keys";
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_gpio_keys>;
Please have a newline between property list and child node.
> + power {
> + label = "Power";
> + gpios = <&gpio5 8 GPIO_ACTIVE_LOW>;
> + linux,code = <KEY_POWER>;
> + gpio-key,wakeup;
Check out Documentation/devicetree/bindings/power/wakeup-source.txt
> + };
> + cover {
> + label = "Cover";
> + gpios = <&gpio5 12 GPIO_ACTIVE_LOW>;
> + linux,code = <SW_LID>;
> + linux,input-type = <EV_SW>;
> + gpio-key,wakeup;
> + };
> + };
> +
> + leds {
> + compatible = "gpio-leds";
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_led>;
> +
> + on {
> + label = "e60k02:white:on";
> + gpios = <&gpio5 7 GPIO_ACTIVE_LOW>;
> + linux,default-trigger = "timer";
> + };
> + };
> +
> + memory {
> + reg = <0x80000000 0x20000000>;
> + };
> +
> + reg_wifi: regulator-wifi {
> + compatible = "regulator-fixed";
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_wifi_power>;
> + regulator-name = "SD3_SPWR";
> + regulator-min-microvolt = <3000000>;
> + regulator-max-microvolt = <3000000>;
> +
Drop this newline.
> + gpio = <&gpio4 29 GPIO_ACTIVE_HIGH>;
> + enable-active-high;
> +
Ditto
> + };
> +
> + wifi_pwrseq: wifi_pwrseq {
> + compatible = "mmc-pwrseq-simple";
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_wifi_reset>;
> + post-power-on-delay-ms = <20>;
> + reset-gpios = <&gpio5 0 GPIO_ACTIVE_LOW>;
> + };
> +
Ditto
> +};
> +
> +
> +&i2c1 {
> + clock-frequency = <100000>;
> + pinctrl-names = "default","sleep";
> + pinctrl-0 = <&pinctrl_i2c1>;
> + pinctrl-1 = <&pinctrl_i2c1_sleep>;
> + status = "okay";
> +
> + lm3630a: backlight@36 {
> + reg = <0x36>;
> +
Ditto
> + compatible = "ti,lm3630a";
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_lm3630a_bl_gpio>;
> + enable-gpios = <&gpio2 10 GPIO_ACTIVE_HIGH>;
> +
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + led@0 {
> + reg = <0>;
> + led-sources = <0>;
> + label = "backlight_warm";
> + default-brightness = <0>;
> + max-brightness = <255>;
> + };
> +
> + led@1 {
> + reg = <1>;
> + led-sources = <1>;
> + label = "backlight_cold";
> + default-brightness = <0>;
> + max-brightness = <255>;
> + };
> +
Ditto
> + };
> +};
> +
> +&i2c2 {
> + clock-frequency = <100000>;
> + pinctrl-names = "default","sleep";
> + pinctrl-0 = <&pinctrl_i2c2>;
> + pinctrl-1 = <&pinctrl_i2c2_sleep>;
> + status = "okay";
> +
> + /* TODO: CYTTSP5 touch controller at 0x24 */
> +
> + /* TODO: TPS65185 PMIC for E Ink at 0x68 */
> +
> +};
> +
> +&i2c3 {
> + clock-frequency = <100000>;
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_i2c3>;
> + status = "okay";
> +
> + ricoh619: pmic@32 {
> + compatible = "ricoh,rc5t619";
> + reg = <0x32>;
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_ricoh_gpio>;
> + system-power-controller;
> +
> + regulators {
> + dcdc1_reg: DCDC1 {
> + regulator-name = "DCDC1";
> + regulator-min-microvolt = <300000>;
> + regulator-max-microvolt = <1875000>;
> + regulator-always-on;
> + regulator-boot-on;
Have a newline between property list and child node.
> + regulator-state-mem {
> + regulator-on-in-suspend;
> + regulator-suspend-max-microvolt = <900000>;
> + regulator-suspend-min-microvolt = <900000>;
> + };
> + };
> +
> + /* Core3_3V3 */
> + dcdc2_reg: DCDC2 {
> + regulator-name = "DCDC2";
> + regulator-always-on;
> + regulator-boot-on;
> + regulator-state-mem {
> + regulator-on-in-suspend;
> + regulator-suspend-max-microvolt = <3300000>;
> + regulator-suspend-min-microvolt = <3300000>;
> + };
> + };
> +
> + dcdc3_reg: DCDC3 {
> + regulator-name = "DCDC3";
> + regulator-min-microvolt = <300000>;
> + regulator-max-microvolt = <1875000>;
> + regulator-always-on;
> + regulator-boot-on;
> + regulator-state-mem {
> + regulator-on-in-suspend;
> + regulator-suspend-max-microvolt = <1140000>;
> + regulator-suspend-min-microvolt = <1140000>;
> + };
> + };
> +
> + /* Core4_1V2 */
> + dcdc4_reg: DCDC4 {
> + regulator-name = "DCDC4";
> + regulator-min-microvolt = <1200000>;
> + regulator-max-microvolt = <1200000>;
> + regulator-always-on;
> + regulator-boot-on;
> + regulator-state-mem {
> + regulator-on-in-suspend;
> + regulator-suspend-max-microvolt = <1140000>;
> + regulator-suspend-min-microvolt = <1140000>;
> + };
> + };
> +
> + /* Core4_1V8 */
> + dcdc5_reg: DCDC5 {
> + regulator-name = "DCDC5";
> + regulator-min-microvolt = <1800000>;
> + regulator-max-microvolt = <1800000>;
> + regulator-always-on;
> + regulator-boot-on;
> + regulator-state-mem {
> + regulator-on-in-suspend;
> + regulator-suspend-max-microvolt = <1700000>;
> + regulator-suspend-min-microvolt = <1700000>;
> + };
> + };
> +
> + /* IR_3V3 */
> + ldo1_reg: LDO1 {
> + regulator-name = "LDO1";
> + regulator-boot-on;
> + };
> +
> + /* Core1_3V3 */
> + ldo2_reg: LDO2 {
> + regulator-name = "LDO2";
> + regulator-always-on;
> + regulator-boot-on;
> + regulator-state-mem {
> + regulator-on-in-suspend;
> + regulator-suspend-max-microvolt = <3000000>;
> + regulator-suspend-min-microvolt = <3000000>;
> + };
> + };
> +
> + /* Core5_1V2 */
> + ldo3_reg: LDO3 {
> + regulator-name = "LDO3";
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + ldo4_reg: LDO4 {
> + regulator-name = "LDO4";
> + regulator-boot-on;
> + };
> +
> + /* SPD_3V3 */
> + ldo5_reg: LDO5 {
> + regulator-name = "LDO5";
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + /* DDR_0V6 */
> + ldo6_reg: LDO6 {
> + regulator-name = "LDO6";
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + /* VDD_PWM */
> + ldo7_reg: LDO7 {
> + regulator-name = "LDO7";
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + /* ldo_1v8 */
> + ldo8_reg: LDO8 {
> + regulator-name = "LDO8";
> + regulator-min-microvolt = <1800000>;
> + regulator-max-microvolt = <1800000>;
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + ldo9_reg: LDO9 {
> + regulator-name = "LDO9";
> + regulator-boot-on;
> + };
> +
> + ldo10_reg: LDO10 {
> + regulator-name = "LDO10";
> + regulator-boot-on;
> + };
> +
> + ldortc1_reg: LDORTC1 {
> + regulator-name = "LDORTC1";
> + regulator-boot-on;
> + };
> +
> + ldortc2_reg: LDORTC2 {
> + regulator-name = "LDORTC2";
> + regulator-boot-on;
> + };
> + };
> +
Drop the newline.
> + };
> +
Ditto
Shawn
> +};
> +
> +&snvs_rtc {
> + /* we are using the rtc in the pmic, not disabled imx6sll.dtsi */
> + status = "disabled";
> +};
> +
> +&uart1 {
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_uart1>;
> + status = "okay";
> +};
> +
> +&usdhc2 {
> + pinctrl-names = "default", "state_100mhz", "state_200mhz","sleep";
> + pinctrl-0 = <&pinctrl_usdhc2>;
> + pinctrl-1 = <&pinctrl_usdhc2_100mhz>;
> + pinctrl-2 = <&pinctrl_usdhc2_200mhz>;
> + pinctrl-3 = <&pinctrl_usdhc2_sleep>;
> + non-removable;
> + status = "okay";
> +};
> +
> +&usdhc3 {
> + pinctrl-names = "default", "state_100mhz", "state_200mhz","sleep";
> + pinctrl-0 = <&pinctrl_usdhc3>;
> + pinctrl-1 = <&pinctrl_usdhc3_100mhz>;
> + pinctrl-2 = <&pinctrl_usdhc3_200mhz>;
> + pinctrl-3 = <&pinctrl_usdhc3_sleep>;
> + vmmc-supply = <®_wifi>;
> + mmc-pwrseq = <&wifi_pwrseq>;
> + cap-power-off-card;
> + non-removable;
> + status = "okay";
> +};
> +
> +&usbotg1 {
> + pinctrl-names = "default";
> + disable-over-current;
> + srp-disable;
> + hnp-disable;
> + adp-disable;
> + status = "okay";
> +};
> --
> 2.20.1
>
^ permalink raw reply [flat|nested] 51+ messages in thread
* Re: [PATCH v3 2/3] ARM: dts: add Netronix E60K02 board common file
@ 2019-10-25 13:06 ` Shawn Guo
0 siblings, 0 replies; 51+ messages in thread
From: Shawn Guo @ 2019-10-25 13:06 UTC (permalink / raw)
To: Andreas Kemnade
Cc: mark.rutland, marex, Marco Felsch, devicetree, andrew.smirnov,
s.hauer, angus, linux-kernel, j.neuschaefer, robh+dt, linux-imx,
kernel, manivannan.sadhasivam,
Discussions about the Letux Kernel, festevam, linux-arm-kernel
On Thu, Oct 10, 2019 at 09:23:56PM +0200, Andreas Kemnade wrote:
> The Netronix board E60K02 can be found some several Ebook-Readers,
> at least the Kobo Clara HD and the Tolino Shine 3. The board
> is equipped with different SoCs requiring different pinmuxes.
>
> For now the following peripherals are included:
> - LED
> - Power Key
> - Cover (gpio via hall sensor)
> - RC5T619 PMIC (the kernel misses support for rtc and charger
> subdevices).
> - Backlight via lm3630a
> - Wifi sdio chip detection (mmc-powerseq and stuff)
>
> It is based on vendor kernel but heavily reworked due to many
> changed bindings.
>
> Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
> ---
> Changes in v3:
> - better led name
> - correct memory size
> - comments about missing devices
>
> Changes in v2:
> - reordered, was 1/3
> - moved pinmuxes to their actual users, not the parents
> of them
> - removed some already-disabled stuff
> - minor cleanups
>
> backligt dependencies:
> module autoloading:
> https://patchwork.kernel.org/patch/11139987/
> enable-gpios property (accepted and acked):
> https://patchwork.kernel.org/patch/11143795/
>
> arch/arm/boot/dts/e60k02.dtsi | 337 ++++++++++++++++++++++++++++++++++
> 1 file changed, 337 insertions(+)
> create mode 100644 arch/arm/boot/dts/e60k02.dtsi
>
> diff --git a/arch/arm/boot/dts/e60k02.dtsi b/arch/arm/boot/dts/e60k02.dtsi
> new file mode 100644
> index 0000000000000..84c0447b9a1bd
> --- /dev/null
> +++ b/arch/arm/boot/dts/e60k02.dtsi
> @@ -0,0 +1,337 @@
> +// SPDX-License-Identifier: GPL-2.0
> +/*
> + * Copyright 2019 Andreas Kemnade
> + * based on works
> + * Copyright 2016 Freescale Semiconductor, Inc.
> + * and
> + * Copyright (C) 2014 Ricoh Electronic Devices Co., Ltd
> + *
> + * Netronix E60K02 board common.
> + * This board is equipped with different SoCs and
> + * found in ebook-readers like the Kobo Clara HD (with i.MX6SLL) and
> + * the Tolino Shine 3 (with i.MX6SL)
> + */
> +#include <dt-bindings/input/input.h>
> +
> +/ {
> +
> + chosen {
> + stdout-path = &uart1;
> + };
> +
> + gpio-keys {
> + compatible = "gpio-keys";
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_gpio_keys>;
Please have a newline between property list and child node.
> + power {
> + label = "Power";
> + gpios = <&gpio5 8 GPIO_ACTIVE_LOW>;
> + linux,code = <KEY_POWER>;
> + gpio-key,wakeup;
Check out Documentation/devicetree/bindings/power/wakeup-source.txt
> + };
> + cover {
> + label = "Cover";
> + gpios = <&gpio5 12 GPIO_ACTIVE_LOW>;
> + linux,code = <SW_LID>;
> + linux,input-type = <EV_SW>;
> + gpio-key,wakeup;
> + };
> + };
> +
> + leds {
> + compatible = "gpio-leds";
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_led>;
> +
> + on {
> + label = "e60k02:white:on";
> + gpios = <&gpio5 7 GPIO_ACTIVE_LOW>;
> + linux,default-trigger = "timer";
> + };
> + };
> +
> + memory {
> + reg = <0x80000000 0x20000000>;
> + };
> +
> + reg_wifi: regulator-wifi {
> + compatible = "regulator-fixed";
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_wifi_power>;
> + regulator-name = "SD3_SPWR";
> + regulator-min-microvolt = <3000000>;
> + regulator-max-microvolt = <3000000>;
> +
Drop this newline.
> + gpio = <&gpio4 29 GPIO_ACTIVE_HIGH>;
> + enable-active-high;
> +
Ditto
> + };
> +
> + wifi_pwrseq: wifi_pwrseq {
> + compatible = "mmc-pwrseq-simple";
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_wifi_reset>;
> + post-power-on-delay-ms = <20>;
> + reset-gpios = <&gpio5 0 GPIO_ACTIVE_LOW>;
> + };
> +
Ditto
> +};
> +
> +
> +&i2c1 {
> + clock-frequency = <100000>;
> + pinctrl-names = "default","sleep";
> + pinctrl-0 = <&pinctrl_i2c1>;
> + pinctrl-1 = <&pinctrl_i2c1_sleep>;
> + status = "okay";
> +
> + lm3630a: backlight@36 {
> + reg = <0x36>;
> +
Ditto
> + compatible = "ti,lm3630a";
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_lm3630a_bl_gpio>;
> + enable-gpios = <&gpio2 10 GPIO_ACTIVE_HIGH>;
> +
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + led@0 {
> + reg = <0>;
> + led-sources = <0>;
> + label = "backlight_warm";
> + default-brightness = <0>;
> + max-brightness = <255>;
> + };
> +
> + led@1 {
> + reg = <1>;
> + led-sources = <1>;
> + label = "backlight_cold";
> + default-brightness = <0>;
> + max-brightness = <255>;
> + };
> +
Ditto
> + };
> +};
> +
> +&i2c2 {
> + clock-frequency = <100000>;
> + pinctrl-names = "default","sleep";
> + pinctrl-0 = <&pinctrl_i2c2>;
> + pinctrl-1 = <&pinctrl_i2c2_sleep>;
> + status = "okay";
> +
> + /* TODO: CYTTSP5 touch controller at 0x24 */
> +
> + /* TODO: TPS65185 PMIC for E Ink at 0x68 */
> +
> +};
> +
> +&i2c3 {
> + clock-frequency = <100000>;
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_i2c3>;
> + status = "okay";
> +
> + ricoh619: pmic@32 {
> + compatible = "ricoh,rc5t619";
> + reg = <0x32>;
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_ricoh_gpio>;
> + system-power-controller;
> +
> + regulators {
> + dcdc1_reg: DCDC1 {
> + regulator-name = "DCDC1";
> + regulator-min-microvolt = <300000>;
> + regulator-max-microvolt = <1875000>;
> + regulator-always-on;
> + regulator-boot-on;
Have a newline between property list and child node.
> + regulator-state-mem {
> + regulator-on-in-suspend;
> + regulator-suspend-max-microvolt = <900000>;
> + regulator-suspend-min-microvolt = <900000>;
> + };
> + };
> +
> + /* Core3_3V3 */
> + dcdc2_reg: DCDC2 {
> + regulator-name = "DCDC2";
> + regulator-always-on;
> + regulator-boot-on;
> + regulator-state-mem {
> + regulator-on-in-suspend;
> + regulator-suspend-max-microvolt = <3300000>;
> + regulator-suspend-min-microvolt = <3300000>;
> + };
> + };
> +
> + dcdc3_reg: DCDC3 {
> + regulator-name = "DCDC3";
> + regulator-min-microvolt = <300000>;
> + regulator-max-microvolt = <1875000>;
> + regulator-always-on;
> + regulator-boot-on;
> + regulator-state-mem {
> + regulator-on-in-suspend;
> + regulator-suspend-max-microvolt = <1140000>;
> + regulator-suspend-min-microvolt = <1140000>;
> + };
> + };
> +
> + /* Core4_1V2 */
> + dcdc4_reg: DCDC4 {
> + regulator-name = "DCDC4";
> + regulator-min-microvolt = <1200000>;
> + regulator-max-microvolt = <1200000>;
> + regulator-always-on;
> + regulator-boot-on;
> + regulator-state-mem {
> + regulator-on-in-suspend;
> + regulator-suspend-max-microvolt = <1140000>;
> + regulator-suspend-min-microvolt = <1140000>;
> + };
> + };
> +
> + /* Core4_1V8 */
> + dcdc5_reg: DCDC5 {
> + regulator-name = "DCDC5";
> + regulator-min-microvolt = <1800000>;
> + regulator-max-microvolt = <1800000>;
> + regulator-always-on;
> + regulator-boot-on;
> + regulator-state-mem {
> + regulator-on-in-suspend;
> + regulator-suspend-max-microvolt = <1700000>;
> + regulator-suspend-min-microvolt = <1700000>;
> + };
> + };
> +
> + /* IR_3V3 */
> + ldo1_reg: LDO1 {
> + regulator-name = "LDO1";
> + regulator-boot-on;
> + };
> +
> + /* Core1_3V3 */
> + ldo2_reg: LDO2 {
> + regulator-name = "LDO2";
> + regulator-always-on;
> + regulator-boot-on;
> + regulator-state-mem {
> + regulator-on-in-suspend;
> + regulator-suspend-max-microvolt = <3000000>;
> + regulator-suspend-min-microvolt = <3000000>;
> + };
> + };
> +
> + /* Core5_1V2 */
> + ldo3_reg: LDO3 {
> + regulator-name = "LDO3";
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + ldo4_reg: LDO4 {
> + regulator-name = "LDO4";
> + regulator-boot-on;
> + };
> +
> + /* SPD_3V3 */
> + ldo5_reg: LDO5 {
> + regulator-name = "LDO5";
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + /* DDR_0V6 */
> + ldo6_reg: LDO6 {
> + regulator-name = "LDO6";
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + /* VDD_PWM */
> + ldo7_reg: LDO7 {
> + regulator-name = "LDO7";
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + /* ldo_1v8 */
> + ldo8_reg: LDO8 {
> + regulator-name = "LDO8";
> + regulator-min-microvolt = <1800000>;
> + regulator-max-microvolt = <1800000>;
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + ldo9_reg: LDO9 {
> + regulator-name = "LDO9";
> + regulator-boot-on;
> + };
> +
> + ldo10_reg: LDO10 {
> + regulator-name = "LDO10";
> + regulator-boot-on;
> + };
> +
> + ldortc1_reg: LDORTC1 {
> + regulator-name = "LDORTC1";
> + regulator-boot-on;
> + };
> +
> + ldortc2_reg: LDORTC2 {
> + regulator-name = "LDORTC2";
> + regulator-boot-on;
> + };
> + };
> +
Drop the newline.
> + };
> +
Ditto
Shawn
> +};
> +
> +&snvs_rtc {
> + /* we are using the rtc in the pmic, not disabled imx6sll.dtsi */
> + status = "disabled";
> +};
> +
> +&uart1 {
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_uart1>;
> + status = "okay";
> +};
> +
> +&usdhc2 {
> + pinctrl-names = "default", "state_100mhz", "state_200mhz","sleep";
> + pinctrl-0 = <&pinctrl_usdhc2>;
> + pinctrl-1 = <&pinctrl_usdhc2_100mhz>;
> + pinctrl-2 = <&pinctrl_usdhc2_200mhz>;
> + pinctrl-3 = <&pinctrl_usdhc2_sleep>;
> + non-removable;
> + status = "okay";
> +};
> +
> +&usdhc3 {
> + pinctrl-names = "default", "state_100mhz", "state_200mhz","sleep";
> + pinctrl-0 = <&pinctrl_usdhc3>;
> + pinctrl-1 = <&pinctrl_usdhc3_100mhz>;
> + pinctrl-2 = <&pinctrl_usdhc3_200mhz>;
> + pinctrl-3 = <&pinctrl_usdhc3_sleep>;
> + vmmc-supply = <®_wifi>;
> + mmc-pwrseq = <&wifi_pwrseq>;
> + cap-power-off-card;
> + non-removable;
> + status = "okay";
> +};
> +
> +&usbotg1 {
> + pinctrl-names = "default";
> + disable-over-current;
> + srp-disable;
> + hnp-disable;
> + adp-disable;
> + status = "okay";
> +};
> --
> 2.20.1
>
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 51+ messages in thread