linux-sunxi.lists.linux.dev archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/2] arm64: dts: allwinner: h6: tanix-tx6: Enable eMMC
@ 2021-07-21 20:08 Jernej Skrabec
  2021-07-21 20:08 ` [PATCH 1/2] arm64: dts: allwinner: h6: tanix-tx6: Add PIO power supplies Jernej Skrabec
  2021-07-21 20:08 ` [PATCH 2/2] arm64: dts: allwinner: h6: tanix-tx6: enable emmc Jernej Skrabec
  0 siblings, 2 replies; 4+ messages in thread
From: Jernej Skrabec @ 2021-07-21 20:08 UTC (permalink / raw)
  To: mripard, wens
  Cc: robh+dt, jernej.skrabec, devicetree, linux-arm-kernel,
	linux-sunxi, linux-kernel

Tanix TX6 box has a 32 GB eMMC module. With changes in this series, I
get following figures with hdparm -tT:

/dev/mmcblk2:
 Timing cached reads:   1638 MB in  2.00 seconds = 818.44 MB/sec
 Timing buffered disk reads: 376 MB in  3.01 seconds = 124.74 MB/sec

First patch only sets proper power supplies to GPIO banks and second
adds eMMC support.

Please take a look.

Best regards,
Jernej Skrabec

Jernej Skrabec (2):
  arm64: dts: allwinner: h6: tanix-tx6: Add PIO power supplies
  arm64: dts: allwinner: h6: tanix-tx6: enable emmc

 .../dts/allwinner/sun50i-h6-tanix-tx6.dts     | 23 +++++++++++++++++++
 1 file changed, 23 insertions(+)

-- 
2.32.0


^ permalink raw reply	[flat|nested] 4+ messages in thread

* [PATCH 1/2] arm64: dts: allwinner: h6: tanix-tx6: Add PIO power supplies
  2021-07-21 20:08 [PATCH 0/2] arm64: dts: allwinner: h6: tanix-tx6: Enable eMMC Jernej Skrabec
@ 2021-07-21 20:08 ` Jernej Skrabec
  2021-07-22  8:21   ` Maxime Ripard
  2021-07-21 20:08 ` [PATCH 2/2] arm64: dts: allwinner: h6: tanix-tx6: enable emmc Jernej Skrabec
  1 sibling, 1 reply; 4+ messages in thread
From: Jernej Skrabec @ 2021-07-21 20:08 UTC (permalink / raw)
  To: mripard, wens
  Cc: robh+dt, jernej.skrabec, devicetree, linux-arm-kernel,
	linux-sunxi, linux-kernel

While there is no publicly available schematic of this board, it's not
hard to determine voltage of GPIO port C, D and G (only ones which can
be set).

Port C and G are used for MMC/SDIO communication, so they use 1.8 V
power supply. It's not clear if port D is even used, but if it is, it's
pretty safe to assume it uses 3.3 V power supply. Value read from PIO
Group Withstand Voltage Mode Select register from within pre-installed
Android agrees with that assesment.

Signed-off-by: Jernej Skrabec <jernej.skrabec@gmail.com>
---
 .../boot/dts/allwinner/sun50i-h6-tanix-tx6.dts      | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h6-tanix-tx6.dts b/arch/arm64/boot/dts/allwinner/sun50i-h6-tanix-tx6.dts
index be81330db14f..a1dd8f472cc8 100644
--- a/arch/arm64/boot/dts/allwinner/sun50i-h6-tanix-tx6.dts
+++ b/arch/arm64/boot/dts/allwinner/sun50i-h6-tanix-tx6.dts
@@ -32,6 +32,13 @@ hdmi_con_in: endpoint {
 		};
 	};
 
+	reg_vcc1v8: vcc1v8 {
+		compatible = "regulator-fixed";
+		regulator-name = "vcc1v8";
+		regulator-min-microvolt = <1800000>;
+		regulator-max-microvolt = <1800000>;
+	};
+
 	reg_vcc3v3: vcc3v3 {
 		compatible = "regulator-fixed";
 		regulator-name = "vcc3v3";
@@ -99,6 +106,12 @@ &ohci3 {
 	status = "okay";
 };
 
+&pio {
+	vcc-pc-supply = <&reg_vcc1v8>;
+	vcc-pd-supply = <&reg_vcc3v3>;
+	vcc-pg-supply = <&reg_vcc1v8>;
+};
+
 &r_ir {
 	linux,rc-map-name = "rc-tanix-tx5max";
 	status = "okay";
-- 
2.32.0


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [PATCH 2/2] arm64: dts: allwinner: h6: tanix-tx6: enable emmc
  2021-07-21 20:08 [PATCH 0/2] arm64: dts: allwinner: h6: tanix-tx6: Enable eMMC Jernej Skrabec
  2021-07-21 20:08 ` [PATCH 1/2] arm64: dts: allwinner: h6: tanix-tx6: Add PIO power supplies Jernej Skrabec
