All of lore.kernel.org
 help / color / mirror / Atom feed
* rock960c
@ 2021-07-06  7:03 Trevor Woerner
  2021-07-12  6:54 ` rock960c Peter Robinson
  0 siblings, 1 reply; 3+ messages in thread
From: Trevor Woerner @ 2021-07-06  7:03 UTC (permalink / raw)
  To: u-boot; +Cc: pbrobinson, philipp.tomsich, sjg, kever.yang

Hi,

I was hoping that one day support would be added for the rockchip rock960c
board (from the 96boards series, https://www.96boards.org/product/rock960c/).
NOTE: this board is different from the rock960 board (aka rock960 a/b) that is
currently supported.

Schematics and datasheets aren't easy to come by. A while back someone
mentioned that the only difference between the rock960 a/b and the rock960c is
that the rock960c uses different SDRAM (LPDDR4 instead of LPDDR3). Searching
around on the Internet it would appear that the rock960c uses the same SDRAM
as the rock-pi-4 devices (maybe?).

The actual SDRAM on the board is H9HCNNN4KUML-HRNMN, but I can't find a
datasheet for it anywhere, not even on Hynix's website.

I tried creating a rock960c device by copying the rock960 things. The one
change I made was that my rk3399-rock960c-u-boot.dtsi file has:

	#include "rk3399-sdram-lpddr4-100.dtsi"

(which is what the rock-pi-4 is using) instead of:

	#include "rk3399-sdram-lpddr3-2GB-1600.dtsi"

(which is what rk3399-rock960-u-boot.dtsi is using). Unfortunately this
doesn't succeed. The TPL is invoked, then there's nothing else on the console:

	U-Boot TPL 2021.04 (Jun 30 2021 - 18:16:57)

I then tried building and using the vendor-supplied u-boot fork for the
rock960c which is found here:

	git://github.com/96rocks/u-boot.git

but it is quite old (U-Boot 2017.09) and pre-dates the TPL/idbloader things.
If I understand things correctly, the vendor branch only builds u-boot and the
spl, I then need to mash in some sort of binary ddr file to the spl to get a
working first-stage bootloader (?). I'm unclear how to take the build output
from the vendor branch and create a working bootloader to load on my sdcard
(the only docs for the rk3399 in that branch are generic and don't refer to
things that come out of the build for the rock960c).

In any case, if anyone has any any tips etc I'd appreciate it :-)

Best regards,
	Trevor

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: rock960c
  2021-07-06  7:03 rock960c Trevor Woerner
@ 2021-07-12  6:54 ` Peter Robinson
  2021-07-12 16:07   ` rock960c Trevor Woerner
  0 siblings, 1 reply; 3+ messages in thread
From: Peter Robinson @ 2021-07-12  6:54 UTC (permalink / raw)
  To: Trevor Woerner; +Cc: u-boot, philipp.tomsich, Simon Glass, Kever Yang

On Tue, Jul 6, 2021 at 8:03 AM Trevor Woerner <twoerner@gmail.com> wrote:
>
> Hi,
>
> I was hoping that one day support would be added for the rockchip rock960c
> board (from the 96boards series, https://www.96boards.org/product/rock960c/).
> NOTE: this board is different from the rock960 board (aka rock960 a/b) that is
> currently supported.
>
> Schematics and datasheets aren't easy to come by. A while back someone
> mentioned that the only difference between the rock960 a/b and the rock960c is
> that the rock960c uses different SDRAM (LPDDR4 instead of LPDDR3). Searching
> around on the Internet it would appear that the rock960c uses the same SDRAM
> as the rock-pi-4 devices (maybe?).

I don't think it has a USB-C port, nor a onboard eMMC, although from
memory it does have a header.

> The actual SDRAM on the board is H9HCNNN4KUML-HRNMN, but I can't find a
> datasheet for it anywhere, not even on Hynix's website.
>
> I tried creating a rock960c device by copying the rock960 things. The one
> change I made was that my rk3399-rock960c-u-boot.dtsi file has:
>
>         #include "rk3399-sdram-lpddr4-100.dtsi"
>
> (which is what the rock-pi-4 is using) instead of:
>
>         #include "rk3399-sdram-lpddr3-2GB-1600.dtsi"

You'll probably need to add/update a DDR line in the config file as well.

> (which is what rk3399-rock960-u-boot.dtsi is using). Unfortunately this
> doesn't succeed. The TPL is invoked, then there's nothing else on the console:
>
>         U-Boot TPL 2021.04 (Jun 30 2021 - 18:16:57)
>
> I then tried building and using the vendor-supplied u-boot fork for the
> rock960c which is found here:
>
>         git://github.com/96rocks/u-boot.git
>
> but it is quite old (U-Boot 2017.09) and pre-dates the TPL/idbloader things.
> If I understand things correctly, the vendor branch only builds u-boot and the
> spl, I then need to mash in some sort of binary ddr file to the spl to get a
> working first-stage bootloader (?). I'm unclear how to take the build output
> from the vendor branch and create a working bootloader to load on my sdcard
> (the only docs for the rk3399 in that branch are generic and don't refer to
> things that come out of the build for the rock960c).

I personally wouldn't waste your time with the vendor one, I would
think everything needed is already upstream for the core support.

> In any case, if anyone has any any tips etc I'd appreciate it :-)

There's not an upstream dts either, which probably isn't a big issue
for the basics. I don't remember whether or not if I have a revC of
these boards somewhere, I can't promise timing wise but if I get a
moment I'll see if I can work out if I have one.

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: rock960c
  2021-07-12  6:54 ` rock960c Peter Robinson
