]> git.karo-electronics.de Git - karo-tx-uboot.git/commitdiff
ppc4xx: 4xx_pcie: Fix problem with SDRN access using port number as idx
authorStefan Roese <sr@denx.de>
Wed, 3 Oct 2007 19:16:32 +0000 (21:16 +0200)
committerStefan Roese <sr@denx.de>
Wed, 31 Oct 2007 20:20:49 +0000 (21:20 +0100)
Signed-off-by: Stefan Roese <sr@denx.de>
cpu/ppc4xx/4xx_pcie.c

index 177e2ad2e7acc7eefa40f48c23fbe5991ec5a4cd..2b3e657806a1f18f9b7692dc5e7a4d04e95164bf 100644 (file)
@@ -588,7 +588,7 @@ int ppc4xx_init_pcie_port(int port, int rootport)
         */
        mdelay(100);
 
-       val = SDR_READ(SDRN_PESDR_RCSSTS(sdr_base(port)));
+       val = SDR_READ(SDRN_PESDR_RCSSTS(port));
        if (val & (1 << 20)) {
                printf("PCIE%d: PGRST failed %08x\n", port, val);
                return -1;
@@ -597,7 +597,7 @@ int ppc4xx_init_pcie_port(int port, int rootport)
        /*
         * Verify link is up
         */
-       val = SDR_READ(SDRN_PESDR_LOOP(sdr_base(port)));
+       val = SDR_READ(SDRN_PESDR_LOOP(port));
        if (!(val & 0x00001000)) {
                printf("PCIE%d: link is not up.\n", port);
                return -1;
@@ -639,15 +639,15 @@ int ppc4xx_init_pcie_port(int port, int rootport)
         * Check for VC0 active and assert RDY.
         */
        attempts = 10;
-       while(!(SDR_READ(SDRN_PESDR_RCSSTS(sdr_base(port))) & (1 << 16))) {
+       while(!(SDR_READ(SDRN_PESDR_RCSSTS(port)) & (1 << 16))) {
                if (!(attempts--)) {
                        printf("PCIE%d: VC0 not active\n", port);
                        return -1;
                }
                mdelay(1000);
        }
-       SDR_WRITE(SDRN_PESDR_RCSSET(sdr_base(port)),
-                 SDR_READ(SDRN_PESDR_RCSSET(sdr_base(port))) | 1 << 20);
+       SDR_WRITE(SDRN_PESDR_RCSSET(port),
+                 SDR_READ(SDRN_PESDR_RCSSET(port)) | 1 << 20);
        mdelay(100);
 
        return 0;
@@ -862,7 +862,7 @@ int ppc4xx_setup_pcie_endpoint(struct pci_controller *hose, int port)
        out_le16(mbase + 0x202,0xfeed);                 /* Setting device ID */
 
        attempts = 10;
-       while(!(SDR_READ(SDRN_PESDR_RCSSTS(sdr_base(port))) & (1 << 8))) {
+       while(!(SDR_READ(SDRN_PESDR_RCSSTS(port)) & (1 << 8))) {
                if (!(attempts--)) {
                        printf("PCIE%d: BME not active\n", port);
                        return -1;