Skip to content

starfive-tech/aosp-device

 
 

Repository files navigation

# Setup build envoronment
  https://source.android.com/setup/build/initializing

# Download Android source
  https://github.com/starfive-tech/starfive-manifests

# Patch framework source :
  https://github.com/android-risc-v/device_arv_jh7110/wiki/arv-master-:-framework-patch

# Build Android
 Refer to https://github.com/starfive-tech/aosp-manifests#readme

  $ source build/envsetup.sh
  $ lunch jh7110-eng
  $ make ramdisk systemimage vendorimage

# Prepare sd card
 Partitions of the card should be set-up like followings
  p1:  128MB for /vendor   : Do fdisk, new primary partition
  p2: 1024MB for /system   : Do fdisk, new primary partition
  p3:  128MB for boot      : Do fdisk, mkfs.vfat, set EFI type
  p4: remainings for /data : Do fdisk, mkfs.ext4
 Set volume label of /data partition as userdata : use -L option for mkfs.ext4

# Write system & vendor partition
  $ cd out/target/product/jh7110
  $ sudo dd if=vendor.img of=/dev/<p1> bs=1M
  $ sudo dd if=system.img of=/dev/<p2> bs=1M

# Copy firmware & ramdisk to boot partition
  device/arv/jh7110/boot/* to p3:/
  out/target/product/jh7110/ramdisk.img to p3:/


# Download & Build kernel
 Install cross-compiler
  $ sudo apt install gcc-riscv64-linux-gnu

 Git clone following kernel source under separate folder apart from Android
  https://github.com/starfive-tech/aosp-linux

 Checkout out to specific branch
  $ git checkout -b jh7110-android14-6.1-lts -t origin/jh7110-android14-6.1-lts

 Build the kernel
  $ ARCH=riscv scripts/kconfig/merge_config.sh arch/riscv/configs/starfive_visionfive2_defconfig kernel/configs/android-base.config kernel/configs/android-recommended.config
  $ ARCH=riscv CROSS_COMPILE=riscv64-linux-gnu- make Image.gz starfive/jh7110-visionfive-v2.dtb

# Copy kernel binaries to boot partition
  <kernel directory>/arch/riscv/boot/Image.gz to p3:/
  <kernel directory>/arch/riscv/boot/dts/starfive/jh7110-visionfive-v2.dtb to p3:/dtbs/starfive/

 Use -j[n] option for make command, if build host has a good number of CPU cores.

 Connect USB keyboard before power-up the board, at least one input device should exist.

# JH7110 hardware information:
  https://rvspace.org

About

Device build-config for JH7110

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Makefile 100.0%