Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH] configs: Add support for Toradex Colibri Vybrid modules
@ 2015-10-20  3:49 Sanchayan Maity
  2015-10-24 15:54 ` maitysanchayan at gmail.com
  2015-10-26 19:59 ` Arnout Vandecappelle
  0 siblings, 2 replies; 6+ messages in thread
From: Sanchayan Maity @ 2015-10-20  3:49 UTC (permalink / raw)
  To: buildroot

This patch adds a minimal default configuration for Colibri Vybrid
modules which has been tested on Colibri Vybrid VF50 and VF61.

Vybrid is well supported in mainline kernel by Toradex however we
use the custom git branches maintained by Toradex. The configuration
only builds a minimal root filesystem. Support for u-boot and flash
scripts is not added.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
---
 configs/colibri_vf_defconfig | 34 ++++++++++++++++++++++++++++++++++
 1 file changed, 34 insertions(+)
 create mode 100644 configs/colibri_vf_defconfig

diff --git a/configs/colibri_vf_defconfig b/configs/colibri_vf_defconfig
new file mode 100644
index 0000000..d096754
--- /dev/null
+++ b/configs/colibri_vf_defconfig
@@ -0,0 +1,34 @@
+BR2_arm=y
+BR2_cortex_a5=y
+BR2_ARM_EABIHF=y
+BR2_ARM_ENABLE_NEON=y
+BR2_ARM_FPU_NEON_VFPV4=y
+BR2_TOOLCHAIN_EXTERNAL=y
+BR2_PACKAGE_HOST_GDB=y
+BR2_PACKAGE_HOST_GDB_PYTHON=y
+BR2_GDB_VERSION_7_8=y
+BR2_TARGET_GENERIC_HOSTNAME="colibri-vf"
+BR2_TARGET_GENERIC_ISSUE="Colibri VF 20151007"
+BR2_TARGET_GENERIC_GETTY_PORT="ttyLP0"
+BR2_LINUX_KERNEL=y
+BR2_LINUX_KERNEL_CUSTOM_GIT=y
+BR2_LINUX_KERNEL_CUSTOM_REPO_URL="git://git.toradex.com/linux-toradex.git"
+BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="db509ca6ce2a4c04fe0d2a2e0611bb917ebe4aa8"
+BR2_LINUX_KERNEL_DEFCONFIG="colibri_vf"
+BR2_LINUX_KERNEL_ZIMAGE=y
+BR2_LINUX_KERNEL_DTS_SUPPORT=y
+BR2_LINUX_KERNEL_INTREE_DTS_NAME="vf610-colibri-eval-v3 vf500-colibri-eval-v3"
+BR2_LINUX_KERNEL_INSTALL_TARGET=y
+BR2_PACKAGE_GDB=y
+BR2_PACKAGE_IPROUTE2=y
+BR2_TARGET_ROOTFS_UBIFS=y
+BR2_TARGET_ROOTFS_UBIFS_LEBSIZE=0x1f000
+BR2_TARGET_ROOTFS_UBIFS_MINIOSIZE=0x800
+BR2_TARGET_ROOTFS_UBIFS_MAXLEBCNT=8112
+BR2_TARGET_ROOTFS_UBIFS_RT_LZO=y
+BR2_TARGET_ROOTFS_UBIFS_NONE=y
+BR2_TARGET_ROOTFS_UBIFS_OPTS="--space-fixup"
+BR2_TARGET_ROOTFS_UBI=y
+BR2_TARGET_ROOTFS_UBI_PEBSIZE=0x20000
+BR2_TARGET_ROOTFS_UBI_SUBSIZE=2048
+BR2_TARGET_ROOTFS_UBI_OPTS=""
-- 
2.6.1

^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [Buildroot] [PATCH] configs: Add support for Toradex Colibri Vybrid modules
  2015-10-20  3:49 [Buildroot] [PATCH] configs: Add support for Toradex Colibri Vybrid modules Sanchayan Maity
@ 2015-10-24 15:54 ` maitysanchayan at gmail.com
  2015-10-26 19:59 ` Arnout Vandecappelle
  1 sibling, 0 replies; 6+ messages in thread
From: maitysanchayan at gmail.com @ 2015-10-24 15:54 UTC (permalink / raw)
  To: buildroot

Hello,

Ping?

Is there something more I need to work on to get this in acceptable state?

- Sanchayan.

On 15-10-20 09:19:01, Sanchayan Maity wrote:
> This patch adds a minimal default configuration for Colibri Vybrid
> modules which has been tested on Colibri Vybrid VF50 and VF61.
> 
> Vybrid is well supported in mainline kernel by Toradex however we
> use the custom git branches maintained by Toradex. The configuration
> only builds a minimal root filesystem. Support for u-boot and flash
> scripts is not added.
> 
> Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
> ---
>  configs/colibri_vf_defconfig | 34 ++++++++++++++++++++++++++++++++++
>  1 file changed, 34 insertions(+)
>  create mode 100644 configs/colibri_vf_defconfig
> 
> diff --git a/configs/colibri_vf_defconfig b/configs/colibri_vf_defconfig
> new file mode 100644
> index 0000000..d096754
> --- /dev/null
> +++ b/configs/colibri_vf_defconfig
> @@ -0,0 +1,34 @@
> +BR2_arm=y
> +BR2_cortex_a5=y
> +BR2_ARM_EABIHF=y
> +BR2_ARM_ENABLE_NEON=y
> +BR2_ARM_FPU_NEON_VFPV4=y
> +BR2_TOOLCHAIN_EXTERNAL=y
> +BR2_PACKAGE_HOST_GDB=y
> +BR2_PACKAGE_HOST_GDB_PYTHON=y
> +BR2_GDB_VERSION_7_8=y
> +BR2_TARGET_GENERIC_HOSTNAME="colibri-vf"
> +BR2_TARGET_GENERIC_ISSUE="Colibri VF 20151007"
> +BR2_TARGET_GENERIC_GETTY_PORT="ttyLP0"
> +BR2_LINUX_KERNEL=y
> +BR2_LINUX_KERNEL_CUSTOM_GIT=y
> +BR2_LINUX_KERNEL_CUSTOM_REPO_URL="git://git.toradex.com/linux-toradex.git"
> +BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="db509ca6ce2a4c04fe0d2a2e0611bb917ebe4aa8"
> +BR2_LINUX_KERNEL_DEFCONFIG="colibri_vf"
> +BR2_LINUX_KERNEL_ZIMAGE=y
> +BR2_LINUX_KERNEL_DTS_SUPPORT=y
> +BR2_LINUX_KERNEL_INTREE_DTS_NAME="vf610-colibri-eval-v3 vf500-colibri-eval-v3"
> +BR2_LINUX_KERNEL_INSTALL_TARGET=y
> +BR2_PACKAGE_GDB=y
> +BR2_PACKAGE_IPROUTE2=y
> +BR2_TARGET_ROOTFS_UBIFS=y
> +BR2_TARGET_ROOTFS_UBIFS_LEBSIZE=0x1f000
> +BR2_TARGET_ROOTFS_UBIFS_MINIOSIZE=0x800
> +BR2_TARGET_ROOTFS_UBIFS_MAXLEBCNT=8112
> +BR2_TARGET_ROOTFS_UBIFS_RT_LZO=y
> +BR2_TARGET_ROOTFS_UBIFS_NONE=y
> +BR2_TARGET_ROOTFS_UBIFS_OPTS="--space-fixup"
> +BR2_TARGET_ROOTFS_UBI=y
> +BR2_TARGET_ROOTFS_UBI_PEBSIZE=0x20000
> +BR2_TARGET_ROOTFS_UBI_SUBSIZE=2048
> +BR2_TARGET_ROOTFS_UBI_OPTS=""
> -- 
> 2.6.1
> 

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Buildroot] [PATCH] configs: Add support for Toradex Colibri Vybrid modules
  2015-10-20  3:49 [Buildroot] [PATCH] configs: Add support for Toradex Colibri Vybrid modules Sanchayan Maity
  2015-10-24 15:54 ` maitysanchayan at gmail.com
@ 2015-10-26 19:59 ` Arnout Vandecappelle
  2015-10-27  3:42   ` maitysanchayan at gmail.com
  1 sibling, 1 reply; 6+ messages in thread
From: Arnout Vandecappelle @ 2015-10-26 19:59 UTC (permalink / raw)
  To: buildroot

 Hi Sanchayan,

On 20-10-15 05:49, Sanchayan Maity wrote:
> This patch adds a minimal default configuration for Colibri Vybrid
> modules which has been tested on Colibri Vybrid VF50 and VF61.
> 
> Vybrid is well supported in mainline kernel by Toradex however we
> use the custom git branches maintained by Toradex. The configuration
> only builds a minimal root filesystem. Support for u-boot and flash
> scripts is not added.
> 
> Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
> ---
>  configs/colibri_vf_defconfig | 34 ++++++++++++++++++++++++++++++++++
>  1 file changed, 34 insertions(+)
>  create mode 100644 configs/colibri_vf_defconfig
> 
> diff --git a/configs/colibri_vf_defconfig b/configs/colibri_vf_defconfig
> new file mode 100644
> index 0000000..d096754
> --- /dev/null
> +++ b/configs/colibri_vf_defconfig
> @@ -0,0 +1,34 @@
> +BR2_arm=y
> +BR2_cortex_a5=y
> +BR2_ARM_EABIHF=y
> +BR2_ARM_ENABLE_NEON=y
> +BR2_ARM_FPU_NEON_VFPV4=y
> +BR2_TOOLCHAIN_EXTERNAL=y

 We prefer to use an internal uClibc-based toolchain for minimal defconfigs,
because it is smaller and gives more fine-tuning options. You do have to fix the
kernel headers to a specific version to guarantee reproducability.

> +BR2_PACKAGE_HOST_GDB=y
> +BR2_PACKAGE_HOST_GDB_PYTHON=y
> +BR2_GDB_VERSION_7_8=y

 We also don't enable gdb in the defconfigs, just like we don't enable any
target package other than busybox.

> +BR2_TARGET_GENERIC_HOSTNAME="colibri-vf"
> +BR2_TARGET_GENERIC_ISSUE="Colibri VF 20151007"
> +BR2_TARGET_GENERIC_GETTY_PORT="ttyLP0"
> +BR2_LINUX_KERNEL=y
> +BR2_LINUX_KERNEL_CUSTOM_GIT=y
> +BR2_LINUX_KERNEL_CUSTOM_REPO_URL="git://git.toradex.com/linux-toradex.git"
> +BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="db509ca6ce2a4c04fe0d2a2e0611bb917ebe4aa8"
> +BR2_LINUX_KERNEL_DEFCONFIG="colibri_vf"
> +BR2_LINUX_KERNEL_ZIMAGE=y
> +BR2_LINUX_KERNEL_DTS_SUPPORT=y
> +BR2_LINUX_KERNEL_INTREE_DTS_NAME="vf610-colibri-eval-v3 vf500-colibri-eval-v3"
> +BR2_LINUX_KERNEL_INSTALL_TARGET=y

 That is rarely a good idea... You usually put the kernel in a separate mtd
partition or UBI volume.

> +BR2_PACKAGE_GDB=y
> +BR2_PACKAGE_IPROUTE2=y

 Please don't select any package except busybox.

> +BR2_TARGET_ROOTFS_UBIFS=y
> +BR2_TARGET_ROOTFS_UBIFS_LEBSIZE=0x1f000
> +BR2_TARGET_ROOTFS_UBIFS_MINIOSIZE=0x800
> +BR2_TARGET_ROOTFS_UBIFS_MAXLEBCNT=8112
> +BR2_TARGET_ROOTFS_UBIFS_RT_LZO=y

 This is the default, how come it appears in your defconfig?

> +BR2_TARGET_ROOTFS_UBIFS_NONE=y

 Same here.

> +BR2_TARGET_ROOTFS_UBIFS_OPTS="--space-fixup"
> +BR2_TARGET_ROOTFS_UBI=y
> +BR2_TARGET_ROOTFS_UBI_PEBSIZE=0x20000
> +BR2_TARGET_ROOTFS_UBI_SUBSIZE=2048
> +BR2_TARGET_ROOTFS_UBI_OPTS=""
> 


 We also like to have a readme file, in board/toradex/colibri/readme.txt, that
explains how to get the images to the target. Particularly in this case because
it's not simply a matter of putting it in an SD card. Look at other boards for
examples.

 Regards,
 Arnout

-- 
Arnout Vandecappelle                          arnout at mind be
Senior Embedded Software Architect            +32-16-286500
Essensium/Mind                                http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium           BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint:  7493 020B C7E3 8618 8DEC 222C 82EB F404 F9AC 0DDF

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Buildroot] [PATCH] configs: Add support for Toradex Colibri Vybrid modules
  2015-10-26 19:59 ` Arnout Vandecappelle
