Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 21 Aug 2020 16:58:05 +0200
From:      Emmanuel Vadot <manu@bidouilliste.com>
To:        Johnny Sorocil <jsorocil@gmail.com>
Cc:        Ian Lepore <ian@freebsd.org>, freebsd-arm@freebsd.org
Subject:   Re: Disabling internal RTC ends up in hang
Message-ID:  <20200821165805.f36090fee5afac8a3ad1d570@bidouilliste.com>
In-Reply-To: <CADxA8SpD9qZEL=4GN=opcztjRN3NWSV%2B3bqxkhvG3fp0WwuHfg@mail.gmail.com>
References:  <CADxA8Sq6TrjDBW0PH_HoywrKDjT=mKxH0F27XYLxDN=d=QHHyw@mail.gmail.com> <CADxA8Sr%2Bmkx1GvgabFWOCaN3nURy=LoOH9VM9DduynWbW%2Bo_Mg@mail.gmail.com> <6d88bd5659b854d9af73cb9a325c719c3d7d9da9.camel@freebsd.org> <CADxA8SpD9qZEL=4GN=opcztjRN3NWSV%2B3bqxkhvG3fp0WwuHfg@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, 21 Aug 2020 12:24:17 +0200
Johnny Sorocil <jsorocil@gmail.com> wrote:

> On Wed, Aug 19, 2020 at 7:55 PM Ian Lepore <ian@freebsd.org> wrote:
> 
> > I think you may be running into a problem Andriy (avg@) described on
> > irc the other day:  the allwinner RTC hardware has no way to detect
> > whether it lost power, so it always supplies the time, even if it's
> > incorrect.  When there are multiple RTCs in the system, the kernel asks
> > them in the order they registered until one provides the time.
> >
> > I suspect the panic is happening because the internal RTC also provides
> > the system 32khz clock, which is needed by other devices.
> >
> > He cooked up this patch: http://paste.ubuntu.com/p/6hhtQbJC85/
> >
> > With that patch in place, the 32khz clock would be available, but the
> > RTC would not supply the time unless it was correct.
> >
> 
>  Attempt #1:
> Booting GENERIC kernel and loading patched "aw_rtc.ko"
> - already present in kernel
> - system date not correct
> 
> Attempt #2:
> Booting custom kernel with option "nodevice aw_rtc" and loading patched
> "aw_rtc.ko"
> - same panic & hang as in previous message

 Both #1 and #2 are expected, aw_rtc is present in GENERIC and needs to
be for the 32khz clock to be created.

> Attempt #3:
> Booting GENERIC kernel which has builtin patched "aw_rtc":
> 
> mmc0: No compatible cards found on bus
> aw_mmc1: Spurious interrupt - no active request, rint: 0x00000004
> 
> mmc1: <MMC/SD bus> on aw_mmc0
> Cannot set frequency for clk: mmc0, error: 34
> aw_mmc0: failed to set frequency to 50000000 Hz: 34
> uhub2: 1 port with 1 removable, self powered
> uhub0: 1 port with 1 removable, self powered
> ugen2.2: <Realtek 802.11n NIC> at usbus2
> mountroot: waiting for device /dev/ufs/rootfs...
> Mounting from ufs:/dev/ufs/rootfs failed with error 19.
> 
> Loader variables:
>   vfs.root.mountfrom=ufs:/dev/ufs/rootfs
>   vfs.root.mountfrom.options=rw
> 
> Manual root filesystem specification:
>   <fstype>:<device> [options]
>       Mount <device> using filesystem <fstype>
>       and with the specified (optional) option list.
> 
>     eg. ufs:/dev/da0s1a
>         zfs:zroot/ROOT/default
>         cd9660:/dev/cd0 ro
>           (which is equivalent to: mount -t cd9660 -o ro /dev/cd0 /)
> 
>   ?               List valid disk boot devices
>   .               Yield 1 second (for background tasks)
>   <empty line>    Abort manual input
> 
> mountroot> aw_mmc0: controller timeout
> aw_mmc0: timeout resetting DMA/FIFO
> aw_mmc0: timeout updating clock
> aw_mmc0: controller timeout
> aw_mmc0: timeout resetting DMA/FIFO
> aw_mmc0: timeout updating clock
> aw_mmc0: controller timeout
> aw_mmc0: timeout resetting DMA/FIFO

 That doesn't seems related at all, do you have any other modification ?

> _______________________________________________
> freebsd-arm@freebsd.org mailing list
> https://lists.freebsd.org/mailman/listinfo/freebsd-arm
> To unsubscribe, send any mail to "freebsd-arm-unsubscribe@freebsd.org"


-- 
Emmanuel Vadot <manu@bidouilliste.com> <manu@freebsd.org>



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20200821165805.f36090fee5afac8a3ad1d570>