[U-Boot] [PATCH 1/3] samsung: board: support eMMC reset using DT

Sjoerd Simons
2015-01-09T07:50:19Z

On Fri, 2015-01-09 at 16:42 +0900, Joonyoung Shim wrote:
> Hi,
>
> On 01/09/2015 01:21 PM, Jaehoon Chung wrote:
> > On 01/09/2015 08:23 AM, Sjoerd Simons wrote:
> >> On Thu, 2015-01-08 at 14:44 +0900, Joonyoung Shim wrote:
> >>> Some exynos boards require special handling of SD4_nRESET_OUT line for
> >>> eMMC memory to perform complete reboot e.g. Odroid X2/U3/XU3 boards.
> >>>
> >>> This will support eMMC reset using DT from reset_misc of samsung common
> >>> board file and each board files can support eMMC reset on non DT case.
> >>>
> >>> Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
> >>
> >>> diff --git a/doc/device-tree-bindings/exynos/emmc-reset.txt b/doc/device-tree-bindings/exynos/emmc-reset.txt
> >>> new file mode 100644
> >>> index 0000000..e48e508
> >>> --- /dev/null
> >>> +++ b/doc/device-tree-bindings/exynos/emmc-reset.txt
> >>> @@ -0,0 +1,15 @@
> >>> +* Samsung eMMC reset
> >>> +
> >>> +Some exynos boards require special handling of SD4_nRESET_OUT line for eMMC
> >>> +memory to perform complete reboot.
> >>
> >> Nitpick, on XU3 the line you apparently need to twiddle is
> >> SD0_nRESET_OUT.
> >>
>
> Then, i think it's better to omit "SD4_".
>
> >> Is this type of usage of this pin specific to the Odroid Exynos boards
> >> or potentially on more boards? (Sorry for the simple questions, but my
> >> exynos documentation just says the line exists not what its intended
> >> usage is).
> >
> > In case of Exynos4, eMMC can be used with sdhci controller or dw-mmc controller.
> > So Pin name should be used to SD0 or SD4.
> >
> > But Exynos5 is only supported the dw-mmc controller.
> > (So eMMC is used pin-name as "SD0".)
> >
>
> I can find only "SD_4_nRESET_OUT" from exynos4412 user manual and only
> "SD_0__nRESET_OUT" from exynos5422 user manual.
>
> > Best Regards,
> > Jaehoon Chung
> >>
> >> Fwiw, I did a quick check in the linux code and it doesn't seem to be
> >> using those pins for currently for any boards. However my X2 does
> >> successfully reset/reboot in u-boot and linux, so it seems optional
> >> there. The XU3 does fail to reset itself, so it seems required for that
> >> board.
> >>
>
> I checked upstream u-boot and hardkernel u-boot and i found codes to
> reset eMMC using gpio.
>
> upstream u-boot: reset_misc() of board/samsung/odroid/odroid.c
> hardkernel u-boot: reset_cpu() of arch/arm/cpu/armv7/exynos/reset.c

Yeah u-boot does it, but linux upstream kernel does not. Hence wondering
about the requirements.

--
Sjoerd Simons <sjoerd.simons@collabora.co.uk>
Collabora Ltd.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/x-pkcs7-signature
Size: 6170 bytes
Desc: not available
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20150109/c45692aa/attachment.bin>