Skip to contentSkip to conversation

ARM: dts: sun6i: tablet dts changes

PATCH New Hans de Goede 4 participants 12 messages Aug 18, 2016 – Aug 22, 2016

Subsystems (5)
lore
Share & tools
lore
#0 lore raw

v2 cover ARM: dts: sun6i: tablet dts changes

Hi Maxime and Chen-Yu,

Here is a v2 of the series I sent earlier today, changes:

-Add a 3th patch (patch 1/3) which I forgot in v1, the other
2 patches actually depend on this one to apply without conflicts
-Name the added dtsi file sun6i-reference-design-tablet.dtsi instead
of sun6i-a31-reference-design-tablet.dtsi, to be consistent with what we've done for sun5i / sun8i (and because it is valid for both A31 and A31s based tablets).

Regards,

Hans

#1 lore raw

PATCH v2 1/3 ARM: dts: sun6i: colorfly-e708-q1: Remove unused mma8452_int_e708_q1 node

The presence of the mma8452_int_e708_q1 node is a copy and paste error, remove it.

---
 arch/arm/boot/dts/sun6i-a31s-colorfly-e708-q1.dts | 7 -------
 1 file changed, 7 deletions(-)
arch/arm/boot/dts/sun6i-a31s-colorfly-e708-q1.dts +0 -7
index 9040bb9..34d8710 100644
@@ -93,13 +93,6 @@
 };
 
 &pio {
-	mma8452_int_e708_q1: mma8452_int_pin at 0 {
-		allwinner,pins = "PA9";
-		allwinner,function = "gpio_in";
-		allwinner,drive = <SUN4I_PINCTRL_10_MA>;
-		allwinner,pull = <SUN4I_PINCTRL_PULL_UP>;
-	};
-
 	mmc0_cd_pin_e708_q1: mmc0_cd_pin at 0 {
 		allwinner,pins = "PA8";
 		allwinner,function = "gpio_in";
Signature · 1 line
2.7.4
#3 lore raw

PATCH v2 2/3 ARM: dts: sun6i: Add sun6i-reference-design-tablet.dtsi

In reply to Hans de Goede

Just like with a13/a23/a33 most a31 tablets are derived from the same reference design. Add a .dtsi file with all the common bits to avoid endless copy and pasting of these.

The sun6i-reference-design-tablet.dtsi this commit adds is a copy of sun6i-a31s-colorfly-e708-q1.dts with a few tablet specific bits removed / left in sun6i-a31s-colorfly-e708-q1.dts.

---
 arch/arm/boot/dts/sun6i-a31s-colorfly-e708-q1.dts  | 147 +--------------------
 ...8-q1.dts => sun6i-reference-design-tablet.dtsi} |  26 +---
 2 files changed, 2 insertions(+), 171 deletions(-)
 copy arch/arm/boot/dts/{sun6i-a31s-colorfly-e708-q1.dts => sun6i-reference-design-tablet.dtsi} (90%)
arch/arm/boot/dts/sun6i-a31s-colorfly-e708-q1.dts +1 -146
index 34d8710..882a4d8 100644
@@ -42,32 +42,11 @@
 
 /dts-v1/;
 #include "sun6i-a31s.dtsi"
-#include "sunxi-common-regulators.dtsi"
-
-#include <dt-bindings/gpio/gpio.h>
-#include <dt-bindings/input/input.h>
-#include <dt-bindings/pinctrl/sun4i-a10.h>
+#include "sun6i-reference-design-tablet.dtsi"
 
 / {
 	model = "Colorfly E708 Q1 tablet";
 	compatible = "colorfly,e708-q1", "allwinner,sun6i-a31s";
-
-	aliases {
-		serial0 = &uart0;
-	};
-
-	chosen {
-		stdout-path = "serial0:115200n8";
-	};
-};
-
-&cpu0 {
-	cpu-supply = <&reg_dcdc3>;
-};
-
-&ehci0 {
-	/* rtl8188etv wifi is connected here */
-	status = "okay";
 };
 
 &lradc {
@@ -82,136 +61,12 @@
 	};
 };
 
-&mmc0 {
-	pinctrl-names = "default";
-	pinctrl-0 = <&mmc0_pins_a>, <&mmc0_cd_pin_e708_q1>;
-	vmmc-supply = <&reg_dcdc1>;
-	bus-width = <4>;
-	cd-gpios = <&pio 0 8 GPIO_ACTIVE_HIGH>; /* PA8 */
-	cd-inverted;
-	status = "okay";
-};
-
-&pio {
-	mmc0_cd_pin_e708_q1: mmc0_cd_pin at 0 {
-		allwinner,pins = "PA8";
-		allwinner,function = "gpio_in";
-		allwinner,drive = <SUN4I_PINCTRL_10_MA>;
-		allwinner,pull = <SUN4I_PINCTRL_PULL_UP>;
-	};
-
-	usb0_id_detect_pin: usb0_id_detect_pin at 0 {
-		allwinner,pins = "PA15";
-		allwinner,function = "gpio_in";
-		allwinner,drive = <SUN4I_PINCTRL_10_MA>;
-		allwinner,pull = <SUN4I_PINCTRL_PULL_UP>;
-	};
-};
-
-&p2wi {
-	status = "okay";
-
-	axp22x: pmic at 68 {
-		compatible = "x-powers,axp221";
-		reg = <0x68>;
-		interrupt-parent = <&nmi_intc>;
-		interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
-		drivevbus-supply = <&reg_vcc5v0>;
-		x-powers,drive-vbus-en;
-	};
-};
-
-#include "axp22x.dtsi"
-
-&reg_aldo3 {
-	regulator-always-on;
-	regulator-min-microvolt = <2700000>;
-	regulator-max-microvolt = <3300000>;
-	regulator-name = "avcc";
-};
-
-&reg_dc1sw {
-	regulator-name = "vcc-lcd";
-};
-
-&reg_dc5ldo {
-	regulator-always-on;
-	regulator-min-microvolt = <700000>;
-	regulator-max-microvolt = <1320000>;
-	regulator-name = "vdd-cpus"; /* This is an educated guess */
-};
-
-&reg_dcdc1 {
-	regulator-always-on;
-	regulator-min-microvolt = <3000000>;
-	regulator-max-microvolt = <3000000>;
-	regulator-name = "vcc-3v0";
-};
-
-&reg_dcdc2 {
-	regulator-min-microvolt = <700000>;
-	regulator-max-microvolt = <1320000>;
-	regulator-name = "vdd-gpu";
-};
-
-&reg_dcdc3 {
-	regulator-always-on;
-	regulator-min-microvolt = <700000>;
-	regulator-max-microvolt = <1320000>;
-	regulator-name = "vdd-cpu";
-};
-
-&reg_dcdc4 {
-	regulator-always-on;
-	regulator-min-microvolt = <700000>;
-	regulator-max-microvolt = <1320000>;
-	regulator-name = "vdd-sys-dll";
-};
-
-&reg_dcdc5 {
-	regulator-always-on;
-	regulator-min-microvolt = <1500000>;
-	regulator-max-microvolt = <1500000>;
-	regulator-name = "vcc-dram";
-};
-
-&reg_dldo1 {
-	regulator-min-microvolt = <3300000>;
-	regulator-max-microvolt = <3300000>;
-	regulator-name = "vcc-wifi";
-};
-
 &reg_dldo2 {
 	regulator-min-microvolt = <1800000>;
 	regulator-max-microvolt = <1800000>;
 	regulator-name = "vcc-pg";
 };
 
-&reg_drivevbus {
-	regulator-name = "usb0-vbus";
-	status = "okay";
-};
-
 &simplefb_lcd {
-	vcc-lcd-supply = <&reg_dc1sw>;
 	vcc-pg-supply = <&reg_dldo2>;
 };
