[OpenBIOS] [PATCH] ppc: Increase #address-cells for ppc64

Andreas Färber andreas.faerber at web.de
Sun Nov 28 00:01:02 CET 2010


Am 24.11.2010 um 23:20 schrieb Andreas Färber:

> To store a full 64-bit address we need two cells.
> This matches Apple's OpenFirmware on my G5.
>
> Note that an enlarged #size-cells is not strictly needed
> and constitutes a difference between Apple and IBM firmware.
>
> Cc: Alexander Graf <agraf at suse.de>
> Signed-off-by: Andreas Färber <andreas.faerber at web.de>

I applied a reworked version in r975, with the PUSH() logic in an  
inline function.

As mentioned in the commit message, what I failed with was a loop  
along the lines of:

while (remaining > 0) {
PUSH(value);
remaining -= sizeof(ucell);
value >>= (sizeof(ucell) * 8);
}

That shift compiles only if sizeof(phys_addr_t) > sizeof(ucell), i.e.  
on ppc64.

Andreas


More information about the OpenBIOS mailing list