From mboxrd@z Thu Jan 1 00:00:00 1970 From: Kever Yang Date: Wed, 31 Jul 2019 16:58:13 +0800 Subject: [U-Boot] [PATCH] board_r: re-order the board_early_init_r() In-Reply-To: <362843a4-e81a-c895-c494-c188903a72d1@gmail.com> References: <20190724100119.7626-1-kever.yang@rock-chips.com> <362843a4-e81a-c895-c494-c188903a72d1@gmail.com> Message-ID: <86a84127-7247-711e-5cc6-b716824d204c@rock-chips.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 8bit To: u-boot@lists.denx.de On 2019/7/31 下午3:23, Matthias Brugger wrote: > > On 24/07/2019 14:22, Kever Yang wrote: >> On 2019/7/24 下午6:22, Simon Goldschmidt wrote: >>> On Wed, Jul 24, 2019 at 12:01 PM Kever Yang wrote: >>>> The board_early_init_r() suppose to be called before board_init(), >>>> then the board callback functions in board_r will be: >>>> - board_early_init_r() >>>> - board_init() >>>> - board_late_init() >>> Searching through the code, elixir.bootlin.com gives me 52 definitions >>> of board_early_init_r(). Does this patch break any of those boards >>> when it changes the order of those calls? >> I do have check some of the implement and most of them should be OK, but to be >> honest, >> >> I'm don't have any of those boards, and not sure if this break any of them, and >> I'm not sure >> >> if people using this interface have notice it's after the board_init(). >> >> When I try to use this board_early_init_r(), I thought this is before >> board_init(), but it actually >> >> after the board_init(), that make people confusing. >> >> I think the _early_ one should be at the first, isn't it? > I agree. Maybe we should rename it to board_post_init? Sorry , do you mean add/rename a board_post_init() for what's done by board_early_init_r() now and then add/move ad board api before board_init()? There is a board_late_init(), which is after env init, a new board_post_init() seems not a good idea. Here is the Kconfig help for BOARD_EARLY_INIT_R, which also means we it should be called before board_init(). config BOARD_EARLY_INIT_R         bool "Call board-specific init after relocation" help           Some boards need to perform initialisation as directly after           relocation. With this option, U-Boot calls board_early_init_r()           in the post-relocation init sequence. Thanks, - Kever > > Regards, > Matthias >