All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] arm64: dts: allwinner: a64: Enable eMMC on A64-OLinuXino
@ 2019-07-27  2:02 Sunil Mohan Adapa
  2019-07-27  5:42 ` Chen-Yu Tsai
  0 siblings, 1 reply; 4+ messages in thread
From: Sunil Mohan Adapa @ 2019-07-27  2:02 UTC (permalink / raw)
  To: linux-arm-kernel; +Cc: maxime.ripard, Sunil Mohan Adapa, wens

A64-OLinuXino board has three variants that have eMMC support. Add support for
eMMC on boards that have it.

This patch has been tested on A64-OLinuXino-1Ge16GW with Linux 5.0 from Debain.
Basic benchmarks using Flexible IO Tester show reasonable performance from the
eMMC.

eMMC - Random Write: 23.1MiB/s
eMMC - Sequential Write: 74.5MiB/s
SD Card - Random Write: 1690KiB/s
SD Card - Sequential Write: 11.0MiB/s

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Tested-by: Sunil Mohan Adapa <sunil@medhas.org>

From: Martin Ayotte <martinayotte@gmail.com>
Link: https://github.com/armbian/build/commit/174953de1eb09e6aa1ef7075066b573dba625398
Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
---
 .../boot/dts/allwinner/sun50i-a64-olinuxino.dts | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64-olinuxino.dts b/arch/arm64/boot/dts/allwinner/sun50i-a64-olinuxino.dts
index 01a9a52edae4..751273f514fb 100644
--- a/arch/arm64/boot/dts/allwinner/sun50i-a64-olinuxino.dts
+++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-olinuxino.dts
@@ -81,6 +81,13 @@
 		status = "okay";
 	};
 
+	reg_vcc3v3: vcc3v3 {
+		compatible = "regulator-fixed";
+		regulator-name = "vcc3v3";
+		regulator-min-microvolt = <3300000>;
+		regulator-max-microvolt = <3300000>;
+	};
+
 	wifi_pwrseq: wifi_pwrseq {
 		compatible = "mmc-pwrseq-simple";
 		reset-gpios = <&r_pio 0 2 GPIO_ACTIVE_LOW>; /* PL2 */
@@ -155,6 +162,16 @@
 	};
 };
 
+&mmc2 {
+	pinctrl-names = "default";
+	pinctrl-0 = <&mmc2_pins>;
+	vmmc-supply = <&reg_vcc3v3>;
+	bus-width = <8>;
+	non-removable;
+	cap-mmc-hw-reset;
+	status = "okay";
+};
+
 &ohci0 {
 	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] 4+ messages in thread

* Re: [PATCH] arm64: dts: allwinner: a64: Enable eMMC on A64-OLinuXino
  2019-07-27  2:02 [PATCH] arm64: dts: allwinner: a64: Enable eMMC on A64-OLinuXino Sunil Mohan Adapa
@ 2019-07-27  5:42 ` Chen-Yu Tsai
  2019-07-27  6:49   ` Sunil Mohan Adapa
  0 siblings, 1 reply; 4+ messages in thread
From: Chen-Yu Tsai @ 2019-07-27  5:42 UTC (permalink / raw)
  To: Sunil Mohan Adapa; +Cc: Maxime Ripard, linux-arm-kernel

On Sat, Jul 27, 2019 at 10:03 AM Sunil Mohan Adapa <sunil@medhas.org> wrote:
>
> A64-OLinuXino board has three variants that have eMMC support. Add support for
> eMMC on boards that have it.
>
> This patch has been tested on A64-OLinuXino-1Ge16GW with Linux 5.0 from Debain.
> Basic benchmarks using Flexible IO Tester show reasonable performance from the
> eMMC.
>
> eMMC - Random Write: 23.1MiB/s
> eMMC - Sequential Write: 74.5MiB/s
> SD Card - Random Write: 1690KiB/s
> SD Card - Sequential Write: 11.0MiB/s
>
> Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
> Tested-by: Sunil Mohan Adapa <sunil@medhas.org>
>
> From: Martin Ayotte <martinayotte@gmail.com>
> Link: https://github.com/armbian/build/commit/174953de1eb09e6aa1ef7075066b573dba625398
> Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
> ---
>  .../boot/dts/allwinner/sun50i-a64-olinuxino.dts | 17 +++++++++++++++++
>  1 file changed, 17 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64-olinuxino.dts b/arch/arm64/boot/dts/allwinner/sun50i-a64-olinuxino.dts
> index 01a9a52edae4..751273f514fb 100644
> --- a/arch/arm64/boot/dts/allwinner/sun50i-a64-olinuxino.dts
> +++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-olinuxino.dts
> @@ -81,6 +81,13 @@
>                 status = "okay";
>         };
>
> +       reg_vcc3v3: vcc3v3 {
> +               compatible = "regulator-fixed";
> +               regulator-name = "vcc3v3";
> +               regulator-min-microvolt = <3300000>;
> +               regulator-max-microvolt = <3300000>;
> +       };
> +
>         wifi_pwrseq: wifi_pwrseq {
>                 compatible = "mmc-pwrseq-simple";
>                 reset-gpios = <&r_pio 0 2 GPIO_ACTIVE_LOW>; /* PL2 */
> @@ -155,6 +162,16 @@
>         };
>  };
>
> +&mmc2 {
> +       pinctrl-names = "default";
> +       pinctrl-0 = <&mmc2_pins>;
> +       vmmc-supply = <&reg_vcc3v3>;

Both VCC (vmmc-supply) and VCCQ (vqmmc-supply) are wired to DCDC1.
There is no fixed regulator. Please accurately describe the hardware.

Also if Olimex never released any A64-OlinuXinos with NAND flash,
then we could merge this. Otherwise we'd have to have separate
versions, or do overlays.

ChenYu

> +       bus-width = <8>;
> +       non-removable;
> +       cap-mmc-hw-reset;
> +       status = "okay";
> +};
> +
>  &ohci0 {
>         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] 4+ messages in thread

* Re: [PATCH] arm64: dts: allwinner: a64: Enable eMMC on A64-OLinuXino
  2019-07-27  5:42 ` Chen-Yu Tsai
