Imagination CI20 reference board

NOTE: this is a work in progress!

The CI20 reference board from Imagination Technologies contains:

  • Ingenic JZ7480
  • 1GB RAM
  • (TODO)
  • SMP
  • USB1
  • Basic NEMC bus, required for ethernet and NAND
  • Ethernet
  • Serial console

There are apparently multiple UARTs on this board -see http://elinux.org/CI20_Hardware#Dedicated_UART_header for the console uart (uart4).

  • make TARGET=mips TARGET_ARCH=mipsel TARGET_CPUTYPE=mips32r2 buildworld
  • make TARGET=mips TARGET_ARCH=mipsel TARGET_CPUTYPE=mips32r2 buildkernel KERNCONF=CI20

Use TARGET_ARCH=mipselhf to enable hard float support. This appears to work (thank you, Ruslan!), but was only lightly tested on this board.

  • you need kernel.tramp.bin from the obj directory, NOT the kernel that's installed in DESTDIR/boot/kernel
  • at uboot:
  • setenv ipaddr <local ip>
  • setenv serverip <ip address of tftp server>
  • tftpboot 0x88000000 kernel.tramp.bin
  • go 0x88000000 hint.dme.0.macaddr=${ethaddr}

The earlier software version (Debian 7) shipped with a uboot/dts that used uart0. This isn't the dedicated uart4 connector.

When you upgrade to debian 8 it'll come with an updated uboot/dts which will change the dts to point the console out uart4.

FreeBSD's dts (sys/gnu/dts/mips/ingenic/ci20.dts) sets stdout-path = &uart4, which matches the updated firmware. For the Debian 7 firmware, you should change this to uart0 before compiling the kernel so the bootloader console and FreeBSD serial console match.

  • mips/imaginationci20.txt
  • Last modified: 2019/09/07 07:56
  • by LorenzoSalvadore