Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 25 Jul 2016 09:42:24 -0700
From:      Thomas Skibo <thomasskibo@yahoo.com>
To:        Lee D <embaudarm@gmail.com>
Cc:        freebsd-arm <freebsd-arm@freebsd.org>
Subject:   Re: Questions about writing custom boot loader, Zynq, Zybo
Message-ID:  <F81463B6-4312-44B6-AF04-1CDFE2E2A2CB@yahoo.com>
In-Reply-To: <CANC_bnMY0ZgZQTgE94bXuTp8xQ7Um7cALj39mLPQgDYumJPOwQ@mail.gmail.com>
References:  <C91EF32E-7131-4E03-8FE4-758C53613C7D@yahoo.com> <CANC_bnMY0ZgZQTgE94bXuTp8xQ7Um7cALj39mLPQgDYumJPOwQ@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help

> On Jul 24, 2016, at 3:25 PM, Lee D <embaudarm@gmail.com> wrote:
>=20
> Thanks for the tips.  The RS232 issue was simple.  Xilinx (or possibly =
Digilent) changed the default clock for the serial port from 50MHz to =
100MHz. I made the correction in the DTS file and now the baud rate is =
correct.

I hadn=E2=80=99t noticed they changed it.  My u-boot still uses the =
50Mhz so it matches the DTS file.

What really ought to happen is the slcr driver should determine the =
frequency of all the clocks derived from ps_clk so the only thing the =
DTS file needs to provide is the ps_clk frequency.  I=E2=80=99ll have to =
do that anyway if we move over to using GNU DTS files.

>=20
> Do you know if passing a  boot params structure in R0 is necessary for =
the kernel to boot? =20
>=20
> I still can't seem to get past that timer message.  This is what I've =
done:
>=20
> 1. Made sure I am working with a bare default Zybo config generated in =
Vivado 2016.2
>=20
> 2. compared my ps_init.[ch] to the one you pointed me to.  There were =
no significant differences except for the RS232 clock rate.  I had some =
MIO pins configured, and my DRAM timings were different.  my DRAM works =
fine with standalone apps so I assume that was a tweak made by Digilent =
and not an issue.
>=20
> 3. added printf's to inittimecounter() in  src/sys/kern/kern_tc.c.  It =
is clear that it completes normally.  Also the timer appears to be =
running. =20
>=20
> However that function is part of the kernel init sequence (SYSINIT =
macro), so I don't know what is getting called next.=20
>=20
> 4. I removed the ehci device from the DTS, and commented out all USB =
related entries in the zybo kernel config file.  Still it freezes after =
that timer message.  So probably not USB related.
>=20
> 5. Checked to make sure that the USB3320 chip is not being held in =
reset by the GPIO line.
>=20
> My next steps are:
>=20
> 1. keep digging through the kernel and placing printfs to pinpoint =
where it is failing.
>=20
> 2. try the ps_init.[ch] files you showed me in my project, even though =
they shouldn't make any difference.
>=20
> 3. try passing a boot params structure in r0.=20
>=20
> Thanks again for pointing me to the original ps_init files, that was =
very helpful to be able to see those.
>=20
> Lee
>=20

=E2=80=94=E2=80=94
Thomas Skibo
thomasskibo@yahoo.com






Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?F81463B6-4312-44B6-AF04-1CDFE2E2A2CB>