Merge branch 'mpc86xx'

This commit is contained in:
Jon Loeliger 2006-05-31 14:02:09 -05:00
commit ae53c8a705
10 changed files with 53 additions and 117 deletions

View file

@ -1,5 +1,5 @@
# Copyright 2004 Freescale Semiconductor. # Copyright 2004 Freescale Semiconductor.
# Modified by Jeff Brown (jeffrey@freescale.com) # Modified by Jeff Brown
# #
# See file CREDITS for list of people who contributed to this # See file CREDITS for list of people who contributed to this
# project. # project.

View file

@ -1,6 +1,6 @@
/* /*
* Copyright 2004 Freescale Semiconductor. * Copyright 2004 Freescale Semiconductor.
* Jeff Brown (jeffrey@freescale.com) * Jeff Brown
* Srikanth Srinivasan (srikanth.srinivasan@freescale.com) * Srikanth Srinivasan (srikanth.srinivasan@freescale.com)
* *
* See file CREDITS for list of people who contributed to this * See file CREDITS for list of people who contributed to this
@ -59,7 +59,6 @@
#define LAWAR2 (LAWAR_EN | LAWAR_TRGT_IF_PCI1 | (LAWAR_SIZE & LAWAR_SIZE_512M)) #define LAWAR2 (LAWAR_EN | LAWAR_TRGT_IF_PCI1 | (LAWAR_SIZE & LAWAR_SIZE_512M))
#define LAWBAR3 ((CFG_PCI2_MEM_BASE>>12) & 0xffffff) #define LAWBAR3 ((CFG_PCI2_MEM_BASE>>12) & 0xffffff)
/*#define LAWAR3 (LAWAR_EN | LAWAR_TRGT_IF_PCI2 | (LAWAR_SIZE & LAWAR_SIZE_512M)) */
#define LAWAR3 (~LAWAR_EN & (LAWAR_TRGT_IF_PCI2 | (LAWAR_SIZE & LAWAR_SIZE_512M))) #define LAWAR3 (~LAWAR_EN & (LAWAR_TRGT_IF_PCI2 | (LAWAR_SIZE & LAWAR_SIZE_512M)))
/* /*
@ -72,7 +71,6 @@
#define LAWAR5 (LAWAR_EN | LAWAR_TRGT_IF_PCI1 | (LAWAR_SIZE & LAWAR_SIZE_16M)) #define LAWAR5 (LAWAR_EN | LAWAR_TRGT_IF_PCI1 | (LAWAR_SIZE & LAWAR_SIZE_16M))
#define LAWBAR6 ((CFG_PCI2_IO_BASE>>12) & 0xffffff) #define LAWBAR6 ((CFG_PCI2_IO_BASE>>12) & 0xffffff)
/*#define LAWAR6 (LAWAR_EN | LAWAR_TRGT_IF_PCI2 | (LAWAR_SIZE & LAWAR_SIZE_16M)) */
#define LAWAR6 (~LAWAR_EN &( LAWAR_TRGT_IF_PCI2 | (LAWAR_SIZE & LAWAR_SIZE_16M))) #define LAWAR6 (~LAWAR_EN &( LAWAR_TRGT_IF_PCI2 | (LAWAR_SIZE & LAWAR_SIZE_16M)))
#define LAWBAR7 ((0xfe000000 >>12) & 0xffffff) #define LAWBAR7 ((0xfe000000 >>12) & 0xffffff)

View file

