
Hello Minkyu,
On 07/02/2014 09:03 AM, Minkyu Kang wrote:
On 01/07/14 23:36, Przemyslaw Marczak wrote:
Hello Minkyu,
On 06/27/2014 01:34 PM, Przemyslaw Marczak wrote:
On 06/27/2014 11:40 AM, Minkyu Kang wrote:
Dear Przemyslaw Marczak,
On 26/06/14 23:15, Przemyslaw Marczak wrote:
On an Odroid U3 board, the SOC is unable to reset the eMMC card in the DWMMC mode by the cpu software reset. Manual reset of the card by switching proper gpio pin - fixes this issue.
Such solution needs to add a call to pre reset function. This is done by the reset_misc() function, which is called before reset_cpu(). The function reset_misc() is a weak function.
Signed-off-by: Przemyslaw Marczak p.marczak@samsung.com Cc: Minkyu Kang mk7.kang@samsung.com Cc: Jean-Christophe PLAGNIOL-VILLARD plagnioj@jcrosoft.com Cc: Albert ARIBAUD albert.u.boot@aribaud.net Cc: Tom Rini trini@ti.com
arch/arm/lib/reset.c | 7 +++++++ include/common.h | 1 + 2 files changed, 8 insertions(+)
I'm not sure that we really need to add this function to arm common. We can do this in reset_cpu (arch/arm/cpu/armv7/exynos/soc.c). But if other SoCs also need to add such things then, it can be added as arm common.
Thanks, Minkyu Kang.
No one used this before, so probably better is to move it into exynos soc.c code.
Thank you,
I'm working on a next patch set version. And the idea with calling reset_misc() from soc.c is quite bad. Function reset_cpu() is actually dedicated only for cpu software reset - as its name suggest. So I prefer leave the reset_misc call inside do_reset().
Sorry. I didn't understand the reason. Could you please explain more in detail?
Thanks, Minkyu Kang.
I mean that we should take in to account the function names, e.g.: - do_reset() - do the all reset needed things, and call: - reset_misc() - reset/prepare various devices before the CPU reset - reset_cpu() - do the CPU software reset only
The particular Odroid reset procedure is more board specific than SOC specific, and this is why it is implemented in board file. So I think that the place of call to reset_misc() in common code is good.
Thanks