<br><br><br>On Thu, Sep 24, 2009 at 12:52 AM, Stefan Reinauer <span dir="ltr"><<a href="mailto:stepan@coresystems.de">stepan@coresystems.de</a>></span> wrote:<br><div><div class="h5">Myles Watson wrote:<br>
> Are there other differences?  Should I2C devices use objects, since<br>
> you can't scan for them?<br>
<br>
</div></div>Some structures defined in the code are put in an extra section in the<br>
binary for enumeration. Those are:<br>
<br>
#define __console    __attribute__((used, __section__(".rodata.console_drivers")))<br>
#define __cpu_driver __attribute__((used,__section__(".rodata.cpu_driver")))<br>#define __pci_driver __attribute__((used,__section__(".rodata.pci_driver")))<br><br>All others don't need to be "drivers"<br>
<br>Stefan<br><br>---------------<br>Based on that, here's a patch that changes drivers that aren't console, pci, or cpu, to obj.<br><br>The most common one was mainboard.c as a driver.<br><br>Boot tested with Tyan s2895.<br>
<br>Signed-off-by: Myles Watson <<a href="mailto:mylesgw@gmail.com">mylesgw@gmail.com</a>><br><br>Thanks,<br>Myles<br><br>PS.  It looks like the rtl8168 driver ought to go somewhere more general in the tree.<br><br>
<br>