@ -1,6 +1,6 @@
/* /*
* Copyright 2004 Freescale Semiconductor. * Copyright 2004 Freescale Semiconductor.
* Jeff Brown (jeffrey@freescale.com) * Jeff Brown
* Srikanth Srinivasan (srikanth.srinivasan@freescale.com) * Srikanth Srinivasan (srikanth.srinivasan@freescale.com)
* *
* (C) Copyright 2002 Scott McNutt <smcnutt@artesyncp.com> * (C) Copyright 2002 Scott McNutt <smcnutt@artesyncp.com>
@ -352,7 +352,7 @@ mpc8641_reset_board(cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
goto my_usage; goto my_usage;
} }
my_usage: my_usage:
puts("\nUsage: reset cf <SYSCLK freq> <COREPLL ratio> <MPXPLL ratio>\n"); puts("\nUsage: reset cf <SYSCLK freq> <COREPLL ratio> <MPXPLL ratio>\n");
puts(" reset altbank [cf <SYSCLK freq> <COREPLL ratio> <MPXPLL ratio>]\n"); puts(" reset altbank [cf <SYSCLK freq> <COREPLL ratio> <MPXPLL ratio>]\n");
puts(" reset altbank [wd]\n"); puts(" reset altbank [wd]\n");

View file

@ -1,7 +1,7 @@
/* /*
* (C) Copyright 2004, Freescale, Inc. * (C) Copyright 2004, Freescale, Inc.
* (C) Copyright 2002,2003, Motorola,Inc. * (C) Copyright 2002,2003, Motorola,Inc.
* Jeff Brown (jeffrey@freescale.com) * Jeff Brown
* *
* See file CREDITS for list of people who contributed to this * See file CREDITS for list of people who contributed to this
* project. * project.

View file

@ -3,7 +3,7 @@
# Xianghua Xiao,X.Xiao@motorola.com # Xianghua Xiao,X.Xiao@motorola.com
# #
# (C) Copyright 2004 Freescale Semiconductor. (MC86xx Port) # (C) Copyright 2004 Freescale Semiconductor. (MC86xx Port)
# Jeff Brown (Jeffrey@freescale.com) # Jeff Brown
# See file CREDITS for list of people who contributed to this # See file CREDITS for list of people who contributed to this
# project. # project.
# #

View file

@ -1,6 +1,6 @@
# #
# (C) Copyright 2004 Freescale Semiconductor. # (C) Copyright 2004 Freescale Semiconductor.
# Jeff Brown <jeffrey@freescale.com> # Jeff Brown
# #
# See file CREDITS for list of people who contributed to this # See file CREDITS for list of people who contributed to this
# project. # project.

View file

@ -1,6 +1,6 @@
/* /*
* Copyright 2004 Freescale Semiconductor. * Copyright 2004 Freescale Semiconductor.
* Jeff Brown (jeffrey@freescale.com) * Jeff Brown
* Srikanth Srinivasan (srikanth.srinivasan@freescale.com) * Srikanth Srinivasan (srikanth.srinivasan@freescale.com)
* *
* See file CREDITS for list of people who contributed to this * See file CREDITS for list of people who contributed to this
@ -106,15 +106,6 @@ void cpu_init_f(void)
/* enable SYNCBE | ABE bits in HID1 */ /* enable SYNCBE | ABE bits in HID1 */
set_hid1(get_hid1() | 0x00000C00); set_hid1(get_hid1() | 0x00000C00);
/* Since the bats have been set up at this point and
* the local bus registers have been initialized, we
* turn on the WDEN bit in PIXIS_VCTL
*/
/* val = in8(PIXIS_BASE+PIXIS_VCTL); */
/* Set the WDEN */
/* val |= 0x08; */
/* out8(PIXIS_BASE+PIXIS_VCTL,val); */
} }
/* /*

View file

@ -7,7 +7,7 @@
* Gleb Natapov <gnatapov@mrv.com> * Gleb Natapov <gnatapov@mrv.com>
* Some bits are taken from linux driver writen by adrian@humboldt.co.uk * Some bits are taken from linux driver writen by adrian@humboldt.co.uk
* *
* Modified for MPC86xx by Jeff Brown (jeffrey@freescale.com) * Modified for MPC86xx by Jeff Brown
* *
* Hardware I2C driver for MPC107 PCI bridge. * Hardware I2C driver for MPC107 PCI bridge.
* *
@ -207,7 +207,7 @@ i2c_read (u8 dev, uint addr, int alen, u8 *data, int length)
i = __i2c_read(data, length); i = __i2c_read(data, length);
exit: exit:
writeb(MPC86xx_I2CCR_MEN, I2CCCR); writeb(MPC86xx_I2CCR_MEN, I2CCCR);
return !(i == length); return !(i == length);
@ -230,7 +230,7 @@ i2c_write (u8 dev, uint addr, int alen, u8 *data, int length)
i = __i2c_write(data, length); i = __i2c_write(data, length);
exit: exit:
writeb(MPC86xx_I2CCR_MEN, I2CCCR); writeb(MPC86xx_I2CCR_MEN, I2CCCR);
return !(i == length); return !(i == length);

View file

@ -9,7 +9,7 @@
* Xianghua Xiao (X.Xiao@motorola.com) * Xianghua Xiao (X.Xiao@motorola.com)
* *
* (C) Copyright 2004 Freescale Semiconductor. (MPC86xx Port) * (C) Copyright 2004 Freescale Semiconductor. (MPC86xx Port)
* Jeff Brown (Jeffrey@freescale.com) * Jeff Brown
* Srikanth Srinivasan (srikanth.srinivasan@freescale.com) * Srikanth Srinivasan (srikanth.srinivasan@freescale.com)
* *
* See file CREDITS for list of people who contributed to this * See file CREDITS for list of people who contributed to this
@ -38,10 +38,9 @@
#include <ppc_asm.tmpl> #include <ppc_asm.tmpl>
unsigned long decrementer_count; /* count value for 1e6/HZ microseconds */ unsigned long decrementer_count; /* count value for 1e6/HZ microseconds */
unsigned long timestamp; unsigned long timestamp;
static __inline__ unsigned long get_msr (void) static __inline__ unsigned long get_msr (void)
{ {
unsigned long msr; unsigned long msr;
@ -192,11 +191,8 @@ irq_free_handler(int vec)
} }
/*
/*******************************************************************************
*
* irqinfo - print information about PCI devices,not implemented. * irqinfo - print information about PCI devices,not implemented.
*
*/ */
int int
do_irqinfo(cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]) do_irqinfo(cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])