@ 2019-07-27  6:49   ` Sunil Mohan Adapa
  2019-07-31 17:46     ` Sunil Mohan Adapa
  0 siblings, 1 reply; 4+ messages in thread
From: Sunil Mohan Adapa @ 2019-07-27  6:49 UTC (permalink / raw)
  To: Chen-Yu Tsai; +Cc: Maxime Ripard, linux-arm-kernel


[-- Attachment #1.1.1: Type: text/plain, Size: 2980 bytes --]

On 26/07/19 10:42 pm, Chen-Yu Tsai wrote:
> On Sat, Jul 27, 2019 at 10:03 AM Sunil Mohan Adapa <sunil@medhas.org> wrote:
>>
>> A64-OLinuXino board has three variants that have eMMC support. Add support for
>> eMMC on boards that have it.
>>
>> This patch has been tested on A64-OLinuXino-1Ge16GW with Linux 5.0 from Debain.
>> Basic benchmarks using Flexible IO Tester show reasonable performance from the
>> eMMC.
>>
>> eMMC - Random Write: 23.1MiB/s
>> eMMC - Sequential Write: 74.5MiB/s
>> SD Card - Random Write: 1690KiB/s
>> SD Card - Sequential Write: 11.0MiB/s
>>
>> Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
>> Tested-by: Sunil Mohan Adapa <sunil@medhas.org>
>>
>> From: Martin Ayotte <martinayotte@gmail.com>
>> Link: https://github.com/armbian/build/commit/174953de1eb09e6aa1ef7075066b573dba625398
>> Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
>> ---
>>  .../boot/dts/allwinner/sun50i-a64-olinuxino.dts | 17 +++++++++++++++++
>>  1 file changed, 17 insertions(+)
>>
>> diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64-olinuxino.dts b/arch/arm64/boot/dts/allwinner/sun50i-a64-olinuxino.dts
>> index 01a9a52edae4..751273f514fb 100644
>> --- a/arch/arm64/boot/dts/allwinner/sun50i-a64-olinuxino.dts
>> +++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-olinuxino.dts
>> @@ -81,6 +81,13 @@
>>                 status = "okay";
>>         };
>>
>> +       reg_vcc3v3: vcc3v3 {
>> +               compatible = "regulator-fixed";
>> +               regulator-name = "vcc3v3";
>> +               regulator-min-microvolt = <3300000>;
>> +               regulator-max-microvolt = <3300000>;
>> +       };
>> +
>>         wifi_pwrseq: wifi_pwrseq {
>>                 compatible = "mmc-pwrseq-simple";
>>                 reset-gpios = <&r_pio 0 2 GPIO_ACTIVE_LOW>; /* PL2 */
>> @@ -155,6 +162,16 @@
>>         };
>>  };
>>
>> +&mmc2 {
>> +       pinctrl-names = "default";
>> +       pinctrl-0 = <&mmc2_pins>;
>> +       vmmc-supply = <&reg_vcc3v3>;
> 
> Both VCC (vmmc-supply) and VCCQ (vqmmc-supply) are wired to DCDC1.
> There is no fixed regulator. Please accurately describe the hardware.

Thank you for the review. Do to my limited experience in the area, I
could not figure this out despite spending some time with the driver and
schematics. I was able to verify that some of the other descriptions are
correct. I will update the patch accordingly and test it.

> 
> Also if Olimex never released any A64-OlinuXinos with NAND flash,
> then we could merge this. Otherwise we'd have to have separate
> versions, or do overlays.

Currently, Olimex has no A64-OLinuXinos with NAND flash. However, I am
unable to make a call on whether or not to have separate versions or
overlays.

> 
>> +       bus-width = <8>;
>> +       non-removable;
>> +       cap-mmc-hw-reset;
>> +       status = "okay";
>> +};
>> +
>>  &ohci0 {
>>         status = "okay";
>>  };
>> --
>> 2.20.1
>>


[-- 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] 4+ messages in thread