@ 2015-10-27  3:42   ` maitysanchayan at gmail.com
  2015-10-27  9:41     ` Arnout Vandecappelle
  0 siblings, 1 reply; 6+ messages in thread
From: maitysanchayan at gmail.com @ 2015-10-27  3:42 UTC (permalink / raw)
  To: buildroot

Hello Arnout,

On 15-10-26 20:59:06, Arnout Vandecappelle wrote:
>  Hi Sanchayan,
> 
> On 20-10-15 05:49, Sanchayan Maity wrote:
> > This patch adds a minimal default configuration for Colibri Vybrid
> > modules which has been tested on Colibri Vybrid VF50 and VF61.
> > 
> > Vybrid is well supported in mainline kernel by Toradex however we
> > use the custom git branches maintained by Toradex. The configuration
> > only builds a minimal root filesystem. Support for u-boot and flash
> > scripts is not added.
> > 
> > Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
> > ---
> >  configs/colibri_vf_defconfig | 34 ++++++++++++++++++++++++++++++++++
> >  1 file changed, 34 insertions(+)
> >  create mode 100644 configs/colibri_vf_defconfig
> > 
> > diff --git a/configs/colibri_vf_defconfig b/configs/colibri_vf_defconfig
> > new file mode 100644
> > index 0000000..d096754
> > --- /dev/null
> > +++ b/configs/colibri_vf_defconfig
> > @@ -0,0 +1,34 @@
> > +BR2_arm=y
> > +BR2_cortex_a5=y
> > +BR2_ARM_EABIHF=y
> > +BR2_ARM_ENABLE_NEON=y
> > +BR2_ARM_FPU_NEON_VFPV4=y
> > +BR2_TOOLCHAIN_EXTERNAL=y
> 
>  We prefer to use an internal uClibc-based toolchain for minimal defconfigs,
> because it is smaller and gives more fine-tuning options. You do have to fix the
> kernel headers to a specific version to guarantee reproducability.

