On Sun, 2007-12-16 at 18:50 +0900, Paul Mundt wrote: > Ok, I don't know anything about the CD-ROM layer, so I've just commented > on the general and SH-specific stuff. Hopefully someone with a clue > in this area (ie, not me) can offer input on the rest of the bits. > > > +static char gdrom_execute_diagnostic(void) > > +{ > > + int count; > > + /* Restart the GDROM */ > > + ctrl_outl(0x1fffff, GDROM_RESET_REG); > > + for (count = 0xa0000000; count < 0xa0200000; count += 4) > > + ctrl_inl(count); > > Er? This ranged dummy reading of the P2 space needs some explanation. The > GD-ROM isn't even mapped in to this space, so this seems like a hack to > either work around a timing issue or a write ordering problem. > I'll confess to not knowing what it's up to here either, other than it looks like a mechanism to cause a G1 bus reset. This is a progressive read of the Boot ROM area and that is all under G1 control (as is the GD Rom obviously) Replacing it with a simple delay of any length or, say, a read of one word and then a delay, doesn't work. - To unsubscribe from this list: send the line "unsubscribe linux-ide" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html