X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=include%2Fioports.h;h=1cd3ceb37a54c080b6f960c522d56ffcd269c987;hb=f195fad178979020b226671cafec9f9592860174;hp=8f5947f46197b25e6cb9c1758e32b156a5d109b5;hpb=0f89ba4320c42f9df753c7c5527aed1d8eaeca93;p=u-boot diff --git a/include/ioports.h b/include/ioports.h index 8f5947f461..1cd3ceb37a 100644 --- a/include/ioports.h +++ b/include/ioports.h @@ -1,14 +1,12 @@ /* - * definitions for MPC8260 I/O Ports - * - * (in addition to those provided in ) + * definitions for MPC8xxx I/O Ports * * Murray.Jensen@cmst.csiro.au, 20-Oct-00 */ /* * this structure mirrors the layout of the five port registers in - * the internal memory map - see iop8260_t in + * the internal memory map */ typedef struct { unsigned int pdir; /* Port Data Direction Register (35-3) */ @@ -25,7 +23,11 @@ typedef struct { * the internal memory map aligns the above structure on * a 0x20 byte boundary */ +#ifdef CONFIG_MPC85xx +#define ioport_addr(im, idx) (ioport_t *)((uint)&(im->im_cpm_iop) + ((idx)*0x20)) +#else #define ioport_addr(im, idx) (ioport_t *)((uint)&(im)->im_ioport + ((idx)*0x20)) +#endif /* * this structure provides configuration @@ -42,10 +44,19 @@ typedef struct { /* * a table that contains configuration information for all 32 pins - * of all four MPC8260 I/O ports. * * NOTE: in the second dimension of this table, index 0 refers to pin 31 * and index 31 refers to pin 0. this made the code in the table look more * like the table in the 8260UM (and in the hymod manuals). */ extern const iop_conf_t iop_conf_tab[4][32]; + +typedef struct { + unsigned char port; + unsigned char pin; + int dir; + int open_drain; + int assign; +} qe_iop_conf_t; + +#define QE_IOP_TAB_END (-1)