* Re: [PATCH] arm64: dts: allwinner: a64: Enable eMMC on A64-OLinuXino
  2019-07-27  6:49   ` Sunil Mohan Adapa
@ 2019-07-31 17:46     ` Sunil Mohan Adapa
  0 siblings, 0 replies; 4+ messages in thread
From: Sunil Mohan Adapa @ 2019-07-31 17:46 UTC (permalink / raw)
  To: Chen-Yu Tsai; +Cc: Maxime Ripard, linux-arm-kernel


[-- Attachment #1.1.1: Type: text/plain, Size: 3549 bytes --]

On 26/07/19 11:49 pm, Sunil Mohan Adapa wrote:
> On 26/07/19 10:42 pm, Chen-Yu Tsai wrote:
>> On Sat, Jul 27, 2019 at 10:03 AM Sunil Mohan Adapa <sunil@medhas.org> wrote:
>>>
>>> A64-OLinuXino board has three variants that have eMMC support. Add support for
>>> eMMC on boards that have it.
>>>
>>> This patch has been tested on A64-OLinuXino-1Ge16GW with Linux 5.0 from Debain.
>>> Basic benchmarks using Flexible IO Tester show reasonable performance from the
>>> eMMC.
>>>
>>> eMMC - Random Write: 23.1MiB/s
>>> eMMC - Sequential Write: 74.5MiB/s
>>> SD Card - Random Write: 1690KiB/s
>>> SD Card - Sequential Write: 11.0MiB/s
>>>
>>> Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
>>> Tested-by: Sunil Mohan Adapa <sunil@medhas.org>
>>>
>>> From: Martin Ayotte <martinayotte@gmail.com>
>>> Link: https://github.com/armbian/build/commit/174953de1eb09e6aa1ef7075066b573dba625398
>>> Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
>>> ---
>>>  .../boot/dts/allwinner/sun50i-a64-olinuxino.dts | 17 +++++++++++++++++
>>>  1 file changed, 17 insertions(+)
>>>
>>> diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64-olinuxino.dts b/arch/arm64/boot/dts/allwinner/sun50i-a64-olinuxino.dts
>>> index 01a9a52edae4..751273f514fb 100644
>>> --- a/arch/arm64/boot/dts/allwinner/sun50i-a64-olinuxino.dts
>>> +++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-olinuxino.dts
>>> @@ -81,6 +81,13 @@
>>>                 status = "okay";
>>>         };
>>>
>>> +       reg_vcc3v3: vcc3v3 {
>>> +               compatible = "regulator-fixed";
>>> +               regulator-name = "vcc3v3";
>>> +               regulator-min-microvolt = <3300000>;
>>> +               regulator-max-microvolt = <3300000>;
>>> +       };
>>> +
>>>         wifi_pwrseq: wifi_pwrseq {
>>>                 compatible = "mmc-pwrseq-simple";
>>>                 reset-gpios = <&r_pio 0 2 GPIO_ACTIVE_LOW>; /* PL2 */
>>> @@ -155,6 +162,16 @@
>>>         };
>>>  };
>>>
>>> +&mmc2 {
>>> +       pinctrl-names = "default";
>>> +       pinctrl-0 = <&mmc2_pins>;
>>> +       vmmc-supply = <&reg_vcc3v3>;
>>
>> Both VCC (vmmc-supply) and VCCQ (vqmmc-supply) are wired to DCDC1.
>> There is no fixed regulator. Please accurately describe the hardware.
> 
> Thank you for the review. Do to my limited experience in the area, I
> could not figure this out despite spending some time with the driver and
> schematics. I was able to verify that some of the other descriptions are
> correct. I will update the patch accordingly and test it.
> 

I have posted v2 of the patch with the correction.

>>
>> Also if Olimex never released any A64-OlinuXinos with NAND flash,
>> then we could merge this. Otherwise we'd have to have separate
>> versions, or do overlays.
> 
> Currently, Olimex has no A64-OLinuXinos with NAND flash. However, I am
> unable to make a call on whether or not to have separate versions or
> overlays.

I have contacted folks at Olimex Ltd. and they said that they don't
intend to release variants of A64-OLinuXinos with NAND flash due to it
requiring special drivers and mainline kernel not supporting NAND.
Further, they plan to use MMC2 interface only for eMMC.

So, it seems appropriate to add eMMC description into the main DTS for
A64-OLinuXino.

-- 
Sunil

> 
>>
>>> +       bus-width = <8>;
>>> +       non-removable;
>>> +       cap-mmc-hw-reset;
>>> +       status = "okay";
>>> +};
>>> +
>>>  &ohci0 {
>>>         status = "okay";
>>>  };
>>> --
>>> 2.20.1
>>>


[-- 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] 4+ messages in thread

end of thread, other threads:[~2019-07-31 17:47 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-07-27  2:02 [PATCH] arm64: dts: allwinner: a64: Enable eMMC on A64-OLinuXino Sunil Mohan Adapa
2019-07-27  5:42 ` Chen-Yu Tsai
2019-07-27  6:49   ` Sunil Mohan Adapa
2019-07-31 17:46     ` Sunil Mohan Adapa

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.