332 lines
10 KiB
Plaintext
332 lines
10 KiB
Plaintext
Broadcom 95xx BMW CPCI Platform
|
|
|
|
Overview
|
|
=========
|
|
BMW is an MPC8245 system controller featuring:
|
|
* 3U CPCI Form Factor
|
|
* BCM5703 Gigabit Ethernet
|
|
* M48T59Y NVRAM
|
|
* 16MB DOC
|
|
* DIP Socket for Socketed DOC up to 1GB
|
|
* 64MB SDRAM
|
|
* LCD Display
|
|
* Configurable Jumper options for 66,85, and 100Mhz memory bus
|
|
|
|
|
|
BMW System Address Map
|
|
======================
|
|
BMW uses the MPC8245 CHRP Address MAP B found in the MPC8245 Users Manual
|
|
(P.121, Section 3.1 Address Maps, Address Map B). Other I/O devices found
|
|
onboard the processor module are listed briefly below:
|
|
|
|
0x00000000 - 0x40000000 - 64MB SDRAM SIMM
|
|
(Unregistered PC-100 SDRAM DIMM Module)
|
|
|
|
0xFF000000 - 0xFF001FFF - M-Systems DiskOnChip (TM) 2000
|
|
TSOP 16MB (MD2211-D16-V3)
|
|
|
|
0x70000000 - 0x70001FFF - M-Systems DiskOnChip (TM) 2000
|
|
DIP32 (Socketed 16MB - 1GB ) *
|
|
NOTE: this is not populated on all systems.
|
|
|
|
0x7c000000 - 0x7c000000 - Reset Register
|
|
(Write 0 to reset)
|
|
|
|
0x7c000001 - 0x7c000001 - System LED
|
|
(Clear Bit 7 to turn on, set to shut off)
|
|
|
|
0x7c000002 - 0x7c000002 - M48T59 Watchdog IRQ3
|
|
(Clear bit 7 to reset, set to assert IRQ3)
|
|
|
|
0x7c000003 - 0x7c000003 - M48T59 Write-Protect Register
|
|
(Clear bit 7 to make R/W, set to make R/O)
|
|
|
|
0x7c002000 - 0x7c002003 - Infineon OSRAM DLR2416 4 Character
|
|
5x7 Dot Matrix Alphanumeric Display
|
|
(Each byte sets the appropriate character)
|
|
|
|
0x7c004000 - 0x7c005FF0 - SGS-THOMSON M48T59Y 8K NVRAM/RTC
|
|
NVRAM Memory Region
|
|
|
|
0x7c005FF0 - 0x7c005FFF - SGS-THOMSON M48T59Y 8K NVRAM/RTC
|
|
Realtime Clock Registers
|
|
|
|
0xFFF00000 - 0xFFF80000 - 512K PLCC32 BootRom
|
|
(AMD AM29F040, ST 29W040B)
|
|
|
|
0xFFF00100 - System Reset Vector
|
|
|
|
|
|
IO/MMU (BAT) Configuration
|
|
======================
|
|
The following Block-Address-Translation (BAT) configuration
|
|
is recommended to access all I/O devices.
|
|
|
|
#define CFG_IBAT0L (0x00000000 | BATL_PP_10 | BATL_MEMCOHERENCE)
|
|
#define CFG_IBAT0U (0x00000000 | BATU_BL_256M | BATU_VS | BATU_VP)
|
|
|
|
#define CFG_IBAT1L (0x70000000 | BATL_PP_10 | BATL_CACHEINHIBIT)
|
|
#define CFG_IBAT1U (0x70000000 | BATU_BL_256M | BATU_VS | BATU_VP)
|
|
|
|
#define CFG_IBAT2L (0x80000000 | BATL_PP_10 | BATL_CACHEINHIBIT)
|
|
#define CFG_IBAT2U (0x80000000 | BATU_BL_256M | BATU_VS | BATU_VP)
|
|
|
|
#define CFG_IBAT3L (0xF0000000 | BATL_PP_10 | BATL_CACHEINHIBIT)
|
|
#define CFG_IBAT3U (0xF0000000 | BATU_BL_256M | BATU_VS | BATU_VP)
|
|
|
|
#define CFG_DBAT0L CFG_IBAT0L
|
|
#define CFG_DBAT0U CFG_IBAT0U
|
|
#define CFG_DBAT1L CFG_IBAT1L
|
|
#define CFG_DBAT1U CFG_IBAT1U
|
|
#define CFG_DBAT2L CFG_IBAT2L
|
|
#define CFG_DBAT2U CFG_IBAT2U
|
|
#define CFG_DBAT3L CFG_IBAT3L
|
|
#define CFG_DBAT3U CFG_IBAT3U
|
|
|
|
|
|
Interrupt Mappings
|
|
======================
|
|
BMW uses MPC8245 discrete mode interrupts. With the following
|
|
hardwired mappings:
|
|
|
|
BCM5701 10/100/1000 Ethernet IRQ1
|
|
CompactPCI Interrupt A IRQ2
|
|
RTC/Watchdog Interrupt IRQ3
|
|
Internal NS16552 UART IRQ4
|
|
|
|
|
|
Jumper Settings
|
|
======================
|
|
|
|
BMW has a jumper (JP600) for selecting 66, 85, or 100Mhz memory bus.
|
|
A jumper (X) is a 0 bit.
|
|
|
|
Hence 66= 10110
|
|
85= 11000
|
|
100= 10000
|
|
|
|
Jumper Settings for various Speeds
|
|
=======================
|
|
J1 J2 J3 J4 J5
|
|
X X 66Mhz
|
|
=======================
|
|
J1 J2 J3 J4 J5
|
|
X X X 85Mhz
|
|
=======================
|
|
J1 J2 J3 J4 J5
|
|
X X X X 100Mhz
|
|
=======================
|
|
|
|
Obviously, 100Mhz memory bus is recommended for optimum performance.
|
|
|
|
|
|
U-Boot
|
|
===============
|
|
Broadcom BMW board is supported under config_BWM option.
|
|
Supported features:
|
|
|
|
- NVRAM setenv/getenv (used by Linux Kernel for configuration variables)
|
|
- BCM570x TFTP file transfer support
|
|
- LCD Display Support
|
|
- DOC Support - (underway)
|
|
|
|
|
|
U-Boot 1.2.0 (Aug 6 2002 - 17:44:48)
|
|
|
|
CPU: MPC8245 Revision 16.20 at 264 MHz: 16 kB I-Cache 16 kB D-Cache
|
|
Board: BMW MPC8245/KAHLUA2 - CHRP (MAP B)
|
|
Built: Aug 6 2002 at 17:44:37
|
|
Local Bus at 66 MHz
|
|
DRAM: 64 MB
|
|
FLASH: 4095 MB
|
|
In: serial
|
|
Out: serial
|
|
Err: serial
|
|
DOC: No DiskOnChip found
|
|
Hit any key to stop autoboot: 0
|
|
=>printenv
|
|
bootdelay=5
|
|
baudrate=9600
|
|
clocks_in_mhz=1
|
|
hostname=switch-2
|
|
bootcmd=tftp 100000 vmlinux.img;bootm
|
|
gateway=10.16.64.1
|
|
ethaddr=00:00:10:18:10:10
|
|
nfsroot=172.16.40.111:/boot/root-fs
|
|
filesize=5ec8c
|
|
netmask=255.255.240.0
|
|
ipaddr=172.16.40.114
|
|
serverip=172.16.40.111
|
|
root=/dev/nfs
|
|
stdin=serial
|
|
stdout=serial
|
|
stderr=serial
|
|
|
|
Environment size: 315/8172 bytes
|
|
=>boot
|
|
|
|
|
|
DevTools
|
|
========
|
|
ELDK
|
|
DENX Embedded Linux Development Kit
|
|
|
|
ROM Emulator
|
|
Grammar Engine PROMICE P1160-90-AI21E (2MBx8bit, 90ns access time)
|
|
Grammar Engine PL32E 32Pin PLCC Emulation cables
|
|
Grammar Engine 3VA8CON (3Volt adapter with Short cables)
|
|
Grammar Engine FPNET PromICE Ethernet Adapters
|
|
|
|
ICE
|
|
WRS/EST VisionICE-II (PPC8240)
|
|
|
|
|
|
=>reset
|
|
|
|
|
|
U-Boot 1.2.0 (Aug 6 2002 - 17:44:48)
|
|
|
|
CPU: MPC8245 Revision 16.20 at 264 MHz: 16 kB I-Cache 16 kB D-Cache
|
|
Board: BMW MPC8245/KAHLUA2 - CHRP (MAP B)
|
|
Built: Aug 6 2002 at 17:44:37
|
|
Local Bus at 66 MHz
|
|
DRAM: 64 MB
|
|
FLASH: 4095 MB
|
|
In: serial
|
|
Out: serial
|
|
Err: serial
|
|
DOC: No DiskOnChip found
|
|
Hit any key to stop autoboot: 0
|
|
|
|
Broadcom BCM5701 1000Base-T: bus 0, device 13, function 0: MBAR=0x80100000
|
|
BCM570x PCI Memory base address @0x80100000
|
|
eth0:Broadcom BCM5701 1000Base-T: 100 Mbps half duplex link up, flow control OFF
|
|
eth0: Broadcom BCM5701 1000Base-T @0x80100000,node addr 000010181010
|
|
eth0: BCM5700 with Broadcom BCM5701 Integrated Copper transceiver found
|
|
eth0: 32-bit PCI 33MHz, MTU: 1500,Rx Checksum ON
|
|
ARP broadcast 1
|
|
TFTP from server 172.16.40.111; our IP address is 172.16.40.114
|
|
Filename 'vmlinux.img'.
|
|
Load address: 0x100000
|
|
Loading: #################################################################
|
|
####################################T #############################
|
|
######################
|
|
done
|
|
Bytes transferred = 777199 (bdbef hex)
|
|
|
|
eth0:Broadcom BCM5701 1000Base-T,HALT,POWER DOWN,done - offline.
|
|
## Booting image at 00100000 ...
|
|
Image Name: vmlinux.bin.gz
|
|
Created: 2002-08-06 6:30:13 UTC
|
|
Image Type: PowerPC Linux Kernel Image (gzip compressed)
|
|
Data Size: 777135 Bytes = 758 kB = 0 MB
|
|
Load Address: 00000000
|
|
Entry Point: 00000000
|
|
Verifying Checksum ... OK
|
|
Uncompressing Kernel Image ... OK
|
|
Memory BAT mapping: BAT2=64Mb, BAT3=0Mb, residual: 0Mb
|
|
Linux version 2.4.19-rc3 (jfd@que) (gcc version 2.95.3 20010111 (prerelease/franzo/20010111)) #168 Mon Aug 5 23:29:20 PDT 2002
|
|
CPU:82xx: 32 I-Cache Block Size, 32 D-Cache Block Size PVR: 0x810000
|
|
U-Boot Environment: 0xc01b08f0
|
|
IP PNP: 802.3 Ethernet Address=<0:0:10:18:10:10>
|
|
cpu0: MPC8245/KAHLUA-II : BMW Platform : 64MB RAM: BPLD Rev. 6e
|
|
NOTICE: mounting root file system via NFS
|
|
IP PNP: switch-2: eth0 IP 172.16.40.114/255.255.240.0 gateway 10.16.64.1 server 172.16.40.111
|
|
On node 0 totalpages: 16384
|
|
zone(0): 16384 pages.
|
|
zone(1): 0 pages.
|
|
zone(2): 0 pages.
|
|
Kernel command line: console=ttyS0,9600 ip=172.16.40.114:172.16.40.111:10.16.64.1:255.255.240.0:switch-2:eth0 root=/dev/nfs rw nfsroot=172.16.40.111:/boot/root-fs,timeo=200,retrans=500 nfsaddrs=172.16.40.114:172.16.40.111
|
|
root_dev_setup:/dev/nfs or 00:ff
|
|
time_init: decrementer frequency = 16.501145 MHz
|
|
Calibrating delay loop... 175.71 BogoMIPS
|
|
Memory: 62572k available (1396k kernel code, 436k data, 100k init, 0k highmem)
|
|
Dentry cache hash table entries: 8192 (order: 4, 65536 bytes)
|
|
Inode cache hash table entries: 4096 (order: 3, 32768 bytes)
|
|
Mount-cache hash table entries: 1024 (order: 1, 8192 bytes)
|
|
Buffer-cache hash table entries: 4096 (order: 2, 16384 bytes)
|
|
Page-cache hash table entries: 16384 (order: 4, 65536 bytes)
|
|
POSIX conformance testing by UNIFIX
|
|
PCI: Probing PCI hardware
|
|
Linux NET4.0 for Linux 2.4
|
|
Based upon Swansea University Computer Society NET3.039
|
|
Initializing RT netlink socket
|
|
Starting kswapd
|
|
devfs: v1.12a (20020514) Richard Gooch (rgooch@atnf.csiro.au)
|
|
devfs: devfs_debug: 0x0
|
|
devfs: boot_options: 0x1
|
|
Installing knfsd (copyright (C) 1996 okir@monad.swb.de).
|
|
pty: 256 Unix98 ptys configured
|
|
Serial driver version 5.05c (2001-07-08) with MANY_PORTS SHARE_IRQ SERIAL_PCI enabled
|
|
Testing ttyS0 (0xf7f51500, 0xf7f51500)...
|
|
Testing ttyS1 (0xfc004600, 0xfc004600)...
|
|
ttyS00 at 0xf7f51500 (irq = 24) is a ST16650
|
|
ttyS01 at 0xfc004600 (irq = 25) is a 16550A
|
|
Real Time Clock Driver v1.10e
|
|
RAMDISK driver initialized: 16 RAM disks of 4096K size 1024 blocksize
|
|
loop: loaded (max 8 devices)
|
|
TFFS 5.1.1 Flash disk driver for DiskOnChip
|
|
Copyright (C) 1998,2001 M-Systems Flash Disk Pioneers Ltd.
|
|
DOC device(s) found: 1
|
|
fl_init: registered device at major: 100
|
|
fl_geninit: registered device at major: 100
|
|
Partition check:
|
|
fla: p1
|
|
partition: /dev/fl/0: start_sect: 0,nr_sects: 32000 Fl_blk_size[]: 16000KB
|
|
partition: /dev/fl/1: start_sect: 2,nr_sects: 31998 Fl_blk_size[]: 15999KB
|
|
partition: /dev/fl/2: start_sect: 0,nr_sects: 0 Fl_blk_size[]: 0KB
|
|
partition: /dev/fl/3: start_sect: 0,nr_sects: 0 Fl_blk_size[]: 0KB
|
|
Broadcom Gigabit Ethernet Driver bcm5700 ver. 3.0.7 (07/17/02)
|
|
eth0: Broadcom BCM5701 found at mem bfff0000, IRQ 1, node addr 000010181010
|
|
eth0: Broadcom BCM5701 Integrated Copper transceiver found
|
|
eth0: Scatter-gather ON, 64-bit DMA ON, Tx Checksum ON, Rx Checksum ON, 802.1Q VLAN ON
|
|
bond0 registered without MII link monitoring, in bonding mode.
|
|
rtc: unable to get misc minor
|
|
NET4: Linux TCP/IP 1.0 for NET4.0
|
|
IP Protocols: ICMP, UDP, TCP, IGMP
|
|
IP: routing cache hash table of 512 buckets, 4Kbytes
|
|
TCP: Hash tables configured (established 4096 bind 4096)
|
|
bcm5700: eth0 NIC Link is UP, 100 Mbps half duplex
|
|
IP-Config: Gateway not on directly connected network.
|
|
NET4: Unix domain sockets 1.0/SMP for Linux NET4.0.
|
|
802.1Q VLAN Support v1.7 Ben Greear <greearb@candelatech.com>
|
|
All bugs added by David S. Miller <davem@redhat.com>
|
|
Looking up port of RPC 100003/2 on 172.16.40.111
|
|
Looking up port of RPC 100005/1 on 172.16.40.111
|
|
VFS: Mounted root (nfs filesystem).
|
|
Mounted devfs on /dev
|
|
Freeing unused kernel memory: 100k init
|
|
INIT: version 2.78 booting
|
|
Mounting local filesystems...
|
|
not mounted anything
|
|
Setting up symlinks in /dev...done.
|
|
Setting up extra devices in /dev...done.
|
|
Starting devfsd...Started device management daemon for /dev
|
|
INIT: Entering runlevel: 2
|
|
Starting internet superserver: inetd.
|
|
|
|
|
|
Welcome to Linux/PPC
|
|
MPC8245/BMW
|
|
|
|
|
|
switch-2 login: root
|
|
Password:
|
|
PAM_unix[49]: (login) session opened for user root by LOGIN(uid=0)
|
|
Last login: Thu Nov 25 11:51:14 1920 on console
|
|
|
|
|
|
Welcome to Linux/PPC
|
|
MPC8245/BMW
|
|
|
|
|
|
login[49]: ROOT LOGIN on `console'
|
|
|
|
root@switch-2:~# cat /proc/cpuinfo
|
|
cpu : 82xx
|
|
revision : 16.20 (pvr 8081 1014)
|
|
bogomips : 175.71
|
|
vendor : Broadcom
|
|
machine : BMW/MPC8245
|
|
root@switch-2:~#
|