Home
Name Modified Size InfoDownloads / Week
NVG510-9.1.0h9d52 2016-05-19
NVG510-OSS-1.1 2014-12-01
NVG-9.1.1h0 2014-09-26
NVG510-OSS-1.0 2014-04-09
README-NVG510.txt 2014-04-04 11.2 kB
Totals: 5 Items   11.2 kB 0
Copyright (c) 2014 ARRIS Group, Inc.

All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:

1. Redistributions of source code must retain the above copyright
   notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
   notice, this list of conditions and the following disclaimer in the
   documentation and/or other materials provided with the distribution.
3. The name of the author may not be used to endorse or promote products
   derived from this software without specific prior written permission.

Alternatively, this software may be distributed under the terms of the
GNU General Public License ("GPL") version 2 as published by the Free
Software Foundation.

THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR 
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

GPLv2 license:

This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.

README for building the NVG510 Redistributable Open Source code.

The following instructions are known to work for a Fedora Core 10 host system.

First build the cross compiler.

1.  Get the crosstool-ng package from http://crosstool-ng.org/download/crosstool-ng/crosstool-ng-1.3.0.tar.bz2
Get version 1.3.0.

2.  Make sure the following tools are installed:

texinfo
zlib-devel
imake
ccache
ncurses-devel
libtool
automake
texinfo
patch
bison
flex
autoconf
wget
gawk
ccache
g++/gcc
makedepend
  
3. Install and build the crossool-ng package.  This is as simple as expanding the tar and doing:

	-> ./configure
	-> make
	-> sudo make install

This will place the outputs in /usr/local/bin/ct-ng.  You can use another location via the "--prefix="
argument to configure.

4. Create a local build directory for creating the toolchains (e.g. /home/crosstool-ng-build)

5. In the local build directory, run:

	-> ct-ng menuconfig

To configure the details of the build, select the following:

	Paths and misc options ---> Prefix directory: /opt/x-tools/${CT_TARGET}
	Target options ---> Target Architecture: mips
	Toolchain options ---> Vendor string: gcc4.2.3
        Toolchain options ---> Tuple: i386-linux-gnu   (Note this may not be required based on your Linux host system config)
	Operating System ---> Target OS:  linux
	Operating System ---> Linux kernel version: 2.6.26
	binutils ---> binutils version: 2.18
	C compiler ---> gcc version:  4.2.3
	C compiler ---> C++:  enabled
	C-library ---> C library:  uClibc
	C-library ---> uClibc version: 0.9.29
	C-library ---> Configuration file:  point to the local copy of config.uClibc file, which is included in the Redistribution archive (ie ~/NVG510-OSS-1.0/config.uClibc)

	These are the only items set.  Use the defaults for all other settings.

6.  With the configuration set up, now run in the local build directory:

	-> sudo ct-ng build 


This will download the necessary source packages, build all the tools and place them in a directory
under /opt/x-tools/ with a unique name derived from the target, vendor string, C-library, etc.

7. Uncompress the NVG OSS Release Package
  -> cd ~
  -> tar jxf NVG510-OSS-1.0.tar.bz2 

8. Install the Broadcom files (Assuming bcm963xx_4.06L.03_consumer_release.tar.gz is located in ~)
  -> cd ~
  -> mkdir brcm
  -> cd brcm
  -> tar zxf ../bcm963xx_4.06L.03_consumer_release.tar.gz
  -> tar zxf bcm963xx_4.06L.03_consumer.tar.gz
  -> cd ~/NVG510-OSS-1.0
  -> ./brcm_cp.sh -p . -b ~/brcm

9. Finally, to build the NVG510 Redistributable Open Source code., type the following.
Note: If using Ubuntu, make sure /bin/sh points to /bin/bash.  (Not /bin/dash)

  -> make config  # select all the defaults (hit enter at each prompt)
  -> make linux
  -> make tools
  -> make lib
  -> make user
  -> make romfs  # make sure you are in the sudoers file

The last make command will create a directory called romfs in the top level directory. That
directory will contain a linux directory structure with all the compiled objects in their
respective place.  The directory structure is as follows:

romfs:
bin  boot  dev  etc  lib  media  proc  sbin  sys  tftpboot  tmp  usr  var

romfs/bin:
ash       dmesg          grep      ip6tables         luac       pidof        ripd    sh         umount
brctl     dnsdomainname  gunzip    iptables          mkdir      ping         rm      sleep      vconfig
busybox   dnsmasq        gzip      iptables-restore  mknod      ping6        rmdir   smbclient  wget
cat       echo           haserl    iptables-save     more       pppoe        routef  stat       zcat
chmod     egrep          hostname  kill              mount      pppoe-relay  routel  sync       zebra
cp        ez-ipupdate    ifcfg     ln                mv         printenv     rtacct  tar
c_rehash  fgrep          inetd     ls                nmblookup  ps           rtmon   tc
date      getopt         ip        lua               ntpclient  pwd          sed     touch

romfs/boot:

romfs/dev:
console  initctl  kmem  mem  null  tty  tty0  tty1  ttyS0

romfs/etc:
config.cfg    fstab       inetd.d        passwd           protocols       services  udev
dhcpd.conf    group       inittab        pfslist          rc              shells
dhcpd.leases  hosts       iproute2       pfslist.default  resolv.conf     smb.conf
dnsmasq.conf  inetd.conf  modprobe.conf  ppp              resolv.dnsmasq  TZ

romfs/etc/iproute2:
ematch_map  rt_dsfield  rt_protos  rt_realms  rt_scopes  rt_tables

romfs/etc/udev:
udev.conf

romfs/lib:
ld-linux.so.2        libcrypt.so.0     libnsl.so.0           libssl.so            libz.so.1.2.3
ld.so.1              libc.so.0         libpthread-0.9.29.so  libssl.so.0.9.8      modules
ld-uClibc-0.9.29.so  libdl-0.9.29.so   libpthread.so.0       libuClibc-0.9.29.so  pppd
ld-uClibc.so.0       libdl.so.0        libresolv-0.9.29.so   libutil-0.9.29.so
libcrypt-0.9.29.so   libm-0.9.29.so    libresolv.so.0        libutil.so.0
libcrypto.so         libm.so.0         librt-0.9.29.so       libz.so
libcrypto.so.0.9.8   libnsl-0.9.29.so  librt.so.0            libz.so.1

romfs/lib/modules:
2.6.30.10-motopia

romfs/lib/modules/2.6.30.10-motopia:
kernel  modules  modules.dep  modules.order

romfs/lib/modules/2.6.30.10-motopia/kernel:
drivers  fs  lib  net

romfs/lib/modules/2.6.30.10-motopia/kernel/drivers:
net  scsi  usb

romfs/lib/modules/2.6.30.10-motopia/kernel/drivers/net:
bsd_comp.ko  ppp_async.ko  ppp_deflate.ko  ppp_generic.ko  pppoe.ko  pppox.ko  slhc.ko

romfs/lib/modules/2.6.30.10-motopia/kernel/drivers/scsi:
scsi_wait_scan.ko

romfs/lib/modules/2.6.30.10-motopia/kernel/drivers/usb:
storage

romfs/lib/modules/2.6.30.10-motopia/kernel/drivers/usb/storage:
usb-storage.ko

romfs/lib/modules/2.6.30.10-motopia/kernel/fs:
cifs  ext3  fat  jbd  lockd  mbcache.ko  nfs  ntfs

romfs/lib/modules/2.6.30.10-motopia/kernel/fs/cifs:
cifs.ko

romfs/lib/modules/2.6.30.10-motopia/kernel/fs/ext3:
ext3.ko

romfs/lib/modules/2.6.30.10-motopia/kernel/fs/fat:
fat.ko  msdos.ko  vfat.ko

romfs/lib/modules/2.6.30.10-motopia/kernel/fs/jbd:
jbd.ko

romfs/lib/modules/2.6.30.10-motopia/kernel/fs/lockd:
lockd.ko

romfs/lib/modules/2.6.30.10-motopia/kernel/fs/nfs:
nfs.ko

romfs/lib/modules/2.6.30.10-motopia/kernel/fs/ntfs:
ntfs.ko