@ 2021-07-21 20:08 ` Jernej Skrabec
  1 sibling, 0 replies; 4+ messages in thread
From: Jernej Skrabec @ 2021-07-21 20:08 UTC (permalink / raw)
  To: mripard, wens
  Cc: robh+dt, jernej.skrabec, devicetree, linux-arm-kernel,
	linux-sunxi, linux-kernel

Tanix TX6 has 32 GiB eMMC. Add a node for it.

Signed-off-by: Jernej Skrabec <jernej.skrabec@gmail.com>
---
 arch/arm64/boot/dts/allwinner/sun50i-h6-tanix-tx6.dts | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h6-tanix-tx6.dts b/arch/arm64/boot/dts/allwinner/sun50i-h6-tanix-tx6.dts
index a1dd8f472cc8..c23b7c37406b 100644
--- a/arch/arm64/boot/dts/allwinner/sun50i-h6-tanix-tx6.dts
+++ b/arch/arm64/boot/dts/allwinner/sun50i-h6-tanix-tx6.dts
@@ -98,6 +98,16 @@ &mmc0 {
 	status = "okay";
 };
 
+&mmc2 {
+	vmmc-supply = <&reg_vcc3v3>;
+	vqmmc-supply = <&reg_vcc1v8>;
+	bus-width = <8>;
+	non-removable;
+	cap-mmc-hw-reset;
+	mmc-hs200-1_8v;
+	status = "okay";
+};
+
 &ohci0 {
 	status = "okay";
 };
-- 
2.32.0


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH 1/2] arm64: dts: allwinner: h6: tanix-tx6: Add PIO power supplies
  2021-07-21 20:08 ` [PATCH 1/2] arm64: dts: allwinner: h6: tanix-tx6: Add PIO power supplies Jernej Skrabec
@ 2021-07-22  8:21   ` Maxime Ripard
  0 siblings, 0 replies; 4+ messages in thread
From: Maxime Ripard @ 2021-07-22  8:21 UTC (permalink / raw)
  To: Jernej Skrabec
  Cc: wens, robh+dt, devicetree, linux-arm-kernel, linux-sunxi, linux-kernel

Hi,

On Wed, Jul 21, 2021 at 10:08:31PM +0200, Jernej Skrabec wrote:
> While there is no publicly available schematic of this board, it's not
> hard to determine voltage of GPIO port C, D and G (only ones which can
> be set).
> 
> Port C and G are used for MMC/SDIO communication, so they use 1.8 V
> power supply. It's not clear if port D is even used, but if it is, it's
> pretty safe to assume it uses 3.3 V power supply. Value read from PIO
> Group Withstand Voltage Mode Select register from within pre-installed
> Android agrees with that assesment.
> 
> Signed-off-by: Jernej Skrabec <jernej.skrabec@gmail.com>
> ---
>  .../boot/dts/allwinner/sun50i-h6-tanix-tx6.dts      | 13 +++++++++++++
>  1 file changed, 13 insertions(+)
> 
> diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h6-tanix-tx6.dts b/arch/arm64/boot/dts/allwinner/sun50i-h6-tanix-tx6.dts
> index be81330db14f..a1dd8f472cc8 100644
> --- a/arch/arm64/boot/dts/allwinner/sun50i-h6-tanix-tx6.dts
> +++ b/arch/arm64/boot/dts/allwinner/sun50i-h6-tanix-tx6.dts
> @@ -32,6 +32,13 @@ hdmi_con_in: endpoint {
>  		};
>  	};
>  
> +	reg_vcc1v8: vcc1v8 {
> +		compatible = "regulator-fixed";
> +		regulator-name = "vcc1v8";
> +		regulator-min-microvolt = <1800000>;
> +		regulator-max-microvolt = <1800000>;
> +	};
> +

I appreciate that the other 3.3V regulator has the same issue, but the
node name must reflect the class of the device. Maybe regulator-vcc1v8?

Maxime

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2021-07-22  8:21 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-07-21 20:08 [PATCH 0/2] arm64: dts: allwinner: h6: tanix-tx6: Enable eMMC Jernej Skrabec
2021-07-21 20:08 ` [PATCH 1/2] arm64: dts: allwinner: h6: tanix-tx6: Add PIO power supplies Jernej Skrabec
2021-07-22  8:21   ` Maxime Ripard
2021-07-21 20:08 ` [PATCH 2/2] arm64: dts: allwinner: h6: tanix-tx6: enable emmc Jernej Skrabec

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).