Plan 9 and Inferno at the Google Summer of Code

Open Firmware Client Interface Information

While handling control to Operating System; OFW passes address of client interface handler in register EAX. So in Plan9 kernel we need to copy this value from EAX and store it in a variable. And we need to do this before somebody else overwrites EAX register.

Rules for making OFW client interface call from Operating System:

  1. CS nad DS selectors should point to flat 4GB segments.
  2. EAX should contain pointer to argument array.
  3. On return from OFW, EAX contains return value.