diff options
author | Rod Whitby <rod@whitby.id.au> | 2007-02-12 05:51:00 +0000 |
---|---|---|
committer | Rod Whitby <rod@whitby.id.au> | 2007-02-12 05:51:00 +0000 |
commit | 78a8f7905503336c0bcdb8def6f190b009d9c9e4 (patch) | |
tree | 04ed08a0164cd308fb4055a8e7a2505d037b063f | |
parent | 93421f8375dee985c4aab983d172e90684465c5a (diff) |
ixp4xx-kernel: Modified to use arm-kernel-shim instead of hard-coded devio incantations
-rw-r--r-- | packages/linux/ixp4xx-kernel.inc | 43 | ||||
-rw-r--r-- | packages/linux/ixp4xx-kernel_2.6.19.bb | 15 | ||||
-rw-r--r-- | packages/linux/ixp4xx-kernel_2.6.20.bb | 15 |
3 files changed, 23 insertions, 50 deletions
diff --git a/packages/linux/ixp4xx-kernel.inc b/packages/linux/ixp4xx-kernel.inc index 3a80703420..d848427921 100644 --- a/packages/linux/ixp4xx-kernel.inc +++ b/packages/linux/ixp4xx-kernel.inc @@ -26,6 +26,8 @@ SECTION = "kernel" DESCRIPTION = "Linux kernel for the Intel IXP4xx device" LICENSE = "GPL" +DEPENDS = "arm-kernel-shim devio-native" + # Linux kernel source has the general form linux-X.Y.Z-patchP, # X.Y is the major version number, Z (which may have multiple # parts) is a sub-version and 'patch' is something like 'mm' or @@ -298,12 +300,8 @@ pkg_postrm_kernel-image-fsg3 () { update-alternatives --remove ${KERNEL_IMAGETYPE} /${KERNEL_IMAGEDEST}/${KERNEL_IMAGETYPE}-fsg3${SITEINFO_ENDIANESS}-${KERNEL_VERSION} || true } -#FIXUP: the correct instructions to copy the kernel prepended with the le fixup -#FIXME: do a fixup for BE too... -FIXUP_armeb = "cp$" -FIXUP_arm = "wb 0xee110f10,4;wb 0xe3c00080,4;wb 0xee010f10,4;xp $,4" - -DEPENDS += "devio-native" +BYTESWAP_armeb = "cp$" +BYTESWAP_arm = "xp $,4" # We need the alternatives to happen in the kernel-image packages, not in # the kernel package, because only the images know the name of the kernel. @@ -312,22 +310,23 @@ pkg_postinst_kernel () { pkg_postrm_kernel () { } -# copy_image <dest> <cmdline> <machine-id> +# copy_image <dest> <machine> # copy the zImage and append the appropriate shim # dest: where to copy to -# cmdline: command line to pass to image -# machine-id: decimal machine id to prepend, empty for none +# machine: machine shim to prepend, empty for none copy_image() { - local setmach + local shim - setmach="" - test -n "$2" && setmach="wb $2 . 256/ 255& 0xe3a01c00+, 4; wb 255& 0xe3811000+, 4;" + shim="/dev/null" + test -n "$2" && shim="${STAGING_LOADER_DIR}/arm-kernel-shim-$2.bin" - rm -f "$1".new - devio '<<${KERNEL_OUTPUT}' >"$1".new "$setmach"'${FIXUP}' || { + rm -f "$1".new "$1".shimmed + cat $shim ${KERNEL_OUTPUT} > "$1".shimmed + devio '<<'"$1"'.shimmed' >"$1".new '${BYTESWAP}' || { echo 'ERROR: ${KERNEL_OUTPUT}: failed to copy zImage' >&2 return 1 } + rm -f "$1".shimmed mv "$1".new "$1" } @@ -342,10 +341,10 @@ do_install_append() { install_image '${MACHINE_ARCH}' # Add the machine specific images, with appropriate suffixes - install_image 'nslu2${SITEINFO_ENDIANESS}' '${nslu2_MACHID}' - install_image 'nas100d${SITEINFO_ENDIANESS}' '${nas100d_MACHID}' - install_image 'dsmg600${SITEINFO_ENDIANESS}' '${dsmg600_MACHID}' - install_image 'fsg3${SITEINFO_ENDIANESS}' '${fsg3_MACHID}' + install_image 'nslu2${SITEINFO_ENDIANESS}' 'nslu2' + install_image 'nas100d${SITEINFO_ENDIANESS}' 'nas100d' + install_image 'dsmg600${SITEINFO_ENDIANESS}' 'dsmg600' + install_image 'fsg3${SITEINFO_ENDIANESS}' 'fsg3' } do_deploy[dirs] = "${S}" @@ -359,10 +358,10 @@ do_deploy() { deploy_image '${MACHINE_ARCH}' # And the machine specific images - deploy_image 'nslu2${SITEINFO_ENDIANESS}' '${nslu2_MACHID}' - deploy_image 'nas100d${SITEINFO_ENDIANESS}' '${nas100d_MACHID}' - deploy_image 'dsmg600${SITEINFO_ENDIANESS}' '${dsmg600_MACHID}' - deploy_image 'fsg3${SITEINFO_ENDIANESS}' '${fsg3_MACHID}' + deploy_image 'nslu2${SITEINFO_ENDIANESS}' 'nslu2' + deploy_image 'nas100d${SITEINFO_ENDIANESS}' 'nas100d' + deploy_image 'dsmg600${SITEINFO_ENDIANESS}' 'dsmg600' + deploy_image 'fsg3${SITEINFO_ENDIANESS}' 'fsg3' } addtask deploy before do_build after do_compile diff --git a/packages/linux/ixp4xx-kernel_2.6.19.bb b/packages/linux/ixp4xx-kernel_2.6.19.bb index f10af6c050..eba9d6a404 100644 --- a/packages/linux/ixp4xx-kernel_2.6.19.bb +++ b/packages/linux/ixp4xx-kernel_2.6.19.bb @@ -6,7 +6,7 @@ # http://trac.nslu2-linux.org/kernel/ # # The revision that is pulled from SVN is specified below -IXP4XX_KERNEL_SVN_REV = "683" +IXP4XX_KERNEL_SVN_REV = "693" # # The directory containing the patches to be applied is # specified below @@ -23,16 +23,3 @@ require ixp4xx-kernel-svnpatch.inc SRC_URI += "file://defconfig" SRC_URI += "file://series" - -# Remove the specific cmdline hacking patches if we are not building for nslu2. -addtask remove_cmdline_hacks before do_patch after do_unpack -do_remove_cmdline_hacks() { - -# if [ "${MACHINE}" != "nslu2" ] ; then - sed -e '/88-nas100d-dflt-cmdline.patch/d' \ - -e '/88-nslu2-dflt-cmdline.patch/d' \ - '${WORKDIR}/series' > '${WORKDIR}/series.new' - mv '${WORKDIR}/series.new' '${WORKDIR}/series' -# fi - -} diff --git a/packages/linux/ixp4xx-kernel_2.6.20.bb b/packages/linux/ixp4xx-kernel_2.6.20.bb index 6fd1330cbd..2e768b133b 100644 --- a/packages/linux/ixp4xx-kernel_2.6.20.bb +++ b/packages/linux/ixp4xx-kernel_2.6.20.bb @@ -6,7 +6,7 @@ # http://trac.nslu2-linux.org/kernel/ # # The revision that is pulled from SVN is specified below -IXP4XX_KERNEL_SVN_REV = "686" +IXP4XX_KERNEL_SVN_REV = "693" # # The directory containing the patches to be applied is # specified below @@ -23,16 +23,3 @@ require ixp4xx-kernel-svnpatch.inc SRC_URI += "file://defconfig" SRC_URI += "file://series" - -# Remove the specific cmdline hacking patches if we are not building for nslu2. -addtask remove_cmdline_hacks before do_patch after do_unpack -do_remove_cmdline_hacks() { - - if [ "${MACHINE}" != "nslu2" ] ; then - sed -e '/88-nas100d-dflt-cmdline.patch/d' \ - -e '/88-nslu2-dflt-cmdline.patch/d' \ - '${WORKDIR}/series' > '${WORKDIR}/series.new' - mv '${WORKDIR}/series.new' '${WORKDIR}/series' - fi - -} |