Ok. I will look into that.

>
> > +BR2_PACKAGE_HOST_GDB=y
> > +BR2_PACKAGE_HOST_GDB_PYTHON=y
> > +BR2_GDB_VERSION_7_8=y
> 
>  We also don't enable gdb in the defconfigs, just like we don't enable any
> target package other than busybox.

Understood.

>
> > +BR2_TARGET_GENERIC_HOSTNAME="colibri-vf"
> > +BR2_TARGET_GENERIC_ISSUE="Colibri VF 20151007"
> > +BR2_TARGET_GENERIC_GETTY_PORT="ttyLP0"
> > +BR2_LINUX_KERNEL=y
> > +BR2_LINUX_KERNEL_CUSTOM_GIT=y
> > +BR2_LINUX_KERNEL_CUSTOM_REPO_URL="git://git.toradex.com/linux-toradex.git"
> > +BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="db509ca6ce2a4c04fe0d2a2e0611bb917ebe4aa8"
> > +BR2_LINUX_KERNEL_DEFCONFIG="colibri_vf"
> > +BR2_LINUX_KERNEL_ZIMAGE=y
> > +BR2_LINUX_KERNEL_DTS_SUPPORT=y
> > +BR2_LINUX_KERNEL_INTREE_DTS_NAME="vf610-colibri-eval-v3 vf500-colibri-eval-v3"
> > +BR2_LINUX_KERNEL_INSTALL_TARGET=y
> 
>  That is rarely a good idea... You usually put the kernel in a separate mtd
> partition or UBI volume.

