From mboxrd@z Thu Jan 1 00:00:00 1970 From: Joonyoung Shim Date: Sat, 10 Jan 2015 15:41:07 +0900 Subject: [U-Boot] [PATCH 1/3] samsung: board: support eMMC reset using DT In-Reply-To: <1420789819.6075.102.camel@collabora.co.uk> References: <1420695867-1621-1-git-send-email-jy0922.shim@samsung.com> <1420759392.6075.100.camel@collabora.co.uk> <54AF5749.7000705@samsung.com> <54AF865D.6010904@samsung.com> <1420789819.6075.102.camel@collabora.co.uk> Message-ID: <54B0C983.8060507@samsung.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Hi Sjoerd, On 01/09/2015 04:50 PM, Sjoerd Simons wrote: > 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 >>>> >>>>> 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. > I didn't test Odroid X2 board but my Odroid U3 board cannot reboot without controlling nRESET_OUT gpio on upstream linux kernel. Thanks.