Message ID | 0a82214a34f519691ff795260820907a7a8b4cfc.1357394983.git.maxime.hadjinlian@gmail.com |
---|---|
State | Superseded |
Headers | show |
Maxime, All, On Saturday 05 January 2013 Maxime Hadjinlian wrote: > Introducing a package to install pre-built binaries for the bootloader and the > GPU firmware for the RaspberryPi board. > > Signed-off-by: Maxime Hadjinlian <maxime.hadjinlian@gmail.com> > --- > package/Config.in | 1 + > package/rpi-fw/Config.in | 9 +++++++++ > package/rpi-fw/cmdline.txt | 1 + > package/rpi-fw/config.txt | 7 +++++++ > package/rpi-fw/rpi-fw.mk | 22 ++++++++++++++++++++++ > 5 files changed, 40 insertions(+) > create mode 100644 package/rpi-fw/Config.in > create mode 100644 package/rpi-fw/cmdline.txt > create mode 100644 package/rpi-fw/config.txt > create mode 100644 package/rpi-fw/rpi-fw.mk > > diff --git a/package/Config.in b/package/Config.in > index 604ed1b..e21045f 100644 > --- a/package/Config.in > +++ b/package/Config.in > @@ -253,6 +253,7 @@ source "package/owl-linux/Config.in" > source "package/parted/Config.in" > source "package/pciutils/Config.in" > source "package/picocom/Config.in" > +source "package/rpi-fw/Config.in" We now have a menu dedicated to storing firmware-related packages: Hardware handling --> Misc firmwares > source "package/read-edid/Config.in" > source "package/rng-tools/Config.in" > source "package/sane-backends/Config.in" > diff --git a/package/rpi-fw/Config.in b/package/rpi-fw/Config.in > new file mode 100644 > index 0000000..4b5a1e8 > --- /dev/null > +++ b/package/rpi-fw/Config.in > @@ -0,0 +1,9 @@ > +config BR2_PACKAGE_RPI_FW > + bool "RaspberryPi Firmware" Today, this package is only used fior the RPI. But that GPU is not specific to the RPI, so what about calling that package "VideoCore bootloader" ? [--SNIP--] > diff --git a/package/rpi-fw/cmdline.txt b/package/rpi-fw/cmdline.txt > new file mode 100644 > index 0000000..010ee3f > --- /dev/null > +++ b/package/rpi-fw/cmdline.txt > @@ -0,0 +1 @@ > +dwc_otg.fiq_fix_enable=1 sdhci-bcm2708.sync_after_dma=0 dwc_otg.lpm_enable=0 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 rootwait This is typically a reason why I'd like to have a generic way to expressing the different filesystems tht form a sinlge firmware. Here, my root partition is *not* mmcblk0p2, it's p3. And the rootfstype is *not* ext4, it's ext2. But, I guess we'll have to live with that commandline for now... :-/ Maybe you could just omit the root settings (or replace them with place- holders: root=/dev/XXXX rootfstype=XXXX). Of course, that will depend on the maintainer's opinion. ;-) > diff --git a/package/rpi-fw/config.txt b/package/rpi-fw/config.txt > new file mode 100644 > index 0000000..ab9f7ff > --- /dev/null > +++ b/package/rpi-fw/config.txt > @@ -0,0 +1,7 @@ > +arm_freq=700 > +core_freq=250 > +disable_overscan=1 > +gpu_mem_256=100 > +gpu_mem_512=100 > +sdram_freq=400 > +over_voltage=0 > diff --git a/package/rpi-fw/rpi-fw.mk b/package/rpi-fw/rpi-fw.mk > new file mode 100644 > index 0000000..e7b8674 > --- /dev/null > +++ b/package/rpi-fw/rpi-fw.mk > @@ -0,0 +1,22 @@ > +############################################################# > +# > +# rpi-fw > +# > +############################################################# > +RPI_FW_VERSION = 76d0ac38f16b6343c6155c80db1e4758b3a5838a > +RPI_FW_SITE = http://github.com/raspberrypi/firmware/tarball/master > +RPI_FW_LICENSE = FOSS It's a BSD-3c. > +RPI_FW_LICENSE_FILE = LICENCE.broadcom It's in boot/LICENCE.broadcom > +RPI_FW_INSTALL_STAGING = NO Not needed, that's the default. > +define RPI_FW_INSTALL_TARGET_CMDS > + $(INSTALL) -D -m 0644 $(@D)/boot/bootcode.bin $(TARGET_DIR)/boot/ > + $(INSTALL) -D -m 0644 $(@D)/boot/start.elf $(TARGET_DIR)/boot/ > + $(INSTALL) -D -m 0644 $(@D)/boot/start_cd.elf $(TARGET_DIR)/boot/ Is it necessary to have both the normal (start.elf) and the cut-down (start_cd.elf) versions at the same time? I can't find a reason to have both. > + $(INSTALL) -D -m 0644 $(@D)/boot/fixup.dat $(TARGET_DIR)/boot/ > + $(INSTALL) -D -m 0644 $(@D)/boot/fixup_cd.dat $(TARGET_DIR)/boot/ > + $(INSTALL) -D -m 0644 package/rpi-fw/cmdline.txt $(TARGET_DIR)/boot/ > + $(INSTALL) -D -m 0644 package/rpi-fw/config.txt $(TARGET_DIR)/boot/ > +endef > + > +$(eval $(generic-package)) Regards, Yann E. MORIN.
On 5 January 2013 14:10, Maxime Hadjinlian <maxime.hadjinlian@gmail.com> wrote: > diff --git a/package/rpi-fw/config.txt b/package/rpi-fw/config.txt > new file mode 100644 > index 0000000..ab9f7ff > --- /dev/null > +++ b/package/rpi-fw/config.txt > @@ -0,0 +1,7 @@ > +arm_freq=700 > +core_freq=250 > +disable_overscan=1 > +gpu_mem_256=100 > +gpu_mem_512=100 > +sdram_freq=400 > +over_voltage=0 It's not clear to me that you want a config.txt at all, but if you are going to add one I'm not sure it's appropriate to overclock the sdram by default. > +############################################################# > +RPI_FW_VERSION = 76d0ac38f16b6343c6155c80db1e4758b3a5838a > +RPI_FW_SITE = http://github.com/raspberrypi/firmware/tarball/master > +RPI_FW_LICENSE = FOSS > +RPI_FW_LICENSE_FILE = LICENCE.broadcom The license is straight-forward and allows redistribution with no strings attached, but is not a FOSS license. Regards, Alex
On Sat, Jan 5, 2013 at 4:52 PM, Alex Bradbury <asb@asbradbury.org> wrote: > On 5 January 2013 14:10, Maxime Hadjinlian <maxime.hadjinlian@gmail.com> wrote: >> diff --git a/package/rpi-fw/config.txt b/package/rpi-fw/config.txt >> new file mode 100644 >> index 0000000..ab9f7ff >> --- /dev/null >> +++ b/package/rpi-fw/config.txt >> @@ -0,0 +1,7 @@ >> +arm_freq=700 >> +core_freq=250 >> +disable_overscan=1 >> +gpu_mem_256=100 >> +gpu_mem_512=100 >> +sdram_freq=400 >> +over_voltage=0 > > It's not clear to me that you want a config.txt at all, but if you are > going to add one I'm not sure it's appropriate to overclock the sdram > by default. The sdram is not over clocked, according to this page : http://elinux.org/RPiconfig The default is 400Mhz. > >> +############################################################# >> +RPI_FW_VERSION = 76d0ac38f16b6343c6155c80db1e4758b3a5838a >> +RPI_FW_SITE = http://github.com/raspberrypi/firmware/tarball/master >> +RPI_FW_LICENSE = FOSS >> +RPI_FW_LICENSE_FILE = LICENCE.broadcom > > The license is straight-forward and allows redistribution with no > strings attached, but is not a FOSS license. > I'll change the license, I was unable to find information that seemed valid. > Regards, > > Alex
On Sat, Jan 5, 2013 at 4:36 PM, Yann E. MORIN <yann.morin.1998@free.fr> wrote: > Maxime, All, > > On Saturday 05 January 2013 Maxime Hadjinlian wrote: >> Introducing a package to install pre-built binaries for the bootloader and the >> GPU firmware for the RaspberryPi board. >> >> Signed-off-by: Maxime Hadjinlian <maxime.hadjinlian@gmail.com> >> --- >> package/Config.in | 1 + >> package/rpi-fw/Config.in | 9 +++++++++ >> package/rpi-fw/cmdline.txt | 1 + >> package/rpi-fw/config.txt | 7 +++++++ >> package/rpi-fw/rpi-fw.mk | 22 ++++++++++++++++++++++ >> 5 files changed, 40 insertions(+) >> create mode 100644 package/rpi-fw/Config.in >> create mode 100644 package/rpi-fw/cmdline.txt >> create mode 100644 package/rpi-fw/config.txt >> create mode 100644 package/rpi-fw/rpi-fw.mk >> >> diff --git a/package/Config.in b/package/Config.in >> index 604ed1b..e21045f 100644 >> --- a/package/Config.in >> +++ b/package/Config.in >> @@ -253,6 +253,7 @@ source "package/owl-linux/Config.in" >> source "package/parted/Config.in" >> source "package/pciutils/Config.in" >> source "package/picocom/Config.in" >> +source "package/rpi-fw/Config.in" > > We now have a menu dedicated to storing firmware-related packages: > Hardware handling --> Misc firmwares I'll move it to that section. > >> source "package/read-edid/Config.in" >> source "package/rng-tools/Config.in" >> source "package/sane-backends/Config.in" >> diff --git a/package/rpi-fw/Config.in b/package/rpi-fw/Config.in >> new file mode 100644 >> index 0000000..4b5a1e8 >> --- /dev/null >> +++ b/package/rpi-fw/Config.in >> @@ -0,0 +1,9 @@ >> +config BR2_PACKAGE_RPI_FW >> + bool "RaspberryPi Firmware" > > Today, this package is only used fior the RPI. But that GPU is not specific > to the RPI, so what about calling that package "VideoCore bootloader" ? As this package is pre compiled binary, I prefer to have the specificity, nothing say that this would work on another board. > > [--SNIP--] >> diff --git a/package/rpi-fw/cmdline.txt b/package/rpi-fw/cmdline.txt >> new file mode 100644 >> index 0000000..010ee3f >> --- /dev/null >> +++ b/package/rpi-fw/cmdline.txt >> @@ -0,0 +1 @@ >> +dwc_otg.fiq_fix_enable=1 sdhci-bcm2708.sync_after_dma=0 dwc_otg.lpm_enable=0 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 rootwait > > This is typically a reason why I'd like to have a generic way to expressing > the different filesystems tht form a sinlge firmware. Here, my root partition > is *not* mmcblk0p2, it's p3. And the rootfstype is *not* ext4, it's ext2. > > But, I guess we'll have to live with that commandline for now... :-/ > > Maybe you could just omit the root settings (or replace them with place- > holders: root=/dev/XXXX rootfstype=XXXX). Of course, that will depend on > the maintainer's opinion. ;-) I agree that it's really not a perfect solution. I'm not sure about place-holders as it would require the user to fix the cmdline to have a working rootfs but we already know that a user will have to since there is a "mandatory" multiple partition. > >> diff --git a/package/rpi-fw/config.txt b/package/rpi-fw/config.txt >> new file mode 100644 >> index 0000000..ab9f7ff >> --- /dev/null >> +++ b/package/rpi-fw/config.txt >> @@ -0,0 +1,7 @@ >> +arm_freq=700 >> +core_freq=250 >> +disable_overscan=1 >> +gpu_mem_256=100 >> +gpu_mem_512=100 >> +sdram_freq=400 >> +over_voltage=0 >> diff --git a/package/rpi-fw/rpi-fw.mk b/package/rpi-fw/rpi-fw.mk >> new file mode 100644 >> index 0000000..e7b8674 >> --- /dev/null >> +++ b/package/rpi-fw/rpi-fw.mk >> @@ -0,0 +1,22 @@ >> +############################################################# >> +# >> +# rpi-fw >> +# >> +############################################################# >> +RPI_FW_VERSION = 76d0ac38f16b6343c6155c80db1e4758b3a5838a >> +RPI_FW_SITE = http://github.com/raspberrypi/firmware/tarball/master >> +RPI_FW_LICENSE = FOSS > > It's a BSD-3c. > >> +RPI_FW_LICENSE_FILE = LICENCE.broadcom > > It's in boot/LICENCE.broadcom > >> +RPI_FW_INSTALL_STAGING = NO > > Not needed, that's the default. > >> +define RPI_FW_INSTALL_TARGET_CMDS >> + $(INSTALL) -D -m 0644 $(@D)/boot/bootcode.bin $(TARGET_DIR)/boot/ >> + $(INSTALL) -D -m 0644 $(@D)/boot/start.elf $(TARGET_DIR)/boot/ >> + $(INSTALL) -D -m 0644 $(@D)/boot/start_cd.elf $(TARGET_DIR)/boot/ > > Is it necessary to have both the normal (start.elf) and the cut-down > (start_cd.elf) versions at the same time? I can't find a reason to have > both. > >> + $(INSTALL) -D -m 0644 $(@D)/boot/fixup.dat $(TARGET_DIR)/boot/ >> + $(INSTALL) -D -m 0644 $(@D)/boot/fixup_cd.dat $(TARGET_DIR)/boot/ >> + $(INSTALL) -D -m 0644 package/rpi-fw/cmdline.txt $(TARGET_DIR)/boot/ >> + $(INSTALL) -D -m 0644 package/rpi-fw/config.txt $(TARGET_DIR)/boot/ >> +endef >> + >> +$(eval $(generic-package)) > > Regards, > Yann E. MORIN. > > -- > .-----------------.--------------------.------------------.--------------------. > | Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: | > | +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ | > | +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no | > | http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. | > '------------------------------^-------^------------------^--------------------' >
On 5 January 2013 16:09, Maxime Hadjinlian <maxime.hadjinlian@gmail.com> wrote: > On Sat, Jan 5, 2013 at 4:52 PM, Alex Bradbury <asb@asbradbury.org> wrote: >> It's not clear to me that you want a config.txt at all, but if you are >> going to add one I'm not sure it's appropriate to overclock the sdram >> by default. > The sdram is not over clocked, according to this page : > http://elinux.org/RPiconfig > The default is 400Mhz. You are of course correct, my bad. Alex
Dear Yann E. MORIN, On Sat, 5 Jan 2013 16:36:51 +0100, Yann E. MORIN wrote: > > +++ b/package/rpi-fw/Config.in > > @@ -0,0 +1,9 @@ > > +config BR2_PACKAGE_RPI_FW > > + bool "RaspberryPi Firmware" > > Today, this package is only used fior the RPI. But that GPU is not specific > to the RPI, so what about calling that package "VideoCore bootloader" ? I am quite sure the start.elf code is Rasberry Pi specific, so I don't think this package is just a "VideoCore bootloader". > > +++ b/package/rpi-fw/cmdline.txt > > @@ -0,0 +1 @@ > > +dwc_otg.fiq_fix_enable=1 sdhci-bcm2708.sync_after_dma=0 dwc_otg.lpm_enable=0 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 rootwait > > This is typically a reason why I'd like to have a generic way to expressing > the different filesystems tht form a sinlge firmware. Here, my root partition > is *not* mmcblk0p2, it's p3. And the rootfstype is *not* ext4, it's ext2. > > But, I guess we'll have to live with that commandline for now... :-/ > > Maybe you could just omit the root settings (or replace them with place- > holders: root=/dev/XXXX rootfstype=XXXX). Of course, that will depend on > the maintainer's opinion. ;-) I would like to see a comment added in this file, which mentions this is only a sample command line, and we recommend to override it on a per-project basis using a post-build script. Thomas
Maxime, Thomas, All, On Saturday 05 January 2013 Thomas Petazzoni wrote: > Dear Yann E. MORIN, > > On Sat, 5 Jan 2013 16:36:51 +0100, Yann E. MORIN wrote: > > > > +++ b/package/rpi-fw/Config.in > > > @@ -0,0 +1,9 @@ > > > +config BR2_PACKAGE_RPI_FW > > > + bool "RaspberryPi Firmware" > > > > Today, this package is only used fior the RPI. But that GPU is not specific > > to the RPI, so what about calling that package "VideoCore bootloader" ? > > I am quite sure the start.elf code is Rasberry Pi specific, so I don't > think this package is just a "VideoCore bootloader". Right. > > > +++ b/package/rpi-fw/cmdline.txt > > > @@ -0,0 +1 @@ > > > +dwc_otg.fiq_fix_enable=1 sdhci-bcm2708.sync_after_dma=0 dwc_otg.lpm_enable=0 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 rootwait > > > > This is typically a reason why I'd like to have a generic way to expressing > > the different filesystems tht form a sinlge firmware. Here, my root partition > > is *not* mmcblk0p2, it's p3. And the rootfstype is *not* ext4, it's ext2. > > > > But, I guess we'll have to live with that commandline for now... :-/ > > > > Maybe you could just omit the root settings (or replace them with place- > > holders: root=/dev/XXXX rootfstype=XXXX). Of course, that will depend on > > the maintainer's opinion. ;-) > > I would like to see a comment added in this file, which mentions this > is only a sample command line, and we recommend to override it on a > per-project basis using a post-build script. I am not sure the bootloader knows how to parse comments in this file. Instead of installing it as 'cmdline.txt', what about installing it as 'cmdline-sample.txt' with the comment? Regards, Yann E. MORIN.
On Sat, Jan 5, 2013 at 9:00 PM, Yann E. MORIN <yann.morin.1998@free.fr> wrote: > Maxime, Thomas, All, > > On Saturday 05 January 2013 Thomas Petazzoni wrote: >> Dear Yann E. MORIN, >> >> On Sat, 5 Jan 2013 16:36:51 +0100, Yann E. MORIN wrote: >> >> > > +++ b/package/rpi-fw/Config.in >> > > @@ -0,0 +1,9 @@ >> > > +config BR2_PACKAGE_RPI_FW >> > > + bool "RaspberryPi Firmware" >> > >> > Today, this package is only used fior the RPI. But that GPU is not specific >> > to the RPI, so what about calling that package "VideoCore bootloader" ? >> >> I am quite sure the start.elf code is Rasberry Pi specific, so I don't >> think this package is just a "VideoCore bootloader". > > Right. > >> > > +++ b/package/rpi-fw/cmdline.txt >> > > @@ -0,0 +1 @@ >> > > +dwc_otg.fiq_fix_enable=1 sdhci-bcm2708.sync_after_dma=0 dwc_otg.lpm_enable=0 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 rootwait >> > >> > This is typically a reason why I'd like to have a generic way to expressing >> > the different filesystems tht form a sinlge firmware. Here, my root partition >> > is *not* mmcblk0p2, it's p3. And the rootfstype is *not* ext4, it's ext2. >> > >> > But, I guess we'll have to live with that commandline for now... :-/ >> > >> > Maybe you could just omit the root settings (or replace them with place- >> > holders: root=/dev/XXXX rootfstype=XXXX). Of course, that will depend on >> > the maintainer's opinion. ;-) >> >> I would like to see a comment added in this file, which mentions this >> is only a sample command line, and we recommend to override it on a >> per-project basis using a post-build script. > > I am not sure the bootloader knows how to parse comments in this file. > Instead of installing it as 'cmdline.txt', what about installing it as > 'cmdline-sample.txt' with the comment? It should be possible to put the whole cmdline as an "option" in config.txt and thus we could put comments in there. I'll look into it. > > Regards, > Yann E. MORIN. > > -- > .-----------------.--------------------.------------------.--------------------. > | Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: | > | +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ | > | +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no | > | http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. | > '------------------------------^-------^------------------^--------------------' >
On 01/05/2013 03:10 PM, Maxime Hadjinlian wrote: > Introducing a package to install pre-built binaries for the bootloader and the > GPU firmware for the RaspberryPi board. Fails to install. You need to create the target/boot directory first. == /usr/bin/install -D -m 0644 /hdd/max/dev/tmp/buildroot/output/build/rpi-fw-76d0ac38f16b6343c6155c80db1e4758b3a5838a/boot/bootcode.bin /hdd/max/dev/tmp/buildroot/output/target/boot/ /usr/bin/install: target `/hdd/max/dev/tmp/buildroot/output/target/boot/' is not a directory: No such file or directory make: *** [/hdd/max/dev/tmp/buildroot/output/build/rpi-fw-76d0ac38f16b6343c6155c80db1e4758b3a5838a/.stamp_target_installed] Error 1 == But another question would be if bootloader files really should be installed under target. Keep in mind that the Raspberry Pi boot files are normally kept on a FAT partition seperate from the root file system. Yours sincerely, Floris Bos
On Sun, Jan 6, 2013 at 3:40 AM, Floris Bos <bos@je-eigen-domein.nl> wrote: > On 01/05/2013 03:10 PM, Maxime Hadjinlian wrote: >> >> Introducing a package to install pre-built binaries for the bootloader and >> the >> GPU firmware for the RaspberryPi board. > > > Fails to install. > You need to create the target/boot directory first. > Thanks, I was using a custom skeleton, forgot to get rid of it to try out. > == > > /usr/bin/install -D -m 0644 > /hdd/max/dev/tmp/buildroot/output/build/rpi-fw-76d0ac38f16b6343c6155c80db1e4758b3a5838a/boot/bootcode.bin > /hdd/max/dev/tmp/buildroot/output/target/boot/ > /usr/bin/install: target `/hdd/max/dev/tmp/buildroot/output/target/boot/' is > not a directory: No such file or directory > make: *** > [/hdd/max/dev/tmp/buildroot/output/build/rpi-fw-76d0ac38f16b6343c6155c80db1e4758b3a5838a/.stamp_target_installed] > Error 1 > == > > > But another question would be if bootloader files really should be installed > under target. > Keep in mind that the Raspberry Pi boot files are normally kept on a FAT > partition seperate from the root file system. This question can't be solved right now but it's in the pipe, see a mail by Yann E. Morin in the mailing list a few weeks ago. > > > Yours sincerely, > > Floris Bos > > _______________________________________________ > buildroot mailing list > buildroot@busybox.net > http://lists.busybox.net/mailman/listinfo/buildroot
>>>>> "Floris" == Floris Bos <bos@je-eigen-domein.nl> writes:
Hi,
Floris> Fails to install.
Floris> You need to create the target/boot directory first.
Floris> ==
Floris> /usr/bin/install -D -m 0644
Floris> /hdd/max/dev/tmp/buildroot/output/build/rpi-fw-76d0ac38f16b6343c6155c80db1e4758b3a5838a/boot/bootcode.bin
Floris> /hdd/max/dev/tmp/buildroot/output/target/boot/
Floris> /usr/bin/install: target
Floris> /hdd/max/dev/tmp/buildroot/output/target/boot/' is not a directory: No
Floris> such file or directory
Floris> make: ***
Floris> [/hdd/max/dev/tmp/buildroot/output/build/rpi-fw-76d0ac38f16b6343c6155c80db1e4758b3a5838a/.stamp_target_installed]
Floris> Error 1
Floris> ==
That's the point of using install -D (create dest dirs as needed), but
you need to provide it with the destination file name as well - E.G
$(TARGET_DIR)/boot/bootcode.bin
Floris> But another question would be if bootloader files really should be
Floris> installed under target.
Floris> Keep in mind that the Raspberry Pi boot files are normally kept on a
Floris> FAT partition seperate from the root file system.
Indeed, it probably makes more sense to just put it in IMAGES_DIR
instead.
On Sun, Jan 6, 2013 at 3:26 PM, Peter Korsgaard <jacmet@uclibc.org> wrote: >>>>>> "Floris" == Floris Bos <bos@je-eigen-domein.nl> writes: > > Hi, > > Floris> Fails to install. > Floris> You need to create the target/boot directory first. > > Floris> == > > Floris> /usr/bin/install -D -m 0644 > Floris> /hdd/max/dev/tmp/buildroot/output/build/rpi-fw-76d0ac38f16b6343c6155c80db1e4758b3a5838a/boot/bootcode.bin > Floris> /hdd/max/dev/tmp/buildroot/output/target/boot/ > Floris> /usr/bin/install: target > Floris> /hdd/max/dev/tmp/buildroot/output/target/boot/' is not a directory: No > Floris> such file or directory > Floris> make: *** > Floris> [/hdd/max/dev/tmp/buildroot/output/build/rpi-fw-76d0ac38f16b6343c6155c80db1e4758b3a5838a/.stamp_target_installed] > Floris> Error 1 > Floris> == > > That's the point of using install -D (create dest dirs as needed), but > you need to provide it with the destination file name as well - E.G > $(TARGET_DIR)/boot/bootcode.bin > > Floris> But another question would be if bootloader files really should be > Floris> installed under target. > Floris> Keep in mind that the Raspberry Pi boot files are normally kept on a > Floris> FAT partition seperate from the root file system. > > Indeed, it probably makes more sense to just put it in IMAGES_DIR > instead. How about putting them all in a rpi-firmware folder inside IMAGES_DIR ? I don't want to just throw them in this folder, it would be a pain afterwards since they all go in the same place. > > -- > Bye, Peter Korsgaard > _______________________________________________ > buildroot mailing list > buildroot@busybox.net > http://lists.busybox.net/mailman/listinfo/buildroot
On 06/01/13 15:47, Maxime Hadjinlian wrote: >> > Floris> But another question would be if bootloader files really should be >> > Floris> installed under target. >> > Floris> Keep in mind that the Raspberry Pi boot files are normally kept on a >> > Floris> FAT partition seperate from the root file system. >> > >> > Indeed, it probably makes more sense to just put it in IMAGES_DIR >> > instead. > How about putting them all in a rpi-firmware folder inside IMAGES_DIR > ? I don't want to just throw them in this folder, it would be a pain > afterwards since they all go in the same place. I think typically everything in the images directory goes into the boot partition, except the rootfs.* (exception to the exception: rootfs.cpio*, unless it's an initramfs) I have thought about creating a boot/ subdirectory in the images directory that collects everything that is supposed to go to the boot partition. But I'm afraid that there is no generic way to decide what has to go to the boot partition. For instance, if you generate a U-Boot for Flash but boot from SD card, you would have only kernel and device tree in the boot partition. In addition, you often want to add some additional things to the boot partition. Therefore I think that what we have now is quite OK. You can easily wrap the build in a script that copies things to the right place. Regards, Arnout
diff --git a/package/Config.in b/package/Config.in index 604ed1b..e21045f 100644 --- a/package/Config.in +++ b/package/Config.in @@ -253,6 +253,7 @@ source "package/owl-linux/Config.in" source "package/parted/Config.in" source "package/pciutils/Config.in" source "package/picocom/Config.in" +source "package/rpi-fw/Config.in" source "package/read-edid/Config.in" source "package/rng-tools/Config.in" source "package/sane-backends/Config.in" diff --git a/package/rpi-fw/Config.in b/package/rpi-fw/Config.in new file mode 100644 index 0000000..4b5a1e8 --- /dev/null +++ b/package/rpi-fw/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_RPI_FW + bool "RaspberryPi Firmware" + depends on BR2_arm + help + RaspberryPi Firmware + Pre-compiled binaries of the current bootloader and GPU firmware + + https://github.com/raspberrypi/firmware + diff --git a/package/rpi-fw/cmdline.txt b/package/rpi-fw/cmdline.txt new file mode 100644 index 0000000..010ee3f --- /dev/null +++ b/package/rpi-fw/cmdline.txt @@ -0,0 +1 @@ +dwc_otg.fiq_fix_enable=1 sdhci-bcm2708.sync_after_dma=0 dwc_otg.lpm_enable=0 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 rootwait diff --git a/package/rpi-fw/config.txt b/package/rpi-fw/config.txt new file mode 100644 index 0000000..ab9f7ff --- /dev/null +++ b/package/rpi-fw/config.txt @@ -0,0 +1,7 @@ +arm_freq=700 +core_freq=250 +disable_overscan=1 +gpu_mem_256=100 +gpu_mem_512=100 +sdram_freq=400 +over_voltage=0 diff --git a/package/rpi-fw/rpi-fw.mk b/package/rpi-fw/rpi-fw.mk new file mode 100644 index 0000000..e7b8674 --- /dev/null +++ b/package/rpi-fw/rpi-fw.mk @@ -0,0 +1,22 @@ +############################################################# +# +# rpi-fw +# +############################################################# +RPI_FW_VERSION = 76d0ac38f16b6343c6155c80db1e4758b3a5838a +RPI_FW_SITE = http://github.com/raspberrypi/firmware/tarball/master +RPI_FW_LICENSE = FOSS +RPI_FW_LICENSE_FILE = LICENCE.broadcom +RPI_FW_INSTALL_STAGING = NO + +define RPI_FW_INSTALL_TARGET_CMDS + $(INSTALL) -D -m 0644 $(@D)/boot/bootcode.bin $(TARGET_DIR)/boot/ + $(INSTALL) -D -m 0644 $(@D)/boot/start.elf $(TARGET_DIR)/boot/ + $(INSTALL) -D -m 0644 $(@D)/boot/start_cd.elf $(TARGET_DIR)/boot/ + $(INSTALL) -D -m 0644 $(@D)/boot/fixup.dat $(TARGET_DIR)/boot/ + $(INSTALL) -D -m 0644 $(@D)/boot/fixup_cd.dat $(TARGET_DIR)/boot/ + $(INSTALL) -D -m 0644 package/rpi-fw/cmdline.txt $(TARGET_DIR)/boot/ + $(INSTALL) -D -m 0644 package/rpi-fw/config.txt $(TARGET_DIR)/boot/ +endef + +$(eval $(generic-package))
Introducing a package to install pre-built binaries for the bootloader and the GPU firmware for the RaspberryPi board. Signed-off-by: Maxime Hadjinlian <maxime.hadjinlian@gmail.com> --- package/Config.in | 1 + package/rpi-fw/Config.in | 9 +++++++++ package/rpi-fw/cmdline.txt | 1 + package/rpi-fw/config.txt | 7 +++++++ package/rpi-fw/rpi-fw.mk | 22 ++++++++++++++++++++++ 5 files changed, 40 insertions(+) create mode 100644 package/rpi-fw/Config.in create mode 100644 package/rpi-fw/cmdline.txt create mode 100644 package/rpi-fw/config.txt create mode 100644 package/rpi-fw/rpi-fw.mk