On the Colibri Vybrid modules we have one UBI parition on which the root filesystem
resides along with the kernel and device tree blobs in /boot. From uboot we then use
boot from ubifs. I am aware that this is supposedly not recommended and recently
Richard Weinberger also had a ELCE talk regarding that though I am not aware of the
reasons at the moment.

I added the above since it directly gives a rootfs ubifs image which users of the
Colibri Vybrid can then directly use as to how to we define our update procedures.

Will the addition of the above options be not acceptable still?

>
> > +BR2_PACKAGE_GDB=y
> > +BR2_PACKAGE_IPROUTE2=y
> 
>  Please don't select any package except busybox.

Ok.

> 
> > +BR2_TARGET_ROOTFS_UBIFS=y
> > +BR2_TARGET_ROOTFS_UBIFS_LEBSIZE=0x1f000
> > +BR2_TARGET_ROOTFS_UBIFS_MINIOSIZE=0x800
> > +BR2_TARGET_ROOTFS_UBIFS_MAXLEBCNT=8112
> > +BR2_TARGET_ROOTFS_UBIFS_RT_LZO=y
> 
>  This is the default, how come it appears in your defconfig?
> 
> > +BR2_TARGET_ROOTFS_UBIFS_NONE=y
> 
>  Same here.

Ok. I added it specifically. Will purge the defaults here.

> 
> > +BR2_TARGET_ROOTFS_UBIFS_OPTS="--space-fixup"
> > +BR2_TARGET_ROOTFS_UBI=y
> > +BR2_TARGET_ROOTFS_UBI_PEBSIZE=0x20000
> > +BR2_TARGET_ROOTFS_UBI_SUBSIZE=2048
> > +BR2_TARGET_ROOTFS_UBI_OPTS=""
> > 
> 
> 
>  We also like to have a readme file, in board/toradex/colibri/readme.txt, that
> explains how to get the images to the target. Particularly in this case because
> it's not simply a matter of putting it in an SD card. Look at other boards for
> examples.

Will add the same.

Thanks for your inputs and time Arnout.

- Sanchayan.

