Skip to content

About

Linux kernel for Unipi PLCs

Resources

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

7 Commits

Folders and files

Repository files navigation

Linux kernel for Unipi PLCs

This repo contains recipes and patches to build Linux kernel for Unipi PLCs and SBC

  • Unipi Zulu - mini SBC with NXP i.MX8M Mini
  • Unipi Patron - PLC with Unipi Zulu
  • Unipi G1 - PLC with Rockchip RK3328
  • Unipi Edge - PLC with Raspberry Pi CM40 (Not finished yet!)

Build is based on Linux CIP

How to cross-build kernel on Linux host

Required packages - package names are valid for Debian 13

  • build-essential
  • git
  • bison
  • flex
  • crossbuild-essential-arm64
  • libssl-dev
  • libncurses-dev
  • bc
  • wget
  • python3

Prepare building environment

Load source repo on unipi-kernel and download all required sources

git clone https://github.com/UnipiTechnology/unipi-kernel.git
cd unipi-kernel/
./prepare.sh build

Compile binaries

The kernel configuration is assembled at build time from Kconfig fragments in configs/fragments/ (see configs/README.md); no defconfig is committed. Use the prepared configuration for Unipi Zulu.

  CROSS_COMPILE=aarch64-linux-gnu- ARCH=arm64 make unipi-zulu_defconfig

To modifying U-boot building options use menuconfig.

CROSS_COMPILE=aarch64-linux-gnu- ARCH=arm64 make menuconfig

Build kernel, modules and devicetree binaries

CROSS_COMPILE=aarch64-linux-gnu- ARCH=arm64 make -j <num_of_proc>

Installation

Create some directory on filesystem for example /i and copy build artifacts there

mkdir /i
CROSS_COMPILE=aarch64-linux-gnu- ARCH=arm64 make install INSTALL_PATH=/i
CROSS_COMPILE=aarch64-linux-gnu- ARCH=arm64 make dtbs_install INSTALL_DTBS_PATH=/i
CROSS_COMPILE=aarch64-linux-gnu- ARCH=arm64 make modules_install INSTALL_MOD_PATH=/i

About

Linux kernel for Unipi PLCs

Resources

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages