Broadcom GPL Sources ==================== This file contains recipes how to compile the Broadcom GPL sources provided by snom and flash the U-Boot/Kernel images from U-Boot. All recipes are tested by snom, but they might fail or need adjustments in different build environments. Every step is specified for the Snom715, please replace the 715 with the corresponding phone type if necessary. Downloads ========= - Download the Broadcom GPL source packages to build and tools.tgz from http://www.snom.com and save them into /tmp/gplarchives/ Preparation =========== - cd /tmp - mkdir gplbuild - cd /tmp/gplbuild - mkdir images - tar xzvf /tmp/gplarchives/tools.tar.gz - cd tools - export PATH=`pwd`:$PATH Toolchain ========= - Download toolchain_wrl3.0.3_2011_09_06.14_54_03.tar.gz - cd /tmp/gplbuild - tar xzvf ../toolchain_wrl3.0.3_2011_09_06.14_54_03.tar.gz --strip 7 wrl3.0.3/wrlinux-3.0/layers/wrll-toolchain-4.3a-291/arm/toolchain/x86-linux2 - export PATH=`pwd`/bin:$PATH - export CROSS_COMPILE=arm-wrs-linux-gnueabi- - export ARCH=arm snom715/725/D765/D375 ===================== 715/725/D765/D375 U-Boot Preparation -------------------------- - Download uboot_715_725_D765_D375.tar.gz - cd /tmp/gplbuild - tar xzvf /tmp/gplarchives/uboot_715_725_D765_D375.tar.gz - Download utils.tar.gz - tar xzvf /tmp/gplarchives/utils.tar.gz - export PATH=`pwd`/utils/bin:$PATH 715 U-Boot Compile ------------------ - cd /tmp/gplbuild/uboot_715_725_D765_D375 - make snom715_config - make - cp u-boot u-boot.elf - arm-wrs-linux-gnueabi-objcopy -O binary -R .stack -R .bss -R .reginfo -S u-boot.elf u-boot.img - add_bcmring_boot_hdr u-boot.img u-boot.boot_img.hdr 0x4000 - hdrfix u-boot.boot_img.hdr 3 - imgsign 0 u-boot.boot_img.hdr 0x80 u-boot.boot_img a b c - mv u-boot.boot_img /tmp/u-boot.boot_img$1 715 Kernel Preparation -------------------------- - Download kernel_715_725_D765_D375.tar.gz - cd /tmp/gplbuild - tar xzvf /tmp/gplarchives/kernel_715_725_D765_D375.tar.gz 715 Kernel Compile ------------------ - cd /tmp/gplbuild/kernel_715_725_D765_D375 - make bcmring_snom715_defconfig - make uImage - cp arch/arm/boot/uImage ../images/uImage-715 Flashing Images =============== Preparation ----------- - Start a TFTP server which hosts all images from /tmp/gplbuild/images - Boot into U-Boot shell and set the U-Boot variables ipaddr, gatewayip, netmask and serverip as required for your network configuration 715/725/D765/D375 U-Boot ------------------------ mtdparts default; tftp ${ramaddress} u-boot.snom715.boot_img; nand erase.part uboot; nand write ${ramaddress} uboot ${filesize} mtdparts default; tftp ${ramaddress} u-boot.snom725.boot_img; nand erase.part uboot; nand write ${ramaddress} uboot ${filesize} mtdparts default; tftp ${ramaddress} u-boot.snomD765.boot_img; nand erase.part uboot; nand write ${ramaddress} uboot ${filesize} mtdparts default; tftp ${ramaddress} u-boot.snomD375.boot_img; nand erase.part uboot; nand write ${ramaddress} uboot ${filesize} 715/725/D765/D375 Kernel ------------------------ mtdparts default; tftp ${ramaddress} uImage-715; nand erase.part kernel; nand write ${ramaddress} kernel ${filesize} mtdparts default; tftp ${ramaddress} uImage-725; nand erase.part kernel; nand write ${ramaddress} kernel ${filesize} mtdparts default; tftp ${ramaddress} uImage-D765; nand erase.part kernel; nand write ${ramaddress} kernel ${filesize} mtdparts default; tftp ${ramaddress} uImage-D375; nand erase.part kernel; nand write ${ramaddress} kernel ${filesize}