Compile-without-sercomm » History » Revision 8

Revision 7 (acassis, 02/19/2016 10:49 PM) → Revision 8/12 (acassis, 02/19/2016 10:49 PM)

NuttX compilation was done using CodeSourcery arm-2010.09-51-arm-none-eabi.bin, other toolchain could fail. 

 NuttX Nuttx can be configured differently depending on what we want. 
 The possible configs are: 
  * compal_e88/nsh_highram : for the gta02 using the osmocon for the romloader 
  * compal_e99/nsh_highram : for the c155 using osmocon + loader.compalram.bin as a loader 
  * compal_e99/nsh_compalram : for the c155 using osmocon to load it 

 nsh is the nuttx shell(nuttx can also run standalone apps without a shell). 

 == standalone nuttx == 
 if you want a standalone nuttx(without linking to osmocombb for the drivers) do the following: 
 make clean 
 make distclean 

 Remove sercomm directories: 
 $ rm -rf drivers/sercomm 
 $ rm -rf include/nuttx/sercomm 

 Remove sercomm reference at drivers/Makefile: 
 -include sercomm/Make.defs 

 Then configure nuttx: 
 $ cd nuttx/tools 
 $ ./ compal_e99/nsh_highram 
 }}} nuttx 

 Then apply manually the following pseudo-diff in nuttx/.config : 
 And then remove the following lines from nuttx/Make.defs: 
   OSMODIR                   = $(TOPDIR)/../../osmocom-bb 
   EXTRA_LIBS                = $(OSMODIR)/src/target/firmware/comm/libcomm.a \ 
                             $(OSMODIR)/src/shared/libosmocore/build-target/src/.libs/libosmocore.a \ 
                             $(OSMODIR)/src/target/firmware/calypso/libcalypso.a \ 
                           # ^^^ Stupid hack! Why do I have to put it twice??? 

 Compile NuttX: 
 $ cd nuttx 
 $ make 

 Load nuttx.bin into Motorola C155, because nuttx.bin is bigger than 64k, you should load chainload.compalram.bin together, use this command: 
 ./osmocom-bb/src/host/osmocon/osmocon -p /dev/ttyUSB0 -m c155 /osmocom-bb/src/target/firmware/board/compal_e99/chainload.compalram.bin -c nuttx.bin 
 And then build as usual.
Add picture from clipboard (Maximum size: 48.8 MB)