[ELDK] [PATCH 1/3] m28evk-specific-support

Wolfgang Denk wd at denx.de
Fri Oct 18 10:15:59 CEST 2013


Hallo Lothar,

In message <1379077965-6435-2-git-send-email-l.rubusch at gmx.ch> you wrote:
> m28evk support:
> linux-eldk 3.8; sdcard image with u-boot, uImage / FDT and rootfs (ext);
> elftosb; a patch for a corresponding u-boot m28evk.h and settings for mkimage
> (native)
...

> diff --git a/meta-eldk/recipes-bsp/uboot/u-boot-mkimage_2013.07.bb b/meta-eldk/recipes-bsp/uboot/u-boot-mkimage_2013.07.bb
> index 9545166..a4bf1ad 100644
> --- a/meta-eldk/recipes-bsp/uboot/u-boot-mkimage_2013.07.bb
> +++ b/meta-eldk/recipes-bsp/uboot/u-boot-mkimage_2013.07.bb
...
> -LIC_FILES_CHKSUM = "file://COPYING;md5=1707d6db1d42237583f50183a5651ecb \
> -                    file://README;beginline=1;endline=22;md5=78b195c11cb6ef63e6985140db7d7bab"
> -SECTION = "bootloader"
> +LIC_FILES_CHKSUM = "file://COPYING;md5=1707d6db1d42237583f50183a5651ecb"

Warum hast Du hier die Prüfung des  file://README  rausgemacht?


>  PR = "r1"
> +SECTION = "bootloader"
> +PV = "v2013.07+git${SRCPV}"
>  
> +# future repository
> +SRCREV = "68c517eafcb060aa8ef92ed2620f0f41c5275d89"
>  # This revision corresponds to the tag "v2013.07"
>  # We use the revision in order to avoid having to fetch it from the repo during parse
> -SRCREV = "62c175fbb8a0f9a926c88294ea9f7e88eb898f6c"
> +#SRCREV = "62c175fbb8a0f9a926c88294ea9f7e88eb898f6c"

Sehe ich das richtig, daß damit für ALLE Konfigurationen eine neue
U-Boot-Version verwendet wird?

Was bedeutet der Kommentar "future repository" ?

> -EXTRA_OEMAKE = 'CROSS_COMPILE="${TARGET_PREFIX}" HOSTCC="${CC}" HOSTLD="${LD}" HOSTLDFLAGS="${LDFLAGS}" HOSTSTRIP=true'
> +## native and always
> +EXTRA_OEMAKE += ' CROSS_COMPILE="${TARGET_PREFIX}" HOSTCC="${CC}" HOSTLD="${LD}" HOSTLDFLAGS="${LDFLAGS}" HOSTSTRIP=true'
> +## ...but has to be native for m28evk (...)
> +EXTRA_OEMAKE += ' CONFIG_MX28=y'

Diese Abhängigkeit von einer speziellen MACHINE hier gefällt mir
nicht.  Wozu genau wird das gebraucht?  Marek ist ja der meinung, das
"EXTRA_OEMAKE +=" sei in em Falle falsch, es müsse immer ein '=' und
kein '+=' sein?

Und was genau ist CONFIG_MX28 ?  Wo kommt das her? Wer benutzt das?

