[U-Boot] Initilize IDE prior environment
Heiko Schocher
hs at denx.de
Fri Jun 23 04:10:26 UTC 2017
Hello,
Am 23.06.2017 um 01:49 schrieb Tom Rini:
> On Thu, Jun 22, 2017 at 10:05:48AM -0600, Simon Glass wrote:
>> 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.
Yup, that would be the best.
>>> 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 :-)
>
> So, I see configs with both CONFIG_IDE and CONFIG_PCI set, so I'm not
> going to take this patch. We can move env on qemu easily enough I
> think. Sorry.
May a short workaround ...
Why not loading an env.txt over ide after U-Boot is up and import it?
bye,
Heiko
--
DENX Software Engineering GmbH, Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
More information about the U-Boot
mailing list