Code Monkey home page Code Monkey logo

openwrt's Introduction

Creator logo

Stories in Backlog Build Status

Using OpenWrt on Creator Ci40 platform

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.

Useful glossary

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

Quick start

Get it (and it's dependencies)

  1. Install dependencies

    $ sudo apt install git libncurses5-dev libncursesw5-dev zlib1g-dev libssl-dev gawk subversion 
    device-tree-compiler bsdmainutils bc rsync
    
  2. 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.

  3. Install feed packages

    $ ./scripts/feeds update -a
    $ ./scripts/feeds install -a
    

    Ignore any "WARNING: No feed for package..." from the install feeds step.

Configure it

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.

  1. Copy base config

    $ cat target/linux/pistachio/marduk-default.config > .config
    
  2. Generate the default config

    $ make defconfig
    
  3. Optionally make changes to the configuration

    1. Run configuration tool

      $ make menuconfig
      
    2. Make your changes

    3. Save and exit

Build it

  1. 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:

  • openwrt-v0.10.5-pistachio-marduk-kernel.itb
  • openwrt-v0.10.5-pistachio-marduk-initramfs-kernel.itb
  • openwrt-v0.10.5-pistachio-marduk-rootfs.tar.gz
  • openwrt-v0.10.5-pistachio-marduk-squashfs-factory.ubi
  • openwrt-v0.10.5-pistachio-marduk-squashfs-sysupgrade.tar

For more details please refer to our detailed build guide and the OpenWrt build system wiki.

Flash it

See our upgrade guide

Use it

See our quick start guide

openwrt's People

Contributors

juhosg avatar ffainelli avatar jow- avatar kaloz avatar sbyx avatar kanjimonster avatar lperkov avatar embeem avatar rmilecki avatar wigyori avatar acoul avatar larsclausen avatar rwhitby avatar teknoraver avatar nbd168 avatar claudyus avatar ham22 avatar pnd10 avatar francois-berder avatar blogic avatar glevand avatar noltari avatar mayank-sirotiya-imgtec avatar cultcom avatar nikhil-zinjurde-imgtec avatar grozzie2 avatar hauke avatar nakarotori avatar ryd avatar mkresin avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.