>  do_compile () {
>    oe_runmake tools
> @@ -25,5 +30,7 @@ do_compile () {
>  
>  do_install () {
>    install -d ${D}${bindir}
> +  install -m 0755 tools/mxsboot ${D}${bindir}/uboot-mxsboot
>    install -m 0755 tools/mkimage ${D}${bindir}/mkimage
> +  ln -sf uboot-mxsboot ${D}${bindir}/mxsboot

Brauchen wir den Namen "uboot-mxsboot" irgendwo?  Ich würde den gern
weglassen...


> diff --git a/meta-eldk/recipes-bsp/uboot/u-boot_2013.07.bb b/meta-eldk/recipes-bsp/uboot/u-boot_2013.07.bb
> index cfa5e1f..30a38a6 100644
> --- a/meta-eldk/recipes-bsp/uboot/u-boot_2013.07.bb
> +++ b/meta-eldk/recipes-bsp/uboot/u-boot_2013.07.bb
...
>  PR = "r1"
>  PV = "v2013.07+git${SRCPV}"
> @@ -12,8 +15,15 @@ PV = "v2013.07+git${SRCPV}"
>  # We use the revision in order to avoid having to fetch it from the repo during parse
>  SRCREV = "62c175fbb8a0f9a926c88294ea9f7e88eb898f6c"
>  
> +## "68c517eafcb060aa8ef92ed2620f0f41c5275d89" corresponds to "v2013.07-rc3"
> +SRCREV_m28evk = "68c517eafcb060aa8ef92ed2620f0f41c5275d89"

Um... wir nehmen also gar nicht v2013.07, sondern nur -rc3 ?  Und as
nun für ALLE Konfigurationen?  Das schmeckt mir nicht.  eigentlich
sollten der Support für M28EVK und M53EVK ein reines Add-On sein, also
alles anderen Konfigurationen komplett unverändert lassen.  Kann man
das nicht erreichen?


> diff --git a/meta-eldk/recipes-kernel/linux/linux-eldk_3.8.bb b/meta-eldk/recipes-kernel/linux/linux-eldk_3.8.bb
> index 16d8d64..d454c6c 100644
> --- a/meta-eldk/recipes-kernel/linux/linux-eldk_3.8.bb
> +++ b/meta-eldk/recipes-kernel/linux/linux-eldk_3.8.bb
...
> -LINUX_VERSION ?= "3.8"
> -#LINUX_VERSION_EXTENSION ?= "-custom"
> +PR = "r1"
...
> +LINUX_VERSION ?= "3.8"
> +LINUX_VERSION_EXTENSION ?= "-custom"

Das "-custom" wollen wir eigentlich gar nicht haben...

> -COMPATIBLE_MACHINE = "generic-armv4t|generic-armv5te|generic-armv6|generic-armv7a|generic-armv7a-hf|generic-mips|generic-powerpc|generic-powerpc-softfloat|generic-powerpc-4xx|generic-powerpc-4xx-softfloat|generic-powerpc-e500v2"
> +SRC_URI = "git://kernel.ubuntu.com/ubuntu/linux.git;protocol=git   \
> +	   file://defconfig"
> +
> +COMPATIBLE_MACHINE = "generic-armv4t|generic-armv5te|generic-armv6|generic-armv7a|generic-armv7a-hf|generic-mips|generic-powerpc|generic-powerpc-softfloat|generic-powerpc-4xx|generic-powerpc-4xx-softfloat|generic-powerpc-e500v2|m28evk"
> +
> +
> +## m28evk specific settings
> +SRC_URI_m28evk = "git://kernel.ubuntu.com/ubuntu/linux.git;protocol=git   \
> +	   file://0001-ARM-video-mxs-Fix-mxsfb-misconfiguring-VDCTRL0.patch \
> +	   file://0002-iio-mxs-Remove-unused-struct-mxs_lradc_chan.patch \
> +	   file://0003-iio-mxs-Implement-support-for-touchscreen.patch \
> +	   file://0004-ARM-mxs-Enable-touchscreen-on-m28evk.patch \
> +	   file://defconfig"
> +
> +do_compile_append_m28evk(){
> +    ## linux.inc copies Image to uImage if it is present, this may be a bug in linux.inc
> +    [[ -e ${WORKDIR}/git/arch/arm/boot/Image ]] && rm ${WORKDIR}/git/arch/arm/boot/Image
> +}

Ich glaube, ich hatte das schon einmal gefragt: diese MACHINE-spezifi-
schen Dinge kann man nicht irgendwo in einem MACHINE-spezifischen File
(evtl. einem .bbappend ?) halten?  Ich sehe das Problem, daß das so
nicht skaliert - stell Dir vor, wir haben eines Tages 200 Boards in
der List, alle mit verschiedenen Anforderungen...

Viele Grüße,

Wolfgang Denk

-- 
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
Perl already has an IDE.  It's called Unix.
                      -- Tom Christiansen in 375bd509 at cs.colorado.edu


More information about the eldk mailing list