View file

@ -1,6 +1,6 @@
/* /*
* Copyright 2004 Freescale Semiconductor. * Copyright 2004 Freescale Semiconductor.
* Jeff Brown (jeffrey@freescale.com) * Jeff Brown
* Srikanth Srinivasan (srikanth.srinivasan@freescale.com) * Srikanth Srinivasan (srikanth.srinivasan@freescale.com)
* *
* (C) Copyright 2000-2002 * (C) Copyright 2000-2002
@ -29,9 +29,6 @@
#include <mpc86xx.h> #include <mpc86xx.h>
#include <asm/processor.h> #include <asm/processor.h>
unsigned long get_board_sys_clk(ulong dummy);
unsigned long get_sysclk_from_px_regs(void);
void get_sys_info (sys_info_t *sysInfo) void get_sys_info (sys_info_t *sysInfo)
{ {
@ -63,11 +60,6 @@ void get_sys_info (sys_info_t *sysInfo)
break; break;
} }
#if 0
printf("assigned system bus freq = %d for plat ratio 0x%08lx\n",
sysInfo->freqSystemBus, plat_ratio);
#endif
e600_ratio = (gur->porpllsr) & 0x003f0000; e600_ratio = (gur->porpllsr) & 0x003f0000;
e600_ratio >>= 16; e600_ratio >>= 16;
@ -91,15 +83,9 @@ void get_sys_info (sys_info_t *sysInfo)
sysInfo->freqProcessor = 9 * sysInfo->freqSystemBus/2; sysInfo->freqProcessor = 9 * sysInfo->freqSystemBus/2;
break; break;
default: default:
/* JB - Emulator workaround until real cop is plugged in */
/* sysInfo->freqProcessor = 3 * sysInfo->freqSystemBus; */
sysInfo->freqProcessor = e600_ratio + sysInfo->freqSystemBus; sysInfo->freqProcessor = e600_ratio + sysInfo->freqSystemBus;
break; break;
} }
#if 0
printf("assigned processor freq = %d for e600 ratio 0x%08lx\n",
sysInfo->freqProcessor, e600_ratio);
#endif
} }
@ -128,6 +114,7 @@ int get_clocks(void)
* get_bus_freq * get_bus_freq
* Return system bus freq in Hz * Return system bus freq in Hz
*/ */
ulong get_bus_freq(ulong dummy) ulong get_bus_freq(ulong dummy)
{ {
ulong val; ulong val;
@ -139,42 +126,6 @@ ulong get_bus_freq(ulong dummy)
return val; return val;
} }
unsigned long get_sysclk_from_px_regs()
{
ulong val;
u8 vclkh, vclkl;
vclkh = in8(PIXIS_BASE + PIXIS_VCLKH);
vclkl = in8(PIXIS_BASE + PIXIS_VCLKL);
if ((vclkh == 0x84) && (vclkl == 0x07)) {
val = 33000000;
}
if ((vclkh == 0x3F) && (vclkl == 0x20)) {
val = 40000000;
}
if ((vclkh == 0x3F) && (vclkl == 0x2A)) {
val = 50000000;
}
if ((vclkh == 0x24) && (vclkl == 0x04)) {
val = 66000000;
}
if ((vclkh == 0x3F) && (vclkl == 0x4B)) {
val = 83000000;
}
if ((vclkh == 0x3F) && (vclkl == 0x5C)) {
val = 100000000;
}
if ((vclkh == 0xDF) && (vclkl == 0x3B)) {
val = 134000000;
}
if ((vclkh == 0xDF) && (vclkl == 0x4B)) {
val = 166000000;
}
return val;
}
/* /*
* get_board_sys_clk * get_board_sys_clk