Git Product home page Git Product logo

mizy-linux-kernel's Introduction

miZy linux kernel 3.4.113+ mod for Orange Pi Zero and other sunxi boards

Build Status

Features

  • Orange Pi Zero optimized kernel
  • Orange Pi Zero Plus2 h3 device added
  • minimized kernel size, remove unused systems and modules
  • MTD + M25P80 build in kernel - onboard SPI-flash linux boot ready
  • mmc_spi module simple usage mmc/sd cards via spi
  • h2+ onboard WiFi XR819 - xradio_wlan
  • h3+ onboard WiFi AP6212 - dhd
  • h3+ onboard MMC ready
  • exfat kernel module
  • ASIX AX88179_178A USB 3.0/2.0 Gigabit Ethernet Network Adapter kernel module
  • one fex/fdt config for both h2+ h3 boards
  • hdmi + hdmi_audio as module for h3 board
  • build uncompressed kernel + LZMA GZIP LZO NONE compression via mkinitrd packed images
  • any LZMA GZIP LZO XZ initrd compression
  • some systems builded as modules for more flexibility: i2c, audio, ethernet - sunxi_gmac, ir, other
  • easy fast and full automated cross-compilation
  • many other improvements

DEPS

Get Source Prepare and Build

mkdir /tmp/zero_builder
cd /tmp/zero_builder

git clone https://github.com/hyphop/miZy-linux-kernel.git
cd miZy-linux-kernel

./kernel_prepare
# ./kernel_config default 
./kernel_build_all

Custom config

./kernel_prepare light # arg is config file name => kernel-configs/light
./kernel_build_all

Easy make - by one-line command

wget http://raw.githubusercontent.com/hyphop/miZy-linux-kernel/master/make_it_easy -O- | sh -

output kernel

./bin
    Image           - unpacked kernel 
    uImage.gzip     - uboot gzip kernel image
    uImage.lzma     - uboot lzma kernel image, max compression, slow unpack time
    uImage.lzo      - uboot lzo  kernel image, fastest unpack time 
    uImage.none     - uboot none kernel image

output modules

./bin
    modules         - full 
    modules.all     - all in one dir
    modules.links   - all in one dir symlinks

Clear

./kernel_clear_all

kernel build configs

# ... prepare
./kernel_config light
# or 
./kernel_config kernel-configs/light
# ... build

pack kernel, modules, configs, ... and other files by packages

kernel_build_packages default 
# generate packages
find /tmp/miZy.linux.kernel.default
/tmp/miZy.linux.kernel.default
/tmp/miZy.linux.kernel.default/miZy.linux.kernel.default.md5sum
/tmp/miZy.linux.kernel.default/miZy.linux.kernel.default.config.gz
/tmp/miZy.linux.kernel.default/miZy.linux.kernel.default.config
/tmp/miZy.linux.kernel.default/miZy.linux.kernel.default.modules.full.tar.gz
/tmp/miZy.linux.kernel.default/miZy.linux.kernel.default.modules.all.tar.gz
/tmp/miZy.linux.kernel.default/miZy.linux.kernel.default.uImage.none.gz
/tmp/miZy.linux.kernel.default/miZy.linux.kernel.default.uImage.lzo
/tmp/miZy.linux.kernel.default/miZy.linux.kernel.default.uImage.lzma
/tmp/miZy.linux.kernel.default/miZy.linux.kernel.default.uImage.gzip
/tmp/miZy.linux.kernel.default/miZy.linux.kernel.default.Image.gz
/tmp/miZy.linux.kernel.default/miZy.linux.kernel.default.modules.meta.tar.gz

Example u-boot mkimage packed kernel load script

...
# setenv kernel_file	"/boot/uImage.none"
# setenv kernel_file	"/boot/uImage.lzo"
# setenv kernel_file	"/boot/uImage.gzip"
setenv kernel_file	"/boot/uImage.lzma"
...
load mmc ${mmc_boot_part} ${kernel_addr_r} ${kernel_file}
...
bootm ${kernel_addr_r} ${ramdisk_addr_r}
...

Deps and cross compilation

  • toolchain-arm_cortex-a9+neon_gcc-5.3.0_musl-1.1.15_eabi
  • squashfs, overlayfs | aufs
  • perl, mkimage ( u-boot-tools )
  • lzop, gzip, lzma

its easy and automated by scripts!

Building in vm

safe compilation in vm, https://github.com/hyphop/miZy-builder

Download compiled kernel and modules

https://github.com/hyphop/miZy-linux-kernel/releases

examples

# get kernel
wget https://github.com/hyphop/miZy-linux-kernel/releases/download/light/miZy.linux.kernel.light.uImage.gzip -O uImage.gzip

# get modules
wget https://github.com/hyphop/miZy-linux-kernel/releases/download/light/miZy.linux.kernel.light.modules.all.tar.gz -O /tmp/modules.tar.gz
#
# show modules list
tar -tf /tmp/modules.tar.gz
#
# extract one 
tar -xf /tmp/modules.tar.gz modules.all/sndspdif.ko -O > sndspdif.ko
 
# show config
# curl -L https://github.com/hyphop/miZy-linux-kernel/releases/download/light/miZy.linux.kernel.light.config

miZy

miZy - open source minimalistic tiny fast embedded Linux system, (for sunxi Orange Pi Zero, another sunxi boards maybe work too )

LINKS

;)

miZy

mizy-linux-kernel's People

Contributors

hyphop avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Forkers

girish946

mizy-linux-kernel's Issues

How to create a SD in ubuntu

At first I want tou thank You for this grat job !

I'd like to try miZy on my OrangePi-zero H2+, but after trying many times with different methods, it never work...
Coul'd you please write a step by step guide ?

Help wanted

Добрый день!
Огромное спасибо за проделанную работу!
К сожалению модуль ax88179_178a.ko не установился на моей системе ((
root@OpenWrt:/1# insmod ax88179_178a.ko
failed to insert ax88179_178a.ko

dmesg даёт ошибки типа:
[ 6770.202282] ax88179_178a: disagrees about version of symbol usb_alloc_urb
[ 6770.202326] ax88179_178a: Unknown symbol usb_alloc_urb (err -22)
[ 6770.202411] ax88179_178a: disagrees about version of symbol usbnet_set_msglevel
[ 6770.202436] ax88179_178a: Unknown symbol usbnet_set_msglevel (err -22)
[ 6770.202467] ax88179_178a: disagrees about version of symbol mii_ethtool_sset
и т.д.

Есть ли какой-то способ принудительно поставить этот модуль в мою систему?
И Вы писали, что можно заменить ядро с модулями на ваше... Могли бы Вы написать как это сделать по шагам..?

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.