[rtems-libbsd commit] Update LibBSD doco.

Chris Johns chrisj at rtems.org
Mon Jun 1 00:52:02 UTC 2015


Module:    rtems-libbsd
Branch:    master
Commit:    4517fa337e0c2695ad64a406201883c7a22ee637
Changeset: http://git.rtems.org/rtems-libbsd/commit/?id=4517fa337e0c2695ad64a406201883c7a22ee637

Author:    Chris Johns <chrisj at rtems.org>
Date:      Mon Jun  1 10:51:57 2015 +1000

Update LibBSD doco.

---

 libbsd.txt | 223 +++++++++++++++++++++++++++++++------------------------------
 1 file changed, 115 insertions(+), 108 deletions(-)

diff --git a/libbsd.txt b/libbsd.txt
index aa865b4..0a8378a 100644
--- a/libbsd.txt
+++ b/libbsd.txt
@@ -115,6 +115,16 @@ devices (you can run multiple test instances on one virtual network).
 
 === BSD Library Configuration and Build ===
 
+There are currently 2 build systems supported. The first is based on the RTEMS
+Makefile support in RTEMS and installed with the BSP and the second is a stand
+alone environment based on the Waf build system. The Makefile build system will
+be removed when RTEMS moves away from its existing build system and Waf will
+be the preferred build environment.
+
+To build with Waf please refer to the README.waf file.
+
+===== Makefile Building =====
+
 In the BSD library source directory edit the file `config.inc`.  Continuing on
 the above, the `config.inc` used to match the above is:
 
@@ -339,7 +349,7 @@ rtems_mdns_gethostname().
 * A basic USB functionality test that is known to work on Qemu is desirable.
 
 * Adapt generic IRQ PIC interface code to Simple Vectored Interrupt Model
-  so that those architectures can use new TCP/IP and USB code. 
+  so that those architectures can use new TCP/IP and USB code.
 
 * freebsd-userspace/rtems/include/sys/syslog.h is a copy from the old
   RTEMS TCP/IP stack. For some reason, the __printflike markers do not
@@ -396,7 +406,7 @@ a generic interrupt handler that wakes-up the interrupt server task.   Once the
 postponed interrupt processing is performed in the interrupt server the
 interrupt source is enabled again.
 
-* Convert all BSP linkcmds to use a linkcmds.base so the sections are 
+* Convert all BSP linkcmds to use a linkcmds.base so the sections are
 easier to insert.
 
 * NIC Device Drivers
@@ -406,7 +416,7 @@ do not include any system on chip or ISA drivers.
 NIC is in I/O or memory space. We have worked around this by using a
 static hint to tell the fxp driver the correct mode. But this needs to
 be addressed.
-- The ISA drivers require more BSD infrastructure to be addressed. This was 
+- The ISA drivers require more BSD infrastructure to be addressed. This was
 outside the scope of the initial porting effort.
 
 == FreeBSD Source
@@ -526,10 +536,10 @@ freebsd-to-rtems.py [args]
 
 In its default mode of operation, freebsd-to-rtems.py is used to copy code
 from FreeBSD to the rtems-libbsd tree and perform transformations.  In forward
-mode, the script may be requested to just generate the Makefile.
+mode, the script may be requested to just generate the Makefile and Waf script.
 
-In "reverse mode", this script undoes those transformations and copies 
-the source code back to the FreeBSD SVN tree. This allows us to do 
+In "reverse mode", this script undoes those transformations and copies
+the source code back to the FreeBSD SVN tree. This allows us to do
 'svn diff', evaluate changes made by the RTEMS Project, and report changes
 back to FreeBSD upstream.
 
@@ -731,14 +741,14 @@ automatically generated by a SYSCTL_NODE as follows:
 * "" - empty string for parent node
 * net - name of SYSCTL_NODE
 * children - added by SYSCTL macros
-  
+
 This was all generated by a support macro declaring the node as this:
 
 ----
 struct sysctl_oid_list SYSCTL_NODE_CHILDREN(parent, name);
 ----
 
-Given this information, we located this SYSCTL_NODE declaration in 
+Given this information, we located this SYSCTL_NODE declaration in
 kern/kern_mib.c
 
 ----
@@ -862,183 +872,183 @@ Description:		This file contains the support method rtems_bsd_assert_func().
 Status: 		USB, Nic
 
 rtems-libbsd File:	rtems-bsd-autoconf.c
-FreeBSD File:		FreeBSD has BSP specific autoconf.c 
+FreeBSD File:		FreeBSD has BSP specific autoconf.c
 Description:		This file contains configuration methods that are used to setup the system.
-Status: 		USB 
+Status: 		USB
 
 rtems-libbsd File:	rtems-bsd-bus-dma.c
 FreeBSD File:		FreeBSD has BSP specific busdma_machdep.c
-Description:		
-Status: 		USB, Nic 
+Description:
+Status: 		USB, Nic
 
-rtems-libbsd File:	rtems-bsd-bus-dma-mbuf.c  	
+rtems-libbsd File:	rtems-bsd-bus-dma-mbuf.c
 FreeBSD File:		FreeBSD has BSP specific busdma_machdep.c
