OpenWrt is a highly extensible GNU/Linux distribution for embedded devices. Instead of trying to create a single, static firmware, OpenWrt provides a fully writable filesystem with optional package management. This frees you from the restrictions of the application selection and configuration provided by the vendor and allows you to use packages to customize an embedded device to suit any application. For developers, OpenWrt provides a framework to build an application without having to create a complete firmware image and distribution around it. For users, this means the freedom of full customisation, allowing the use of an embedded device in ways the vendor never envisioned.
This readme contains the basics of configuring and building a firmware image for Ci40 but you will find much more documentation on our Creator Documentation website and lots of generic OpenWrt documention on OpenWrt project wiki.
Creator - a MIPS based developer program from Imagination Technologies
Creator Ci40 (marduk) - the latest development board in the Creator program
cXT200 (pistachio) - the name of the Imagination Technologies SoC that Ci40 uses at it's core
Install dependencies
$ sudo apt install git libncurses5-dev libncursesw5-dev zlib1g-dev libssl-dev gawk subversion
device-tree-compiler bsdmainutils bc rsync
Clone the code
$ git clone https://github.com/CreatorDev/openwrt.git
$ cd openwrt
The release distribution is structured as documented in the upstream project, note the ci40 board support is under target/linux/pistachio
.
Install feed packages
$ ./scripts/feeds update -a
$ ./scripts/feeds install -a
Ignore any "WARNING: No feed for package..." from the install feeds step.
Note that mass production Ci40 boards use the Cascoda ca8210 chip, so assume the use of this profile unless you have been personally informed otherwise.
Copy base config
$ cat target/linux/pistachio/marduk-default.config > .config
Generate the default config
$ make defconfig
Optionally make changes to the configuration
Run configuration tool
$ make menuconfig
Build OpenWrt with make:
$ make
If there is any issue during the build run the build in verbose mode to see what's going on.:
$ make V=s
Once the build is completed you will find your firmware images in bin/pistachio. Example output for v0.10.5 tag:
For more details please refer to our detailed build guide and the OpenWrt build system wiki.
See our upgrade guide
See our quick start guide