From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?Q?Manuel_Lu=C3=ADs_Reis?= Date: Tue, 23 Mar 2021 16:54:43 +0000 Subject: SAMA5D3 Xplained: SPL broken after panic added to /lib/time.c:94 In-Reply-To: <61fa8518-41ca-cff6-c88b-a0ba5df42edd@microchip.com> References: <32474781-93e4-0d71-b5c0-b0b3743ea085@microchip.com> <61fa8518-41ca-cff6-c88b-a0ba5df42edd@microchip.com> Message-ID: List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Hi again, > There are timers on the board. How come it used to work, before the > commit that breaks it ? > > I understand that nobody registers a driver in the UCLASS_TIMER , but > why was this enforced? and if this enforcement breaks our board, we can > either: > 1/ stop the enforcement > 2/ comply > > Either way, I think we have to see how we can get one timer to register > itself as an UCLASS_TIMER I understand. > This timer is a new hardware timer which is not present in the sama5d3 SoC. > > Sama5d3 should have old PIT timers, (programmable interrupt timer) > and most likely that code has not been converted to DM (UCLASSes) > > One possible approach is to convert specific old PIT code to comply with > DM requirements (or if that code is already available, we have to > use/enable it ). > > I add Claudiu in the mail thread, as he is more familiar with PIT and > timers than I am, and maybe he has some opinion related to this issue. Thanks for clarifying this for me. Look forward to hearing from Claudiu. Cheers, On Tue, 23 Mar 2021 at 16:26, wrote: > > On 3/23/21 6:08 PM, Manuel Lu?s Reis wrote: > > Hi again, > > > > FYI: As a small test I commented out the change you mentioned but got > > the same mistake. Begs to wonder if it is > > related to the issue at hand. > > > > Going back to > > http://u-boot.10912.n7.nabble.com/PATCH-v2-time-Fix-get-ticks-being-non-monotonic-td426172.html > > > > Sean Anderson asks: > > > > "So nothing here is probed, but additionally nothing has UCLASS_TIMER. > > What do you expect the timer device to be?" > > There are timers on the board. How come it used to work, before the > commit that breaks it ? > > I understand that nobody registers a driver in the UCLASS_TIMER , but > why was this enforced? and if this enforcement breaks our board, we can > either: > 1/ stop the enforcement > 2/ comply > > Either way, I think we have to see how we can get one timer to register > itself as an UCLASS_TIMER > > > > > > Is the timer missing for SAMA5D3 board? I cannot find it in > > /drivers/timer, other than mchp-pit64b-timer.c, which doesn't > > seem to be used ins this particular board as far as I could tell. > > This timer is a new hardware timer which is not present in the sama5d3 SoC. > > Sama5d3 should have old PIT timers, (programmable interrupt timer) > and most likely that code has not been converted to DM (UCLASSes) > > One possible approach is to convert specific old PIT code to comply with > DM requirements (or if that code is already available, we have to > use/enable it ). > > I add Claudiu in the mail thread, as he is more familiar with PIT and > timers than I am, and maybe he has some opinion related to this issue. > > Eugen > > > > > Any thoughts on how to fix this? Anything I can do to help? > > > > Cheers > > > > > > On Tue, 23 Mar 2021 at 13:20, Manuel Lu?s Reis > > wrote: > > > > > > > The change may be dedicated to sama5d2 devices. Could you have a look > > > please if your device (sama5d3) needs this change as well ? I > > mean, does > > > doing something similar for sama5d3 fixes your problem ? > > > > I am not quite sure how to check what you suggest to be honest. > > > > The commit you've sent seems to be board independent -> > > mach-at91/spl_atmel.c. Doesn't it apply to all of the at91 boards, > > sama5d3 inclusive? > > I don't see where else I could make a change like that. > > > > Thanks for your patience. > > > > > > > > On Tue, 23 Mar 2021 at 11:38, > > wrote: > > > > On 3/23/21 1:28 PM, Manuel Lu?s Reis wrote: > > > > > Hi, > > > > > > Thanks for your reply. > > > > > > > Can you please check if this commit is in your tree, or, > > if the same has > > > > to be applied in your case (sama5d3), to make it work ? > > > > > > I've got that change in my tree, but I'm still getting the > > error message. > > > > The change may be dedicated to sama5d2 devices. Could you have a > > look > > please if your device (sama5d3) needs this change as well ? I > > mean, does > > doing something similar for sama5d3 fixes your problem ? > > > > Thanks, > > Eugen > > > > > > > > I am using up-to-date mainline U-Boot. > > > > > > Thanks > > > > > > > > > > > > On Tue, 23 Mar 2021 at 11:14, > > > > > >> wrote: > > > > > > Hi, > > > > > > Can you please check if this commit is in your tree, or, > > if the same > > > has > > > to be applied in your case (sama5d3), to make it work ? > > > > > > Here is the commit : > > > > > > > > > > > https://source.denx.de/u-boot/custodians/u-boot-atmel/-/commit/786f35b619ddbfb88e4532d11a56413f5dab473f > > > > > > > > > > > > On 3/23/21 1:06 PM, Manuel Lu?s Reis wrote: > > > > Hello, > > > > > > > > I've been having issues with SPL booting in the > > SAMA5D3 Xplained > > > board > > > > getting the following error, with up-to-date mainline > > U-boot and > > > > sama5d3_xplained _mmc_defconfig: > > > > > > > > ----------------------------------------------- > > > > RomBOOT > > > > > > > > > > > > Could not initialize timer (err -19) > > > > ..... > > > > ----------------------------------------------- > > > > > > > > I could trace back the error to commit 4b2be78. > > > > > > > > This topic has been raised before on > > > > > > > > > http://u-boot.10912.n7.nabble.com/PATCH-v2-time-Fix-get-ticks-being-non-monotonic-td426172.html > > > > Tried the suggestions there with the same result. > > > > > > > > I'm am not too knowledgeable with U-Boot nor this > > board. Could > > > you shed > > > > some light on this? Any pointers would be appreciated. > > > > > > > > Let me know if you require additional information. > > > > > > > > Cheers, > > > > Manuel > > > > > > > > Output from dm_dump_all(): > > > > > > > > Class Index Probed Driver Name > > > > > > ----------------------------------------------------------- > > > > root 0 [ + ] root_driver root_driver > > > > simple_bus 0 [ ] simple_bus `-- ahb > > > > simple_bus 1 [ ] simple_bus `-- apb > > > > mmc 0 [ ] atmel-mci |-- mmc at f0000000 > > > > blk 0 [ ] mmc_blk | `-- > > mmc at f0000000.blk > > > > mmc 1 [ ] atmel-mci |-- mmc at f8000000 > > > > blk 1 [ ] mmc_blk | `-- > > mmc at f8000000.blk > > > > serial 0 [ ] serial_atmel |-- > > serial at ffffee00 > > > > pinctrl 0 [ ] atmel_sama5d3_pinctrl |-- > > > pinctrl at fffff200 > > > > pinconfig 0 [ ] pinconfig | |-- dbgu > > > > pinconfig 1 [ ] pinconfig | | `-- > > dbgu-0 > > > > pinconfig 2 [ ] pinconfig | |-- mmc0 > > > > pinconfig 3 [ ] pinconfig | | |-- > > > mmc0_clk_cmd_dat0 > > > > pinconfig 4 [ ] pinconfig | | |-- > > mmc0_dat1_3 > > > > pinconfig 5 [ ] pinconfig | | `-- > > mmc0_dat4_7 > > > > pinconfig 6 [ ] pinconfig | |-- mmc1 > > > > pinconfig 7 [ ] pinconfig | | |-- > > > mmc1_clk_cmd_dat0 > > > > pinconfig 8 [ ] pinconfig | | `-- > > mmc1_dat1_3 > > > > pinconfig 9 [ ] pinconfig | |-- spi0 > > > > pinconfig 10 [ ] pinconfig | | > > `-- spi0-0 > > > > pinconfig 11 [ ] pinconfig | |-- spi1 > > > > pinconfig 12 [ ] pinconfig | | > > `-- spi1-0 > > > > pinconfig 13 [ ] pinconfig | `-- board > > > > pinconfig 14 [ ] pinconfig | > > |-- mmc0_cd > > > > pinconfig 15 [ ] pinconfig | > > `-- mmc1_cd > > > > gpio 0 [ ] atmel_at91rm9200_gpio |-- > > gpio at fffff200 > > > > gpio 1 [ ] atmel_at91rm9200_gpio |-- > > gpio at fffff400 > > > > gpio 2 [ ] atmel_at91rm9200_gpio |-- > > gpio at fffff600 > > > > gpio 3 [ ] atmel_at91rm9200_gpio |-- > > gpio at fffff800 > > > > gpio 4 [ ] atmel_at91rm9200_gpio |-- > > gpio at fffffa00 > > > > simple_bus 2 [ ] at91-pmc `-- > > pmc at fffffc00 > > > > clk 0 [ ] at91sam9x5-utmi-clk |-- > > utmick > > > > clk 1 [ ] at91-master-clk |-- > > masterck > > > > misc 0 [ ] sam9x5-periph-clk `-- > > periphck > > > > clk 2 [ ] periph-clk |-- > > dbgu_clk at 2 > > > > clk 3 [ ] periph-clk |-- > > pioA_clk at 6 > > > > clk 4 [ ] periph-clk |-- > > pioB_clk at 7 > > > > clk 5 [ ] periph-clk |-- > > pioC_clk at 8 > > > > clk 6 [ ] periph-clk |-- > > pioD_clk at 9 > > > > clk 7 [ ] periph-clk |-- > > pioE_clk at 10 > > > > clk 8 [ ] periph-clk |-- > > mci0_clk at 21 > > > > clk 9 [ ] periph-clk |-- > > mci1_clk at 22 > > > > clk 10 [ ] periph-clk |-- > > spi0_clk at 24 > > > > clk 11 [ ] periph-clk `-- > > spi1_clk at 25 > > > > Could not initialize timer (err -19) > > > > > > > > > >