>
>  Regards,
>  Arnout
> 
> -- 
> Arnout Vandecappelle                          arnout at mind be
> Senior Embedded Software Architect            +32-16-286500
> Essensium/Mind                                http://www.mind.be
> G.Geenslaan 9, 3001 Leuven, Belgium           BE 872 984 063 RPR Leuven
> LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
> GPG fingerprint:  7493 020B C7E3 8618 8DEC 222C 82EB F404 F9AC 0DDF

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Buildroot] [PATCH] configs: Add support for Toradex Colibri Vybrid modules
  2015-10-27  3:42   ` maitysanchayan at gmail.com
@ 2015-10-27  9:41     ` Arnout Vandecappelle
  2015-10-27  9:53       ` maitysanchayan at gmail.com
  0 siblings, 1 reply; 6+ messages in thread
From: Arnout Vandecappelle @ 2015-10-27  9:41 UTC (permalink / raw)
  To: buildroot



On 27-10-15 04:42, maitysanchayan at gmail.com wrote:
> Hello Arnout,
> 
> On 15-10-26 20:59:06, Arnout Vandecappelle wrote:
>>  Hi Sanchayan,
>>
>> On 20-10-15 05:49, Sanchayan Maity wrote:
>>> This patch adds a minimal default configuration for Colibri Vybrid
>>> modules which has been tested on Colibri Vybrid VF50 and VF61.
>>>
>>> Vybrid is well supported in mainline kernel by Toradex however we
>>> use the custom git branches maintained by Toradex. The configuration

 Something I forgot to mention in my initial review: this sentence doesn't
explain very well what you're doing. I mean, you say that it's OK to use
mainline but you use the Toradex branch anyway, without giving a good reason for it.

>>> only builds a minimal root filesystem. Support for u-boot and flash
>>> scripts is not added.

 And another thing I forgot to mention: unless there is a really good reason not
to support U-Boot, please do support U-Boot as well. The goal of a defconfig is
to make it easy to start to make your own configuration and to start hacking.
It's basically a simple way to express all the information about how to build
things that you would otherwise find in wiki pages etc. So how to build a custom
boot loader is really an essential part of that.

 For some boards we even have two defconfigs, to distinguish the booting from SD
card and the booting from flash. That's also something that is sometimes a bit
tricky to get right so it is worthwhile to have a separate defconfig for it.

>>>
>>> Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
>>> ---
[snip]
>>> +BR2_LINUX_KERNEL_INSTALL_TARGET=y
>>
>>  That is rarely a good idea... You usually put the kernel in a separate mtd
>> partition or UBI volume.
> 
> On the Colibri Vybrid modules we have one UBI parition on which the root filesystem
> resides along with the kernel and device tree blobs in /boot. From uboot we then use
> boot from ubifs. I am aware that this is supposedly not recommended and recently
> Richard Weinberger also had a ELCE talk regarding that though I am not aware of the
> reasons at the moment.
> 
> I added the above since it directly gives a rootfs ubifs image which users of the
> Colibri Vybrid can then directly use as to how to we define our update procedures.

 If that's the way you define your update procedure, then keep it the way it is.

 The reason that Richard Weinberger advises against it (I think) is that it just
adds overhead: mounting ubifs takes time in addition to attaching the ubi
partition. So booting the kernel from a UBI volume will be significantly faster.
But there is certainly something to be said for your approach as well, since it
makes it much easier to guarantee consistency between kernel and rootfs.

> 
> Will the addition of the above options be not acceptable still?
> 
>>
>>> +BR2_PACKAGE_GDB=y
>>> +BR2_PACKAGE_IPROUTE2=y
>>
>>  Please don't select any package except busybox.
> 
> Ok.
> 
>>
>>> +BR2_TARGET_ROOTFS_UBIFS=y
>>> +BR2_TARGET_ROOTFS_UBIFS_LEBSIZE=0x1f000
>>> +BR2_TARGET_ROOTFS_UBIFS_MINIOSIZE=0x800
>>> +BR2_TARGET_ROOTFS_UBIFS_MAXLEBCNT=8112
>>> +BR2_TARGET_ROOTFS_UBIFS_RT_LZO=y
>>
>>  This is the default, how come it appears in your defconfig?
>>
>>> +BR2_TARGET_ROOTFS_UBIFS_NONE=y
>>
>>  Same here.
> 
> Ok. I added it specifically. Will purge the defaults here.

 Well, it's not bad to add it explicitly, just in case the defaults change
(though we try to avoid that) and to make it more explicit what choices you've made.


 To avoid some of the feedback like I gave, it's good to already mention in the
commit message what choices you've made and why.


 Regards,
 Arnout

> 
>>
>>> +BR2_TARGET_ROOTFS_UBIFS_OPTS="--space-fixup"
>>> +BR2_TARGET_ROOTFS_UBI=y
>>> +BR2_TARGET_ROOTFS_UBI_PEBSIZE=0x20000
>>> +BR2_TARGET_ROOTFS_UBI_SUBSIZE=2048
>>> +BR2_TARGET_ROOTFS_UBI_OPTS=""
>>>
>>
>>
>>  We also like to have a readme file, in board/toradex/colibri/readme.txt, that
>> explains how to get the images to the target. Particularly in this case because
>> it's not simply a matter of putting it in an SD card. Look at other boards for
>> examples.
> 
> Will add the same.
> 
> Thanks for your inputs and time Arnout.
> 
> - Sanchayan.
> 
>>
>>  Regards,
>>  Arnout
>>
>> -- 
>> Arnout Vandecappelle                          arnout at mind be
>> Senior Embedded Software Architect            +32-16-286500
>> Essensium/Mind                                http://www.mind.be
>> G.Geenslaan 9, 3001 Leuven, Belgium           BE 872 984 063 RPR Leuven
>> LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
>> GPG fingerprint:  7493 020B C7E3 8618 8DEC 222C 82EB F404 F9AC 0DDF

-- 
Arnout Vandecappelle      arnout dot vandecappelle at essensium dot com
Senior Embedded Software Architect . . . . . . +32-478-010353 (mobile)
Essensium, Mind division . . . . . . . . . . . . . . http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium . . . . . BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint:  7493 020B C7E3 8618 8DEC 222C 82EB F404 F9AC 0DDF

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Buildroot] [PATCH] configs: Add support for Toradex Colibri Vybrid modules
  2015-10-27  9:41     ` Arnout Vandecappelle