-Description:		
+Description:
 Status: 		Nic
 
-rtems-libbsd File:	rtems-bsd-callout.c     	 
+rtems-libbsd File:	rtems-bsd-callout.c
 FreeBSD File:		kern/kern_timeout.c
-Description:		
-Status: 		USB, Nic 
+Description:
+Status: 		USB, Nic
 
 rtems-libbsd File:	rtems-bsd-cam.c
 FreeBSD File:		cam/cam_sim.c
-Description:		
-Status: 		USB 
+Description:
+Status: 		USB
 
-rtems-libbsd File:	rtems-bsd-condvar.c      	 
+rtems-libbsd File:	rtems-bsd-condvar.c
 FreeBSD File:		kern/kern_condvar.c
-Description:		
-Status: 		USB 
+Description:
+Status: 		USB
 
 rtems-libbsd File:	rtems-bsd-copyinout.c
 FreeBSD File: 		bsp specific copyinout.c )
 Description:		Note: The FreeBSD file is split with some methods being in rtems-bsd-support
-Status:			Nic 
+Status:			Nic
 
 rtems-libbsd File: 	rtems-bsd-delay.c
 FreeBSD File:		bsp specific file with multiple names
-Description:		
-Status: 		USB, Nic 
+Description:
+Status: 		USB, Nic
 
-rtems-libbsd File: 	rtems-bsd-descrip.c 
+rtems-libbsd File: 	rtems-bsd-descrip.c
 FreeBSD File:		kern/kern_descrip.c
-Description:		
-Status: 		Nic 
+Description:
+Status: 		Nic
 
-rtems-libbsd File: 	rtems-bsd-generic.c		
+rtems-libbsd File: 	rtems-bsd-generic.c
 FreeBSD File:		kern/sys_generic.c
-Description:		
-Status: 		Nic 
+Description:
+Status: 		Nic
 
-rtems-libbsd File:	rtems-bsd-init.c 
+rtems-libbsd File:	rtems-bsd-init.c
 FreeBSD File:		N/A
-Description:		
-Status: 		USB, Nic 
+Description:
+Status: 		USB, Nic
 
 rtems-libbsd File:	rtems-bsd-init-with-irq.c
 FreeBSD File:		N/A
-Description:		
-Status: 		USB, Nic 
+Description:
+Status: 		USB, Nic
 
 rtems-libbsd File:	rtems-bsd-jail.c
 FreeBSD File:		kern/kern_jail.c
-Description:		
-Status: 		USB, Nic 
+Description:
+Status: 		USB, Nic
 
 rtems-libbsd File:	rtems-bsd-lock.c
 FreeBSD File:		kern/subr_lock.c
-Description:		
-Status: 		USB, Nic 
+Description:
+Status: 		USB, Nic
 
-rtems-libbsd File:	rtems-bsd-log.c		
+rtems-libbsd File:	rtems-bsd-log.c
 FreeBSD File:		kern/subr_prf.c
-Description:		
-Status: 		Nic 
+Description:
+Status: 		Nic
 
 rtems-libbsd File:	rtems-bsd-malloc.c
 FreeBSD File:		kern/kern_malloc.c
-Description:		
-Status: 		USB, Nic 
+Description:
+Status: 		USB, Nic
 
 rtems-libbsd File: 	rtems-bsd-mutex.c
 FreeBSD File:		kern/kern_mutex.c
-Description:		
-Status: 		USB, Nic 
+Description:
+Status: 		USB, Nic
 
 rtems-libbsd File:	rtems-bsd-newproc.c
 FreeBSD File:		N/A
-Description:		
-Status: 		Nic 
+Description:
+Status: 		Nic
 
 rtems-libbsd File: 	rtems-bsd-nexus.c
 FreeBSD File:		bsp specific nexus.c
-Description:		
-Status: 		USB 
+Description:
+Status: 		USB
 
-rtems-libbsd File:	rtems-bsd-panic.c        	 
+rtems-libbsd File:	rtems-bsd-panic.c
 FreeBSD File:		boot/common/panic.c
-Description:		
-Status: 		USB, Nic 
+Description:
+Status: 		USB, Nic
 
-rtems-libbsd File:	rtems-bsd-rwlock.c        	
+rtems-libbsd File:	rtems-bsd-rwlock.c
 FreeBSD File:		kern_rwlock.c
-Description:		
-Status: 		USB, Nic 
+Description:
+Status: 		USB, Nic
 
-rtems-libbsd File:	rtems-bsd-shell.c         	
+rtems-libbsd File:	rtems-bsd-shell.c
 FreeBSD File:		N/A
-Description:		
-Status: 		USB 
+Description:
+Status: 		USB
 
-rtems-libbsd File:	rtems-bsd-signal.c        	
+rtems-libbsd File:	rtems-bsd-signal.c
 FreeBSD File:		kern/kern_sig.c
-Description:		
-Status: 		Nic 
+Description:
+Status: 		Nic
 
-rtems-libbsd File: 	rtems-bsd-smp.c          	
+rtems-libbsd File: 	rtems-bsd-smp.c
 FreeBSD File:		N/A
-Description:		
-Status: 		Nic 
+Description:
+Status: 		Nic
 
-rtems-libbsd File:	rtems-bsd-support.c      	
-FreeBSD File:		bsp specific copyinout.c 
+rtems-libbsd File:	rtems-bsd-support.c
+FreeBSD File:		bsp specific copyinout.c
 Description:		Note: the FreeBSD file is split with some methods being in rtems-bsd-copyinout.
-Status: 		USB, Nic 
+Status: 		USB, Nic
 
-rtems-libbsd File:	rtems-bsd-sx.c            	
+rtems-libbsd File:	rtems-bsd-sx.c
 FreeBSD File:		kern/kern_sx.c
-Description:		Status: USB, Nic 
+Description:		Status: USB, Nic
 
-rtems-libbsd File: 	rtems-bsd-synch.c		
+rtems-libbsd File: 	rtems-bsd-synch.c
 FreeBSD File:		kern/kern_synch.c
-Description:		
-Status: 		USB, Nic 
+Description:
+Status: 		USB, Nic
 
-rtems-libbsd File: 	rtems-bsd-syscalls.c		
+rtems-libbsd File: 	rtems-bsd-syscalls.c
 FreeBSD File:		User API for kern/uipc_syscalls.c
-Description:		
-Status: 		Nic 
+Description:
+Status: 		Nic
 
-rtems-libbsd File: 	rtems-bsd-sysctlbyname.c	
+rtems-libbsd File: 	rtems-bsd-sysctlbyname.c
 FreeBSD File:		User API for sysctlbyname(3)
-Description:		
-Status: 
+Description:
+Status:
 
-rtems-libbsd File: 	rtems-bsd-sysctl.c		
+rtems-libbsd File: 	rtems-bsd-sysctl.c
 FreeBSD File:		User API for sysctl(8)
-Description:		
-Status: 
+Description:
+Status:
 
-rtems-libbsd File: 	rtems-bsd-sysctlnametomib.c	
+rtems-libbsd File: 	rtems-bsd-sysctlnametomib.c
 FreeBSD File:		User API for sysctlnametomib
-Description:		
-Status: 
+Description:
+Status:
 
-rtems-libbsd File:	rtems-bsd-taskqueue.c		
+rtems-libbsd File:	rtems-bsd-taskqueue.c
 FreeBSD File:		kern/subr_taskqueue.c
-Description:		
-Status: 		Nic 
+Description:
+Status: 		Nic
 
-rtems-libbsd File: 	rtems-bsd-thread.c			
+rtems-libbsd File: 	rtems-bsd-thread.c
 FreeBSD File:		kern/kern_kthread.c
-Description:		
-Status: 		USB, Nic 
+Description:
+Status: 		USB, Nic
 
-rtems-libbsd File:	rtems-bsd-timeout.c		
+rtems-libbsd File:	rtems-bsd-timeout.c
 FreeBSD File:		kern/kern_timeout.c
-Description:		
-Status: 		Nic 
+Description:
+Status: 		Nic
 
-rtems-libbsd File: 	rtems-bsd-timesupport.c		
+rtems-libbsd File: 	rtems-bsd-timesupport.c
 FreeBSD File:		kern/kern_clock.c
-Description:		
-Status: 		Nic 
+Description:
+Status: 		Nic
 
-rtems-libbsd File: 	rtems-bsd-vm_glue.c		
+rtems-libbsd File: 	rtems-bsd-vm_glue.c
 FreeBSD File:		vm/vm_glue.c
-Description:		
-Status: 		USB, Nic 
+Description:
+Status: 		USB, Nic
 ----
 
 == Notes by File ==
@@ -1051,13 +1061,13 @@ conf.h - In order to add make_dev and destroy_dev, variables in the cdev
 structure that were not being used were conditionally compiled out. The
 capability of supporting children did not appear to be needed and was
 not implemented in the rtems version of these routines.
- 
+
 == NICs Status ==
 
 ----
 Driver			Symbol				Status
 ======			======				======
-RealTek			_bsd_re_pcimodule_sys_init	Links 
+RealTek			_bsd_re_pcimodule_sys_init	Links
 EtherExpress		_bsd_fxp_pcimodule_sys_init	Links
 DEC tulip		_bsd_dc_pcimodule_sys_init	Links
 Broadcom BCM57xxx	_bsd_bce_pcimodule_sys_init	Links
@@ -1070,14 +1080,11 @@ E1000 EM		_bsd_em_pcimodule_sys_init	Links
 
 Symbols (A)
          pci_get_vpd_ident
- 
+
 == Problems to report to FreeBSD ==
 
 The MMAP_NOT_AVAILABLE define is inverted on its usage.  When it is
-defined the mmap method is called. Additionally, it is not used 
+defined the mmap method is called. Additionally, it is not used
 thoroughly. It is not used in the unmap portion of the source.
 The file rec_open.c uses the define MMAP_NOT_AVAILABLE to wrap
 the call to mmap and file rec_close.c uses the munmap method.
-
-
-



More information about the vc mailing list