ppc32: Change constants style in Freescale MPC52xx related code

This patch changes the way the constants used for register block
address are defined/used. This is a preparation for the use of
the platform bus / ppc_sys model.


Signed-off-by: Sylvain Munaut <tnt at 246tNt.com> 
---
diff -Nru a/arch/ppc/boot/simple/mpc52xx_tty.c 
b/arch/ppc/boot/simple/mpc52xx_tty.c
--- a/arch/ppc/boot/simple/mpc52xx_tty.c        2005-03-21 20:10:10 +01:00
+++ b/arch/ppc/boot/simple/mpc52xx_tty.c        2005-03-21 20:10:10 +01:00
@@ -20,32 +20,31 @@
 #include <asm/io.h>
 #include <asm/time.h>
 
-#if MPC52xx_PF_CONSOLE_PORT == 0
-#define MPC52xx_CONSOLE                MPC52xx_PSC1
-#define MPC52xx_PSC_CONFIG_SHIFT       0
-#elif MPC52xx_PF_CONSOLE_PORT == 1
-#define MPC52xx_CONSOLE                MPC52xx_PSC2
-#define MPC52xx_PSC_CONFIG_SHIFT       4
-#elif MPC52xx_PF_CONSOLE_PORT == 2
-#define MPC52xx_CONSOLE                MPC52xx_PSC3
-#define MPC52xx_PSC_CONFIG_SHIFT       8
+
+#ifdef MPC52xx_PF_CONSOLE_PORT
+#define MPC52xx_CONSOLE MPC52xx_PSCx_OFFSET(MPC52xx_PF_CONSOLE_PORT)
+#define MPC52xx_PSC_CONFIG_SHIFT ((MPC52xx_PF_CONSOLE_PORT-1)<<2)
 #else
 #error "MPC52xx_PF_CONSOLE_PORT not defined"
 #endif
 
 static struct mpc52xx_psc __iomem *psc =
