CFE
CFE e. Common Firmware Environment e. BOOTLOADER
Common Firmware Environment (CFE) is a firmware developed by Broadcom for 64-bit SB1 (Swarm) and 32-bit BCM47xx SOCs.
Features
- Sourcecode under BSD-like license
- Little/Big-Endian support
- 32- and 64-bit support
- Command line interface
- FLASH read/write, flash partitioning in MTD style
- Environment variables in NVRAM or FLASH
- Built-in device drivers for Broadcom peripherials
- Support fot PCI controller and wide range of PCI devices
- x86 emulator for VGA BIOS initialization
- Support fot USB devices (i.e. keyboard)
- Support for network bootstrap
- ELF, SREC and/or compressed kernels
- Provides an external API for "applications"
- Binary image size ~384Kb
CFE version 1.0.37 for BCM947XX (32bit,SP,LE) Build Date: Mon Aug 23 09:38:53 CST 2004 (denny@dny_fedora1) Copyright (C) 2000,2001,2002,2003 Broadcom Corporation. Initializing Arena. Initializing Devices. et0: Broadcom BCM47xx 10/100 Mbps Ethernet Controller 3.60.9.0 et1: Broadcom BCM47xx 10/100 Mbps Ethernet Controller 3.60.9.0 CPU type 0x29006: 264MHz Total memory: 0x1000000 bytes (16MB) Total memory used by CFE: 0x80300000 - 0x80435910 (1267984) Initialized Data: 0x8032F9D0 - 0x80331D10 (9024) BSS Area: 0x80331D10 - 0x80333910 (7168) Local Heap: 0x80333910 - 0x80433910 (1048576) Stack Area: 0x80433910 - 0x80435910 (8192) Text (code) segment: 0x80300000 - 0x8032F9D0 (195024) Boot area (physical): 0x00436000 - 0x00476000 Relocation Factor: I:00000000 - D:00000000 CFE> help Available commands: et Broadcom Ethernet utility. led LED control. tftpupg Upgrade firmware through ethernet TFTP. dnvram Default NVRAM utility. nvram NVRAM utility. reboot Reboot. flash Update a flash memory device autoboot Automatic system bootstrap. batch Load a batch file into memory and execute it go Verify and boot OS image. boot Load an executable file into memory and execute it load Load an executable file into memory without executing it save Save a region of memory to a remote file via TFTP ping Ping a remote IP host. arp Display or modify the ARP Table ifconfig Configure the Ethernet interface unsetenv Delete an environment variable. printenv Display the environment variables setenv Set an environment variable. help Obtain help for CFE commands For more information about a command, enter 'help command-name' *** command status = 0 CFE> printenv Variable Name Value -------------------- -------------------------------------------------- BOOT_CONSOLE uart0 CFE_VERSION 1.0.37 CFE_BOARDNAME BCM947XX CFE_MEMORYSIZE 16 NET_DEVICE eth0 NET_IPADDR 192.168.2.1 NET_NETMASK 255.255.255.0 NET_GATEWAY 0.0.0.0 NET_NAMESERVER 0.0.0.0 STARTUP go; *** command status = 0
This firmware is used in the following systems :
- in Netapp filers (Please note that Netapp filers runs Grub, CFE and their own BSD-based operating system which was ported to alpha, intel x86, AMD x64 and mips (R16k?) cpus).
- in recent versions of Linksys WRT54G cheap all-in-one routers, DSL modem and Wifi access-point. See [1] for more informations,
- in Broadcom 96345-based cheap routers (that include a DSL modem and a Wifi access-point). See [2] and [3] for more informations
- P.A.Semi PA6T-1682M, 64-bit dual-core 2GHz PowerPC Electra evaluation board
Sourcecode
- Broadcom CFE Latest Version
- Broadcom CFE Archive
- Belkin GPL-4.05.03.tgz (1.0.36)
- Linksys WAP54G (1.0.36)