@ 2021-07-12 16:07   ` Trevor Woerner
  0 siblings, 0 replies; 3+ messages in thread
From: Trevor Woerner @ 2021-07-12 16:07 UTC (permalink / raw)
  To: Peter Robinson; +Cc: u-boot, philipp.tomsich, Simon Glass, Kever Yang

On Mon 2021-07-12 @ 07:54:44 AM, Peter Robinson wrote:
> On Tue, Jul 6, 2021 at 8:03 AM Trevor Woerner <twoerner@gmail.com> wrote:
> >
> > Hi,
> >
> > I was hoping that one day support would be added for the rockchip rock960c
> > board (from the 96boards series, https://www.96boards.org/product/rock960c/).
> > NOTE: this board is different from the rock960 board (aka rock960 a/b) that is
> > currently supported.
> >
> > Schematics and datasheets aren't easy to come by. A while back someone
> > mentioned that the only difference between the rock960 a/b and the rock960c is
> > that the rock960c uses different SDRAM (LPDDR4 instead of LPDDR3). Searching
> > around on the Internet it would appear that the rock960c uses the same SDRAM
> > as the rock-pi-4 devices (maybe?).
> 
> I don't think it has a USB-C port, nor a onboard eMMC, although from
> memory it does have a header.

It does have a USB-C port (although I'm using the separate 12V plug for power)
but you're right about the rest (it doesn't have onboard eMMC, but does have a
header if the user wants to populate one).

> > The actual SDRAM on the board is H9HCNNN4KUML-HRNMN, but I can't find a
> > datasheet for it anywhere, not even on Hynix's website.
> >
> > I tried creating a rock960c device by copying the rock960 things. The one
> > change I made was that my rk3399-rock960c-u-boot.dtsi file has:
> >
> >         #include "rk3399-sdram-lpddr4-100.dtsi"
> >
> > (which is what the rock-pi-4 is using) instead of:
> >
> >         #include "rk3399-sdram-lpddr3-2GB-1600.dtsi"
> 
> You'll probably need to add/update a DDR line in the config file as well.

Okay, I'll take a second look.

> > (which is what rk3399-rock960-u-boot.dtsi is using). Unfortunately this
> > doesn't succeed. The TPL is invoked, then there's nothing else on the console:
> >
> >         U-Boot TPL 2021.04 (Jun 30 2021 - 18:16:57)
> >
> > I then tried building and using the vendor-supplied u-boot fork for the
> > rock960c which is found here:
> >
> >         git://github.com/96rocks/u-boot.git
> >
> > but it is quite old (U-Boot 2017.09) and pre-dates the TPL/idbloader things.
> > If I understand things correctly, the vendor branch only builds u-boot and the
> > spl, I then need to mash in some sort of binary ddr file to the spl to get a
> > working first-stage bootloader (?). I'm unclear how to take the build output
> > from the vendor branch and create a working bootloader to load on my sdcard
> > (the only docs for the rk3399 in that branch are generic and don't refer to
> > things that come out of the build for the rock960c).
> 
> I personally wouldn't waste your time with the vendor one, I would
> think everything needed is already upstream for the core support.

Agreed. The vendor branch is so old I don't think it is useful anymore. Best
to just start with U-Boot master and tweak from there.

> > In any case, if anyone has any any tips etc I'd appreciate it :-)
> 
> There's not an upstream dts either, which probably isn't a big issue
> for the basics. I don't remember whether or not if I have a revC of
> these boards somewhere, I can't promise timing wise but if I get a
> moment I'll see if I can work out if I have one.

Sounds good, thanks! :-)

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2021-07-12 16:07 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-07-06  7:03 rock960c Trevor Woerner
2021-07-12  6:54 ` rock960c Peter Robinson
2021-07-12 16:07   ` rock960c Trevor Woerner

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.