diff options
| -rw-r--r-- | arch/powerpc/cpu/mpc5xxx/i2c.c | 2 | ||||
| -rw-r--r-- | arch/powerpc/cpu/mpc5xxx/ide.c | 2 | ||||
| -rw-r--r-- | arch/powerpc/cpu/mpc5xxx/serial.c | 4 | ||||
| -rw-r--r-- | arch/powerpc/cpu/mpc5xxx/speed.c | 18 | ||||
| -rw-r--r-- | arch/powerpc/cpu/mpc8220/fec.c | 8 | ||||
| -rw-r--r-- | arch/powerpc/include/asm/global_data.h | 6 | ||||
| -rw-r--r-- | arch/powerpc/lib/board.c | 2 | ||||
| -rw-r--r-- | board/inka4x0/inkadiag.c | 8 | ||||
| -rw-r--r-- | drivers/input/ps2ser.c | 2 | ||||
| -rw-r--r-- | drivers/net/mpc5xxx_fec.c | 9 | 
10 files changed, 36 insertions, 25 deletions
| diff --git a/arch/powerpc/cpu/mpc5xxx/i2c.c b/arch/powerpc/cpu/mpc5xxx/i2c.c index b423d2fe3..8d5f47b1b 100644 --- a/arch/powerpc/cpu/mpc5xxx/i2c.c +++ b/arch/powerpc/cpu/mpc5xxx/i2c.c @@ -310,7 +310,7 @@ static int mpc_get_fdr(int speed)  			{126, 128}  		}; -		ipb = gd->ipb_clk; +		ipb = gd->arch.ipb_clk;  		for (i = 7; i >= 0; i--) {  			for (j = 7; j >= 0; j--) {  				scl = 2 * (scltap[j].scl2tap + diff --git a/arch/powerpc/cpu/mpc5xxx/ide.c b/arch/powerpc/cpu/mpc5xxx/ide.c index d337abb1c..094f62b6b 100644 --- a/arch/powerpc/cpu/mpc5xxx/ide.c +++ b/arch/powerpc/cpu/mpc5xxx/ide.c @@ -75,7 +75,7 @@ int ide_preinit (void)  	psdma->PtdCntrl |= 1;  	/* Init timings : we use PIO mode 0 timings */ -	period = 1000000000 / gd->ipb_clk;	/* period in ns */ +	period = 1000000000 / gd->arch.ipb_clk;	/* period in ns */  	t0 = CALC_TIMING (600);  	t2_8 = CALC_TIMING (290); diff --git a/arch/powerpc/cpu/mpc5xxx/serial.c b/arch/powerpc/cpu/mpc5xxx/serial.c index eb141619b..1ccb4e35d 100644 --- a/arch/powerpc/cpu/mpc5xxx/serial.c +++ b/arch/powerpc/cpu/mpc5xxx/serial.c @@ -89,7 +89,7 @@ int serial_init_dev (unsigned long dev_base)  	/* select clock sources */  	psc->psc_clock_select = 0; -	baseclk = (gd->ipb_clk + 16) / 32; +	baseclk = (gd->arch.ipb_clk + 16) / 32;  	/* switch to UART mode */  	psc->sicr = 0; @@ -169,7 +169,7 @@ void serial_setbrg_dev (unsigned long dev_base)  	volatile struct mpc5xxx_psc *psc = (struct mpc5xxx_psc *)dev_base;  	unsigned long baseclk, div; -	baseclk = (gd->ipb_clk + 16) / 32; +	baseclk = (gd->arch.ipb_clk + 16) / 32;  	/* set up UART divisor */  	div = (baseclk + (gd->baudrate/2)) / gd->baudrate; diff --git a/arch/powerpc/cpu/mpc5xxx/speed.c b/arch/powerpc/cpu/mpc5xxx/speed.c index 8027d3e08..5353e3d53 100644 --- a/arch/powerpc/cpu/mpc5xxx/speed.c +++ b/arch/powerpc/cpu/mpc5xxx/speed.c @@ -66,14 +66,20 @@ int get_clocks (void)  	val = *(vu_long *)MPC5XXX_CDM_CFG;  	if (val & (1 << 8)) { -		gd->ipb_clk = gd->bus_clk / 2; +		gd->arch.ipb_clk = gd->bus_clk / 2;  	} else { -		gd->ipb_clk = gd->bus_clk; +		gd->arch.ipb_clk = gd->bus_clk;  	}  	switch (val & 3) { -		case 0: gd->pci_clk = gd->ipb_clk; break; -		case 1: gd->pci_clk = gd->ipb_clk / 2; break; -		default: gd->pci_clk = gd->bus_clk / 4; break; +	case 0: +		gd->pci_clk = gd->arch.ipb_clk; +		break; +	case 1: +		gd->pci_clk = gd->arch.ipb_clk / 2; +		break; +	default: +		gd->pci_clk = gd->bus_clk / 4; +		break;  	}  	return (0); @@ -85,7 +91,7 @@ int prt_mpc5xxx_clks (void)  	printf ("       Bus %s MHz, IPB %s MHz, PCI %s MHz\n",  		strmhz(buf1, gd->bus_clk), -		strmhz(buf2, gd->ipb_clk), +		strmhz(buf2, gd->arch.ipb_clk),  		strmhz(buf3, gd->pci_clk)  	);  	return (0); diff --git a/arch/powerpc/cpu/mpc8220/fec.c b/arch/powerpc/cpu/mpc8220/fec.c index aaf9be107..43fa802ca 100644 --- a/arch/powerpc/cpu/mpc8220/fec.c +++ b/arch/powerpc/cpu/mpc8220/fec.c @@ -288,9 +288,11 @@ static int mpc8220_fec_init (struct eth_device *dev, bd_t * bis)  		 * Set MII_SPEED = (1/(mii_speed * 2)) * System Clock  		 * and do not drop the Preamble.  		 */ -		/* tbd - rtm */ -		/*fec->eth->mii_speed = (((gd->ipb_clk >> 20) / 5) << 1); */ -		/* No MII for 7-wire mode */ +		/* +		 * tbd - rtm +		 * fec->eth->mii_speed = (((gd->arch.ipb_clk >> 20) / 5) << 1); +		 * No MII for 7-wire mode +		 */  		fec->eth->mii_speed = 0x00000030;  	} diff --git a/arch/powerpc/include/asm/global_data.h b/arch/powerpc/include/asm/global_data.h index ca36ca333..423e792ec 100644 --- a/arch/powerpc/include/asm/global_data.h +++ b/arch/powerpc/include/asm/global_data.h @@ -94,6 +94,9 @@ struct arch_global_data {  #if defined(CONFIG_E500)  	u32 used_tlb_cams[(CONFIG_SYS_NUM_TLBCAMS+31)/32];  #endif +#if defined(CONFIG_MPC5xxx) +	unsigned long ipb_clk; +#endif  };  /* @@ -116,9 +119,6 @@ typedef	struct	global_data {  #if defined(CONFIG_FSL_ESDHC)  	u32 sdhc_clk;  #endif -#if defined(CONFIG_MPC5xxx) -	unsigned long	ipb_clk; -#endif  #if defined(CONFIG_MPC512X)  	u32 ips_clk;  	u32 csb_clk; diff --git a/arch/powerpc/lib/board.c b/arch/powerpc/lib/board.c index 22bd713d6..63118a382 100644 --- a/arch/powerpc/lib/board.c +++ b/arch/powerpc/lib/board.c @@ -589,7 +589,7 @@ void board_init_f(ulong bootflag)  	bd->bi_ipsfreq = gd->ips_clk;  #endif /* CONFIG_MPC512X */  #if defined(CONFIG_MPC5xxx) -	bd->bi_ipbfreq = gd->ipb_clk; +	bd->bi_ipbfreq = gd->arch.ipb_clk;  	bd->bi_pcifreq = gd->pci_clk;  #endif /* CONFIG_MPC5xxx */  	bd->bi_baudrate = gd->baudrate;	/* Console Baudrate     */ diff --git a/board/inka4x0/inkadiag.c b/board/inka4x0/inkadiag.c index cf82f61ef..1c01bb45b 100644 --- a/board/inka4x0/inkadiag.c +++ b/board/inka4x0/inkadiag.c @@ -187,7 +187,7 @@ static int ser_init(volatile struct mpc5xxx_psc *psc, int baudrate)  	/* select clock sources */  	out_be16(&psc->psc_clock_select, 0); -	baseclk = (gd->ipb_clk + 16) / 32; +	baseclk = (gd->arch.ipb_clk + 16) / 32;  	/* switch to UART mode */  	out_be32(&psc->sicr, 0); @@ -369,7 +369,7 @@ static void buzzer_turn_on(unsigned int freq)  {  	volatile struct mpc5xxx_gpt *gpt = (struct mpc5xxx_gpt *)(BUZZER_GPT); -	const u32 prescale = gd->ipb_clk / freq / 128; +	const u32 prescale = gd->arch.ipb_clk / freq / 128;  	const u32 count = 128;  	const u32 width = 64; @@ -405,9 +405,9 @@ static int do_inkadiag_buzzer(cmd_tbl_t *cmdtp, int flag, int argc,  	freq = simple_strtol(argv[0], NULL, 0);  	/* avoid zero prescale in buzzer_turn_on() */ -	if (freq > gd->ipb_clk / 128) { +	if (freq > gd->arch.ipb_clk / 128) {  		printf("%dHz exceeds maximum (%ldHz)\n", freq, -		       gd->ipb_clk / 128); +		       gd->arch.ipb_clk / 128);  	} else if (!freq)  		printf("Zero frequency is senseless\n");  	else diff --git a/drivers/input/ps2ser.c b/drivers/input/ps2ser.c index a655a16d7..bcbe52af1 100644 --- a/drivers/input/ps2ser.c +++ b/drivers/input/ps2ser.c @@ -80,7 +80,7 @@ int ps2ser_init(void)  	/* select clock sources */  	psc->psc_clock_select = 0; -	baseclk = (gd->ipb_clk + 16) / 32; +	baseclk = (gd->arch.ipb_clk + 16) / 32;  	/* switch to UART mode */  	psc->sicr = 0; diff --git a/drivers/net/mpc5xxx_fec.c b/drivers/net/mpc5xxx_fec.c index 3d180db74..1093ba59d 100644 --- a/drivers/net/mpc5xxx_fec.c +++ b/drivers/net/mpc5xxx_fec.c @@ -440,8 +440,9 @@ static int mpc5xxx_fec_init_phy(struct eth_device *dev, bd_t * bis)  		/*  		 * Set MII_SPEED = (1/(mii_speed * 2)) * System Clock  		 * and do not drop the Preamble. +		 * No MII for 7-wire mode  		 */ -		fec->eth->mii_speed = (((gd->ipb_clk >> 20) / 5) << 1);	/* No MII for 7-wire mode */ +		fec->eth->mii_speed = (((gd->arch.ipb_clk >> 20) / 5) << 1);  	}  	if (fec->xcv_type != SEVENWIRE) { @@ -644,8 +645,9 @@ static void mpc5xxx_fec_halt(struct eth_device *dev)  		/*  		 * Set MII_SPEED = (1/(mii_speed * 2)) * System Clock  		 * and do not drop the Preamble. +		 * No MII for 7-wire mode  		 */ -		fec->eth->mii_speed = (((gd->ipb_clk >> 20) / 5) << 1); /* No MII for 7-wire mode */ +		fec->eth->mii_speed = (((gd->arch.ipb_clk >> 20) / 5) << 1);  	}  #if (DEBUG & 0x3) @@ -909,8 +911,9 @@ int mpc5xxx_fec_initialize(bd_t * bis)  		/*  		 * Set MII_SPEED = (1/(mii_speed * 2)) * System Clock  		 * and do not drop the Preamble. +		 * No MII for 7-wire mode  		 */ -		fec->eth->mii_speed = (((gd->ipb_clk >> 20) / 5) << 1); /* No MII for 7-wire mode */ +		fec->eth->mii_speed = (((gd->arch.ipb_clk >> 20) / 5) << 1);  	}  	dev->priv = (void *)fec; |