On Tue, 16 Sep 2008 14:29:27 +0400, Sergei Shtylyov <sshtylyov@xxxxxxxxxxxxx> wrote: > >> This doesn't look consistent (aside from the TX4939IDE_REG8/16 issue) > >> -- mm_outsw_swap() calls cpu_to_le16() before writing 16-bit data but > >> this code doesn't. So, either one of those should be wrong... > > > > Thanks, this code should be wrong. IDE_TFLAG_OUT_DATA is totally > > untested... > > Hum, not necessarily... > If the data register is BE, this should work correctly, if I don't > mistake (once you fix the data register's address). Hmm... or ide_tf_load()/ide_tf_read() is broken for big endian MIPS ? (and possibly SPARC etc.) __ide_mm_writesw(port, &data, 1) should be used instead of writew() for IDE_TFLAG_OUT_DATA? --- Atsushi Nemoto