-
-&usb_otg {
-	dr_mode = "otg";
-	status = "okay";
-};
-
-&usb_power_supply {
-	status = "okay";
-};
-
-&usbphy {
-	pinctrl-names = "default";
-	pinctrl-0 = <&usb0_id_detect_pin>;
-	usb0_id_det-gpio = <&pio 0 15 GPIO_ACTIVE_HIGH>; /* PA15 */
-	usb0_vbus_power-supply = <&usb_power_supply>;
-	usb0_vbus-supply = <&reg_drivevbus>;
-	usb1_vbus-supply = <&reg_dldo1>;
-	status = "okay";
-};
arch/arm/boot/dts/sun6i-reference-design-tablet.dtsi renamed from arch/arm/boot/dts/sun6i-a31s-colorfly-e708-q1.dts +1 -25
similarity index 90%
copy from arch/arm/boot/dts/sun6i-a31s-colorfly-e708-q1.dts
copy to arch/arm/boot/dts/sun6i-reference-design-tablet.dtsi
index 34d8710..0c43430 100644
@@ -40,8 +40,6 @@
  *     OTHER DEALINGS IN THE SOFTWARE.
  */
 
-/dts-v1/;
-#include "sun6i-a31s.dtsi"
 #include "sunxi-common-regulators.dtsi"
 
 #include <dt-bindings/gpio/gpio.h>
@@ -49,9 +47,6 @@
 #include <dt-bindings/pinctrl/sun4i-a10.h>
 
 / {
-	model = "Colorfly E708 Q1 tablet";
-	compatible = "colorfly,e708-q1", "allwinner,sun6i-a31s";
-
 	aliases {
 		serial0 = &uart0;
 	};
@@ -66,20 +61,8 @@
 };
 
 &ehci0 {
-	/* rtl8188etv wifi is connected here */
-	status = "okay";
-};
-
-&lradc {
-	vref-supply = <&reg_aldo3>;
+	/* Wifi is connected here */
 	status = "okay";
-
-	button at 1000 {
-		label = "Home";
-		linux,code = <KEY_HOMEPAGE>;
-		channel = <0>;
-		voltage = <1000000>;
-	};
 };
 
 &mmc0 {
@@ -181,12 +164,6 @@
 	regulator-name = "vcc-wifi";
 };
 