romfs/lib/modules/2.6.30.10-motopia/kernel/lib:
crc-ccitt.ko  zlib_deflate

romfs/lib/modules/2.6.30.10-motopia/kernel/lib/zlib_deflate:
zlib_deflate.ko

romfs/lib/modules/2.6.30.10-motopia/kernel/net:
atm  bridge  ipv4  ipv6  netfilter  sunrpc

romfs/lib/modules/2.6.30.10-motopia/kernel/net/atm:
atm.ko

romfs/lib/modules/2.6.30.10-motopia/kernel/net/bridge:
netfilter

romfs/lib/modules/2.6.30.10-motopia/kernel/net/bridge/netfilter:
ebtable_broute.ko

romfs/lib/modules/2.6.30.10-motopia/kernel/net/ipv4:
netfilter

romfs/lib/modules/2.6.30.10-motopia/kernel/net/ipv4/netfilter:
arptable_filter.ko  arpt_mangle.ko  nf_nat_ftp.ko   nf_nat_pptp.ko       nf_nat_sip.ko
arp_tables.ko       arpt_reply.ko   nf_nat_h323.ko  nf_nat_proto_gre.ko  nf_nat_tftp.ko

romfs/lib/modules/2.6.30.10-motopia/kernel/net/ipv6:
netfilter

romfs/lib/modules/2.6.30.10-motopia/kernel/net/ipv6/netfilter:
ip6table_filter.ko  ip6table_raw.ko  ip6t_ipv6header.ko  ip6t_rt.ko
ip6table_mangle.ko  ip6_tables.ko    ip6t_LOG.ko         nf_conntrack_ipv6.ko

romfs/lib/modules/2.6.30.10-motopia/kernel/net/netfilter:
nf_conntrack_ftp.ko   nf_conntrack_proto_esp.ko  nf_conntrack_tftp.ko  xt_recent.ko   xt_vlan.ko
nf_conntrack_h323.ko  nf_conntrack_proto_gre.ko  xt_ethproto.ko        xt_SKIPLOG.ko  xt_VLAN.ko
nf_conntrack_pptp.ko  nf_conntrack_sip.ko        xt_length.ko          xt_TCPMSS.ko

romfs/lib/modules/2.6.30.10-motopia/kernel/net/sunrpc:
sunrpc.ko

romfs/lib/modules/2.6.30.10-motopia/modules:
broadcom  motopia  portmirror  prioritytag

romfs/lib/modules/2.6.30.10-motopia/modules/broadcom:
63xx

romfs/lib/modules/2.6.30.10-motopia/modules/broadcom/63xx:
4.x

romfs/lib/modules/2.6.30.10-motopia/modules/broadcom/63xx/4.x:
xtmrt

romfs/lib/modules/2.6.30.10-motopia/modules/broadcom/63xx/4.x/xtmrt:
impl1

romfs/lib/modules/2.6.30.10-motopia/modules/broadcom/63xx/4.x/xtmrt/impl1:
bcmxtmrt.ko

romfs/lib/modules/2.6.30.10-motopia/modules/motopia:
motopia.ko

romfs/lib/modules/2.6.30.10-motopia/modules/portmirror:
portmirror.ko

romfs/lib/modules/2.6.30.10-motopia/modules/prioritytag:
prioritytag.ko

romfs/lib/pppd:
2.4.4

romfs/lib/pppd/2.4.4:
pppoa.so  pppoe.so

romfs/media:

romfs/proc:

romfs/sbin:
arp        depmod       insmod  makedevs  modprobe    rmmod    udevd
arptables  freeramdisk  lsmod   modinfo   pivot_root  udevadm  udhcpc

romfs/sys:

romfs/tftpboot:

romfs/usr:
bin  sbin

romfs/usr/bin:
[       basename  env   head     logger    seq   telnet  top         traceroute6
[[      cut       expr  killall  nslookup  sort  test    tr          uptime
arping  dirname   free  length   realpath  tail  tftp    traceroute  wc

romfs/usr/sbin:
chroot  pppd  telnetd

romfs/var:
Source: README-NVG510.txt, updated 2014-04-04