| Name | Modified | Size | Downloads / Week |
|---|---|---|---|
| E6000_CMTS_R5_0_sha256_hash_core.tgz | 2017-07-27 | 34.7 kB | |
| E6000_CMTS_R4_0_qdes.tgz | 2017-06-27 | 7.8 kB | |
| E6000_CMTS_R4_0.tar.bz2 | 2017-02-16 | 12.8 MB | |
| README.Arris | 2017-02-16 | 5.0 kB | |
| Totals: 4 Items | 12.8 MB | 0 |
#
# Copyright 2016 Arris Enterprises, LLC.
#
# SPDX-License-Identifier: GPL-2.0+
#
Summary:
========
This file contains the instructions for building Arris specific uboot images
to run on E6000 circuit cards. Specifically, the UCAM2/DCAM2/RSM2/EPFM cards.
See the README file for additional details about building uboot.
Install the following and you should have everything necessary to build a uboot
for any of the E6000 cards. To build Arris specific images, you will need the
following installed on your Linux distribution:
- Device Tree Compiler (dtc) : https://git.kernel.org/cgit/utils/dtc/dtc.git
- MIPS64 GCC crosscompiler (gcc) : http://crosstool-ng.org/ v1.22.0
- POWERPC GCC crosscompiler (gcc) : http://www.nxp.com/webapp/swlicensing/sso/downloadSoftware.sp?catid=SDK_ENABLEMENT
You will need these files:
QorIQ Linux SDK v2.0 PPCE6500 IMAGE.iso
QorIQ Linux SDK v2.0 SOURCE.iso
QorIQ Linux SDK v2.0 PPCE6500 Yocto Cache.iso This is optional but can be used to speed up the ppc build.
Mount the SOURCE iso and run the "install" script found in the top level directory.
You may have to recursively change the owner of QorIQ-SDK-V2.0-20160527-yocto/ to yourself
before continuing.
Then follow the instructions from the install script to mount the PPCE6500 iso.
Set up the environment:
. ./fsl-setup-env -m t2080qds
And finally build the PPC cross-compiler toolchain:
bitbake fsl-toolchain
First build all the PowerPC binaries.
- set environment to select PowerPC gcc crosscompiler. (See README)
set your PATH to include the cross-compiler directory
.../QorIQ-SDK-V2.0-20160527-yocto/build_t2080qds/tmp/sysroots/x86_64-linux/usr/bin/powerpc-fsl-linux
- set CROSS_COMPILE to the environment
export CROSS_COMPILE=powerpc-fsl-linux-
- untar E6000_CMTS_R4.0.tar.bz2 and change to the uboot_2014_04 directory
tar xv E6000_CMTS_R4.0.tar.bz2
cd E6000_CMTS_R4_0/uboot_2014_04/
- put libgcc in the build directory so that this version will be linked
ln -s ~/redist-199/QorIQ-SDK-V2.0-20160527-yocto/build_t2080qds/tmp/sysroots/t2080qds/usr/lib/powerpc-fsl-linux/4.9.2/libgcc.a libgcc.a
- due to binutils/gcc changes, if you get the following link error:
powerpc-fsl-linux-ld.bfd: _GLOBAL_OFFSET_TABLE_ not defined in linker created .got
powerpc-fsl-linux-ld.bfd: final link failed: Bad value
you will need to remove or comment out line 48 of E6000_CMTS_R4_0/uboot_2014_04/arch/powerpc/cpu/mpc85xx/u-boot.lds
PROVIDE(_GLOBAL_OFFSET_TABLE_ = . + 4);
- configure to build UCAM2 PowerPC:
make UCAM2_config
- build:
make
- This will build a binary named 'u-boot-mpc85xx_ucam2.bin' in the uboot root directory.
This image can be programmed into flash on the UCAM2 for the T2080 PowerPC.
- save this image:
mv u-boot-mpc85xx_ucam2.bin ../someplacesafe
- clear setup for new build:
make mrproper
To build uboot for the RSM2:
- configure to build RSM2 PowerPC:
make RSM2_config
- build:
make
- This will build a binary named 'u-boot-mpc85xx_rsm2.bin' in the uboot root directory.
This image can be programmed into flash on the RSM2 for the T2080 PowerPC.
- save this image:
mv u-boot-mpc85xx_rsm2.bin ../someplacesafe
- clear setup for new build:
make mrproper
To build uboot for the EPFM:
- configure to build EPFM PowerPC:
make PFM_config
- build:
make
- This will build a binary named 'u-boot-mpc85xx_pfm.bin' in the uboot root directory.
This image can be programmed into flash on the EPFM for the T2080 PowerPC.
- save this image:
mv u-boot-mpc85xx_pfm.bin ../someplacesafe
- set environment to select MIPS64 gcc crosscompiler.
Make sure the following are installed for crosstool-ng (1.22.0):
gperf gawk libtool bison flex help2man automake
- configure crosstool-ng
./configure
make
sudo make install
ct-ng mips-unknown-linux-uclibc
ct-ng menuconfig
Update the configuration as follows:
Target options > Architecture level > "octeon2"
Target options > bitness > 64-bit
Target options > ABI > n32
C compiler - gcc 4.9.3
turn off all debug options
- build crosstool-ng
ct-ng build
- set build variables and directory:
export CROSS_COMPILE=mips64-unknown-linux-uclibc-
put .../x-tools/mips64-unknown-linux-uclibc/bin into your PATH
cd E6000_CMTS_R4_0/uboot_2014_04
To build uboot for the UCAM2:
- configure to build UCAM2 MIPS
make UCAM2_OCTEON_REMOTE_config
- build:
make
- This will build a binary named 'u-boot-octeon_ucam2_octeon.bin' in the uboot root directory.
This image can be downloaded to the Cavium processor over PCIe.
To build uboot for the DCAM2:
- configure to build DCAM2 MIPS:
make DCAM2_config
- build:
make
- This will build a binary named 'u-boot-octeon_dcam2.bin' in the uboot root directory.
This image can be programmed into flash on the DCAM2 for the Cavium microprocessor.