Add a defconfig for MIPS Creator CI20
PATCH v3 1/1 Add a defconfig for MIPS Creator CI20
MIPS Creator CI20 is a Linux and Android development system from MIPS/Imagination Technologies. It incorporates an Ingenic JZ4780 SoC which includes a 1.2GHz dual core MIPS32 processor and Imagination PowerVR SGX540 GPU.
More information can be found at:
http://elinux.org/MIPS_Creator_CI20
---
Changes v2 -> v3
- The v2 patch was wrong because it was made having the v1 applied. This one has been made from scratch.
Changes v1 -> v2
- Clone the kernel repository using a commit hash value instead of a branch name, so we can do reproducible builds.
- Fix the kernel headers version to 3.0.8.
- Clone the kernel repository using https:// instead of git:// to avoid problems for people who is behind a firewall.
- Add a readme.txt file.
board/ci20/readme.txt | 42 ++++++++++++++++++++++++++++++++++++++++++ configs/ci20_defconfig | 18 ++++++++++++++++++ 2 files changed, 60 insertions(+), 0 deletions(-) create mode 100644 board/ci20/readme.txt create mode 100644 configs/ci20_defconfig
board/ci20/readme.txt new file +42 -0
@@ -0,0 +1,42 @@ +********************* +* MIPS Creator CI20 * +********************* + +The 'ci20_defconfig' will create a root filesystem and a kernel image +under the 'output/images/' directory. This document will try to explain how +to use them in order to run Buildroot in the MIPS Creator CI20 board. + +Assuming you are at the U-Boot prompt of the MIPS Creator CI20, you have to +load the generated kernel image by using the 'tftpboot' command. In +order to do that, you will need to get the network working. Here you +have the instructions to set the ip address, netmask and gateway: + + setenv ipaddr x.x.x.x + setenv netmask x.x.x.x + setenv gatewayip x.x.x.x + +Now you have to set the ip for the TFTP server you are going to load the +kernel image from, and also the name of the kernel image file (we use +'uImage' as a filename in this example): + + setenv serverip x.x.x.x + setenv bootfile uImage + +And finally load the kernel image: + + tftpboot + +Now you have to extract the generated root filesystem into a USB drive +or SD-Card. Here you have the instructions to boot from the two of them. +You have to choose the one your prefer: + +From USB + setenv bootargs console=ttyS4,115200 console=tty0 mem=256M at 0x0 +mem=768M at 0x30000000 root=/dev/sda1 + +From SD-Card + setenv bootargs console=ttyS4,115200 console=tty0 mem=256M at 0x0 +mem=768M at 0x30000000 root=/dev/mmcblk0p1 + +And finally run this command to boot the board: + bootm
configs/ci20_defconfig new file +18 -0
@@ -0,0 +1,18 @@ +# architecture +BR2_mipsel=y +BR2_mips_32r2=y +# BR2_MIPS_SOFT_FLOAT is not set + +# system +BR2_KERNEL_HEADERS_VERSION=y +BR2_DEFAULT_KERNEL_VERSION="3.0.8" +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_3_0=y +BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_MDEV=y +BR2_TARGET_GENERIC_GETTY_PORT="ttyS4" + +# kernel +BR2_LINUX_KERNEL=y +BR2_LINUX_KERNEL_CUSTOM_GIT=y +BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://github.com/MIPS/CI20_linux.git" +BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="ba11adc7ac8792b0eb7415a1cc9c0968604a6fac" +BR2_LINUX_KERNEL_DEFCONFIG="ci20"
Signature · 1 line
1.7.1
PATCH v3 1/1 Add a defconfig for MIPS Creator CI20
Quoted 11 lines
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Vicente" == Vicente Olivert Riera <[email protected]> writes:
MIPS Creator CI20 is a Linux and Android development system from MIPS/Imagination Technologies. It incorporates an Ingenic JZ4780 SoC which includes a 1.2GHz dual core MIPS32 processor and Imagination PowerVR SGX540 GPU.
More information can be found at:
http://elinux.org/MIPS_Creator_CI20Signed-off-by Vicente Olivert Riera <[email protected]>
Committed to next, thanks.
I do have one question though:
configs/ci20_defconfig line 10
Quoted 5 lines
configs/ci20_defconfig new file +5
-0+# system +BR2_KERNEL_HEADERS_VERSION=y +BR2_DEFAULT_KERNEL_VERSION="3.0.8" +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_3_0=y +BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_MDEV=y
Is mdev in any way required? We normally only enable the basic stuff needed to get a booting system in the defconfigs.
Signature · 1 line
Bye, Peter Korsgaard
PATCH v3 1/1 Add a defconfig for MIPS Creator CI20
Dear Peter Korsgaard,
Quoted 7 lines · Peter Korsgaard
Quoted 6 lines
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Vicente" == Vicente Olivert Riera <[email protected]> writes:
MIPS Creator CI20 is a Linux and Android development system from MIPS/Imagination Technologies. It incorporates an Ingenic JZ4780 SoC which includes a 1.2GHz dual core MIPS32 processor and Imagination PowerVR SGX540 GPU.
Quoted 6 lines
Quoted 4 lines
More information can be found at:
http://elinux.org/MIPS_Creator_CI20Signed-off-by Vicente Olivert Riera <[email protected]>Committed to next, thanks.
Thanks :-)
Quoted 10 lines
I do have one question though:
configs/ci20_defconfig line 10
Quoted 5 lines
configs/ci20_defconfig new file +5
-0+# system +BR2_KERNEL_HEADERS_VERSION=y +BR2_DEFAULT_KERNEL_VERSION="3.0.8" +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_3_0=y +BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_MDEV=yIs mdev in any way required? We normally only enable the basic stuff needed to get a booting system in the defconfigs.
I have added mdev to the defconfig in order to get it working out of the box, because the kernel defconfig we are using doesn't have DEVTMPFS_MOUNT support, so if you rely on the default /dev management option (Dynamic using devtmpfs only) it will not work.
Cheers,
Signature · 5 lines
Vicente Olivert Riera Graduate Software Engineer, MIPS Platforms Imagination Technologies Limited t: +44 (0)113 2429814 www.imgtec.com
PATCH v3 1/1 Add a defconfig for MIPS Creator CI20
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Vicente" == Vicente Olivert Riera <[email protected]> writes:
Hi,
Quoted 11 lines
Quoted 10 lines
I do have one question though:
configs/ci20_defconfig line 10
Quoted 5 lines
configs/ci20_defconfig new file +5
-0+# system +BR2_KERNEL_HEADERS_VERSION=y +BR2_DEFAULT_KERNEL_VERSION="3.0.8" +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_3_0=y +BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_MDEV=yIs mdev in any way required? We normally only enable the basic stuff needed to get a booting system in the defconfigs.
Quoted 4 lines
I have added mdev to the defconfig in order to get it working out of the box, because the kernel defconfig we are using doesn't have
DEVTMPFS_MOUNTsupport, so if you rely on the default /dev management option (Dynamic using devtmpfs only) it will not work.
But when you build a kernel with Buildroot it will automatically enable DEVTMPFS_MOUNT when needed (E.G. when the system isn't configured for a static /dev), so that shouldn't be an issue?
Signature · 2 lines
Venlig hilsen, Peter Korsgaard
PATCH v3 1/1 Add a defconfig for MIPS Creator CI20
Dear Peter Korsgaard,
Quoted 15 lines · Peter Korsgaard
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Vicente" == Vicente Olivert Riera <[email protected]> writes:
Hi,
Quoted 10 lines
Quoted 10 lines
I do have one question though:
configs/ci20_defconfig line 10
Quoted 5 lines
configs/ci20_defconfig new file +5
-0+# system +BR2_KERNEL_HEADERS_VERSION=y +BR2_DEFAULT_KERNEL_VERSION="3.0.8" +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_3_0=y +BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_MDEV=yIs mdev in any way required? We normally only enable the basic stuff needed to get a booting system in the defconfigs.
Quoted 8 lines
Quoted 4 lines
I have added mdev to the defconfig in order to get it working out of the box, because the kernel defconfig we are using doesn't have
DEVTMPFS_MOUNTsupport, so if you rely on the default /dev management option (Dynamic using devtmpfs only) it will not work.But when you build a kernel with Buildroot it will automatically enable
DEVTMPFS_MOUNTwhen needed (E.G. when the system isn't configured for a static /dev), so that shouldn't be an issue?
I didn't know that. So, if you are using a custom defconfig to build the kernel, will Buildroot do more modifications depending on which /dev management you have selected? Will not respect your defconfig?
Cheers,
Signature · 5 lines
Vicente Olivert Riera Graduate Software Engineer, MIPS Platforms Imagination Technologies Limited t: +44 (0)113 2429814 www.imgtec.com
PATCH v3 1/1 Add a defconfig for MIPS Creator CI20
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Vicente" == Vicente Olivert Riera <[email protected]> writes:
Hi,
Quoted 8 lines
Quoted 8 lines
Quoted 7 lines
Quoted 2 lines
Is mdev in any way required? We normally only enable the basic stuff needed to get a booting system in the defconfigs.
I have added mdev to the defconfig in order to get it working out of the box, because the kernel defconfig we are using doesn't have
DEVTMPFS_MOUNTsupport, so if you rely on the default /dev management option (Dynamic using devtmpfs only) it will not work.
Quoted 7 lines
Quoted 3 lines
But when you build a kernel with Buildroot it will automatically enable
DEVTMPFS_MOUNTwhen needed (E.G. when the system isn't configured for a static /dev), so that shouldn't be an issue?I didn't know that. So, if you are using a custom defconfig to build the kernel, will Buildroot do more modifications depending on which /dev management you have selected? Will not respect your defconfig?
Exactly: We do some minimal config tweaks to ensure you have a working setup. See the logic in linux/linux.mk (LINUX_CONFIGURE_CMDS).
Signature · 2 lines
Venlig hilsen, Peter Korsgaard
PATCH v3 1/1 Add a defconfig for MIPS Creator CI20
Quoted 16 lines · Peter Korsgaard
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Vicente" == Vicente Olivert Riera <[email protected]> writes:
Hi,
Quoted 11 lines
Quoted 11 lines
Quoted 7 lines
Quoted 2 lines
Is mdev in any way required? We normally only enable the basic stuff needed to get a booting system in the defconfigs.
I have added mdev to the defconfig in order to get it working out of the box, because the kernel defconfig we are using doesn't have
DEVTMPFS_MOUNTsupport, so if you rely on the default /dev management option (Dynamic using devtmpfs only) it will not work.But when you build a kernel with Buildroot it will automatically enable
DEVTMPFS_MOUNTwhen needed (E.G. when the system isn't configured for a static /dev), so that shouldn't be an issue?
Quoted 6 lines
Quoted 3 lines
I didn't know that. So, if you are using a custom defconfig to build the kernel, will Buildroot do more modifications depending on which /dev management you have selected? Will not respect your defconfig?
Exactly: We do some minimal config tweaks to ensure you have a working setup. See the logic in
linux/linux.mk(LINUX_CONFIGURE_CMDS).
I have seen that file and I found this snippet:
$(if $(BR2_ROOTFS_DEVICE_CREATION_STATIC),,
$(call KCONFIG_ENABLE_OPT,CONFIG_DEVTMPFS,$(@D)/.config) $(call KCONFIG_ENABLE_OPT,CONFIG_DEVTMPFS_MOUNT,$(@D)/.config))
It adds those two options to the kernel config only if BR2_ROOTFS_DEVICE_CREATION_STATIC has been selected. I think this is also needed for BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_DEVTMPFS. I'm going to test it right now to make sure.
Also, could you tell me why that if statement has two comma (,,) instead of one? What's the different with having only one comma?
Cheers,
Signature · 5 lines
Vicente Olivert Riera Graduate Software Engineer, MIPS Platforms Imagination Technologies Limited t: +44 (0)113 2429814 www.imgtec.com
PATCH v3 1/1 Add a defconfig for MIPS Creator CI20
Quoted 7 lines
Quoted 4 lines
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Vicente" == Vicente Olivert Riera <[email protected]> writes:
Exactly: We do some minimal config tweaks to ensure you have a working setup. See the logic in
linux/linux.mk(LINUX_CONFIGURE_CMDS).I have seen that file and I found this snippet:
Quoted 8 lines
$(if $(BR2_ROOTFS_DEVICE_CREATION_STATIC),,
$(call KCONFIG_ENABLE_OPT,CONFIG_DEVTMPFS,$(@D)/.config) $(call KCONFIG_ENABLE_OPT,CONFIG_DEVTMPFS_MOUNT,$(@D)/.config))It adds those two options to the kernel config only if
BR2_ROOTFS_DEVICE_CREATION_STATIChas been selected. I think this is also needed forBR2_ROOTFS_DEVICE_CREATION_DYNAMIC_DEVTMPFS. I'm going to test it right now to make sure.
No, notice the 2x ",". The syntax of the $(if ) construct is $(if <condition>,<command-of-nonempty>,<command-if-empty>), so this is done for everything but the static /dev case.
Quoted 2 lines
Also, could you tell me why that if statement has two comma (,,) instead of one? What's the different with having only one comma?
See above or:
https://www.gnu.org/software/make/manual/html_node/Conditional-Functions.html#index-if
Signature · 2 lines
Venlig hilsen, Peter Korsgaard
PATCH v3 1/1 Add a defconfig for MIPS Creator CI20
Quoted 20 lines · Peter Korsgaard
Quoted 7 lines
Quoted 4 lines
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Vicente" == Vicente Olivert Riera <[email protected]> writes:
Exactly: We do some minimal config tweaks to ensure you have a working setup. See the logic in
linux/linux.mk(LINUX_CONFIGURE_CMDS).I have seen that file and I found this snippet:
Quoted 8 lines
$(if $(BR2_ROOTFS_DEVICE_CREATION_STATIC),,
$(call KCONFIG_ENABLE_OPT,CONFIG_DEVTMPFS,$(@D)/.config) $(call KCONFIG_ENABLE_OPT,CONFIG_DEVTMPFS_MOUNT,$(@D)/.config))It adds those two options to the kernel config only if
BR2_ROOTFS_DEVICE_CREATION_STATIChas been selected. I think this is also needed forBR2_ROOTFS_DEVICE_CREATION_DYNAMIC_DEVTMPFS. I'm going to test it right now to make sure.No, notice the 2x ",". The syntax of the $(if ) construct is $(if <condition>,<command-of-nonempty>,<command-if-empty>), so this is done for everything but the static /dev case.
Quoted 6 lines
Quoted 2 lines
Also, could you tell me why that if statement has two comma (,,) instead of one? What's the difference with having only one comma?
See above or:
https://www.gnu.org/software/make/manual/html_node/Conditional-Functions.html#index-if
Facepalm.
Thanks Peter, I will send a patch to remove the MDEV option in the ci20_defconfig.
Cheers,
Signature · 5 lines
Vicente Olivert Riera Graduate Software Engineer, MIPS Platforms Imagination Technologies Limited t: +44 (0)113 2429814 www.imgtec.com