Re: [PATCH v4 00/25] Add support for OpenCAPI Persistent Memory devices

From: Michael Ellerman
Date: Thu Apr 02 2020 - 06:06:01 EST


"Oliver O'Halloran" <oohall@xxxxxxxxx> writes:
> On Thu, Apr 2, 2020 at 2:42 PM Michael Ellerman <mpe@xxxxxxxxxxxxxx> wrote:
>> "Alastair D'Silva" <alastair@xxxxxxxxxxx> writes:
>> >> -----Original Message-----
>> >> From: Dan Williams <dan.j.williams@xxxxxxxxx>
>> >>
>> >> On Sun, Mar 29, 2020 at 10:23 PM Alastair D'Silva <alastair@xxxxxxxxxxx>
>> >> wrote:
>> >> >
>> >> > *snip*
>> >> Are OPAL calls similar to ACPI DSMs? I.e. methods for the OS to invoke
>> >> platform firmware services? What's Skiboot?
>> >
>> > Yes, OPAL is the interface to firmware for POWER. Skiboot is the open-source (and only) implementation of OPAL.
>>
>> https://github.com/open-power/skiboot
>>
>> In particular the tokens for calls are defined here:
>>
>> https://github.com/open-power/skiboot/blob/master/include/opal-api.h#L220
>>
>> And you can grep for the token to find the implementation:
>>
>> https://github.com/open-power/skiboot/blob/master/hw/npu2-opencapi.c#L2328
>
> I'm not sure I'd encourage anyone to read npu2-opencapi.c. I find it
> hard enough to follow even with access to the workbooks.

Compared to certain firmwares that run on certain other platforms it's
actually pretty readable code ;)

> There's an OPAL call API reference here:
> http://open-power.github.io/skiboot/doc/opal-api/index.html

Even better.

cheers