fsmc.h 858 B

1234567891011121314151617181920212223242526272829
  1. /* Definitions for the Nomadik FSMC "Flexible Static Memory controller" */
  2. #ifndef __ASM_ARCH_FSMC_H
  3. #define __ASM_ARCH_FSMC_H
  4. #include <mach/hardware.h>
  5. /*
  6. * Register list
  7. */
  8. /* bus control reg. and bus timing reg. for CS0..CS3 */
  9. #define FSMC_BCR(x) (NOMADIK_FSMC_VA + (x << 3))
  10. #define FSMC_BTR(x) (NOMADIK_FSMC_VA + (x << 3) + 0x04)
  11. /* PC-card and NAND:
  12. * PCR = control register
  13. * PMEM = memory timing
  14. * PATT = attribute timing
  15. * PIO = I/O timing
  16. * PECCR = ECC result
  17. */
  18. #define FSMC_PCR(x) (NOMADIK_FSMC_VA + ((2 + x) << 5) + 0x00)
  19. #define FSMC_PMEM(x) (NOMADIK_FSMC_VA + ((2 + x) << 5) + 0x08)
  20. #define FSMC_PATT(x) (NOMADIK_FSMC_VA + ((2 + x) << 5) + 0x0c)
  21. #define FSMC_PIO(x) (NOMADIK_FSMC_VA + ((2 + x) << 5) + 0x10)
  22. #define FSMC_PECCR(x) (NOMADIK_FSMC_VA + ((2 + x) << 5) + 0x14)
  23. #endif /* __ASM_ARCH_FSMC_H */