Welcome to the wiki for the growing Linux development community around Amlogic Meson SoCs.
This community is focused around getting Meson SoCs well-supported by mainline Linux and mainline Linux distributions.
This wiki is not endorsed by or affiliated with Amlogic, Inc.
As we have a lot of work to do before we reach our goals, this wiki is not really suitable for end users yet - there are plenty of forum communities that offer disjunct Linux/Android spins with XBMC that you may be looking for.
Instead, we use this wiki as an information archive for those developers who are working collaboratively to bring Amlogic support to the existing Linux/open-source codebases and communities.
Current upstreaming efforts are focused around the S905 SoC (from the Meson GXBB family). Secondarily there are also some efforts around the S805 SoC (Meson8b), and the AML7826MX (Meson6) since they are widespread in many consumer products.
To compile the 32-bit mainline kernel:
# make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- multi_v7_defconfig # make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- LOADADDR=0x00208000 uImage dtbs
To boot the 32-bit kernel using the shipped U-Boot:
# mmcinfo # fatload mmc 0:1 0x21000000 uImage # fatload mmc 0:1 0x22000000 rootfs.cpio.uboot # fatload mmc 0:1 0x21800000 meson8b-mxq.dtb # setenv bootargs "console=ttyAML0,115200" # bootm 0x21000000 0x22000000 0x21800000
To compile the 64-bit mainline kernel:
# make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- defconfig # make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- Image dtbs # mkimage -A arm64 -O linux -T kernel -C none -a 0x1080000 -e 0x1080000 -n linux-next -d arch/arm64/boot/Image ../uImage
To boot the 64-bit kernel using the shipped U-Boot:
# fatload mmc 0:1 0x01080000 uImage # fatload mmc 0:1 $dtb_mem_addr meson-gxbb-vega-s95-telos.dtb # bootm 0x1080000 - $dtb_mem_addr
Based on the Amlogic kernel code, these git trees also contain some interesting developments: