diff options
author | Anton Vorontsov <avorontsov@ru.mvista.com> | 2009-10-12 12:49:16 -0400 |
---|---|---|
committer | Kumar Gala <galak@kernel.crashing.org> | 2009-11-11 22:43:18 -0500 |
commit | 80952988a2c6f0aa73e9ec6554084446da8d8791 (patch) | |
tree | e6a3e1121b796c99894b9510321b5e36d507ca8f | |
parent | 644b2a680ccc51a9ec4d6beb12e9d47d2dee98e2 (diff) |
powerpc/qe&cpm2: Avoid redefinitions in CPM2 and QE headers
struct mcc defined in both immap_qe.h and immap_cpm2.h, so they will
conflic when included in a single file. The mcc struct is easy to deal
with, since it isn't used in any driver (yet), so let's just rename QE
version to qe_mcc.
The ucb_ctlr is a bit trickier, since it is used by fsl_qe_udc driver,
and the driver supports both CPM and QE UDCs, plus the QE version is
used to form a bigger immap struct.
I don't want to touch too much of USB code in this series, so for now
let's just copy most generic version into the common cpm.h header,
later we'll create cpm_usb.h where we'll place common USB structs that
are used by QE/CPM UDC and QE Host drivers (FHCI).
And as for the structs in qe.h and cpm2.h, just prefix them with qe_
and cpm_.
Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
-rw-r--r-- | arch/powerpc/include/asm/cpm.h | 22 | ||||
-rw-r--r-- | arch/powerpc/include/asm/immap_cpm2.h | 2 | ||||
-rw-r--r-- | arch/powerpc/include/asm/immap_qe.h | 8 |
3 files changed, 27 insertions, 5 deletions
diff --git a/arch/powerpc/include/asm/cpm.h b/arch/powerpc/include/asm/cpm.h index 24d79e3abd8e..b5f15340dc22 100644 --- a/arch/powerpc/include/asm/cpm.h +++ b/arch/powerpc/include/asm/cpm.h | |||
@@ -5,6 +5,28 @@ | |||
5 | #include <linux/types.h> | 5 | #include <linux/types.h> |
6 | #include <linux/of.h> | 6 | #include <linux/of.h> |
7 | 7 | ||
8 | /* | ||
9 | * USB Controller pram common to QE and CPM. | ||
10 | */ | ||
11 | struct usb_ctlr { | ||
12 | u8 usb_usmod; | ||
13 | u8 usb_usadr; | ||
14 | u8 usb_uscom; | ||
15 | u8 res1[1]; | ||
16 | __be16 usb_usep[4]; | ||
17 | u8 res2[4]; | ||
18 | __be16 usb_usber; | ||
19 | u8 res3[2]; | ||
20 | __be16 usb_usbmr; | ||
21 | u8 res4[1]; | ||
22 | u8 usb_usbs; | ||
23 | /* Fields down below are QE-only */ | ||
24 | __be16 usb_ussft; | ||
25 | u8 res5[2]; | ||
26 | __be16 usb_usfrn; | ||
27 | u8 res6[0x22]; | ||
28 | } __attribute__ ((packed)); | ||
29 | |||
8 | /* Opcodes common to CPM1 and CPM2 | 30 | /* Opcodes common to CPM1 and CPM2 |
9 | */ | 31 | */ |
10 | #define CPM_CR_INIT_TRX ((ushort)0x0000) | 32 | #define CPM_CR_INIT_TRX ((ushort)0x0000) |
diff --git a/arch/powerpc/include/asm/immap_cpm2.h b/arch/powerpc/include/asm/immap_cpm2.h index d4f069bf0e57..7c64fda5357b 100644 --- a/arch/powerpc/include/asm/immap_cpm2.h +++ b/arch/powerpc/include/asm/immap_cpm2.h | |||
@@ -549,7 +549,7 @@ typedef struct comm_proc { | |||
549 | 549 | ||
550 | /* USB Controller. | 550 | /* USB Controller. |
551 | */ | 551 | */ |
552 | typedef struct usb_ctlr { | 552 | typedef struct cpm_usb_ctlr { |
553 | u8 usb_usmod; | 553 | u8 usb_usmod; |
554 | u8 usb_usadr; | 554 | u8 usb_usadr; |
555 | u8 usb_uscom; | 555 | u8 usb_uscom; |
diff --git a/arch/powerpc/include/asm/immap_qe.h b/arch/powerpc/include/asm/immap_qe.h index c346d0bcd230..4e10f508570a 100644 --- a/arch/powerpc/include/asm/immap_qe.h +++ b/arch/powerpc/include/asm/immap_qe.h | |||
@@ -210,7 +210,7 @@ struct sir { | |||
210 | } __attribute__ ((packed)); | 210 | } __attribute__ ((packed)); |
211 | 211 | ||
212 | /* USB Controller */ | 212 | /* USB Controller */ |
213 | struct usb_ctlr { | 213 | struct qe_usb_ctlr { |
214 | u8 usb_usmod; | 214 | u8 usb_usmod; |
215 | u8 usb_usadr; | 215 | u8 usb_usadr; |
216 | u8 usb_uscom; | 216 | u8 usb_uscom; |
@@ -229,7 +229,7 @@ struct usb_ctlr { | |||
229 | } __attribute__ ((packed)); | 229 | } __attribute__ ((packed)); |
230 | 230 | ||
231 | /* MCC */ | 231 | /* MCC */ |
232 | struct mcc { | 232 | struct qe_mcc { |
233 | __be32 mcce; /* MCC event register */ | 233 | __be32 mcce; /* MCC event register */ |
234 | __be32 mccm; /* MCC mask register */ | 234 | __be32 mccm; /* MCC mask register */ |
235 | __be32 mccf; /* MCC configuration register */ | 235 | __be32 mccf; /* MCC configuration register */ |
@@ -431,9 +431,9 @@ struct qe_immap { | |||
431 | struct qe_mux qmx; /* QE Multiplexer */ | 431 | struct qe_mux qmx; /* QE Multiplexer */ |
432 | struct qe_timers qet; /* QE Timers */ | 432 | struct qe_timers qet; /* QE Timers */ |
433 | struct spi spi[0x2]; /* spi */ | 433 | struct spi spi[0x2]; /* spi */ |
434 | struct mcc mcc; /* mcc */ | 434 | struct qe_mcc mcc; /* mcc */ |
435 | struct qe_brg brg; /* brg */ | 435 | struct qe_brg brg; /* brg */ |
436 | struct usb_ctlr usb; /* USB */ | 436 | struct qe_usb_ctlr usb; /* USB */ |
437 | struct si1 si1; /* SI */ | 437 | struct si1 si1; /* SI */ |
438 | u8 res11[0x800]; | 438 | u8 res11[0x800]; |
439 | struct sir sir; /* SI Routing Tables */ | 439 | struct sir sir; /* SI Routing Tables */ |