SAMA5D3 Xplained: SPL broken after panic added to /lib/time.c:94

Eugen.Hristev at microchip.com Eugen.Hristev at microchip.com
Tue Mar 23 17:26:52 CET 2021


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 <mluis.reis at gmail.com 
> <mailto:mluis.reis at gmail.com>> 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, <Eugen.Hristev at microchip.com
>     <mailto:Eugen.Hristev at microchip.com>> 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, <Eugen.Hristev at microchip.com
>         <mailto:Eugen.Hristev at microchip.com>
>          > <mailto:Eugen.Hristev at microchip.com
>         <mailto:Eugen.Hristev at microchip.com>>> 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
>          >      >
>          >      > <debug_uart>
>          >      > 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)
>          >      >
>          >
> 



More information about the U-Boot mailing list