Skip to content

android-rpi/device_arpi_rpi4

Repository files navigation

# Setup build envoronment
  https://source.android.com/setup/build/initializing
  $ sudo apt install libssl-dev python3-setuptools 

# Download Android source
  https://github.com/android-rpi/local_manifests/tree/arpi14-pi4

# Build Android
 Refer to http://source.android.com/source/building.html

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

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


# Prepare sd card
 Partitions of the card should be set-up like followings.
  p1  128MB for boot : Do fdisk, set W95 FAT32(LBA) & Bootable type, mkfs.vfat
  p2 1152MB for /system : Do fdisk, new primary partition
  p3  128MB for /vendor : Do fdisk, new primary partition
  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/rpi4
  $ sudo dd if=system.img of=/dev/<p2> bs=1M
  $ sudo dd if=vendor.img of=/dev/<p3> bs=1M

# Copy firmware & ramdisk to boot partition
  device/arpi/rpi4/boot/* to p1:/
  out/target/product/rpi4/ramdisk.img to p1:/


# Download & Build kernel source
  https://github.com/android-rpi/kernel_manifest/tree/arpi14-6.1.62

# Copy kernel binaries to boot partition
  <kernel directory>/out/arpi14-6.1/dist/Image.gz to p1:/
  <kernel directory>/out/arpi14-6.1/dist/bcm2711-rpi-*.dtb to p1:/
  <kernel directory>/out/arpi14-6.1/dist/vc4-kms-v3d-pi4.dtbo to p1:/overlays/