[U-Boot] Initilize IDE prior environment

Simon Glass sjg at chromium.org
Thu Jun 22 16:05:48 UTC 2017


Hi Bin,

On 20 June 2017 at 17:19, Bin Meng <bmeng.cn at gmail.com> wrote:
>
> +Simon
>
> On Wed, Jun 21, 2017 at 4:08 AM, Otavio Salvador
> <otavio.salvador at ossystems.com.br> wrote:
> > On Tue, Jun 20, 2017 at 2:42 PM, Tom Rini <trini at konsulko.com> wrote:
> >> On Mon, Jun 19, 2017 at 11:56:04AM -0300, Otavio Salvador wrote:
> >>
> >>> To allow the loading of environment from IDE (for example, using FAT)
> >>> the initilization of IDE subsystem must come before the environment
> >>> one.
> >>>
> >>> Successfully tested on QEMU x86.
> >>>
> >>> Signed-off-by: Otavio Salvador <otavio at ossystems.com.br>
> >>> ---
> >>>
> >>>  common/board_r.c | 6 +++---
> >>>  1 file changed, 3 insertions(+), 3 deletions(-)
> >>>
> >>> diff --git a/common/board_r.c b/common/board_r.c
> >>> index adc1f1937e..247a6668fc 100644
> >>> --- a/common/board_r.c
> >>> +++ b/common/board_r.c
> >>> @@ -806,6 +806,9 @@ static init_fnc_t init_sequence_r[] = {
> >>>  #ifdef CONFIG_MMC
> >>>       initr_mmc,
> >>>  #endif
> >>> +#if defined(CONFIG_IDE)
> >>> +     initr_ide,
> >>> +#endif
> >>>  #ifdef CONFIG_HAS_DATAFLASH
> >>>       initr_dataflash,
> >>>  #endif
> >>> @@ -878,9 +881,6 @@ static init_fnc_t init_sequence_r[] = {
> >>>  #if defined(CONFIG_CMD_PCMCIA) && !defined(CONFIG_IDE)
> >>>       initr_pcmcia,
> >>>  #endif
> >>> -#if defined(CONFIG_IDE)
> >>> -     initr_ide,
> >>> -#endif
> >>>  #ifdef CONFIG_LAST_STAGE_INIT
> >>>       INIT_FUNC_WATCHDOG_RESET
> >>>       /*
> >>
> >> Looking at the gap between these two areas, I see that we would
> >> initialize PCI between the two areas.  So there's probably boards with
> >> PCI IDE devices that'll regress if I take this now.  What's the answer?
> >> Long term, device model.  Short term?  Is there a specific upstream
> >> platform that you're seeing the problem or, or just custom / out of
> >> tree?
>
> I agree with Tom. Eventually we need convert IDE driver to driver model.
>
> >
> > I am using this with QEMU. I enabled environment inside FAT and it
> > needs the IDE fix so the environment is properly loaded.
> >
>
> With driver model, IDE driver can be probed when U-Boot tries to load
> environment from IDE.
>
> For short term, not sure if we can accept this, Simon?

If it does not break qemu and any platforms that use IDE (without PCI)
then I think it is fine.

It probably is not much work to convert IDE to driver model. Less if
we can remove more users :-)

Regards,
Simon


More information about the U-Boot mailing list