Messages in this thread | | | Date | Wed, 15 Aug 2007 16:55:48 +0800 | From | "Sonic Zhang" <> | Subject | Re: [PATCH again] [libata] libata driver for bf548 on chip ATAPI controller. |
| |
On 8/14/07, Alan Cox <alan@lxorguk.ukuu.org.uk> wrote: > > +/** > > + * Register transfer timing table > > + */ > > Libata has a complete set of transfer mode tables and timing functions - > any reason for not using them ? >
After a bit investigation, I find the timing paramters difined in struct ata_timing are different from that in hardware manual of BF548.
struct ata_timing { unsigned short mode; /* ATA mode */ unsigned short setup; /* t1 */ unsigned short act8b; /* t2 for 8-bit I/O */ unsigned short rec8b; /* t2i for 8-bit I/O */ unsigned short cyc8b; /* t0 for 8-bit I/O */ unsigned short active; /* t2 or tD */ unsigned short recover; /* t2i or tK */ unsigned short cycle; /* t0 */ unsigned short udma; /* t2CYCTYP/2 */ };
BF548 PIO timing registers: u8 teoc_reg; u8 t2_reg;
u4 t4_reg; u8 t2_pio; u4 t1_reg;
u8 teoc_pio;
BF548 UDMA timing registers: u8 tenv; u8 tack;
u8 tcyc_tdvs; u8 tdvs;
u8 tmli; u8 tss;
u8 trp; u8 tzah;
I can't find a simple way to configure bf548 registers with the ata_timing data. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |