[U-Boot] Initilize IDE prior environment

Bin Meng bmeng.cn at gmail.com
Tue Jun 20 23:19:50 UTC 2017


+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?

Regards,
Bin


More information about the U-Boot mailing list