Firmware Build Environment » History » Version 2
Oleksandr Rybalko, 04/12/2011 07:37 PM
| 1 | 1 | Nicolai Petri | h1. Firmware Build Environment |
|---|---|---|---|
| 2 | 1 | Nicolai Petri | |
| 3 | 1 | Nicolai Petri | {{toc}} |
| 4 | 1 | Nicolai Petri | h1. Firmware Build Environment |
| 5 | 1 | Nicolai Petri | |
| 6 | 1 | Nicolai Petri | h2. Info |
| 7 | 1 | Nicolai Petri | |
| 8 | 1 | Nicolai Petri | h3. What is it? |
| 9 | 1 | Nicolai Petri | |
| 10 | 1 | Nicolai Petri | Firmware Build Environment !Maybe later FBE or ZFBE or ZRFBE! is tool for easy making [[FreeBSD]] based firmware for embedded device. |
| 11 | 1 | Nicolai Petri | |
| 12 | 1 | Nicolai Petri | h3. Supported devices. |
| 13 | 1 | Nicolai Petri | |
| 14 | 1 | Nicolai Petri | Currently we do support for devices of two brands: [[NorthQ]] and [[D-Link]]. |
| 15 | 1 | Nicolai Petri | |
| 16 | 1 | Nicolai Petri | Current list: |
| 17 | 1 | Nicolai Petri | * [[D-Link]] [[D-Link DIR-320|DIR-320]] |
| 18 | 1 | Nicolai Petri | * [[D-Link]] [[D-Link DAP-1350|DAP-1350]] |
| 19 | 1 | Nicolai Petri | * [[NorthQ]] [[NorthQ NQ-900|NQ-900]] |
| 20 | 1 | Nicolai Petri | * [[NorthQ]] [[NorthQ NQ-901|NQ-901]] |
| 21 | 1 | Nicolai Petri | |
| 22 | 1 | Nicolai Petri | Those devices based on two different [[SoC]]: |
| 23 | 1 | Nicolai Petri | * [[Broadcom]] [[Broadcom BCM5354|BCM5354]] |
| 24 | 1 | Nicolai Petri | * [[Ralink]] [[Ralink RT3052F|RT3052F]] |
| 25 | 1 | Nicolai Petri | |
| 26 | 1 | Nicolai Petri | h2. Building and Installing |
| 27 | 1 | Nicolai Petri | |
| 28 | 1 | Nicolai Petri | h3. Requirement |
| 29 | 1 | Nicolai Petri | |
| 30 | 1 | Nicolai Petri | Requirement: |
| 31 | 1 | Nicolai Petri | # At first we assume that build host is FreeBSD __CHECK_LOWEST_VERSION__ |
| 32 | 1 | Nicolai Petri | # FBE require copy of FreeBSD source tree [[http://www.freebsd.org/developers/cvs.html]]. |
| 33 | 1 | Nicolai Petri | # Most profiles require ports tree to be installed. |
| 34 | 1 | Nicolai Petri | # Thought copy of FBE you already have. |
| 35 | 1 | Nicolai Petri | |
| 36 | 1 | Nicolai Petri | h3. Selecting target |
| 37 | 1 | Nicolai Petri | # Minimal requirement is a select target device (if they already in tree), so if we need to made firmware for [[D-Link]] [[D-Link DIR-320|DIR-320]], we need set: |
| 38 | 1 | Nicolai Petri | <pre> |
| 39 | 1 | Nicolai Petri | TARGET_VENDOR=D-Link |
| 40 | 1 | Nicolai Petri | TARGET_DEVICE=DIR-320 |
| 41 | 1 | Nicolai Petri | </pre> |
| 42 | 1 | Nicolai Petri | # then we need point system to where FreeBSD source tree: |
| 43 | 1 | Nicolai Petri | <pre> |
| 44 | 1 | Nicolai Petri | FREEBSD_SRC_TREE=${FREEBSD_SRC_TREE} |
| 45 | 1 | Nicolai Petri | </pre> |
| 46 | 1 | Nicolai Petri | # then select required [[profiles]]: |
| 47 | 1 | Nicolai Petri | <pre> |
| 48 | 1 | Nicolai Petri | TARGET_PROFILES="SMALL_ openvpn" |
| 49 | 1 | Nicolai Petri | </pre> |
| 50 | 1 | Nicolai Petri | |
| 51 | 1 | Nicolai Petri | Example: |
| 52 | 1 | Nicolai Petri | <pre> |
| 53 | 1 | Nicolai Petri | make TARGET_VENDOR=D-Link TARGET_DEVICE=DIR-320 FREEBSD_SRC_TREE=${FREEBSD_SRC_TREE} TARGET_PROFILES="SMALL_ openvpn" |
| 54 | 1 | Nicolai Petri | </pre> |
| 55 | 1 | Nicolai Petri | |
| 56 | 1 | Nicolai Petri | |
| 57 | 1 | Nicolai Petri | h3. Using [[FreeBSD Ports Tree]] |
| 58 | 1 | Nicolai Petri | |
| 59 | 2 | Oleksandr Rybalko | h3. Software |
| 60 | 2 | Oleksandr Rybalko | * [[conf|conf_daemon]] - configuration daemon |
| 61 | 1 | Nicolai Petri | |
| 62 | 1 | Nicolai Petri | h1. TODO |
| 63 | 1 | Nicolai Petri | [[todo]] |
| 64 | 1 | Nicolai Petri | [[todos]] |