From mboxrd@z Thu Jan 1 00:00:00 1970 From: Marek Vasut Date: Sat, 29 Aug 2015 21:19:42 +0200 Subject: [U-Boot] [PATCH] arm: socfpga: dm: Fix DM initialization failure after warm reset In-Reply-To: References: <55E01ECE.6020309@boschrexroth.de> <201508291745.37378.marex@denx.de> Message-ID: <201508292119.42418.marex@denx.de> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de On Saturday, August 29, 2015 at 06:54:54 PM, Simon Glass wrote: > Hi Marek, Hi Simon, [...] > >> >> Does that mean it skips crt0.S? How come global_data is not zeroed > >> >> there? > >> > > >> > No, it does not mean it skips crt0.S . After the warm reset, the > >> > bootrom jumps onto the reset vector, so crt0.S (_main) must be > >> > executed. > >> > >> Then I don't understand the need for this patch. > > > > Apparently, the gd->dm_root is set to a non-NULL address for some > > (unknown) reason. I don't quite understand this myself. > > > > The only possibility which can lead to gd->dm_root being set to non-NULL > > address is that crt0.S _main is not executed, is that correct ? > > I think so, unless driver model was already inited by a call to > spl_init(). But I don't see where your board might do that. That's correct. Best regards, Marek Vasut