On Sun, 2 Nov 2008, Brad Boyer wrote:
> On Sun, Nov 02, 2008 at 12:21:23PM +0100, Laurent Vivier wrote: > > Le 2 nov. 08 à 09:54, Geert Uytterhoeven a écrit : > > > The preferred way to do this these days is to create a platform > > > device with a struct resource that points to the SWIMBase. > > > > Is this what Finn explains also in his answer ? If so, I agree. > > Not exactly. What Finn suggested is to match the way we handle many of > the other on-board things like ADB and SCSI. What Geert suggests is a > much more recent way to do things that we generally haven't done for > Mac-only drivers. I think Finn used it for the new Sonic ethernet driver > because we share it with other systems. The code in macsonic.c also has > the extra complexity from having both NuBus and on-board hardware to > support, and NuBus also hasn't been updated to the new driver model. > > Finn's suggestion of using the macintosh_config entry and data table is > the easiest way to get it working, but Geert's method would move to the > real device/driver model that most other systems are using now. I agree with Geert. Ignore my comment about device_initcall -- I was looking at via-cuda.c but that is not a good example. drivers/scsi/mac_esp.c is a better example. esp_mac_probe checks the macintosh_config entry. That and esp_mac_remove are the platform device entry points Geert referred to. The module entry points are mac_esp_init and mac_esp_exit. I think you could use either of the platform device probe routine or the module init routine to set the base address. Finn > Ideally this would be a macio driver instead of a platform driver in my > opinion, but I haven't finished getting the macio bus code working on > m68k. > > Brad Boyer > [EMAIL PROTECTED] > > -- > To unsubscribe from this list: send the line "unsubscribe linux-m68k" in > the body of a message to [EMAIL PROTECTED] > More majordomo info at http://vger.kernel.org/majordomo-info.html >