@ 2015-10-27  9:53       ` maitysanchayan at gmail.com
  0 siblings, 0 replies; 6+ messages in thread
From: maitysanchayan at gmail.com @ 2015-10-27  9:53 UTC (permalink / raw)
  To: buildroot

Hello,

On 15-10-27 10:41:08, Arnout Vandecappelle wrote:
> 
> 
> On 27-10-15 04:42, maitysanchayan at gmail.com wrote:
> > Hello Arnout,
> > 
> > On 15-10-26 20:59:06, Arnout Vandecappelle wrote:
> >>  Hi Sanchayan,
> >>
> >> On 20-10-15 05:49, Sanchayan Maity wrote:
> >>> This patch adds a minimal default configuration for Colibri Vybrid
> >>> modules which has been tested on Colibri Vybrid VF50 and VF61.
> >>>
> >>> Vybrid is well supported in mainline kernel by Toradex however we
> >>> use the custom git branches maintained by Toradex. The configuration
> 
>  Something I forgot to mention in my initial review: this sentence doesn't
> explain very well what you're doing. I mean, you say that it's OK to use
> mainline but you use the Toradex branch anyway, without giving a good reason for it.

Ok. I guess it will be best if I remove that line. Since it is a Toradex module
best use the git branches we have. I will also synchronise this with every
release we make.

>
> >>> only builds a minimal root filesystem. Support for u-boot and flash
> >>> scripts is not added.
> 
>  And another thing I forgot to mention: unless there is a really good reason not
> to support U-Boot, please do support U-Boot as well. The goal of a defconfig is
> to make it easy to start to make your own configuration and to start hacking.
> It's basically a simple way to express all the information about how to build
> things that you would otherwise find in wiki pages etc. So how to build a custom
> boot loader is really an essential part of that.

Ok. I will also add uboot support.

> 
>  For some boards we even have two defconfigs, to distinguish the booting from SD
> card and the booting from flash. That's also something that is sometimes a bit
> tricky to get right so it is worthwhile to have a separate defconfig for it.

I don't think we will require separate defconfigs. Our uboot support has environment
variable which will allow booting directly from the SD card. Will add details along
with the documentation in next iteration.

>
> >>>
> >>> Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
> >>> ---
> [snip]
> >>> +BR2_LINUX_KERNEL_INSTALL_TARGET=y
> >>
> >>  That is rarely a good idea... You usually put the kernel in a separate mtd
> >> partition or UBI volume.
> > 
> > On the Colibri Vybrid modules we have one UBI parition on which the root filesystem
> > resides along with the kernel and device tree blobs in /boot. From uboot we then use
> > boot from ubifs. I am aware that this is supposedly not recommended and recently
> > Richard Weinberger also had a ELCE talk regarding that though I am not aware of the
> > reasons at the moment.
> > 
> > I added the above since it directly gives a rootfs ubifs image which users of the
> > Colibri Vybrid can then directly use as to how to we define our update procedures.
> 
>  If that's the way you define your update procedure, then keep it the way it is.
> 
>  The reason that Richard Weinberger advises against it (I think) is that it just
> adds overhead: mounting ubifs takes time in addition to attaching the ubi
> partition. So booting the kernel from a UBI volume will be significantly faster.
> But there is certainly something to be said for your approach as well, since it
> makes it much easier to guarantee consistency between kernel and rootfs.
> 
> > 
> > Will the addition of the above options be not acceptable still?
> > 
> >>
> >>> +BR2_PACKAGE_GDB=y
> >>> +BR2_PACKAGE_IPROUTE2=y
> >>
> >>  Please don't select any package except busybox.
> > 
> > Ok.
> > 
> >>
> >>> +BR2_TARGET_ROOTFS_UBIFS=y
> >>> +BR2_TARGET_ROOTFS_UBIFS_LEBSIZE=0x1f000
> >>> +BR2_TARGET_ROOTFS_UBIFS_MINIOSIZE=0x800
> >>> +BR2_TARGET_ROOTFS_UBIFS_MAXLEBCNT=8112
> >>> +BR2_TARGET_ROOTFS_UBIFS_RT_LZO=y
> >>
> >>  This is the default, how come it appears in your defconfig?
> >>
> >>> +BR2_TARGET_ROOTFS_UBIFS_NONE=y
> >>
> >>  Same here.
> > 
> > Ok. I added it specifically. Will purge the defaults here.
> 
>  Well, it's not bad to add it explicitly, just in case the defaults change
> (though we try to avoid that) and to make it more explicit what choices you've made.
> 
> 
>  To avoid some of the feedback like I gave, it's good to already mention in the
> commit message what choices you've made and why.

Thank you very much for your feedback. I will try addressing all comments in my next
version.

- Sanchayan.

> 
> 
>  Regards,
>  Arnout
> 
> > 
> >>
> >>> +BR2_TARGET_ROOTFS_UBIFS_OPTS="--space-fixup"
> >>> +BR2_TARGET_ROOTFS_UBI=y
> >>> +BR2_TARGET_ROOTFS_UBI_PEBSIZE=0x20000
> >>> +BR2_TARGET_ROOTFS_UBI_SUBSIZE=2048
> >>> +BR2_TARGET_ROOTFS_UBI_OPTS=""
> >>>
> >>
> >>
> >>  We also like to have a readme file, in board/toradex/colibri/readme.txt, that
> >> explains how to get the images to the target. Particularly in this case because
> >> it's not simply a matter of putting it in an SD card. Look at other boards for
> >> examples.
> > 
> > Will add the same.
> > 
> > Thanks for your inputs and time Arnout.
> > 
> > - Sanchayan.
> > 
> >>
> >>  Regards,
> >>  Arnout
> >>
> >> -- 
> >> Arnout Vandecappelle                          arnout at mind be
> >> Senior Embedded Software Architect            +32-16-286500
> >> Essensium/Mind                                http://www.mind.be
> >> G.Geenslaan 9, 3001 Leuven, Belgium           BE 872 984 063 RPR Leuven
> >> LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
> >> GPG fingerprint:  7493 020B C7E3 8618 8DEC 222C 82EB F404 F9AC 0DDF
> 
> -- 
> Arnout Vandecappelle      arnout dot vandecappelle at essensium dot com
> Senior Embedded Software Architect . . . . . . +32-478-010353 (mobile)
> Essensium, Mind division . . . . . . . . . . . . . . http://www.mind.be
> G.Geenslaan 9, 3001 Leuven, Belgium . . . . . BE 872 984 063 RPR Leuven
> LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
> GPG fingerprint:  7493 020B C7E3 8618 8DEC 222C 82EB F404 F9AC 0DDF
> 

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2015-10-27  9:53 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-10-20  3:49 [Buildroot] [PATCH] configs: Add support for Toradex Colibri Vybrid modules Sanchayan Maity
2015-10-24 15:54 ` maitysanchayan at gmail.com
2015-10-26 19:59 ` Arnout Vandecappelle
2015-10-27  3:42   ` maitysanchayan at gmail.com
2015-10-27  9:41     ` Arnout Vandecappelle
2015-10-27  9:53       ` maitysanchayan at gmail.com

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox