[OpenPower-Firmware] Hardware documentation

Marty E. Plummer hanetzer at startmail.com
Sun Oct 13 01:33:02 AEDT 2019


On Fri, Oct 11, 2019 at 09:53:06AM -0500, Daniel M Crowell wrote:
> 
> I definitely feel your pain on the documentation front.  There are a few
> reasons why these sorts of things don't currently exist.  Obviously there
> is the usual "developers don't like to write docs" excuse :-).  The next
> reason is that a lot of this stuff crosses the open/proprietary line.  The
Fair enough, though I hope more stuff crosses over to the greener side
as soon as possible. Were it reasonably possible and forgiving I'd
almost be willing to sign an nda over it, with the proviso it wouldn't
get in the way of my firmware efforts.
> internal hardware specifications are still full of proprietary IP, but the
> code is open.  There hasn't been a concerted effort (that I know of) to
> create completely open hardware specifications because frankly there hasn't
> been a lot of interest to this point in anyone external playing around with
> this stuff.   You are blazing a trail here.
> 
And running head first into many, many walls lol. And this is only
working to operate with the existing seeprom sbefw/hostboot bootloader.
Its going to be even more fun once I get to the point of rewriting
those.
> There are some specifications out in the OpenPOWER organization.  For
> example, OpenFSI is here -
> http://openpowerfoundation.org/wp-content/uploads/resources/OpenFSI-spec-100/content/ch01.html
>   (pretty low-level electrical stuff though)
> 
Meaning: not particularly useful for my purposes, right?
> We've tried to provide a lot of comments where we can but as with all
> long-term projects, there is a lot of inertia-based code.  The Hostboot FSI
Yeah, its really fun decoding fsidd.C's stuff into something I can make
use of within a coreboot context. I've been eyeballing skiboot a bit, I
think a goodly portion of it is directly executed (but I seem to recall
reading that some of it just calls to the bits of hostboot still in
memory after it gets loaded, pinged Stewart Smith about that).
> code is based on the behavior of FSP code from 3 generations ago since the
> hardware logic is essentially unchanged.  So at the moment the code is the
> documentation, for all that is worth.  If you point us at some specific
> chunk of logic that is too opaque we can try to beef it up with comments.
> 
One thing I'd like to ask: I know with the pvr you can tell if its a
12/24 core scale up/out chip. Is there a definitive way one can further
break this down into a, say, 4c16t nimbus chip (like the ones offered
with the Talos II/Blackbird machines)?
> --
> Dan Crowell
> Senior Software Engineer - Power Systems Enablement Firmware
> IBM Rochester: t/l 553-2987
> dcrowell at us.ibm.com
> 
> 
> 
> From:	"Marty E. Plummer" <hanetzer at startmail.com>
> To:	openpower-firmware at lists.ozlabs.org
> Date:	10/10/2019 04:40 AM
> Subject:	[EXTERNAL] [OpenPower-Firmware] Hardware documentation
> Sent by:	"OpenPower-Firmware" <openpower-firmware-bounces
>             +dcrowell=us.ibm.com at lists.ozlabs.org>
> 
> 
> 
> Hello all.
> 
> So, I've gotten to the point I believe I've got code execution working
> (at the very least in theory; still need to do *something* easily
> detectable like writing a string to the scratch register) and am
> investigating what happens during the following isteps. I'm having a
> hard time following the execution of the c++ code past kernel.C due to
> all the indirections, and was wondering if there was some form of docs
> one could use as a reference.
> 
> Consider the arm pl011 uart driver, for example; it has a broad overview
> of the registers and their functionality specific to that particular
> piece of IP. Are there similar documents for fsi/scom/xscom/etc for the
> power9 chips? I already have register documents 1-3 for the p9 but they
> strike me as too broad, covering almost every thing in what seem to be
> very ... unspecific(?) ways. Something like 'to initialize the fsi bus,
> write 0xdeadbeef to register 0xdeadcode; to read something write this to
> there' and so on.
> 
> Thanks,
> Marty
> _______________________________________________
> OpenPower-Firmware mailing list
> OpenPower-Firmware at lists.ozlabs.org
> https://urldefense.proofpoint.com/v2/url?u=https-3A__lists.ozlabs.org_listinfo_openpower-2Dfirmware&d=DwICAg&c=jf_iaSHvJObTbx-siA1ZOg&r=mCj3CQvqek9g0fdziO-GEHyU1m9T3SAh0ZPd5s_AGpo&m=WwGS35D5zYnL2fNMOmPQJoePBhQhJ1AXenS70Xl6y1U&s=tA4zQS738desIlj_sJc2IdPzCLu9s4uDNLS2jbeYoeE&e=
> 
> 
> 
> 




More information about the OpenPower-Firmware mailing list