-&reg_dldo2 {
-	regulator-min-microvolt = <1800000>;
-	regulator-max-microvolt = <1800000>;
-	regulator-name = "vcc-pg";
-};
-
 &reg_drivevbus {
 	regulator-name = "usb0-vbus";
 	status = "okay";
@@ -194,7 +171,6 @@
 
 &simplefb_lcd {
 	vcc-lcd-supply = <&reg_dc1sw>;
-	vcc-pg-supply = <&reg_dldo2>;
 };
 
 &usb_otg {
Signature · 1 line
2.7.4
#4 lore raw

PATCH v2 2/3 ARM: dts: sun6i: Add sun6i-reference-design-tablet.dtsi

19.08.2016, 02:07, "Hans de Goede" <[email protected]>:

Quoted 7 lines

Just like with a13/a23/a33 most a31 tablets are derived from the same reference design. Add a .dtsi file with all the common bits to avoid endless copy and pasting of these.

The sun6i-reference-design-tablet.dtsi this commit adds is a copy of sun6i-a31s-colorfly-e708-q1.dts with a few tablet specific bits removed / left in sun6i-a31s-colorfly-e708-q1.dts.

Thanks! I will soon rebase my dt of Viewsonic Viewpad 133Q (a 13.3" A31s tablet) on the reference design.

It makes it more tidy.

Quoted 259 lines

---
?arch/arm/boot/dts/sun6i-a31s-colorfly-e708-q1.dts | 147 +-------------------- ?...8-q1.dts => sun6i-reference-design-tablet.dtsi} | 26 +---
?2 files changed, 2 insertions(+), 171 deletions(-)
?copy arch/arm/boot/dts/{sun6i-a31s-colorfly-e708-q1.dts => sun6i-reference-design-tablet.dtsi} (90%)

arch/arm/boot/dts/sun6i-a31s-colorfly-e708-q1.dts +0 -0
index 34d8710..882a4d8 100644
@@ -42,32 +42,11 @@
 
 ?/dts-v1/;

?#include "sun6i-a31s.dtsi"

arch/arm/boot/dts/sun6i-a31s-colorfly-e708-q1.dts +1 -5
-#include "sunxi-common-regulators.dtsi"
-
-#include <dt-bindings/gpio/gpio.h>
-#include <dt-bindings/input/input.h>
-#include <dt-bindings/pinctrl/sun4i-a10.h>
+#include "sun6i-reference-design-tablet.dtsi"

?/ {
?????????model = "Colorfly E708 Q1 tablet"; ?????????compatible = "colorfly,e708-q1", "allwinner,sun6i-a31s";

arch/arm/boot/dts/sun6i-a31s-colorfly-e708-q1.dts +0 -17
-
- aliases {
- serial0 = &uart0;
- };
-
- chosen {
- stdout-path = "serial0:115200n8";
- };
-};
-
-&cpu0 {
- cpu-supply = <&reg_dcdc3>;
-};
-
-&ehci0 {
- /* rtl8188etv wifi is connected here */
- status = "okay";

?};

?&lradc {

arch/arm/boot/dts/sun6i-a31s-colorfly-e708-q1.dts +0 -124
@@ -82,136 +61,12 @@
 ?????????};
 ?};
 
-&mmc0 {
- pinctrl-names = "default";
- pinctrl-0 = <&mmc0_pins_a>, <&mmc0_cd_pin_e708_q1>;
- vmmc-supply = <&reg_dcdc1>;
- bus-width = <4>;
- cd-gpios = <&pio 0 8 GPIO_ACTIVE_HIGH>; /* PA8 */
- cd-inverted;
- status = "okay";
-};
-
-&pio {
- mmc0_cd_pin_e708_q1: mmc0_cd_pin at 0 {
- allwinner,pins = "PA8";
- allwinner,function = "gpio_in";
- allwinner,drive = <SUN4I_PINCTRL_10_MA>;
- allwinner,pull = <SUN4I_PINCTRL_PULL_UP>;
- };
-
- usb0_id_detect_pin: usb0_id_detect_pin at 0 {
- allwinner,pins = "PA15";
- allwinner,function = "gpio_in";
- allwinner,drive = <SUN4I_PINCTRL_10_MA>;
- allwinner,pull = <SUN4I_PINCTRL_PULL_UP>;
- };
-};
-
-&p2wi {
- status = "okay";
-
- axp22x: pmic at 68 {
- compatible = "x-powers,axp221";
- reg = <0x68>;
- interrupt-parent = <&nmi_intc>;
- interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
- drivevbus-supply = <&reg_vcc5v0>;
- x-powers,drive-vbus-en;
- };
-};
-
-#include "axp22x.dtsi"
-
-&reg_aldo3 {
- regulator-always-on;
- regulator-min-microvolt = <2700000>;
- regulator-max-microvolt = <3300000>;
- regulator-name = "avcc";
-};
-
-&reg_dc1sw {
- regulator-name = "vcc-lcd";
-};
-
-&reg_dc5ldo {
- regulator-always-on;
- regulator-min-microvolt = <700000>;
- regulator-max-microvolt = <1320000>;
- regulator-name = "vdd-cpus"; /* This is an educated guess */
-};
-
-&reg_dcdc1 {
- regulator-always-on;
- regulator-min-microvolt = <3000000>;
- regulator-max-microvolt = <3000000>;
- regulator-name = "vcc-3v0";
-};
-
-&reg_dcdc2 {
- regulator-min-microvolt = <700000>;
- regulator-max-microvolt = <1320000>;
- regulator-name = "vdd-gpu";
-};
-
-&reg_dcdc3 {
- regulator-always-on;
- regulator-min-microvolt = <700000>;
- regulator-max-microvolt = <1320000>;
- regulator-name = "vdd-cpu";
-};
-
-&reg_dcdc4 {
- regulator-always-on;
- regulator-min-microvolt = <700000>;
- regulator-max-microvolt = <1320000>;
- regulator-name = "vdd-sys-dll";
-};
-
-&reg_dcdc5 {
- regulator-always-on;
- regulator-min-microvolt = <1500000>;
- regulator-max-microvolt = <1500000>;
- regulator-name = "vcc-dram";
-};
-
-&reg_dldo1 {
- regulator-min-microvolt = <3300000>;
- regulator-max-microvolt = <3300000>;
- regulator-name = "vcc-wifi";
-};
-
 ?&reg_dldo2 {
 ?????????regulator-min-microvolt = <1800000>;
 ?????????regulator-max-microvolt = <1800000>;
 ?????????regulator-name = "vcc-pg";
 ?};
 
-&reg_drivevbus {
- regulator-name = "usb0-vbus";
- status = "okay";
-};
-
 ?&simplefb_lcd {
- vcc-lcd-supply = <&reg_dc1sw>;
 ?????????vcc-pg-supply = <&reg_dldo2>;
 ?};
-
-&usb_otg {
- dr_mode = "otg";
- status = "okay";
-};
-
-&usb_power_supply {
- status = "okay";
-};
-
-&usbphy {
- pinctrl-names = "default";
- pinctrl-0 = <&usb0_id_detect_pin>;
- usb0_id_det-gpio = <&pio 0 15 GPIO_ACTIVE_HIGH>; /* PA15 */
- usb0_vbus_power-supply = <&usb_power_supply>;
- usb0_vbus-supply = <&reg_drivevbus>;
- usb1_vbus-supply = <&reg_dldo1>;
- status = "okay";
-};
arch/arm/boot/dts/sun6i-reference-design-tablet.dtsi renamed from arch/arm/boot/dts/sun6i-a31s-colorfly-e708-q1.dts +0 -0
similarity index 90%
copy from arch/arm/boot/dts/sun6i-a31s-colorfly-e708-q1.dts
copy to arch/arm/boot/dts/sun6i-reference-design-tablet.dtsi
index 34d8710..0c43430 100644
@@ -40,8 +40,6 @@

??* OTHER DEALINGS IN THE SOFTWARE.
??*/

arch/arm/boot/dts/sun6i-reference-design-tablet.dtsi renamed from arch/arm/boot/dts/sun6i-a31s-colorfly-e708-q1.dts +0 -2
-/dts-v1/;
-#include "sun6i-a31s.dtsi"

?#include "sunxi-common-regulators.dtsi"

?#include <dt-bindings/gpio/gpio.h>

arch/arm/boot/dts/sun6i-reference-design-tablet.dtsi renamed from arch/arm/boot/dts/sun6i-a31s-colorfly-e708-q1.dts +0 -0
@@ -49,9 +47,6 @@

?#include <dt-bindings/pinctrl/sun4i-a10.h>

?/ {
- model = "Colorfly E708 Q1 tablet";
- compatible = "colorfly,e708-q1", "allwinner,sun6i-a31s"; -
?????????aliases {
?????????????????serial0 = &uart0;
?????????};

arch/arm/boot/dts/sun6i-reference-design-tablet.dtsi renamed from arch/arm/boot/dts/sun6i-a31s-colorfly-e708-q1.dts +1 -21
@@ -66,20 +61,8 @@
 ?};
 
 ?&ehci0 {
- /* rtl8188etv wifi is connected here */
- status = "okay";
-};
-
-&lradc {
- vref-supply = <&reg_aldo3>;
+ /* Wifi is connected here */
 ?????????status = "okay";
-
- button at 1000 {
- label = "Home";
- linux,code = <KEY_HOMEPAGE>;
- channel = <0>;
- voltage = <1000000>;
- };
 ?};
 
 ?&mmc0 {
@@ -181,12 +164,6 @@
 ?????????regulator-name = "vcc-wifi";
 ?};
 
-&reg_dldo2 {
- regulator-min-microvolt = <1800000>;
- regulator-max-microvolt = <1800000>;
- regulator-name = "vcc-pg";
-};
-
 ?&reg_drivevbus {
 ?????????regulator-name = "usb0-vbus";
 ?????????status = "okay";
@@ -194,7 +171,6 @@
 
 ?&simplefb_lcd {
 ?????????vcc-lcd-supply = <&reg_dc1sw>;
- vcc-pg-supply = <&reg_dldo2>;
 ?};
 
 ?&usb_otg {
--

2.7.4

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel at lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

#5 lore raw

PATCH v2 2/3 ARM: dts: sun6i: Add sun6i-reference-design-tablet.dtsi

In reply to Hans de Goede

Hi,

Quoted 217 lines · Hans de Goede

Just like with a13/a23/a33 most a31 tablets are derived from the same reference design. Add a .dtsi file with all the common bits to avoid endless copy and pasting of these.

The sun6i-reference-design-tablet.dtsi this commit adds is a copy of sun6i-a31s-colorfly-e708-q1.dts with a few tablet specific bits removed / left in sun6i-a31s-colorfly-e708-q1.dts.

---
 arch/arm/boot/dts/sun6i-a31s-colorfly-e708-q1.dts  | 147 +--------------------
 ...8-q1.dts => sun6i-reference-design-tablet.dtsi} |  26 +---
 2 files changed, 2 insertions(+), 171 deletions(-)
 copy arch/arm/boot/dts/{sun6i-a31s-colorfly-e708-q1.dts => sun6i-reference-design-tablet.dtsi} (90%)
arch/arm/boot/dts/sun6i-a31s-colorfly-e708-q1.dts +1 -146
index 34d8710..882a4d8 100644
@@ -42,32 +42,11 @@
 
 /dts-v1/;
 #include "sun6i-a31s.dtsi"
-#include "sunxi-common-regulators.dtsi"
-
-#include <dt-bindings/gpio/gpio.h>
-#include <dt-bindings/input/input.h>
-#include <dt-bindings/pinctrl/sun4i-a10.h>
+#include "sun6i-reference-design-tablet.dtsi"
 
 / {
        model = "Colorfly E708 Q1 tablet";
        compatible = "colorfly,e708-q1", "allwinner,sun6i-a31s";
-
-       aliases {
-               serial0 = &uart0;
-       };
-
-       chosen {
-               stdout-path = "serial0:115200n8";
-       };
-};
-
-&cpu0 {
-       cpu-supply = <&reg_dcdc3>;
-};
-
-&ehci0 {
-       /* rtl8188etv wifi is connected here */
-       status = "okay";
 };
 
 &lradc {
@@ -82,136 +61,12 @@
        };
 };
 
-&mmc0 {
-       pinctrl-names = "default";
-       pinctrl-0 = <&mmc0_pins_a>, <&mmc0_cd_pin_e708_q1>;
-       vmmc-supply = <&reg_dcdc1>;
-       bus-width = <4>;
-       cd-gpios = <&pio 0 8 GPIO_ACTIVE_HIGH>; /* PA8 */
-       cd-inverted;
-       status = "okay";
-};
-
-&pio {
-       mmc0_cd_pin_e708_q1: mmc0_cd_pin at 0 {
-               allwinner,pins = "PA8";
-               allwinner,function = "gpio_in";
-               allwinner,drive = <SUN4I_PINCTRL_10_MA>;
-               allwinner,pull = <SUN4I_PINCTRL_PULL_UP>;
-       };
-
-       usb0_id_detect_pin: usb0_id_detect_pin at 0 {
-               allwinner,pins = "PA15";
-               allwinner,function = "gpio_in";
-               allwinner,drive = <SUN4I_PINCTRL_10_MA>;
-               allwinner,pull = <SUN4I_PINCTRL_PULL_UP>;
-       };
-};
-
-&p2wi {
-       status = "okay";
-
-       axp22x: pmic at 68 {
-               compatible = "x-powers,axp221";
-               reg = <0x68>;
-               interrupt-parent = <&nmi_intc>;
-               interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
-               drivevbus-supply = <&reg_vcc5v0>;
-               x-powers,drive-vbus-en;
-       };
-};
-
-#include "axp22x.dtsi"
-
-&reg_aldo3 {
-       regulator-always-on;
-       regulator-min-microvolt = <2700000>;
-       regulator-max-microvolt = <3300000>;
-       regulator-name = "avcc";
-};
-
-&reg_dc1sw {
-       regulator-name = "vcc-lcd";
-};
-
-&reg_dc5ldo {
-       regulator-always-on;
-       regulator-min-microvolt = <700000>;
-       regulator-max-microvolt = <1320000>;
-       regulator-name = "vdd-cpus"; /* This is an educated guess */
-};
-
-&reg_dcdc1 {
-       regulator-always-on;
-       regulator-min-microvolt = <3000000>;
-       regulator-max-microvolt = <3000000>;
-       regulator-name = "vcc-3v0";
-};
-
-&reg_dcdc2 {
-       regulator-min-microvolt = <700000>;
-       regulator-max-microvolt = <1320000>;
-       regulator-name = "vdd-gpu";
-};
-
-&reg_dcdc3 {
-       regulator-always-on;
-       regulator-min-microvolt = <700000>;
-       regulator-max-microvolt = <1320000>;
-       regulator-name = "vdd-cpu";
-};
-
-&reg_dcdc4 {
-       regulator-always-on;
-       regulator-min-microvolt = <700000>;
-       regulator-max-microvolt = <1320000>;
-       regulator-name = "vdd-sys-dll";
-};
-
-&reg_dcdc5 {
-       regulator-always-on;
-       regulator-min-microvolt = <1500000>;
-       regulator-max-microvolt = <1500000>;
-       regulator-name = "vcc-dram";
-};
-
-&reg_dldo1 {
-       regulator-min-microvolt = <3300000>;
-       regulator-max-microvolt = <3300000>;
-       regulator-name = "vcc-wifi";
-};
-
 &reg_dldo2 {
        regulator-min-microvolt = <1800000>;
        regulator-max-microvolt = <1800000>;
        regulator-name = "vcc-pg";
 };
 
-&reg_drivevbus {
-       regulator-name = "usb0-vbus";
-       status = "okay";
-};
-
 &simplefb_lcd {
-       vcc-lcd-supply = <&reg_dc1sw>;
        vcc-pg-supply = <&reg_dldo2>;
 };
-
-&usb_otg {
-       dr_mode = "otg";
-       status = "okay";
-};
-
-&usb_power_supply {
-       status = "okay";
-};
-
-&usbphy {
-       pinctrl-names = "default";
-       pinctrl-0 = <&usb0_id_detect_pin>;
-       usb0_id_det-gpio = <&pio 0 15 GPIO_ACTIVE_HIGH>; /* PA15 */
-       usb0_vbus_power-supply = <&usb_power_supply>;
-       usb0_vbus-supply = <&reg_drivevbus>;
-       usb1_vbus-supply = <&reg_dldo1>;
-       status = "okay";
-};
arch/arm/boot/dts/sun6i-reference-design-tablet.dtsi renamed from arch/arm/boot/dts/sun6i-a31s-colorfly-e708-q1.dts +0 -5
similarity index 90%
copy from arch/arm/boot/dts/sun6i-a31s-colorfly-e708-q1.dts
copy to arch/arm/boot/dts/sun6i-reference-design-tablet.dtsi
index 34d8710..0c43430 100644
@@ -40,8 +40,6 @@
  *     OTHER DEALINGS IN THE SOFTWARE.
  */
 
-/dts-v1/;
-#include "sun6i-a31s.dtsi"
 #include "sunxi-common-regulators.dtsi"
 
 #include <dt-bindings/gpio/gpio.h>
@@ -49,9 +47,6 @@
 #include <dt-bindings/pinctrl/sun4i-a10.h>
 
 / {
-       model = "Colorfly E708 Q1 tablet";
-       compatible = "colorfly,e708-q1", "allwinner,sun6i-a31s";
-
        aliases {
                serial0 = &uart0;
        };

arch/arm/boot/dts/sun6i-reference-design-tablet.dtsi line 73

Quoted 8 lines
arch/arm/boot/dts/sun6i-reference-design-tablet.dtsi renamed from arch/arm/boot/dts/sun6i-a31s-colorfly-e708-q1.dts +0 -5
@@ -66,20 +61,8 @@
 };
 
 &ehci0 {
-       /* rtl8188etv wifi is connected here */
-       status = "okay";
-};
-
-&lradc {

Shouldn't LRADC be standard for tablets?
Or are we looking at tablets with "soft" buttons?

Otherwise,

Quoted 37 lines
arch/arm/boot/dts/sun6i-reference-design-tablet.dtsi renamed from arch/arm/boot/dts/sun6i-a31s-colorfly-e708-q1.dts +1 -16
-       vref-supply = <&reg_aldo3>;
+       /* Wifi is connected here */
        status = "okay";
-
-       button at 1000 {
-               label = "Home";
-               linux,code = <KEY_HOMEPAGE>;
-               channel = <0>;
-               voltage = <1000000>;
-       };
 };
 
 &mmc0 {
@@ -181,12 +164,6 @@
        regulator-name = "vcc-wifi";
 };
 
-&reg_dldo2 {
-       regulator-min-microvolt = <1800000>;
-       regulator-max-microvolt = <1800000>;
-       regulator-name = "vcc-pg";
-};
-
 &reg_drivevbus {
        regulator-name = "usb0-vbus";
        status = "okay";
@@ -194,7 +171,6 @@
 
 &simplefb_lcd {
        vcc-lcd-supply = <&reg_dc1sw>;
-       vcc-pg-supply = <&reg_dldo2>;
 };
 
 &usb_otg {
--

2.7.4

#6 lore raw

PATCH v2 2/3 ARM: dts: sun6i: Add sun6i-reference-design-tablet.dtsi

Hi,

Quoted 222 lines · Chen-Yu Tsai

Hi,

Quoted 219 lines · Hans de Goede

Just like with a13/a23/a33 most a31 tablets are derived from the same reference design. Add a .dtsi file with all the common bits to avoid endless copy and pasting of these.

The sun6i-reference-design-tablet.dtsi this commit adds is a copy of sun6i-a31s-colorfly-e708-q1.dts with a few tablet specific bits removed / left in sun6i-a31s-colorfly-e708-q1.dts.

---
 arch/arm/boot/dts/sun6i-a31s-colorfly-e708-q1.dts  | 147 +--------------------
 ...8-q1.dts => sun6i-reference-design-tablet.dtsi} |  26 +---
 2 files changed, 2 insertions(+), 171 deletions(-)
 copy arch/arm/boot/dts/{sun6i-a31s-colorfly-e708-q1.dts => sun6i-reference-design-tablet.dtsi} (90%)
arch/arm/boot/dts/sun6i-a31s-colorfly-e708-q1.dts +1 -146
index 34d8710..882a4d8 100644
@@ -42,32 +42,11 @@
 
 /dts-v1/;
 #include "sun6i-a31s.dtsi"
-#include "sunxi-common-regulators.dtsi"
-
-#include <dt-bindings/gpio/gpio.h>
-#include <dt-bindings/input/input.h>
-#include <dt-bindings/pinctrl/sun4i-a10.h>
+#include "sun6i-reference-design-tablet.dtsi"
 
 / {
        model = "Colorfly E708 Q1 tablet";
        compatible = "colorfly,e708-q1", "allwinner,sun6i-a31s";
-
-       aliases {
-               serial0 = &uart0;
-       };
-
-       chosen {
-               stdout-path = "serial0:115200n8";
-       };
-};
-
-&cpu0 {
-       cpu-supply = <&reg_dcdc3>;
-};
-
-&ehci0 {
-       /* rtl8188etv wifi is connected here */
-       status = "okay";
 };
 
 &lradc {
@@ -82,136 +61,12 @@
        };
 };
 
-&mmc0 {
-       pinctrl-names = "default";
-       pinctrl-0 = <&mmc0_pins_a>, <&mmc0_cd_pin_e708_q1>;
-       vmmc-supply = <&reg_dcdc1>;
-       bus-width = <4>;
-       cd-gpios = <&pio 0 8 GPIO_ACTIVE_HIGH>; /* PA8 */
-       cd-inverted;
-       status = "okay";
-};
-
-&pio {
-       mmc0_cd_pin_e708_q1: mmc0_cd_pin at 0 {
-               allwinner,pins = "PA8";
-               allwinner,function = "gpio_in";
-               allwinner,drive = <SUN4I_PINCTRL_10_MA>;
-               allwinner,pull = <SUN4I_PINCTRL_PULL_UP>;
-       };
-
-       usb0_id_detect_pin: usb0_id_detect_pin at 0 {
-               allwinner,pins = "PA15";
-               allwinner,function = "gpio_in";
-               allwinner,drive = <SUN4I_PINCTRL_10_MA>;
-               allwinner,pull = <SUN4I_PINCTRL_PULL_UP>;
-       };
-};
-
-&p2wi {
-       status = "okay";
-
-       axp22x: pmic at 68 {
-               compatible = "x-powers,axp221";
-               reg = <0x68>;
-               interrupt-parent = <&nmi_intc>;
-               interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
-               drivevbus-supply = <&reg_vcc5v0>;
-               x-powers,drive-vbus-en;
-       };
-};
-
-#include "axp22x.dtsi"
-
-&reg_aldo3 {
-       regulator-always-on;
-       regulator-min-microvolt = <2700000>;
-       regulator-max-microvolt = <3300000>;
-       regulator-name = "avcc";
-};
-
-&reg_dc1sw {
-       regulator-name = "vcc-lcd";
-};
-
-&reg_dc5ldo {
-       regulator-always-on;
-       regulator-min-microvolt = <700000>;
-       regulator-max-microvolt = <1320000>;
-       regulator-name = "vdd-cpus"; /* This is an educated guess */
-};
-
-&reg_dcdc1 {
-       regulator-always-on;
-       regulator-min-microvolt = <3000000>;
-       regulator-max-microvolt = <3000000>;
-       regulator-name = "vcc-3v0";
-};
-
-&reg_dcdc2 {
-       regulator-min-microvolt = <700000>;
-       regulator-max-microvolt = <1320000>;
-       regulator-name = "vdd-gpu";
-};
-
-&reg_dcdc3 {
-       regulator-always-on;
-       regulator-min-microvolt = <700000>;
-       regulator-max-microvolt = <1320000>;
-       regulator-name = "vdd-cpu";
-};
-
-&reg_dcdc4 {
-       regulator-always-on;
-       regulator-min-microvolt = <700000>;
-       regulator-max-microvolt = <1320000>;
-       regulator-name = "vdd-sys-dll";
-};
-
-&reg_dcdc5 {
-       regulator-always-on;
-       regulator-min-microvolt = <1500000>;
-       regulator-max-microvolt = <1500000>;
-       regulator-name = "vcc-dram";
-};
-
-&reg_dldo1 {
-       regulator-min-microvolt = <3300000>;
-       regulator-max-microvolt = <3300000>;
-       regulator-name = "vcc-wifi";
-};
-
 &reg_dldo2 {
        regulator-min-microvolt = <1800000>;
        regulator-max-microvolt = <1800000>;
        regulator-name = "vcc-pg";
 };
 
-&reg_drivevbus {
-       regulator-name = "usb0-vbus";
-       status = "okay";
-};
-
 &simplefb_lcd {
-       vcc-lcd-supply = <&reg_dc1sw>;
        vcc-pg-supply = <&reg_dldo2>;
 };
-
-&usb_otg {
-       dr_mode = "otg";
-       status = "okay";
-};
-
-&usb_power_supply {
-       status = "okay";
-};
-
-&usbphy {
-       pinctrl-names = "default";
-       pinctrl-0 = <&usb0_id_detect_pin>;
-       usb0_id_det-gpio = <&pio 0 15 GPIO_ACTIVE_HIGH>; /* PA15 */
-       usb0_vbus_power-supply = <&usb_power_supply>;
-       usb0_vbus-supply = <&reg_drivevbus>;
-       usb1_vbus-supply = <&reg_dldo1>;
-       status = "okay";
-};
arch/arm/boot/dts/sun6i-reference-design-tablet.dtsi renamed from arch/arm/boot/dts/sun6i-a31s-colorfly-e708-q1.dts +0 -5
similarity index 90%
copy from arch/arm/boot/dts/sun6i-a31s-colorfly-e708-q1.dts
copy to arch/arm/boot/dts/sun6i-reference-design-tablet.dtsi
index 34d8710..0c43430 100644
@@ -40,8 +40,6 @@
  *     OTHER DEALINGS IN THE SOFTWARE.
  */
 
-/dts-v1/;
-#include "sun6i-a31s.dtsi"
 #include "sunxi-common-regulators.dtsi"
 
 #include <dt-bindings/gpio/gpio.h>
@@ -49,9 +47,6 @@
 #include <dt-bindings/pinctrl/sun4i-a10.h>
 
 / {
-       model = "Colorfly E708 Q1 tablet";
-       compatible = "colorfly,e708-q1", "allwinner,sun6i-a31s";
-
        aliases {
                serial0 = &uart0;
        };
@@ -66,20 +61,8 @@
 };
 
Quoted 9 lines

arch/arm/boot/dts/sun6i-reference-design-tablet.dtsi line 73

Quoted 6 lines
arch/arm/boot/dts/sun6i-reference-design-tablet.dtsi renamed from arch/arm/boot/dts/sun6i-a31s-colorfly-e708-q1.dts +0 -5
 &ehci0 {
-       /* rtl8188etv wifi is connected here */
-       status = "okay";
-};
-
-&lradc {

Shouldn't LRADC be standard for tablets?
Or are we looking at tablets with "soft" buttons?

All A31 tablets I have do use the LRADC, but they do not use standard button <-> voltage mappings as A13 / A23 / A33 tablets do. Which buttons they have varies quie a bit, and they tend to not use the same voltages for e.g. volume-up / volume-down across tablets AFAICT.

Regards,

Hans

Quoted 43 lines

Otherwise,

Quoted 37 lines
arch/arm/boot/dts/sun6i-reference-design-tablet.dtsi renamed from arch/arm/boot/dts/sun6i-a31s-colorfly-e708-q1.dts +1 -16
-       vref-supply = <&reg_aldo3>;
+       /* Wifi is connected here */
        status = "okay";
-
-       button at 1000 {
-               label = "Home";
-               linux,code = <KEY_HOMEPAGE>;
-               channel = <0>;
-               voltage = <1000000>;
-       };
 };
 
 &mmc0 {
@@ -181,12 +164,6 @@
        regulator-name = "vcc-wifi";
 };
 
-&reg_dldo2 {
-       regulator-min-microvolt = <1800000>;
-       regulator-max-microvolt = <1800000>;
-       regulator-name = "vcc-pg";
-};
-
 &reg_drivevbus {
        regulator-name = "usb0-vbus";
        status = "okay";
@@ -194,7 +171,6 @@
 
 &simplefb_lcd {
        vcc-lcd-supply = <&reg_dc1sw>;
-       vcc-pg-supply = <&reg_dldo2>;
 };
 
 &usb_otg {
--

2.7.4

#7 lore raw

PATCH v2 2/3 ARM: dts: sun6i: Add sun6i-reference-design-tablet.dtsi

22.08.2016, 17:01, "Hans de Goede" <[email protected]>:

Quoted 235 lines

Hi,

Quoted 229 lines · Chen-Yu Tsai

?Hi,

Quoted 219 lines · Hans de Goede

?Just like with a13/a23/a33 most a31 tablets are derived from the same ?reference design. Add a .dtsi file with all the common bits to avoid ?endless copy and pasting of these.

?The sun6i-reference-design-tablet.dtsi this commit adds is a copy ?of sun6i-a31s-colorfly-e708-q1.dts with a few tablet specific bits ?removed / left in sun6i-a31s-colorfly-e708-q1.dts.

?Signed-off-by: Hans de Goede <[email protected]>
?---
??arch/arm/boot/dts/sun6i-a31s-colorfly-e708-q1.dts | 147 +-------------------- ??...8-q1.dts => sun6i-reference-design-tablet.dtsi} | 26 +---
??2 files changed, 2 insertions(+), 171 deletions(-)
??copy arch/arm/boot/dts/{sun6i-a31s-colorfly-e708-q1.dts => sun6i-reference-design-tablet.dtsi} (90%)

?diff --git a/arch/arm/boot/dts/sun6i-a31s-colorfly-e708-q1.dts b/arch/arm/boot/dts/sun6i-a31s-colorfly-e708-q1.dts ?index 34d8710..882a4d8 100644
?--- a/arch/arm/boot/dts/sun6i-a31s-colorfly-e708-q1.dts
?+++ b/arch/arm/boot/dts/sun6i-a31s-colorfly-e708-q1.dts
?@@ -42,32 +42,11 @@

??/dts-v1/;
??#include "sun6i-a31s.dtsi"
?-#include "sunxi-common-regulators.dtsi"
?-
?-#include <dt-bindings/gpio/gpio.h>
?-#include <dt-bindings/input/input.h>
?-#include <dt-bindings/pinctrl/sun4i-a10.h>
?+#include "sun6i-reference-design-tablet.dtsi"

??/ {
?????????model = "Colorfly E708 Q1 tablet"; ?????????compatible = "colorfly,e708-q1", "allwinner,sun6i-a31s"; ?-
?- aliases {
?- serial0 = &uart0;
?- };
?-
?- chosen {
?- stdout-path = "serial0:115200n8";
?- };
?-};
?-
?-&cpu0 {
?- cpu-supply = <&reg_dcdc3>;
?-};
?-
?-&ehci0 {
?- /* rtl8188etv wifi is connected here */
?- status = "okay";
??};

??&lradc {
?@@ -82,136 +61,12 @@
?????????};
??};

?-&mmc0 {
?- pinctrl-names = "default";
?- pinctrl-0 = <&mmc0_pins_a>, <&mmc0_cd_pin_e708_q1>; ?- vmmc-supply = <&reg_dcdc1>;
?- bus-width = <4>;
?- cd-gpios = <&pio 0 8 GPIO_ACTIVE_HIGH>; /* PA8 */ ?- cd-inverted;
?- status = "okay";
?-};
?-
?-&pio {
?- mmc0_cd_pin_e708_q1: mmc0_cd_pin at 0 {
?- allwinner,pins = "PA8";
?- allwinner,function = "gpio_in";
?- allwinner,drive = <SUN4I_PINCTRL_10_MA>;
?- allwinner,pull = <SUN4I_PINCTRL_PULL_UP>;
?- };
?-
?- usb0_id_detect_pin: usb0_id_detect_pin at 0 {
?- allwinner,pins = "PA15";
?- allwinner,function = "gpio_in";
?- allwinner,drive = <SUN4I_PINCTRL_10_MA>;
?- allwinner,pull = <SUN4I_PINCTRL_PULL_UP>;
?- };
?-};
?-
?-&p2wi {
?- status = "okay";
?-
?- axp22x: pmic at 68 {
?- compatible = "x-powers,axp221";
?- reg = <0x68>;
?- interrupt-parent = <&nmi_intc>;
?- interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
?- drivevbus-supply = <&reg_vcc5v0>;
?- x-powers,drive-vbus-en;
?- };
?-};
?-
?-#include "axp22x.dtsi"
?-
?-&reg_aldo3 {
?- regulator-always-on;
?- regulator-min-microvolt = <2700000>;
?- regulator-max-microvolt = <3300000>;
?- regulator-name = "avcc";
?-};
?-
?-&reg_dc1sw {
?- regulator-name = "vcc-lcd";
?-};
?-
?-&reg_dc5ldo {
?- regulator-always-on;
?- regulator-min-microvolt = <700000>;
?- regulator-max-microvolt = <1320000>;
?- regulator-name = "vdd-cpus"; /* This is an educated guess */ ?-};
?-
?-&reg_dcdc1 {
?- regulator-always-on;
?- regulator-min-microvolt = <3000000>;
?- regulator-max-microvolt = <3000000>;
?- regulator-name = "vcc-3v0";
?-};
?-
?-&reg_dcdc2 {
?- regulator-min-microvolt = <700000>;
?- regulator-max-microvolt = <1320000>;
?- regulator-name = "vdd-gpu";
?-};
?-
?-&reg_dcdc3 {
?- regulator-always-on;
?- regulator-min-microvolt = <700000>;
?- regulator-max-microvolt = <1320000>;
?- regulator-name = "vdd-cpu";
?-};
?-
?-&reg_dcdc4 {
?- regulator-always-on;
?- regulator-min-microvolt = <700000>;
?- regulator-max-microvolt = <1320000>;
?- regulator-name = "vdd-sys-dll";
?-};
?-
?-&reg_dcdc5 {
?- regulator-always-on;
?- regulator-min-microvolt = <1500000>;
?- regulator-max-microvolt = <1500000>;
?- regulator-name = "vcc-dram";
?-};
?-
?-&reg_dldo1 {
?- regulator-min-microvolt = <3300000>;
?- regulator-max-microvolt = <3300000>;
?- regulator-name = "vcc-wifi";
?-};
?-
??&reg_dldo2 {
?????????regulator-min-microvolt = <1800000>; ?????????regulator-max-microvolt = <1800000>; ?????????regulator-name = "vcc-pg";
??};

?-&reg_drivevbus {
?- regulator-name = "usb0-vbus";
?- status = "okay";
?-};
?-
??&simplefb_lcd {
?- vcc-lcd-supply = <&reg_dc1sw>;
?????????vcc-pg-supply = <&reg_dldo2>;
??};
?-
?-&usb_otg {
?- dr_mode = "otg";
?- status = "okay";
?-};
?-
?-&usb_power_supply {
?- status = "okay";
?-};
?-
?-&usbphy {
?- pinctrl-names = "default";
?- pinctrl-0 = <&usb0_id_detect_pin>;
?- usb0_id_det-gpio = <&pio 0 15 GPIO_ACTIVE_HIGH>; /* PA15 */
?- usb0_vbus_power-supply = <&usb_power_supply>;
?- usb0_vbus-supply = <&reg_drivevbus>;
?- usb1_vbus-supply = <&reg_dldo1>;
?- status = "okay";
?-};
?diff --git a/arch/arm/boot/dts/sun6i-a31s-colorfly-e708-q1.dts b/arch/arm/boot/dts/sun6i-reference-design-tablet.dtsi ?similarity index 90%
?copy from arch/arm/boot/dts/sun6i-a31s-colorfly-e708-q1.dts
?copy to arch/arm/boot/dts/sun6i-reference-design-tablet.dtsi
?index 34d8710..0c43430 100644
?--- a/arch/arm/boot/dts/sun6i-a31s-colorfly-e708-q1.dts
?+++ b/arch/arm/boot/dts/sun6i-reference-design-tablet.dtsi
?@@ -40,8 +40,6 @@
???* OTHER DEALINGS IN THE SOFTWARE.
???*/

?-/dts-v1/;
?-#include "sun6i-a31s.dtsi"
??#include "sunxi-common-regulators.dtsi"

??#include <dt-bindings/gpio/gpio.h>
?@@ -49,9 +47,6 @@
??#include <dt-bindings/pinctrl/sun4i-a10.h>

??/ {
?- model = "Colorfly E708 Q1 tablet";
?- compatible = "colorfly,e708-q1", "allwinner,sun6i-a31s"; ?-
?????????aliases {
?????????????????serial0 = &uart0;
?????????};
?@@ -66,20 +61,8 @@
??};

Quoted 6 lines

??&ehci0 {
?- /* rtl8188etv wifi is connected here */
?- status = "okay";
?-};
?-
?-&lradc {

Quoted 2 lines

?Shouldn't LRADC be standard for tablets? ?Or are we looking at tablets with "soft" buttons?

Quoted 6 lines

All A31 tablets I have do use the LRADC, but they do not use standard button <-> voltage mappings as A13 / A23 / A33 tablets do. Which buttons they have varies quie a bit, and they tend to not use the same voltages for e.g. volume-up / volume-down across tablets AFAICT.

Yes... I also found it...
And how to check the right values?
I cannot find them for my friend's Viewsonic ViewPad 133Q.

Quoted 50 lines

Regards,

Hans

Quoted 40 lines

?Otherwise,

?Acked-by: Chen-Yu Tsai <[email protected]>

Quoted 36 lines

?- vref-supply = <&reg_aldo3>;
?+ /* Wifi is connected here */
?????????status = "okay";
?-
?- button at 1000 {
?- label = "Home";
?- linux,code = <KEY_HOMEPAGE>;
?- channel = <0>;
?- voltage = <1000000>;
?- };
??};

??&mmc0 {
?@@ -181,12 +164,6 @@
?????????regulator-name = "vcc-wifi";
??};

?-&reg_dldo2 {
?- regulator-min-microvolt = <1800000>;
?- regulator-max-microvolt = <1800000>;
?- regulator-name = "vcc-pg";
?-};
?-
??&reg_drivevbus {
?????????regulator-name = "usb0-vbus";
?????????status = "okay";
?@@ -194,7 +171,6 @@

??&simplefb_lcd {
?????????vcc-lcd-supply = <&reg_dc1sw>;
?- vcc-pg-supply = <&reg_dldo2>;
??};

??&usb_otg {
?--
?2.7.4

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel at lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

#8 lore raw

PATCH v2 2/3 ARM: dts: sun6i: Add sun6i-reference-design-tablet.dtsi

HI,

Quoted 245 lines · Icenowy Zheng

22.08.2016, 17:01, "Hans de Goede" <[email protected]>:

Quoted 235 lines

Hi,

Quoted 229 lines · Chen-Yu Tsai

Hi,

Quoted 219 lines · Hans de Goede

Just like with a13/a23/a33 most a31 tablets are derived from the same reference design. Add a .dtsi file with all the common bits to avoid endless copy and pasting of these.

The sun6i-reference-design-tablet.dtsi this commit adds is a copy of sun6i-a31s-colorfly-e708-q1.dts with a few tablet specific bits removed / left in sun6i-a31s-colorfly-e708-q1.dts.

---

  arch/arm/boot/dts/sun6i-a31s-colorfly-e708-q1.dts | 147 +--------------------
  ...8-q1.dts => sun6i-reference-design-tablet.dtsi} | 26 +---
  2 files changed, 2 insertions(+), 171 deletions(-)

copy arch/arm/boot/dts/{sun6i-a31s-colorfly-e708-q1.dts => sun6i-reference-design-tablet.dtsi} (90%)

diff --git a/arch/arm/boot/dts/sun6i-a31s-colorfly-e708-q1.dts b/arch/arm/boot/dts/sun6i-a31s-colorfly-e708-q1.dts index 34d8710..882a4d8 100644
--- a/arch/arm/boot/dts/sun6i-a31s-colorfly-e708-q1.dts
+++ b/arch/arm/boot/dts/sun6i-a31s-colorfly-e708-q1.dts
@@ -42,32 +42,11 @@

/dts-v1/;
#include "sun6i-a31s.dtsi"
-#include "sunxi-common-regulators.dtsi"
-
-#include <dt-bindings/gpio/gpio.h>
-#include <dt-bindings/input/input.h>
-#include <dt-bindings/pinctrl/sun4i-a10.h>
+#include "sun6i-reference-design-tablet.dtsi"

  / {
         model = "Colorfly E708 Q1 tablet";
         compatible = "colorfly,e708-q1", "allwinner,sun6i-a31s";

-
- aliases {
- serial0 = &uart0;
- };
-
- chosen {
- stdout-path = "serial0:115200n8";
- };
-};
-
-&cpu0 {
- cpu-supply = <&reg_dcdc3>;
-};
-
-&ehci0 {
- /* rtl8188etv wifi is connected here */
- status = "okay";
};

&lradc {
@@ -82,136 +61,12 @@

         };

};

-&mmc0 {
- pinctrl-names = "default";
- pinctrl-0 = <&mmc0_pins_a>, <&mmc0_cd_pin_e708_q1>;
- vmmc-supply = <&reg_dcdc1>;
- bus-width = <4>;
- cd-gpios = <&pio 0 8 GPIO_ACTIVE_HIGH>; /* PA8 */
- cd-inverted;
- status = "okay";
-};
-
-&pio {
- mmc0_cd_pin_e708_q1: mmc0_cd_pin at 0 {
- allwinner,pins = "PA8";
- allwinner,function = "gpio_in";
- allwinner,drive = <SUN4I_PINCTRL_10_MA>;
- allwinner,pull = <SUN4I_PINCTRL_PULL_UP>;
- };
-
- usb0_id_detect_pin: usb0_id_detect_pin at 0 {
- allwinner,pins = "PA15";
- allwinner,function = "gpio_in";
- allwinner,drive = <SUN4I_PINCTRL_10_MA>;
- allwinner,pull = <SUN4I_PINCTRL_PULL_UP>;
- };
-};
-
-&p2wi {
- status = "okay";
-
- axp22x: pmic at 68 {
- compatible = "x-powers,axp221";
- reg = <0x68>;
- interrupt-parent = <&nmi_intc>;
- interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
- drivevbus-supply = <&reg_vcc5v0>;
- x-powers,drive-vbus-en;
- };
-};
-
-#include "axp22x.dtsi"
-
-&reg_aldo3 {
- regulator-always-on;
- regulator-min-microvolt = <2700000>;
- regulator-max-microvolt = <3300000>;
- regulator-name = "avcc";
-};
-
-&reg_dc1sw {
- regulator-name = "vcc-lcd";
-};
-
-&reg_dc5ldo {
- regulator-always-on;
- regulator-min-microvolt = <700000>;
- regulator-max-microvolt = <1320000>;
- regulator-name = "vdd-cpus"; /* This is an educated guess */ -};
-
-&reg_dcdc1 {
- regulator-always-on;
- regulator-min-microvolt = <3000000>;
- regulator-max-microvolt = <3000000>;
- regulator-name = "vcc-3v0";
-};
-
-&reg_dcdc2 {
- regulator-min-microvolt = <700000>;
- regulator-max-microvolt = <1320000>;
- regulator-name = "vdd-gpu";
-};
-
-&reg_dcdc3 {
- regulator-always-on;
- regulator-min-microvolt = <700000>;
- regulator-max-microvolt = <1320000>;
- regulator-name = "vdd-cpu";
-};
-
-&reg_dcdc4 {
- regulator-always-on;
- regulator-min-microvolt = <700000>;
- regulator-max-microvolt = <1320000>;
- regulator-name = "vdd-sys-dll";
-};
-
-&reg_dcdc5 {
- regulator-always-on;
- regulator-min-microvolt = <1500000>;
- regulator-max-microvolt = <1500000>;
- regulator-name = "vcc-dram";
-};
-
-&reg_dldo1 {
- regulator-min-microvolt = <3300000>;
- regulator-max-microvolt = <3300000>;
- regulator-name = "vcc-wifi";
-};
-

  &reg_dldo2 {
         regulator-min-microvolt = <1800000>;
         regulator-max-microvolt = <1800000>;
         regulator-name = "vcc-pg";

};

-&reg_drivevbus {
- regulator-name = "usb0-vbus";
- status = "okay";
-};
-
&simplefb_lcd {

 - vcc-lcd-supply = <&reg_dc1sw>;
         vcc-pg-supply = <&reg_dldo2>;
  };
 -
 -&usb_otg {
 - dr_mode = "otg";
 - status = "okay";
 -};
 -
 -&usb_power_supply {
 - status = "okay";
 -};
 -
 -&usbphy {
 - pinctrl-names = "default";
 - pinctrl-0 = <&usb0_id_detect_pin>;
 - usb0_id_det-gpio = <&pio 0 15 GPIO_ACTIVE_HIGH>; /* PA15 */
 - usb0_vbus_power-supply = <&usb_power_supply>;
 - usb0_vbus-supply = <&reg_drivevbus>;
 - usb1_vbus-supply = <&reg_dldo1>;
 - status = "okay";
 -};
 diff --git a/arch/arm/boot/dts/sun6i-a31s-colorfly-e708-q1.dts b/arch/arm/boot/dts/sun6i-reference-design-tablet.dtsi
 similarity index 90%
 copy from arch/arm/boot/dts/sun6i-a31s-colorfly-e708-q1.dts
 copy to arch/arm/boot/dts/sun6i-reference-design-tablet.dtsi

index 34d8710..0c43430 100644
--- a/arch/arm/boot/dts/sun6i-a31s-colorfly-e708-q1.dts +++ b/arch/arm/boot/dts/sun6i-reference-design-tablet.dtsi @@ -40,8 +40,6 @@
* OTHER DEALINGS IN THE SOFTWARE.
*/

-/dts-v1/;
-#include "sun6i-a31s.dtsi"
#include "sunxi-common-regulators.dtsi"

#include <dt-bindings/gpio/gpio.h>
@@ -49,9 +47,6 @@
#include <dt-bindings/pinctrl/sun4i-a10.h>

/ {
- model = "Colorfly E708 Q1 tablet";
- compatible = "colorfly,e708-q1", "allwinner,sun6i-a31s"; -

         aliases {
                 serial0 = &uart0;
         };

@@ -66,20 +61,8 @@
};

Quoted 6 lines

&ehci0 {
- /* rtl8188etv wifi is connected here */
- status = "okay";
-};
-
-&lradc {

Quoted 2 lines

Shouldn't LRADC be standard for tablets? Or are we looking at tablets with "soft" buttons?

Quoted 6 lines

All A31 tablets I have do use the LRADC, but they do not use standard button <-> voltage mappings as A13 / A23 / A33 tablets do. Which buttons they have varies quie a bit, and they tend to not use the same voltages for e.g. volume-up / volume-down across tablets AFAICT.

Quoted 3 lines

Yes... I also found it...
And how to check the right values?
I cannot find them for my friend's Viewsonic ViewPad 133Q.

I usually build the driver with a debug printk added like this:

drivers/input/keyboard/sun4i-lradc-keys.c +1 -0
@@ -99,6 +99,7 @@ static irqreturn_t sun4i_lradc_irq(int irq, void *dev_id)
         if ((ints & CHAN0_KEYDOWN_IRQ) && lradc->chan0_keycode == 0) {
                 val = readl(lradc->base + LRADC_DATA0) & 0x3f;
                 voltage = val * lradc->vref / 63;
+         pr_err("sun4i-lradc voltage %d\n", voltage);
 
                 for (i = 0; i < lradc->chan0_map_count; i++) {
                         diff = abs(lradc->chan0_map[i].voltage - voltage);

When I need to figure out the values.

I hope that helps.

Regards,

Hans

Quoted 51 lines
Quoted 51 lines

Regards,

Hans

Quoted 40 lines

Otherwise,

Quoted 36 lines

- vref-supply = <&reg_aldo3>;
+ /* Wifi is connected here */

         status = "okay";

-
- button at 1000 {
- label = "Home";
- linux,code = <KEY_HOMEPAGE>;
- channel = <0>;
- voltage = <1000000>;
- };
};

&mmc0 {
@@ -181,12 +164,6 @@

         regulator-name = "vcc-wifi";

};

-&reg_dldo2 {
- regulator-min-microvolt = <1800000>;
- regulator-max-microvolt = <1800000>;
- regulator-name = "vcc-pg";
-};
-

  &reg_drivevbus {
         regulator-name = "usb0-vbus";
         status = "okay";

@@ -194,7 +171,6 @@

  &simplefb_lcd {
         vcc-lcd-supply = <&reg_dc1sw>;

- vcc-pg-supply = <&reg_dldo2>;
};

&usb_otg {
--
2.7.4

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel at lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

#9 lore raw

PATCH v2 3/3 ARM: dts: sun6i: Add new dts file for tablets using the inet-q972 PCB

In reply to Hans de Goede

Add a dts file for tablets using the generic inet-q972 PCB.

Tablets with this PCB feature a mini-hdmi output, micro-usb usb-host, micro-usb usb-otg, 3.5mm headphone jack, a micro sd slot, (mini) power-barrel and an usb wifi module.

This has been tested on a 9.7" 1024x768 qware qw tb9718-qhd tablet.

---
 arch/arm/boot/dts/Makefile                 |   1 +
 arch/arm/boot/dts/sun6i-a31s-inet-q972.dts | 100 +++++++++++++++++++++++++++++
 2 files changed, 101 insertions(+)
 create mode 100644 arch/arm/boot/dts/sun6i-a31s-inet-q972.dts
arch/arm/boot/dts/Makefile +1 -0
index 498ebfd..5d984c9 100644
@@ -743,6 +743,7 @@ dtb-$(CONFIG_MACH_SUN6I) += \
 	sun6i-a31-mele-a1000g-quad.dtb \
 	sun6i-a31s-colorfly-e708-q1.dtb \
 	sun6i-a31s-cs908.dtb \
+	sun6i-a31s-inet-q972.dtb \
 	sun6i-a31s-primo81.dtb \
 	sun6i-a31s-sina31s.dtb \
 	sun6i-a31s-sinovoip-bpi-m2.dtb \
arch/arm/boot/dts/sun6i-a31s-inet-q972.dts new file +100 -0

100 lines not on this page · raw message

Signature · 1 line
2.7.4
#10 lore raw

PATCH v2 3/3 ARM: dts: sun6i: Add new dts file for tablets using the inet-q972 PCB

Quoted 9 lines · Hans de Goede

Add a dts file for tablets using the generic inet-q972 PCB.

Tablets with this PCB feature a mini-hdmi output, micro-usb usb-host, micro-usb usb-otg, 3.5mm headphone jack, a micro sd slot, (mini) power-barrel and an usb wifi module.

This has been tested on a 9.7" 1024x768 qware qw tb9718-qhd tablet.

#11 lore raw

v2 cover ARM: dts: sun6i: tablet dts changes

In reply to Hans de Goede

Review

Quoted 10 lines · Hans de Goede

Hi Maxime and Chen-Yu,

Here is a v2 of the series I sent earlier today, changes:

(quoted diff) +0 -2
-Add a 3th patch (patch 1/3) which I forgot in v1, the other
 2 patches actually depend on this one to apply without conflicts
-Name the added dtsi file sun6i-reference-design-tablet.dtsi instead
 of sun6i-a31-reference-design-tablet.dtsi, to be consistent with
 what we've done for sun5i / sun8i (and because it is valid for
 both A31 and A31s based tablets).

Applied all three, thanks!
Maxime

Signature · 10 lines
Maxime Ripard, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20160822/960617c1/attachment.sig>