README (3257B)
1 /* 2 * 3 * 4 * This license is set out in https://raw.githubusercontent.com/Broadcom-Network-Switching-Software/OpenBCM/master/Legal/LICENSE file. 5 * 6 * Copyright 2007-2019 Broadcom Inc. All rights reserved. 7 */ 8 $SDK/systems 9 10 ------------------------------------------------------------------------------ 11 Build Hints 12 ------------------------------------------------------------------------------ 13 14 MAKE_PAR 15 16 Set this environment variable to "-j" to achieve fast 17 parallel builds of the BCM drivers. 18 19 NO_BCM 20 21 Typing "gmake" in a systems/<TARGETBASE>/<TARGETPLAT> directory 22 ordinarily builds bcm_libraries, driver_libraries, then the BSP, 23 and links. You can use "gmake NO_BCM=1" to avoid recompiling 24 bcm_libraries driver_libraries if they are already built to your 25 satisfaction. 26 27 DEBUG_OPTIMIZE 28 29 When debugging, use "setenv DEBUG_OPTIMIZE FALSE" to turn off 30 the -O flag. Optimization severely cripples debugger accuracy. 31 If DEBUG_OPTIMIZE is TRUE or not set, high optimization is used. 32 Alternately you can set DEBUG_OPTIMIZE to your own option string 33 such as "-O3". 34 35 ------------------------------------------------------------------------------ 36 BSP Descriptions 37 ------------------------------------------------------------------------------ 38 39 sim 40 This directory contains a simple main program stub that allows 41 compilation of the BCM56xx driver and diagnostics shell under 42 Linux and Solaris. At Broadcom, this application connects via 43 network to software Verilog simulations of the BCM56xx and other 44 devices. Building in this directory will also compile the 45 PCI Daemon (pcid), see below. 46 47 sim/pcid 48 This directory contains a very rudimentary StrataSwitch 49 simulator called 'pcid', which models a subset of the chips, 50 mainly the CMIC and other simple non-packet-switching functions. 51 This has been useful for writing the BCM library and 52 diagnostics monitor commands without needing real hardware. 53 54 drv 55 Systems driver library for miscellaneous additional drivers. 56 57 Contains VxWorks SENS (Enhanced Network Driver) for BCM. This 58 requires either vxWorks 5.4 (Tornado 2) or VxWorks 5.3.x 59 (Tornado 1) with the SENS patch loaded. To configure the 60 network driver from the BCM prompt: 61 62 maca * cbit=1 # Configure the network interface MAC address range 63 ifconfig 1 = # Interactively configure and bring up port 1 64 # with user-specified IP parameters. 65 66 linux 67 Linux driver directory. This directory contains the source code 68 for kernel driver modules. 69 70 bde 71 Broadcom Device Enumerator. 72 This fundamental layer sits between the device driver and the 73 underlying hardware and O/S and abstracts the methods for 74 PCI setup, register access, and interrupt connection. 75 76 bde/pli 77 PCI access methods for PLI and PCID simulator. 78 Here, all PCI accesses are sent via RPC to a verilog model. 79 bde/linux/kernel 80 PCI access methods for Linux kernel. 81 bde/linux/user 82 PCI access methods for Linux user mode. 83 Here, PCI memory space is mapped into the user process 84 and device interrupts are turned into signals. 85 The entire driver and diagnostics shell can run in user mode.