pmac_nvram problems

From: Johannes Berg
Date: Wed Aug 17 2005 - 06:17:36 EST


Hi,

Please CC me on answers, I'm not subscribed. I wasn't too sure where to
send this, so CC'ing to Benjamin Herrenschmidt as the author of the
relevant driver.

Note that this might apply to the copy in ppc64 as well, not sure.

Currently, the pmac_nvram driver can be built as a module, but doesn't
specify its license and also fails to load because it uses
alloc_bootmem:
| pmac_nvram: module license 'unspecified' taints kernel.
| pmac_nvram: Unknown symbol __alloc_bootmem

I'm not sure why alloc_bootmem is used at all (is the nvram larger than
a couple of pages on any machine? And if it is, should it really be
cached in RAM?), but I think it should be sufficient to just use kmalloc
(well, it works for me).

Secondly, this driver misses power management. Having suspended, I
booted OSX which always resets the boot volume. But after resuming
linux, nvsetvol(8) still reports 0 as the boot volume because the
pmac_nvram driver caches the nvram contents. Fixing this would require
converting the driver to the new model though, I think.

johannes

Attachment: signature.asc
Description: This is a digitally signed message part