From: "Jérôme Pouiller" <jezz@sysmic.org>
To: buildroot@busybox.net
Subject: [Buildroot] How transfer what image(s) to target-CF?
Date: Mon, 28 Apr 2014 16:25:21 +0200 [thread overview]
Message-ID: <5293482.NlRU5sky3t@sagittea> (raw)
In-Reply-To: <CAEzGmjByYAXYo2bbnKqRcu4nzJfjbEz8ZsaiB_MdSNQgDs2M3Q@mail.gmail.com>
On Monday 28 April 2014 14:33:19 Lennart Ramberg wrote:
> On Sun, Apr 27, 2014 at 9:39 PM, Bj?rn Kirchner <bjoern@am-soft.de> wrote:
> > The instructions refered to grub-legacy. I thougt you would use
> > grub-legacy because you wrote you could not select grub2.
> > In buildroot 2013.08 there is a /sbin/grub in the rootfs image,
> > if in the .config "BR2_TARGET_GRUB=y" is set. But there is no
> > "BR2_TARGET_GRUB_FS_EXT2" in my .config.
>
> Hi Bj?rn,
> Yes, I am talking about grub-legacy only.
>
> Maybe I should wait for grub2. Is that to be expected in the next stable
> release, anyone?
I did not check how it work exactly with grub-legacy. However, I can
give you my recipe to get full disk image using grub2:
* First cherry-pick c24fdb3 to get support of grub2 (I also work in
2014.02 and I had no problem to backport this commit)
* Select BR2_PACKAGE_HOST_GENIMAGE, BR2_TARGET_GRUB2 and
BR2_TARGET_ROOTFS_EXT2 in your configuration
* Add a boot/grub/grub.cfg to your overlay (you may also embed it in
grub, but i have some issues with that)
* Add a configuration file for host-genimage:
genimage.cfg:
-----------8<--------------------------------8<------------------------
image hdimg.img {
hdimage {
align = 1M
}
partition boot {
in-partition-table = "no"
image = "boot.img"
offset = 0
size = 512
}
partition grub {
in-partition-table = "no"
image = "grub.img"
offset = 512
}
partition root {
# size = 1G
partition-type = 0x83
image = "rootfs.ext2"
}
}
config {
outputpath = images
inputpath = images
#rootpath = target
rootpath = empty
tmppath = tmp
}
---------->8------------------------------->8--------------------------
* Add a BR2_ROOTFS_POST_IMAGE_SCRIPT to create boot.img, grub.img[1]
and final image:
postimage.sh:
-----------8<--------------------------------8<------------------------
#!/bin/bash
BOARD_DIR=$(dirname $(readlink -f $0))
IMAGE_DIR=$(readlink -f $1)
HOST_DIR=$(readlink -f $2)
PATH=$HOST_DIR/usr/bin:$HOST_DIR/host/usr/sbin:$PATH
cp $HOST_DIR/usr/lib/grub/i386-pc/boot.img $IMAGE_DIR
grub-mkimage -d $HOST_DIR/usr/lib/grub/i386-pc -O i386-pc -o
$IMAGE_DIR/grub.img -p "(hd0,msdos1)/boot/grub" boot linux ext2 fat part_msdos
normal biosdisk help ls minicmd serial
pushd $IMAGE_DIR/..
mkdir -p empty
genimage --config $BOARD_DIR/genimage.cfg || exit 1
popd
---------->8------------------------------->8--------------------------
* In order to pass path of boot.img to this script, you also have to
set BR2_ROOTFS_POST_SCRIPT_ARGS="$(HOST_DIR)"
[1] Buildroot automatically generate grub.img. However, it looks like
it is necessary to force a specific prefix (-p option) in order to have
a bootable image.
--
J?r?me Pouiller, Sysmic
Embedded Linux specialist
http://www.sysmic.fr
next prev parent reply other threads:[~2014-04-28 14:25 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-04-23 13:42 [Buildroot] How transfer what image(s) to target-CF? Lennart Ramberg
2014-04-23 15:33 ` Arnout Vandecappelle
2014-04-24 10:07 ` Lennart Ramberg
2014-04-24 21:44 ` Arnout Vandecappelle
2014-04-25 18:37 ` Lennart Ramberg
2014-04-25 18:53 ` Arnout Vandecappelle
2014-04-25 21:42 ` Lennart Ramberg
2014-04-26 7:23 ` Björn Kirchner
2014-04-27 16:37 ` Lennart Ramberg
2014-04-27 19:39 ` Björn Kirchner
2014-04-28 12:33 ` Lennart Ramberg
2014-04-28 14:25 ` Jérôme Pouiller [this message]
[not found] ` <25917145.tTrImWgKe2@sagittea>
2014-04-28 14:27 ` Jérôme Pouiller
2014-05-05 9:01 ` Lennart Ramberg
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=5293482.NlRU5sky3t@sagittea \
--to=jezz@sysmic.org \
--cc=buildroot@busybox.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox