|
@@ -350,3 +350,195 @@
|
|
|
|
|
|
/*
|
|
|
* Port A
|
|
|
+ */
|
|
|
+#define PADIR_ADDR 0xfffff400 /* Port A direction reg */
|
|
|
+#define PADATA_ADDR 0xfffff401 /* Port A data register */
|
|
|
+#define PAPUEN_ADDR 0xfffff402 /* Port A Pull-Up enable reg */
|
|
|
+
|
|
|
+#define PADIR BYTE_REF(PADIR_ADDR)
|
|
|
+#define PADATA BYTE_REF(PADATA_ADDR)
|
|
|
+#define PAPUEN BYTE_REF(PAPUEN_ADDR)
|
|
|
+
|
|
|
+#define PA(x) (1 << (x))
|
|
|
+
|
|
|
+/*
|
|
|
+ * Port B
|
|
|
+ */
|
|
|
+#define PBDIR_ADDR 0xfffff408 /* Port B direction reg */
|
|
|
+#define PBDATA_ADDR 0xfffff409 /* Port B data register */
|
|
|
+#define PBPUEN_ADDR 0xfffff40a /* Port B Pull-Up enable reg */
|
|
|
+#define PBSEL_ADDR 0xfffff40b /* Port B Select Register */
|
|
|
+
|
|
|
+#define PBDIR BYTE_REF(PBDIR_ADDR)
|
|
|
+#define PBDATA BYTE_REF(PBDATA_ADDR)
|
|
|
+#define PBPUEN BYTE_REF(PBPUEN_ADDR)
|
|
|
+#define PBSEL BYTE_REF(PBSEL_ADDR)
|
|
|
+
|
|
|
+#define PB(x) (1 << (x))
|
|
|
+
|
|
|
+#define PB_CSB0 0x01 /* Use CSB0 as PB[0] */
|
|
|
+#define PB_CSB1 0x02 /* Use CSB1 as PB[1] */
|
|
|
+#define PB_CSC0_RAS0 0x04 /* Use CSC0/RAS0 as PB[2] */
|
|
|
+#define PB_CSC1_RAS1 0x08 /* Use CSC1/RAS1 as PB[3] */
|
|
|
+#define PB_CSD0_CAS0 0x10 /* Use CSD0/CAS0 as PB[4] */
|
|
|
+#define PB_CSD1_CAS1 0x20 /* Use CSD1/CAS1 as PB[5] */
|
|
|
+#define PB_TIN_TOUT 0x40 /* Use TIN/TOUT as PB[6] */
|
|
|
+#define PB_PWMO 0x80 /* Use PWMO as PB[7] */
|
|
|
+
|
|
|
+/*
|
|
|
+ * Port C
|
|
|
+ */
|
|
|
+#define PCDIR_ADDR 0xfffff410 /* Port C direction reg */
|
|
|
+#define PCDATA_ADDR 0xfffff411 /* Port C data register */
|
|
|
+#define PCPDEN_ADDR 0xfffff412 /* Port C Pull-Down enb. reg */
|
|
|
+#define PCSEL_ADDR 0xfffff413 /* Port C Select Register */
|
|
|
+
|
|
|
+#define PCDIR BYTE_REF(PCDIR_ADDR)
|
|
|
+#define PCDATA BYTE_REF(PCDATA_ADDR)
|
|
|
+#define PCPDEN BYTE_REF(PCPDEN_ADDR)
|
|
|
+#define PCSEL BYTE_REF(PCSEL_ADDR)
|
|
|
+
|
|
|
+#define PC(x) (1 << (x))
|
|
|
+
|
|
|
+#define PC_LD0 0x01 /* Use LD0 as PC[0] */
|
|
|
+#define PC_LD1 0x02 /* Use LD1 as PC[1] */
|
|
|
+#define PC_LD2 0x04 /* Use LD2 as PC[2] */
|
|
|
+#define PC_LD3 0x08 /* Use LD3 as PC[3] */
|
|
|
+#define PC_LFLM 0x10 /* Use LFLM as PC[4] */
|
|
|
+#define PC_LLP 0x20 /* Use LLP as PC[5] */
|
|
|
+#define PC_LCLK 0x40 /* Use LCLK as PC[6] */
|
|
|
+#define PC_LACD 0x80 /* Use LACD as PC[7] */
|
|
|
+
|
|
|
+/*
|
|
|
+ * Port D
|
|
|
+ */
|
|
|
+#define PDDIR_ADDR 0xfffff418 /* Port D direction reg */
|
|
|
+#define PDDATA_ADDR 0xfffff419 /* Port D data register */
|
|
|
+#define PDPUEN_ADDR 0xfffff41a /* Port D Pull-Up enable reg */
|
|
|
+#define PDSEL_ADDR 0xfffff41b /* Port D Select Register */
|
|
|
+#define PDPOL_ADDR 0xfffff41c /* Port D Polarity Register */
|
|
|
+#define PDIRQEN_ADDR 0xfffff41d /* Port D IRQ enable register */
|
|
|
+#define PDKBEN_ADDR 0xfffff41e /* Port D Keyboard Enable reg */
|
|
|
+#define PDIQEG_ADDR 0xfffff41f /* Port D IRQ Edge Register */
|
|
|
+
|
|
|
+#define PDDIR BYTE_REF(PDDIR_ADDR)
|
|
|
+#define PDDATA BYTE_REF(PDDATA_ADDR)
|
|
|
+#define PDPUEN BYTE_REF(PDPUEN_ADDR)
|
|
|
+#define PDSEL BYTE_REF(PDSEL_ADDR)
|
|
|
+#define PDPOL BYTE_REF(PDPOL_ADDR)
|
|
|
+#define PDIRQEN BYTE_REF(PDIRQEN_ADDR)
|
|
|
+#define PDKBEN BYTE_REF(PDKBEN_ADDR)
|
|
|
+#define PDIQEG BYTE_REF(PDIQEG_ADDR)
|
|
|
+
|
|
|
+#define PD(x) (1 << (x))
|
|
|
+
|
|
|
+#define PD_INT0 0x01 /* Use INT0 as PD[0] */
|
|
|
+#define PD_INT1 0x02 /* Use INT1 as PD[1] */
|
|
|
+#define PD_INT2 0x04 /* Use INT2 as PD[2] */
|
|
|
+#define PD_INT3 0x08 /* Use INT3 as PD[3] */
|
|
|
+#define PD_IRQ1 0x10 /* Use IRQ1 as PD[4] */
|
|
|
+#define PD_IRQ2 0x20 /* Use IRQ2 as PD[5] */
|
|
|
+#define PD_IRQ3 0x40 /* Use IRQ3 as PD[6] */
|
|
|
+#define PD_IRQ6 0x80 /* Use IRQ6 as PD[7] */
|
|
|
+
|
|
|
+/*
|
|
|
+ * Port E
|
|
|
+ */
|
|
|
+#define PEDIR_ADDR 0xfffff420 /* Port E direction reg */
|
|
|
+#define PEDATA_ADDR 0xfffff421 /* Port E data register */
|
|
|
+#define PEPUEN_ADDR 0xfffff422 /* Port E Pull-Up enable reg */
|
|
|
+#define PESEL_ADDR 0xfffff423 /* Port E Select Register */
|
|
|
+
|
|
|
+#define PEDIR BYTE_REF(PEDIR_ADDR)
|
|
|
+#define PEDATA BYTE_REF(PEDATA_ADDR)
|
|
|
+#define PEPUEN BYTE_REF(PEPUEN_ADDR)
|
|
|
+#define PESEL BYTE_REF(PESEL_ADDR)
|
|
|
+
|
|
|
+#define PE(x) (1 << (x))
|
|
|
+
|
|
|
+#define PE_SPMTXD 0x01 /* Use SPMTXD as PE[0] */
|
|
|
+#define PE_SPMRXD 0x02 /* Use SPMRXD as PE[1] */
|
|
|
+#define PE_SPMCLK 0x04 /* Use SPMCLK as PE[2] */
|
|
|
+#define PE_DWE 0x08 /* Use DWE as PE[3] */
|
|
|
+#define PE_RXD 0x10 /* Use RXD as PE[4] */
|
|
|
+#define PE_TXD 0x20 /* Use TXD as PE[5] */
|
|
|
+#define PE_RTS 0x40 /* Use RTS as PE[6] */
|
|
|
+#define PE_CTS 0x80 /* Use CTS as PE[7] */
|
|
|
+
|
|
|
+/*
|
|
|
+ * Port F
|
|
|
+ */
|
|
|
+#define PFDIR_ADDR 0xfffff428 /* Port F direction reg */
|
|
|
+#define PFDATA_ADDR 0xfffff429 /* Port F data register */
|
|
|
+#define PFPUEN_ADDR 0xfffff42a /* Port F Pull-Up enable reg */
|
|
|
+#define PFSEL_ADDR 0xfffff42b /* Port F Select Register */
|
|
|
+
|
|
|
+#define PFDIR BYTE_REF(PFDIR_ADDR)
|
|
|
+#define PFDATA BYTE_REF(PFDATA_ADDR)
|
|
|
+#define PFPUEN BYTE_REF(PFPUEN_ADDR)
|
|
|
+#define PFSEL BYTE_REF(PFSEL_ADDR)
|
|
|
+
|
|
|
+#define PF(x) (1 << (x))
|
|
|
+
|
|
|
+#define PF_LCONTRAST 0x01 /* Use LCONTRAST as PF[0] */
|
|
|
+#define PF_IRQ5 0x02 /* Use IRQ5 as PF[1] */
|
|
|
+#define PF_CLKO 0x04 /* Use CLKO as PF[2] */
|
|
|
+#define PF_A20 0x08 /* Use A20 as PF[3] */
|
|
|
+#define PF_A21 0x10 /* Use A21 as PF[4] */
|
|
|
+#define PF_A22 0x20 /* Use A22 as PF[5] */
|
|
|
+#define PF_A23 0x40 /* Use A23 as PF[6] */
|
|
|
+#define PF_CSA1 0x80 /* Use CSA1 as PF[7] */
|
|
|
+
|
|
|
+/*
|
|
|
+ * Port G
|
|
|
+ */
|
|
|
+#define PGDIR_ADDR 0xfffff430 /* Port G direction reg */
|
|
|
+#define PGDATA_ADDR 0xfffff431 /* Port G data register */
|
|
|
+#define PGPUEN_ADDR 0xfffff432 /* Port G Pull-Up enable reg */
|
|
|
+#define PGSEL_ADDR 0xfffff433 /* Port G Select Register */
|
|
|
+
|
|
|
+#define PGDIR BYTE_REF(PGDIR_ADDR)
|
|
|
+#define PGDATA BYTE_REF(PGDATA_ADDR)
|
|
|
+#define PGPUEN BYTE_REF(PGPUEN_ADDR)
|
|
|
+#define PGSEL BYTE_REF(PGSEL_ADDR)
|
|
|
+
|
|
|
+#define PG(x) (1 << (x))
|
|
|
+
|
|
|
+#define PG_BUSW_DTACK 0x01 /* Use BUSW/DTACK as PG[0] */
|
|
|
+#define PG_A0 0x02 /* Use A0 as PG[1] */
|
|
|
+#define PG_EMUIRQ 0x04 /* Use EMUIRQ as PG[2] */
|
|
|
+#define PG_HIZ_P_D 0x08 /* Use HIZ/P/D as PG[3] */
|
|
|
+#define PG_EMUCS 0x10 /* Use EMUCS as PG[4] */
|
|
|
+#define PG_EMUBRK 0x20 /* Use EMUBRK as PG[5] */
|
|
|
+
|
|
|
+/*
|
|
|
+ * Port J
|
|
|
+ */
|
|
|
+#define PJDIR_ADDR 0xfffff438 /* Port J direction reg */
|
|
|
+#define PJDATA_ADDR 0xfffff439 /* Port J data register */
|
|
|
+#define PJPUEN_ADDR 0xfffff43A /* Port J Pull-Up enb. reg */
|
|
|
+#define PJSEL_ADDR 0xfffff43B /* Port J Select Register */
|
|
|
+
|
|
|
+#define PJDIR BYTE_REF(PJDIR_ADDR)
|
|
|
+#define PJDATA BYTE_REF(PJDATA_ADDR)
|
|
|
+#define PJPUEN BYTE_REF(PJPUEN_ADDR)
|
|
|
+#define PJSEL BYTE_REF(PJSEL_ADDR)
|
|
|
+
|
|
|
+#define PJ(x) (1 << (x))
|
|
|
+
|
|
|
+/*
|
|
|
+ * Port K
|
|
|
+ */
|
|
|
+#define PKDIR_ADDR 0xfffff440 /* Port K direction reg */
|
|
|
+#define PKDATA_ADDR 0xfffff441 /* Port K data register */
|
|
|
+#define PKPUEN_ADDR 0xfffff442 /* Port K Pull-Up enb. reg */
|
|
|
+#define PKSEL_ADDR 0xfffff443 /* Port K Select Register */
|
|
|
+
|
|
|
+#define PKDIR BYTE_REF(PKDIR_ADDR)
|
|
|
+#define PKDATA BYTE_REF(PKDATA_ADDR)
|
|
|
+#define PKPUEN BYTE_REF(PKPUEN_ADDR)
|
|
|
+#define PKSEL BYTE_REF(PKSEL_ADDR)
|
|
|
+
|
|
|
+#define PK(x) (1 << (x))
|
|
|
+
|
|
|
+#define PK_DATAREADY 0x01 /* Use ~DATA_READY as PK[0] */
|