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

3 messages, 3 authors, 2016-08-22 · open the first message on its own page

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

From: Hans de Goede <hidden>
Date: 2016-08-22 08:56:26

Hi,

On 22-08-16 10:50, Chen-Yu Tsai wrote:
Hi,

On Fri, Aug 19, 2016 at 2:02 AM, Hans de Goede [off-list ref] wrote:
quoted
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 <redacted>
---
 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 @@
 };

 &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
Otherwise,

Acked-by: Chen-Yu Tsai <redacted>

quoted
-       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

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

From: Icenowy Zheng <hidden>
Date: 2016-08-22 12:07:52


22.08.2016, 17:01, "Hans de Goede" [off-list ref]:
Hi,

On 22-08-16 10:50, Chen-Yu Tsai wrote:
quoted
?Hi,

?On Fri, Aug 19, 2016 at 2:02 AM, Hans de Goede [off-list ref] wrote:
quoted
?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 [off-list ref]
?---
??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 @@
??};

??&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.
Yes... I also found it...
And how to check the right values?
I cannot find them for my friend's Viewsonic ViewPad 133Q.
Regards,

Hans
quoted
?Otherwise,

?Acked-by: Chen-Yu Tsai [off-list ref]
quoted
?- 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

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

From: Hans de Goede <hidden>
Date: 2016-08-22 12:28:29

HI,

On 22-08-16 14:07, Icenowy Zheng wrote:

22.08.2016, 17:01, "Hans de Goede" [off-list ref]:
quoted
Hi,

On 22-08-16 10:50, Chen-Yu Tsai wrote:
quoted
 Hi,

 On Fri, Aug 19, 2016 at 2:02 AM, Hans de Goede [off-list ref] wrote:
quoted
 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 [off-list ref]
 ---
  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 @@
  };

  &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.
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:
--- a/drivers/input/keyboard/sun4i-lradc-keys.c
+++ b/drivers/input/keyboard/sun4i-lradc-keys.c
@@ -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
Regards,

Hans
quoted
 Otherwise,

 Acked-by: Chen-Yu Tsai [off-list ref]
quoted
 - 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
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help