-       (struct mpc52xx_psc __iomem *) MPC52xx_CONSOLE;
+       (struct mpc52xx_psc __iomem *) MPC52xx_PA(MPC52xx_CONSOLE);
 
 /* The decrementer counts at the system bus clock frequency
  * divided by four.  The most accurate time base is connected to the
- * rtc.  We read the decrementer change during one rtc tick (one second)
- * and multiply by 4 to get the system bus clock frequency.
+ * rtc.  We read the decrementer change during one rtc tick
+ * and multiply by 4 to get the system bus clock frequency. Since a
+ * rtc tick is one seconds, and that's pretty long, we change the rtc
+ * dividers temporarly to set them 64x faster ;)
  */
 static int
 mpc52xx_ipbfreq(void)
 {
-       struct mpc52xx_rtc __iomem *rtc = (struct mpc52xx_rtc __iomem 
*)MPC52xx_RTC;
-       struct mpc52xx_cdm __iomem *cdm = (struct mpc52xx_cdm __iomem 
*)MPC52xx_CDM;
+       struct mpc52xx_rtc __iomem *rtc =
+               (struct mpc52xx_rtc __iomem *) MPC52xx_PA(MPC52xx_RTC_OFFSET);
+       struct mpc52xx_cdm __iomem *cdm =
+               (struct mpc52xx_cdm __iomem *) MPC52xx_PA(MPC52xx_CDM_OFFSET);
        int current_time, previous_time;
        int tbl_start, tbl_end;
        int xlbfreq, ipbfreq;
@@ -68,7 +67,8 @@
 unsigned long
 serial_init(int ignored, void *ignored2)
 {
-       struct mpc52xx_gpio __iomem *gpio = (struct mpc52xx_gpio __iomem 
*)MPC52xx_GPIO;
+       struct mpc52xx_gpio __iomem *gpio =
+               (struct mpc52xx_gpio __iomem *) MPC52xx_PA(MPC52xx_GPIO_OFFSET);
        int divisor;
        int mode1;
        int mode2;
diff -Nru a/arch/ppc/platforms/lite5200.c b/arch/ppc/platforms/lite5200.c
--- a/arch/ppc/platforms/lite5200.c     2005-03-21 20:10:10 +01:00
+++ b/arch/ppc/platforms/lite5200.c     2005-03-21 20:10:10 +01:00
@@ -73,8 +73,8 @@
        u32 intr_ctrl;
 
        /* Map zones */
-       xlb  = ioremap(MPC52xx_XLB,sizeof(struct mpc52xx_xlb));
-       intr = ioremap(MPC52xx_INTR,sizeof(struct mpc52xx_intr));
+       xlb  = ioremap(MPC52xx_PA(MPC52xx_XLB_OFFSET), MPC52xx_XLB_SIZE);
+       intr = ioremap(MPC52xx_PA(MPC52xx_INTR_OFFSET), MPC52xx_INTR_SIZE);
 
        if (!xlb || !intr) {
                printk("lite5200.c: Error while mapping XLB/INTR during "
diff -Nru a/arch/ppc/platforms/lite5200.h b/arch/ppc/platforms/lite5200.h
--- a/arch/ppc/platforms/lite5200.h     2005-03-21 20:10:10 +01:00
+++ b/arch/ppc/platforms/lite5200.h     2005-03-21 20:10:10 +01:00
@@ -17,7 +17,7 @@
 #define __PLATFORMS_LITE5200_H__
 
 /* Serial port used for low-level debug */
-#define MPC52xx_PF_CONSOLE_PORT 0      /* PSC1 */
+#define MPC52xx_PF_CONSOLE_PORT 1      /* PSC1 */
 
 
 #endif /* __PLATFORMS_LITE5200_H__ */
diff -Nru a/arch/ppc/syslib/mpc52xx_pci.c b/arch/ppc/syslib/mpc52xx_pci.c
--- a/arch/ppc/syslib/mpc52xx_pci.c     2005-03-21 20:10:10 +01:00
+++ b/arch/ppc/syslib/mpc52xx_pci.c     2005-03-21 20:10:10 +01:00
@@ -183,7 +183,7 @@
 
        pci_assign_all_busses = 1;
 
-       pci_regs = ioremap(MPC52xx_PCI, sizeof(struct mpc52xx_pci));
+       pci_regs = ioremap(MPC52xx_PA(MPC52xx_PCI_OFFSET), MPC52xx_PCI_SIZE);
        if (!pci_regs)
                return;
 
diff -Nru a/arch/ppc/syslib/mpc52xx_pic.c b/arch/ppc/syslib/mpc52xx_pic.c
--- a/arch/ppc/syslib/mpc52xx_pic.c     2005-03-21 20:10:10 +01:00
+++ b/arch/ppc/syslib/mpc52xx_pic.c     2005-03-21 20:10:10 +01:00
@@ -180,8 +180,8 @@
        u32 intr_ctrl;
 
        /* Remap the necessary zones */
-       intr = ioremap(MPC52xx_INTR, sizeof(struct mpc52xx_intr));
-       sdma = ioremap(MPC52xx_SDMA, sizeof(struct mpc52xx_sdma));
+       intr = ioremap(MPC52xx_PA(MPC52xx_INTR_OFFSET), MPC52xx_INTR_SIZE);
+       sdma = ioremap(MPC52xx_PA(MPC52xx_SDMA_OFFSET), MPC52xx_SDMA_SIZE);
 
        if ((intr==NULL) || (sdma==NULL))
                panic("Can't ioremap PIC/SDMA register for init_irq !");
diff -Nru a/arch/ppc/syslib/mpc52xx_setup.c b/arch/ppc/syslib/mpc52xx_setup.c
--- a/arch/ppc/syslib/mpc52xx_setup.c   2005-03-21 20:10:10 +01:00
+++ b/arch/ppc/syslib/mpc52xx_setup.c   2005-03-21 20:10:10 +01:00
@@ -38,8 +38,7 @@
 void
 mpc52xx_restart(char *cmd)
 {
-       struct mpc52xx_gpt __iomem *gpt0 =
-               (struct mpc52xx_gpt __iomem *) MPC52xx_GPTx(0);
+       struct mpc52xx_gpt __iomem *gpt0 = MPC52xx_VA(MPC52xx_GPTx_OFFSET(0));
 
        local_irq_disable();
 
@@ -92,9 +91,7 @@
 
 
 #ifdef CONFIG_SERIAL_TEXT_DEBUG
-#ifdef MPC52xx_PF_CONSOLE_PORT
-#define MPC52xx_CONSOLE MPC52xx_PSCx(MPC52xx_PF_CONSOLE_PORT)
-#else
+#ifndef MPC52xx_PF_CONSOLE_PORT
 #error "mpc52xx PSC for console not selected"
 #endif
 
@@ -110,8 +107,9 @@
 mpc52xx_progress(char *s, unsigned short hex)
 {
        char c;
-       struct mpc52xx_psc __iomem *psc =
-               (struct mpc52xx_psc __iomem *)MPC52xx_CONSOLE;
+       struct mpc52xx_psc __iomem *psc;
+
+       psc = MPC52xx_VA(MPC52xx_PSCx_OFFSET(MPC52xx_PF_CONSOLE_PORT));
 
        while ((c = *s++) != 0) {
                if (c == '\n')
@@ -140,7 +138,7 @@
                u32 sdram_config_0, sdram_config_1;
 
                /* Temp BAT2 mapping active when this is called ! */
-               mmap_ctl = (struct mpc52xx_mmap_ctl __iomem *) MPC52xx_MMAP_CTL;
+               mmap_ctl = MPC52xx_VA(MPC52xx_MMAP_CTL_OFFSET);
 
                sdram_config_0 = in_be32(&mmap_ctl->sdram0);
                sdram_config_1 = in_be32(&mmap_ctl->sdram1);
@@ -170,8 +168,8 @@
                struct mpc52xx_rtc __iomem *rtc;
                struct mpc52xx_cdm __iomem *cdm;
 
-               rtc = ioremap(MPC52xx_RTC, sizeof(struct mpc52xx_rtc));
-               cdm = ioremap(MPC52xx_CDM, sizeof(struct mpc52xx_cdm));
+               rtc = ioremap(MPC52xx_PA(MPC52xx_RTC_OFFSET), MPC52xx_RTC_SIZE);
+               cdm = ioremap(MPC52xx_PA(MPC52xx_CDM_OFFSET), MPC52xx_CDM_SIZE);
 
                if ((rtc==NULL) || (cdm==NULL))
                        panic("Can't ioremap RTC/CDM while computing bus freq");
diff -Nru a/include/asm-ppc/mpc52xx.h b/include/asm-ppc/mpc52xx.h
--- a/include/asm-ppc/mpc52xx.h 2005-03-21 20:10:10 +01:00
+++ b/include/asm-ppc/mpc52xx.h 2005-03-21 20:10:10 +01:00
@@ -10,7 +10,7 @@
  * Originally written by Dale Farnsworth <dfarnsworth at mvista.com> 
  * for the 2.4 kernel.
  *
- * Copyright (C) 2004 Sylvain Munaut <tnt at 246tNt.com>
+ * Copyright (C) 2004-2005 Sylvain Munaut <tnt at 246tNt.com>
  * Copyright (C) 2003 MontaVista, Software, Inc.
  *
  * This file is licensed under the terms of the GNU General Public License
@@ -32,46 +32,67 @@
 /* ======================================================================== */
 /* Main registers/struct addresses                                          */
 /* ======================================================================== */
-/* Theses are PHYSICAL addresses !                                          */
-/* TODO : There should be no static mapping, but it's not yet the case, so  */
-/*        we require a 1:1 mapping                                          */
 
+/* MBAR position */
 #define MPC52xx_MBAR           0xf0000000      /* Phys address */
-#define MPC52xx_MBAR_SIZE      0x00010000
 #define MPC52xx_MBAR_VIRT      0xf0000000      /* Virt address */
+#define MPC52xx_MBAR_SIZE      0x00010000
+
+#define MPC52xx_PA(x)          ((phys_addr_t)(MPC52xx_MBAR + (x)))
+#define MPC52xx_VA(x)          ((void __iomem *)(MPC52xx_MBAR_VIRT + (x)))
 
-#define MPC52xx_MMAP_CTL       (MPC52xx_MBAR + 0x0000)
-#define MPC52xx_SDRAM          (MPC52xx_MBAR + 0x0100)
-#define MPC52xx_CDM            (MPC52xx_MBAR + 0x0200)
-#define MPC52xx_SFTRST         (MPC52xx_MBAR + 0x0220)
-#define MPC52xx_SFTRST_BIT     0x01000000
-#define MPC52xx_INTR           (MPC52xx_MBAR + 0x0500)
-#define MPC52xx_GPTx(x)                (MPC52xx_MBAR + 0x0600 + ((x)<<4))
-#define MPC52xx_RTC            (MPC52xx_MBAR + 0x0800)
-#define MPC52xx_MSCAN1         (MPC52xx_MBAR + 0x0900)
-#define MPC52xx_MSCAN2         (MPC52xx_MBAR + 0x0980)
-#define MPC52xx_GPIO           (MPC52xx_MBAR + 0x0b00)
-#define MPC52xx_GPIO_WKUP      (MPC52xx_MBAR + 0x0c00)
-#define MPC52xx_PCI            (MPC52xx_MBAR + 0x0d00)
-#define MPC52xx_USB_OHCI       (MPC52xx_MBAR + 0x1000)
-#define MPC52xx_SDMA           (MPC52xx_MBAR + 0x1200)
-#define MPC52xx_XLB            (MPC52xx_MBAR + 0x1f00)
-#define MPC52xx_PSCx(x)                (MPC52xx_MBAR + 0x2000 + ((x)<<9))
-#define MPC52xx_PSC1           (MPC52xx_MBAR + 0x2000)
-#define MPC52xx_PSC2           (MPC52xx_MBAR + 0x2200)
-#define MPC52xx_PSC3           (MPC52xx_MBAR + 0x2400)
-#define MPC52xx_PSC4           (MPC52xx_MBAR + 0x2600)
-#define MPC52xx_PSC5           (MPC52xx_MBAR + 0x2800)
-#define MPC52xx_PSC6           (MPC52xx_MBAR + 0x2C00)
-#define MPC52xx_FEC            (MPC52xx_MBAR + 0x3000)
-#define MPC52xx_ATA            (MPC52xx_MBAR + 0x3a00)
-#define MPC52xx_I2C1           (MPC52xx_MBAR + 0x3d00)
-#define MPC52xx_I2C_MICR       (MPC52xx_MBAR + 0x3d20)
-#define MPC52xx_I2C2           (MPC52xx_MBAR + 0x3d40)
+/* Registers zone offset/size  */
+#define MPC52xx_MMAP_CTL_OFFSET                0x0000
+#define MPC52xx_MMAP_CTL_SIZE          0x068
+#define MPC52xx_SDRAM_OFFSET           0x0100
+#define MPC52xx_SDRAM_SIZE             0x010
+#define MPC52xx_CDM_OFFSET             0x0200
+#define MPC52xx_CDM_SIZE               0x038
+#define MPC52xx_INTR_OFFSET            0x0500
+#define MPC52xx_INTR_SIZE              0x04c
+#define MPC52xx_GPTx_OFFSET(x)         (0x0600 + ((x)<<4))
+#define MPC52xx_GPT_SIZE               0x010
+#define MPC52xx_RTC_OFFSET             0x0800
+#define MPC52xx_RTC_SIZE               0x024
+#define MPC52xx_MSCAN1_OFFSET          0x0900
+#define MPC52xx_MSCAN2_OFFSET          0x0980
+#define MPC52xx_MSCAN_SIZE             0x080
+#define MPC52xx_GPIO_OFFSET            0x0b00
+#define MPC52xx_GPIO_SIZE              0x040
+#define MPC52xx_GPIO_WKUP_OFFSET       0x0c00
+#define MPC52xx_GPIO_WKUP_SIZE         0x028
+#define MPC52xx_PCI_OFFSET             0x0d00
+#define MPC52xx_PCI_SIZE               0x100
+#define MPC52xx_SPI_OFFSET             0x0f00
+#define MPC52xx_SPI_SIZE               0x020
+#define MPC52xx_USB_OFFSET             0x1000
+#define MPC52xx_USB_SIZE               0x0a0
+#define MPC52xx_SDMA_OFFSET            0x1200
+#define MPC52xx_SDMA_SIZE              0x100
+#define MPC52xx_BDLC_OFFSET            0x1300
+#define MPC52xx_BDLC_SIZE              0x010
+#define MPC52xx_XLB_OFFSET             0x1f00
+#define MPC52xx_XLB_SIZE               0x100
+#define MPC52xx_PSC1_OFFSET            0x2000
+#define MPC52xx_PSC2_OFFSET            0x2200
+#define MPC52xx_PSC3_OFFSET            0x2400
+#define MPC52xx_PSC4_OFFSET            0x2600
+#define MPC52xx_PSC5_OFFSET            0x2800
+#define MPC52xx_PSC6_OFFSET            0x2c00
+#define MPC52xx_PSCx_OFFSET(x)         (((x)!=6)?(0x1e00+((x)<<9)):0x2c00)
+#define MPC52xx_PSC_SIZE               0x0a0
+#define MPC52xx_FEC_OFFSET             0x3000
+#define MPC52xx_FEC_SIZE               0x400
+#define MPC52xx_ATA_OFFSET             0x3a00
+#define MPC52xx_ATA_SIZE               0x080
+#define MPC52xx_I2C1_OFFSET            0x3d00
+#define MPC52xx_I2C_MICR               0x3d20
+#define MPC52xx_I2C2_OFFSET            0x3d40
+#define MPC52xx_I2C_SIZE               0x020
 
 /* SRAM used for SDMA */
-#define MPC52xx_SRAM           (MPC52xx_MBAR + 0x8000)
-#define MPC52xx_SRAM_SIZE      (16*1024)
+#define MPC52xx_SRAM_OFFSET            0x8000
+#define MPC52xx_SRAM_SIZE              0x4000
 
 
 /* ======================================================================== */
@@ -118,11 +139,12 @@
 #define MPC52xx_SPI_SPIF_IRQ           (MPC52xx_PERP_IRQ_BASE + 14)
 #define MPC52xx_I2C1_IRQ               (MPC52xx_PERP_IRQ_BASE + 15)
 #define MPC52xx_I2C2_IRQ               (MPC52xx_PERP_IRQ_BASE + 16)
-#define MPC52xx_CAN1_IRQ               (MPC52xx_PERP_IRQ_BASE + 17)
-#define MPC52xx_CAN2_IRQ               (MPC52xx_PERP_IRQ_BASE + 18)
+#define MPC52xx_MSCAN1_IRQ             (MPC52xx_PERP_IRQ_BASE + 17)
+#define MPC52xx_MSCAN2_IRQ             (MPC52xx_PERP_IRQ_BASE + 18)
 #define MPC52xx_IR_RX_IRQ              (MPC52xx_PERP_IRQ_BASE + 19)
 #define MPC52xx_IR_TX_IRQ              (MPC52xx_PERP_IRQ_BASE + 20)
 #define MPC52xx_XLB_ARB_IRQ            (MPC52xx_PERP_IRQ_BASE + 21)
+#define MPC52xx_BDLC_IRQ               (MPC52xx_PERP_IRQ_BASE + 22)
 
 
 
@@ -162,7 +184,7 @@
        u32     cs6_start;      /* MMAP_CTRL + 0x58 */
        u32     cs6_stop;       /* MMAP_CTRL + 0x5c */
        u32     cs7_start;      /* MMAP_CTRL + 0x60 */
-       u32     cs7_stop;       /* MMAP_CTRL + 0x60 */
+       u32     cs7_stop;       /* MMAP_CTRL + 0x64 */
 };
 
 /* SDRAM control */

Reply via email to