From mboxrd@z Thu Jan 1 00:00:00 1970 From: Heiko Schocher Date: Fri, 23 Jun 2017 06:10:26 +0200 Subject: [U-Boot] Initilize IDE prior environment In-Reply-To: <20170622234906.GV27196@bill-the-cat> References: <20170619145604.31628-1-otavio@ossystems.com.br> <20170620174208.GH10782@bill-the-cat> <20170622234906.GV27196@bill-the-cat> Message-ID: <594C94B2.7070108@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 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 wrote: >>> >>> +Simon >>> >>> On Wed, Jun 21, 2017 at 4:08 AM, Otavio Salvador >>> wrote: >>>> On Tue, Jun 20, 2017 at 2:42 PM, Tom Rini 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 >>>>>> --- >>>>>> >>>>>> 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