openbcm

Git mirror of https://github.com/Broadcom-Network-Switching-Software/OpenBCM
git clone git://git.finwo.net/mirror/broadcom/openbcm
Log | Files | Refs | README

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.