ata.h 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. /*
  2. * ATA Internal Memory Map
  3. *
  4. * Copyright (C) 2004-2008 Freescale Semiconductor, Inc.
  5. * TsiChung Liew (Tsi-Chung.Liew@freescale.com)
  6. *
  7. * SPDX-License-Identifier: GPL-2.0+
  8. */
  9. #ifndef __ATA_H__
  10. #define __ATA_H__
  11. /* ATA */
  12. typedef struct atac {
  13. /* PIO */
  14. u8 toff; /* 0x00 */
  15. u8 ton; /* 0x01 */
  16. u8 t1; /* 0x02 */
  17. u8 t2w; /* 0x03 */
  18. u8 t2r; /* 0x04 */
  19. u8 ta; /* 0x05 */
  20. u8 trd; /* 0x06 */
  21. u8 t4; /* 0x07 */
  22. u8 t9; /* 0x08 */
  23. /* DMA */
  24. u8 tm; /* 0x09 */
  25. u8 tn; /* 0x0A */
  26. u8 td; /* 0x0B */
  27. u8 tk; /* 0x0C */
  28. u8 tack; /* 0x0D */
  29. u8 tenv; /* 0x0E */
  30. u8 trp; /* 0x0F */
  31. u8 tzah; /* 0x10 */
  32. u8 tmli; /* 0x11 */
  33. u8 tdvh; /* 0x12 */
  34. u8 tdzfs; /* 0x13 */
  35. u8 tdvs; /* 0x14 */
  36. u8 tcvh; /* 0x15 */
  37. u8 tss; /* 0x16 */
  38. u8 tcyc; /* 0x17 */
  39. /* FIFO */
  40. u32 fifo32; /* 0x18 */
  41. u16 fifo16; /* 0x1C */
  42. u8 rsvd0[2];
  43. u8 ffill; /* 0x20 */
  44. u8 rsvd1[3];
  45. /* ATA */
  46. u8 cr; /* 0x24 */
  47. u8 rsvd2[3];
  48. u8 isr; /* 0x28 */
  49. u8 rsvd3[3];
  50. u8 ier; /* 0x2C */
  51. u8 rsvd4[3];
  52. u8 icr; /* 0x30 */
  53. u8 rsvd5[3];
  54. u8 falarm; /* 0x34 */
  55. u8 rsvd6[106];
  56. } atac_t;
  57. #endif /* __ATA_H__ */