| 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:~# |