[Buildroot] [PATCH 1/2] Updated the Beaglebone configuration:

Chris LaRocque clarocq at gmail.com
Tue Jan 5 01:12:26 UTC 2016


On Jan 4, 2016 18:39, "Arnout Vandecappelle" <arnout at mind.be> wrote:
>
>  Hi Chris,
>
>  The subject line of your patch should be something like:
>
> configs: beaglebone: update kernel and uboot
>
> On 03-01-16 22:01, Chris LaRocque wrote:
> > From: Chris LaRocque <clarocq at L-Desktop.blhome.net>
> >
> > Changed to Kernel from Beagleboard.org 4.1.13-ti-r36.
> > added uboot 2015.10 patches from
https://github.com/eewiki/u-boot-patches/blob/master/v2015.10/0001-am335x_evm-uEnv.txt-bootz-n-fixes.patch
> > Changed to the beagloeboard.org patched DTC from
https://github.com/RobertCNelson/dtc.git bb.org-4.1-dt-overlays5
>
>  The commit message should be wrapped at 72 columns.
>
>  Also no need to quote the full URLs here, they're mentioned in the files
below.
> So the commit message could be something like:
>
> configs: beaglebone: update kernel and uboot
>
> Changed to linux 4.1.13-ti-r36 from beagleboard.org. Remove the no longer
> applicable linux patch.
>
> Changed to uboot 2015.10 and added a patch from eewiki.
>
> Patch dtc to the beagleboard.org version.
>
> Update kernel config to use in-tree bb.org_defconfig with config
fragments.
>
>
> [See below for an explanation of the last two sentences.]
>
> >
> > Signed-off-by: Chris LaRocque <clarocq at gmail.com>
> > ---
> >  board/beaglebone/linux-3.12.config                 | 251 -------
> >  ...cache-flush-management-symbols-when-MULTI.patch |  34 -
> >  .../0001-am335x_evm-uEnv.txt-bootz-n-fixes.patch   | 754
+++++++++++++++++++++
>
>  Instead of including the full patch here, it's probably better to set
>
> BR2_TARGET_UBOOT_PATCH="
https://github.com/eewiki/u-boot-patches/raw/master/v2015.10/0001-am335x_evm-uEnv.txt-bootz-n-fixes.patch
"
>
>
> >  board/beaglebone/uEnv.txt                          |  14 +-
> >  configs/beaglebone_defconfig                       |  43 +-
> >  package/dtc/Config.in                              |   2 +-
> >  package/dtc/Config.in.host                         |   2 +-
> >  package/dtc/dtc.hash                               |   2 -
> >  package/dtc/dtc.mk                                 |   6 +-
>
>  This is not acceptable. This would change the DTC version for _all_
boards, not
> just the beagleboard. We're not going to want this. Instead, a
> beaglebone-specific patch should be added. What you should do is:
>
> 1. Set
>
> BR2_GLOBAL_PATCH_DIR=board/beaglebone/patches
>
>
> 2. Download the four final commits from
> https://github.com/pantoniou/dtc/commits/dt-overlays5
> as four separate patch files in board/beaglebone/patches/dtc. Make sure
they are
> numbered 0001-... like the output of git-format-patch.
>
>
>  Now when you build the dtc for beaglebone, the overlays patches will be
applied
> to it. Note: I haven't tested if there is a conflict between these
patches and
> the one we have in package/dtc/. If that is the case, you'll have to
rework the
> overlay patches to solve the conflict.
>
>
>  BTW, if it would have been OK to modify the dtc package itself, then that
> should have been a separate patch.
>
> >  9 files changed, 804 insertions(+), 304 deletions(-)
> >  delete mode 100644 board/beaglebone/linux-3.12.config
> >  delete mode 100644
board/beaglebone/patches/linux/linux-0001-arm-Export-cache-flush-management-symbols-when-MULTI.patch
> >  create mode 100644
board/beaglebone/patches/uboot/0001-am335x_evm-uEnv.txt-bootz-n-fixes.patch
> >  delete mode 100644 package/dtc/dtc.hash
>
> [snip]
>
> > diff --git a/board/beaglebone/uEnv.txt b/board/beaglebone/uEnv.txt
> > index e09fff5..b6de9ff 100644
> > --- a/board/beaglebone/uEnv.txt
> > +++ b/board/beaglebone/uEnv.txt
> > @@ -1,3 +1,13 @@
> > -bootpart=0:1
> >  bootdir=
> > -uenvcmd=run loadimage;run loadramdisk;run findfdt;run loadfdt;run
ramboot
> > +bootfile=zImage
> > +fdtfile=am335x-boneblack.dtb
> > +loadaddr=0x80007fc0
> > +fdtaddr=0x80F80000
>
>  Aren't the defaults for these two OK?
>
> > +loadfdt=fatload mmc 0:1 ${fdtaddr} ${fdtfile}
> > +loaduimage=fatload mmc 0:1 ${loadaddr} ${bootfile}
>
>  Minor nit: you're loading a zImage, not a uImage, so calling it
loaduimage is
> weird. Just call it loadimage like in the default environment.
>
> > +console=ttyO0,115200n8
> > +mmcroot=/dev/mmcblk0p2
> > +mmcrootfstype=ext2
> > +uenvcmd=mmc rescan; run loaduimage; run loadfdt; run fdtboot
> > +fdtboot=run mmc_args; run mmcargs; bootz ${loadaddr} - ${fdtaddr}
>
>  I don't think there's an mmcargs environment variable.
>
> > +mmc_args=setenv bootargs console=${console} ${optargs} root=${mmcroot}
rw rootfstype=${mmcrootfstype} rootwait
> > diff --git a/configs/beaglebone_defconfig b/configs/beaglebone_defconfig
> > index ddb583c..dea34d9 100644
> > --- a/configs/beaglebone_defconfig
> > +++ b/configs/beaglebone_defconfig
> > @@ -1,14 +1,33 @@
> >  # architecture
>
>  There are a bunch of things here that you copied from the .config file
but that
> actually aren't necessary (they're not even user-visible options so
they'll be
> completely ignored). You only need to explicitly set some options that are
> removed by 'make defconfig' because they are default, not the hidden
options.
>
> > +BR2_ARCH_HAS_MMU_OPTIONAL=y
>
>  This one.
>
> >  BR2_arm=y
> > +BR2_ARCH="arm"
> > +BR2_ENDIAN="LITTLE"
> > +BR2_GCC_TARGET_ABI="aapcs-linux"
> > +BR2_GCC_TARGET_CPU="cortex-a8"
> > +BR2_GCC_TARGET_FPU="neon"
> > +BR2_GCC_TARGET_FLOAT_ABI="hard"
> > +BR2_GCC_TARGET_MODE="arm"
> > +BR2_ARCH_HAS_ATOMICS=y
> > +BR2_BINFMT_SUPPORTS_SHARED=y
> > +BR2_BINFMT_ELF=y
> > +BR2_ARM_CPU_HAS_NEON=y
> > +BR2_ARM_CPU_HAS_VFPV2=y
> > +BR2_ARM_CPU_HAS_VFPV3=y
> > +BR2_ARM_CPU_HAS_ARM=y
> > +BR2_ARM_CPU_HAS_THUMB2=y
> > +BR2_ARM_CPU_ARMV7A=y
>
>  Everything above except BR2_arm=y
>
> >  BR2_cortex_a8=y
> >  BR2_ARM_EABIHF=y
> > +BR2_ARM_FPU_NEON=y
>
>  This is bad, because it might break some packages (at runtime) because of
> non-IEEE-754 arithmetic).
>
> > +BR2_ARM_INSTRUCTIONS_ARM=y
>
>  This one can also be removed.
>
> >
> >  # system
> >  BR2_TARGET_GENERIC_HOSTNAME="beaglebone"
> >  BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_DEVTMPFS=y
> > -BR2_TARGET_GENERIC_GETTY_PORT="ttyO0"
> > +BR2_TARGET_GENERIC_GETTY_PORT="ttyS0"
> >  # BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW is not set
> > -BR2_ROOTFS_POST_IMAGE_SCRIPT="board/beaglebone/post-image.sh"
> > +BR2_ROOTFS_POST_IMAGE_SCRIPT="board/measbone/post-image.sh"
>
>  The measbone directory doesn't exist. Did you actually test this with a
clean
> repository?
>
> >
> >  # filesystem
> >  BR2_PACKAGE_AM33X_CM3=y
> > @@ -17,14 +36,17 @@ BR2_TARGET_ROOTFS_EXT2=y
> >
> >  # lock down headers to avoid breaking with new defaults
> >  BR2_KERNEL_HEADERS_VERSION=y
> > -BR2_DEFAULT_KERNEL_VERSION="3.12.10"
> > -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_3_12=y
> > +BR2_DEFAULT_KERNEL_VERSION="4.1.13"
> > +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_1=y
> > +BR2_DEFAULT_KERNEL_HEADERS="4.1.13"
>
>  This one should be removed too.
>
> >
> >  # bootloader
> >  BR2_TARGET_UBOOT=y
> >  BR2_TARGET_UBOOT_BOARDNAME="am335x_evm"
> > -BR2_TARGET_UBOOT_CUSTOM_VERSION=y
> > -BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2013.10"
> > +BR2_TARGET_UBOOT_LATEST_VERSION=y
>
>  No, it should remain a custom version, not the latest version.
>
> > +BR2_TARGET_UBOOT_VERSION="2015.10"
> > +BR2_TARGET_UBOOT_PATCH="$(TOPDIR)/board/beaglebone/patches/uboot/"
>
>  The $(TOPDIR) part should be removed. And if you set
BR2_GLOBAL_PATCH_DIR it's
> not even needed. And of course you can point directly to the patch to be
> downloaded instead of including it in buildroot.
>
> > +BR2_TARGET_UBOOT_NEEDS_DTC=y
> >  BR2_TARGET_UBOOT_FORMAT_IMG=y
> >  BR2_TARGET_UBOOT_SPL=y
> >  BR2_TARGET_UBOOT_SPL_NAME="MLO"
> > @@ -32,11 +54,12 @@ BR2_TARGET_UBOOT_SPL_NAME="MLO"
> >  # kernel
> >  BR2_LINUX_KERNEL=y
> >  BR2_LINUX_KERNEL_CUSTOM_GIT=y
> > -BR2_LINUX_KERNEL_CUSTOM_REPO_URL="git://
git.ti.com/ti-linux-kernel/ti-linux-kernel.git"
> >
-BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="7f280334068b7c875ade51f8f3921ab311f0c824"
> > -BR2_LINUX_KERNEL_PATCH="board/beaglebone/patches/linux/"
> > +BR2_LINUX_KERNEL_CUSTOM_REPO_URL="
https://github.com/beagleboard/linux.git"
> > +BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="4.1.13-ti-r36"
> > +BR2_LINUX_KERNEL_PATCH="board/measbone/patches/linux/"
>
>  measbone still doesn't exist, and anyway no linux patch should be needed
> anymore, so leave this out completely.
>
>
> >  BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
> >
-BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/beaglebone/linux-3.12.config"
> >
+BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(TOPDIR)/output/build/linux-4.1.13-ti-r36/arch/arm/configs/bb.org_defconfig"
>
>  You should instead set BR2_LINUX_KERNEL_USE_DEFCONFIG=y and
> BR2_LINUX_KERNEL_DEFCONFIG="bb.org"
>
>  Also, you should set
>
>
BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="board/beaglebone/linux-4.1.config-fragment"
>
> and of course create that file (see my comments in the next patch).
>
> >  BR2_LINUX_KERNEL_ZIMAGE=y
> >  BR2_LINUX_KERNEL_DTS_SUPPORT=y
> > +BR2_LINUX_KERNEL_USE_INTREE_DTS=y
> >  BR2_LINUX_KERNEL_INTREE_DTS_NAME="am335x-bone am335x-boneblack"
>
> [snip]
>
>
>  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

Thanks Arnout

I'll review, revise, and resubmit.

Regards

Chris

Pushing back the boundaries of ignorance
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20160104/33321a48/attachment.html>


More information about the buildroot mailing list