Pull request for branch rpi-support
Hello All!
A short series to add some needed RaspberryPi specific packages in order to build a rootfs for this board.
The following changes since commit 66bfe1d4fe2de50aef6ac3fc836a710fa577cdef:
xdriver_xf86-video-sunffb: remove package (2013-01-05 14:34:48 +0100)
are available in the git repository at:
http://github.com/maximeh/buildroot.git rpi-support
for you to fetch changes up to 0a82214a34f519691ff795260820907a7a8b4cfc:
rpi-fw: New package (2013-01-05 14:59:15 +0100)
----------------------------------------------------------------
Maxime Hadjinlian (3):
libcofi: new package
rpi-userland: new package
rpi-fw: New package
package/Config.in | 3 +++ package/libcofi/Config.in | 8 ++++++++ package/libcofi/libcofi.mk | 17 +++++++++++++++++ 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 ++++++++++++++++++++++ package/rpi-userland/Config.in | 12 ++++++++++++ package/rpi-userland/rpi-userland.mk | 25 +++++++++++++++++++++++++ 9 files changed, 104 insertions(+) create mode 100644 package/libcofi/Config.in create mode 100644 package/libcofi/libcofi.mk 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 create mode 100644 package/rpi-userland/Config.in create mode 100644 package/rpi-userland/rpi-userland.mk
Regards,
Maxime Hadjinlian
--
PATCH 1/3 libcofi: new package
replacement for memcpy and memset functionality
This package was originally found at : https://github.com/huceke/buildroot-rbp
By gimli <[email protected]>
--- package/Config.in | 1 + package/libcofi/Config.in | 8 ++++++++ package/libcofi/libcofi.mk | 17 +++++++++++++++++ 3 files changed, 26 insertions(+) create mode 100644 package/libcofi/Config.in create mode 100644 package/libcofi/libcofi.mk
package/Config.in +1 -0
@@ -511,6 +511,7 @@ endmenu menu "Other" source "package/apr/Config.in" source "package/apr-util/Config.in" +source "package/libcofi/Config.in" source "package/classpath/Config.in" source "package/fftw/Config.in" source "package/libargtable2/Config.in"
package/libcofi/Config.in new file +8 -0
@@ -0,0 +1,8 @@ +config BR2_PACKAGE_LIBCOFI + bool "libcofi" + depends on BR2_arm + help + A replacement for memcpy and memset functionality for the Raspberry Pi + with the intention of gaining greater performance. + + https://github.com/simonjhall/copies-and-fills
package/libcofi/libcofi.mk new file +17 -0
@@ -0,0 +1,17 @@ +############################################################# +# +# libcofi +# +############################################################# +LIBCOFI_VERSION = 7313fbe12b0593034d0a1b606bf33c7cf4ababce +LIBCOFI_SITE = http://github.com/simonjhall/copies-and-fills/tarball/master + +define LIBCOFI_BUILD_CMDS + $(MAKE1) AS="$(TARGET_AS)" CC="$(TARGET_CC)" -C $(@D) libcofi_rpi.so +endef + +define LIBCOFI_INSTALL_TARGET_CMDS + $(INSTALL) -D -m 0755 $(@D)/libcofi_rpi.so* $(TARGET_DIR)/usr/lib +endef + +$(eval $(generic-package))
Signature · 1 line
1.7.10.4
PATCH 2/3 rpi-userland: new package
In reply to Maxime HadjinlianIntroducing a package to build the userland part of the Raspberry, needed by anyone who would want to build a rootfs for a RaspberryPi.
--- package/Config.in | 1 + package/rpi-userland/Config.in | 12 ++++++++++++ package/rpi-userland/rpi-userland.mk | 25 +++++++++++++++++++++++++ 3 files changed, 38 insertions(+) create mode 100644 package/rpi-userland/Config.in create mode 100644 package/rpi-userland/rpi-userland.mk
package/Config.in +1 -0
@@ -579,6 +579,7 @@ source "package/collectd/Config.in" source "package/empty/Config.in" source "package/googlefontdirectory/Config.in" source "package/mobile-broadband-provider-info/Config.in" +source "package/rpi-userland/Config.in" source "package/shared-mime-info/Config.in" source "package/snowball-init/Config.in" source "package/sound-theme-borealis/Config.in"
package/rpi-userland/Config.in new file +12 -0
@@ -0,0 +1,12 @@ +config BR2_PACKAGE_RPI_USERLAND + bool "rpi-userland" + select BR2_PACKAGE_LIBCOFI + help + Raspberry Pi Userland contains the necessary library to use the + VideoCore driver. + + Includes source for the ARM side code to interface to: + EGL, mmal, GLESv2, vcos, openmaxil, vchiq_arm, bcm_host, WFC, OpenVG. + + https://github.com/raspberrypi/userland/ +
package/rpi-userland/rpi-userland.mk new file +25 -0
@@ -0,0 +1,25 @@ +############################################################# +# +# rpi-userland +# +############################################################# +RPI_USERLAND_VERSION = 9852ce28826889e50c4d6786b942f51bccccac54 +RPI_USERLAND_SITE = http://github.com/raspberrypi/userland/tarball/master +RPI_USERLAND_LICENSE = FOSS +RPI_USERLAND_LICENSE_FILE = LICENCE +RPI_USERLAND_INSTALL_STAGING = YES + +define RPI_USERLAND_POST_TARGET_CLEANUP + rm -Rf $(TARGET_DIR)/opt/vc/include + rm -Rf $(TARGET_DIR)/opt/vc/share + rm -Rf $(TARGET_DIR)/opt/vc/src + rm -f $(TARGET_DIR)/etc/init.d/vcfiled + rm -f $(TARGET_DIR)/opt/vc/lib/*.a + rmdir -p --ignore-fail-on-non-empty $(TARGET_DIR)/etc/init.d || true + mv $(TARGET_DIR)/opt/vc/lib/* $(TARGET_DIR)/usr/lib/ + rm -Rf $(TARGET_DIR)/opt/vc/ +endef + +RPI_USERLAND_POST_INSTALL_TARGET_HOOKS += RPI_USERLAND_POST_TARGET_CLEANUP + +$(eval $(cmake-package))
Signature · 1 line
1.7.10.4
PATCH 3/3 rpi-fw: New package
In reply to Maxime HadjinlianIntroducing a package to install pre-built binaries for the bootloader and the GPU firmware for the RaspberryPi board.
--- 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
package/Config.in +1 -0
@@ -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"
package/rpi-fw/Config.in new file +9 -0
@@ -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 +
package/rpi-fw/cmdline.txt new file +1 -0
@@ -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
package/rpi-fw/config.txt new file +7 -0
@@ -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
package/rpi-fw/rpi-fw.mk new file +22 -0
@@ -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))
Signature · 1 line
1.7.10.4
PATCH 2/3 rpi-userland: new package
In reply to Maxime HadjinlianHi Maxime,
2013/1/5 Maxime Hadjinlian <[email protected]>:
Quoted 56 lines
Introducing a package to build the userland part of the Raspberry, needed by anyone who would want to build a rootfs for a RaspberryPi.
Signed-off-by Maxime Hadjinlian <[email protected]>--- package/Config.in | 1 + package/rpi-userland/Config.in | 12 ++++++++++++ package/rpi-userland/rpi-userland.mk | 25 +++++++++++++++++++++++++ 3 files changed, 38 insertions(+) create mode 100644 package/rpi-userland/Config.in create mode 100644 package/rpi-userland/rpi-userland.mkpackage/Config.in +1
-0@@ -579,6 +579,7 @@ source "package/collectd/Config.in" source "package/empty/Config.in" source "package/googlefontdirectory/Config.in" source "package/mobile-broadband-provider-info/Config.in" +source "package/rpi-userland/Config.in" source "package/shared-mime-info/Config.in" source "package/snowball-init/Config.in" source "package/sound-theme-borealis/Config.in"package/rpi-userland/Config.in new file +12
-0@@ -0,0 +1,12 @@ +config BR2_PACKAGE_RPI_USERLAND + bool "rpi-userland" + select BR2_PACKAGE_LIBCOFI + help + Raspberry Pi Userland contains the necessary library to use the + VideoCore driver. + + Includes source for the ARM side code to interface to: + EGL, mmal, GLESv2, vcos, openmaxil, vchiq_arm, bcm_host, WFC, OpenVG. + + https://github.com/raspberrypi/userland/ +package/rpi-userland/rpi-userland.mk new file +8
-0@@ -0,0 +1,25 @@ +############################################################# +# +# rpi-userland +# +############################################################# +RPI_USERLAND_VERSION = 9852ce28826889e50c4d6786b942f51bccccac54 +RPI_USERLAND_SITE = http://github.com/raspberrypi/userland/tarball/master +RPI_USERLAND_LICENSE = FOSS
package/rpi-userland/rpi-userland.mk line 18
Quoted 10 lines
package/rpi-userland/rpi-userland.mk new file +10
-0+RPI_USERLAND_LICENSE_FILE = LICENCE +RPI_USERLAND_INSTALL_STAGING = YES + +define RPI_USERLAND_POST_TARGET_CLEANUP + rm -Rf $(TARGET_DIR)/opt/vc/include + rm -Rf $(TARGET_DIR)/opt/vc/share + rm -Rf $(TARGET_DIR)/opt/vc/src + rm -f $(TARGET_DIR)/etc/init.d/vcfiled + rm -f $(TARGET_DIR)/opt/vc/lib/*.a + rmdir -p --ignore-fail-on-non-empty $(TARGET_DIR)/etc/init.d || true
Since you use the --ignore-fail-on-non-empty option, i think "|| true" is useless.
package/rpi-userland/rpi-userland.mk line 21
Quoted 3 lines
package/rpi-userland/rpi-userland.mk new file +3
-0+ mv $(TARGET_DIR)/opt/vc/lib/* $(TARGET_DIR)/usr/lib/ + rm -Rf $(TARGET_DIR)/opt/vc/ +endef
Also, since you set RPI_USERLAND_INSTALL_STAGING = YES, don't you need to do some cleanup/fixup hook for the staging area as well?
package/rpi-userland/rpi-userland.mk line 23
Quoted 2 lines
package/rpi-userland/rpi-userland.mk new file +2
-0+ +RPI_USERLAND_POST_INSTALL_TARGET_HOOKS += RPI_USERLAND_POST_TARGET_CLEANUP
BTW, it is possible to avoid this cleanup hook (or at least reduce it to the example source) with this patch:
http://code.bulix.org/3fo6ye-82780
and by adding "-DVMCS_INSTALL_PREFIX=/usr" to the RPI_USERLAND_CONF_OPT variable.
Quoted 4 lines
package/rpi-userland/rpi-userland.mk new file +2
-1+ +$(eval $(cmake-package)) --1.7.10.4
Regards,
Signature · 1 line
Samuel
PATCH 2/3 rpi-userland: new package
In reply to Maxime HadjinlianMaxime, All,
Quoted 4 lines · On Saturday 05 January 2013 Maxime Hadjinlian wrote:
Introducing a package to build the userland part of the Raspberry, needed by anyone who would want to build a rootfs for a RaspberryPi.
Signed-off-by Maxime Hadjinlian <[email protected]>
[--SNIP--]
package/rpi-userland/Config.in line 3
Quoted 9 lines
package/rpi-userland/Config.in new file +3
-0@@ -0,0 +1,12 @@ +config BR2_PACKAGE_RPI_USERLAND + bool "rpi-userland" + select BR2_PACKAGE_LIBCOFI
Do not forget to add this dependency in the .mk (see below)
package/rpi-userland/Config.in line 6
Quoted 3 lines
package/rpi-userland/Config.in new file +3
-0+ help + Raspberry Pi Userland contains the necessary library to use the + VideoCore driver.
Then, what about calling this package something like 'videocore'. I guess there areaother boards out there that use this GPU.
[--SNIP--]
Quoted 6 lines
package/rpi-userland/rpi-userland.mk new file +0
-0
package/rpi-userland/rpi-userland.mk line 10
Quoted 10 lines
package/rpi-userland/rpi-userland.mk new file +10
-0@@ -0,0 +1,25 @@ +############################################################# +# +# rpi-userland +# +############################################################# +RPI_USERLAND_VERSION = 9852ce28826889e50c4d6786b942f51bccccac54 +RPI_USERLAND_SITE = http://github.com/raspberrypi/userland/tarball/master +RPI_USERLAND_LICENSE = FOSS +RPI_USERLAND_LICENSE_FILE = LICENCE +RPI_USERLAND_INSTALL_STAGING = YES
RPI_USERLAND_DPENDENCIES = libcofi
Although, is libcofi really required? I just greped for 'cofi', and found no occurence, so I'd say it is not.
Quoted 4 lines
package/rpi-userland/rpi-userland.mk new file +4
-0+define RPI_USERLAND_POST_TARGET_CLEANUP + rm -Rf $(TARGET_DIR)/opt/vc/include + rm -Rf $(TARGET_DIR)/opt/vc/share + rm -Rf $(TARGET_DIR)/opt/vc/src
package/rpi-userland/rpi-userland.mk line 25
Quoted 10 lines
package/rpi-userland/rpi-userland.mk new file +10
-0+ rm -f $(TARGET_DIR)/etc/init.d/vcfiled + rm -f $(TARGET_DIR)/opt/vc/lib/*.a + rmdir -p --ignore-fail-on-non-empty $(TARGET_DIR)/etc/init.d || true + mv $(TARGET_DIR)/opt/vc/lib/* $(TARGET_DIR)/usr/lib/ + rm -Rf $(TARGET_DIR)/opt/vc/ +endef + +RPI_USERLAND_POST_INSTALL_TARGET_HOOKS += RPI_USERLAND_POST_TARGET_CLEANUP + +$(eval $(cmake-package))
Untested so far, will do shortly.
Regards,
Yann E. MORIN.
Signature · 6 lines
.-----------------.--------------------.------------------.--------------------. | 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. | '------------------------------^-------^------------------^--------------------'
PATCH 3/3 rpi-fw: New package
In reply to Maxime HadjinlianMaxime, All,
Quoted 21 lines · 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 <[email protected]>--- 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.mkpackage/Config.in +0
-0
package/Config.in source "package/owl-linux/Config.in" · line 256
Quoted 4 lines
package/Config.in +1
-0@@ -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
package/rpi-fw/Config.in line 2
Quoted 11 lines
package/Config.in +0
-0source "package/read-edid/Config.in" source "package/rng-tools/Config.in" source "package/sane-backends/Config.in"package/rpi-fw/Config.in new file +2
-0@@ -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--]
package/rpi-fw/cmdline.txt line 1
Quoted 7 lines
package/rpi-fw/cmdline.txt new file +1
-0@@ -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. ;-)
Quoted 19 lines
package/rpi-fw/config.txt new file +7
-0@@ -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=0package/rpi-fw/rpi-fw.mk new file +0
-0
package/rpi-fw/rpi-fw.mk line 8
Quoted 8 lines
package/rpi-fw/rpi-fw.mk new file +8
-0@@ -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.
package/rpi-fw/rpi-fw.mk line 9
Quoted 1 line
package/rpi-fw/rpi-fw.mk new file +1
-0+RPI_FW_LICENSE_FILE = LICENCE.broadcom
It's in boot/LICENCE.broadcom
package/rpi-fw/rpi-fw.mk line 10
Quoted 1 line
package/rpi-fw/rpi-fw.mk new file +1
-0+RPI_FW_INSTALL_STAGING = NO
Not needed, that's the default.
package/rpi-fw/rpi-fw.mk line 15
Quoted 4 lines
package/rpi-fw/rpi-fw.mk new file +4
-0+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.
package/rpi-fw/rpi-fw.mk line 22
Quoted 7 lines
package/rpi-fw/rpi-fw.mk new file +7
-0+ $(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.
Signature · 6 lines
.-----------------.--------------------.------------------.--------------------. | 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. | '------------------------------^-------^------------------^--------------------'
PATCH 2/3 rpi-userland: new package
In reply to Maxime HadjinlianQuoted 30 lines · Maxime Hadjinlian
Introducing a package to build the userland part of the Raspberry, needed by anyone who would want to build a rootfs for a RaspberryPi.
Signed-off-by Maxime Hadjinlian <[email protected]>--- package/Config.in | 1 + package/rpi-userland/Config.in | 12 ++++++++++++ package/rpi-userland/rpi-userland.mk | 25 +++++++++++++++++++++++++ 3 files changed, 38 insertions(+) create mode 100644 package/rpi-userland/Config.in create mode 100644 package/rpi-userland/rpi-userland.mkpackage/Config.in +1
-0@@ -579,6 +579,7 @@ source "package/collectd/Config.in" source "package/empty/Config.in" source "package/googlefontdirectory/Config.in" source "package/mobile-broadband-provider-info/Config.in" +source "package/rpi-userland/Config.in" source "package/shared-mime-info/Config.in" source "package/snowball-init/Config.in" source "package/sound-theme-borealis/Config.in"package/rpi-userland/Config.in new file +0
-0
package/rpi-userland/Config.in line 3
Quoted 3 lines
package/rpi-userland/Config.in new file +3
-0@@ -0,0 +1,12 @@ +config BR2_PACKAGE_RPI_USERLAND + bool "rpi-userland" + select BR2_PACKAGE_LIBCOFI
Libcofi is not required, and honestly using it via LD_PRELOAD is too ugly to pull in to buildroot I would think. It would be better integrated as a glibc patch, which is how it should eventually be included in Raspbian.
package/rpi-userland/Config.in line 9
Quoted 6 lines
package/rpi-userland/Config.in new file +6
-0+# +############################################################# +RPI_USERLAND_VERSION = 9852ce28826889e50c4d6786b942f51bccccac54 +RPI_USERLAND_SITE = http://github.com/raspberrypi/userland/tarball/master +RPI_USERLAND_LICENSE = FOSS +RPI_USERLAND_LICENSE_FILE = LICENCE
The license is standard 3-clause BSD.
Alex
PATCH 3/3 rpi-fw: New package
In reply to Maxime Hadjinlianpackage/rpi-fw/config.txt line 7
Quoted 13 lines · Maxime Hadjinlian
package/rpi-fw/config.txt new file +7
-0@@ -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.
package/rpi-fw/config.txt
Quoted 5 lines
package/rpi-fw/config.txt new file +5
-0+############################################################# +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
PATCH 3/3 rpi-fw: New package
Quoted 10 lines · Alex Bradbury
Quoted 9 lines · Maxime Hadjinlian
package/rpi-fw/config.txt new file +3
-0@@ -0,0 +1,7 @@ +arm_freq=700 +core_freq=250 +disable_overscan=1
Quoted 8 lines
package/rpi-fw/config.txt line 7
Quoted 4 lines
package/rpi-fw/config.txt new file +4
-0+gpu_mem_256=100 +gpu_mem_512=100 +sdram_freq=400 +over_voltage=0It'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.
Quoted 10 lines
package/rpi-fw/config.txt
Quoted 6 lines
package/rpi-fw/config.txt new file +5
-0+############################################################# +RPI_FW_VERSION = 76d0ac38f16b6343c6155c80db1e4758b3a5838a +RPI_FW_SITE = http://github.com/raspberrypi/firmware/tarball/master +RPI_FW_LICENSE = FOSS +RPI_FW_LICENSE_FILE = LICENCE.broadcomThe 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.
Quoted 3 lines
Regards,
Alex
PATCH 3/3 rpi-fw: New package
In reply to Yann E. MORINQuoted 30 lines · Yann E. MORIN
Maxime, All,
Quoted 21 lines · 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 <[email protected]>--- 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.mkpackage/Config.in +0
-0package/Config.in source "package/owl-linux/Config.in" · line 256
Quoted 4 lines
package/Config.in +1
-0@@ -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:
Quoted 1 line
Hardware handling --> Misc firmwares
I'll move it to that section.
Quoted 15 lines
package/rpi-fw/Config.in line 2
Quoted 12 lines
package/Config.in +0
-0source "package/read-edid/Config.in" source "package/rng-tools/Config.in" source "package/sane-backends/Config.in"package/rpi-fw/Config.in new file +2
-0@@ -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.
Quoted 14 lines
[--SNIP--]
package/rpi-fw/cmdline.txt line 1
Quoted 7 lines
package/rpi-fw/cmdline.txt new file +1
-0@@ -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 rootwaitThis 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.
Quoted 5 lines
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.
Quoted 67 lines
Quoted 20 lines
package/rpi-fw/config.txt new file +7
-0@@ -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=0package/rpi-fw/rpi-fw.mk new file +0
-0package/rpi-fw/rpi-fw.mk line 8
Quoted 8 lines
package/rpi-fw/rpi-fw.mk new file +8
-0@@ -0,0 +1,22 @@ +############################################################# +# +# rpi-fw +# +############################################################# +RPI_FW_VERSION = 76d0ac38f16b6343c6155c80db1e4758b3a5838a +RPI_FW_SITE = http://github.com/raspberrypi/firmware/tarball/master +RPI_FW_LICENSE = FOSSIt's a BSD-3c.
package/rpi-fw/rpi-fw.mk line 9
Quoted 1 line
package/rpi-fw/rpi-fw.mk new file +1
-0+RPI_FW_LICENSE_FILE = LICENCE.broadcomIt's in boot/LICENCE.broadcom
package/rpi-fw/rpi-fw.mk line 10
Quoted 1 line
package/rpi-fw/rpi-fw.mk new file +1
-0+RPI_FW_INSTALL_STAGING = NONot needed, that's the default.
package/rpi-fw/rpi-fw.mk line 15
Quoted 4 lines
package/rpi-fw/rpi-fw.mk new file +4
-0+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.
package/rpi-fw/rpi-fw.mk line 22
Quoted 7 lines
package/rpi-fw/rpi-fw.mk new file +7
-0+ $(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. |'------------------------------^-------^------------------^--------------------'
PATCH 2/3 rpi-userland: new package
In reply to Samuel MartinQuoted 1 line · Samuel Martin
Hi Maxime,
Hi Samuel,
Quoted 62 lines
2013/1/5 Maxime Hadjinlian <[email protected]>:
Quoted 60 lines
Introducing a package to build the userland part of the Raspberry, needed by anyone who would want to build a rootfs for a RaspberryPi.
Signed-off-by Maxime Hadjinlian <[email protected]>--- package/Config.in | 1 + package/rpi-userland/Config.in | 12 ++++++++++++ package/rpi-userland/rpi-userland.mk | 25 +++++++++++++++++++++++++ 3 files changed, 38 insertions(+) create mode 100644 package/rpi-userland/Config.in create mode 100644 package/rpi-userland/rpi-userland.mkpackage/Config.in +1
-0@@ -579,6 +579,7 @@ source "package/collectd/Config.in" source "package/empty/Config.in" source "package/googlefontdirectory/Config.in" source "package/mobile-broadband-provider-info/Config.in" +source "package/rpi-userland/Config.in" source "package/shared-mime-info/Config.in" source "package/snowball-init/Config.in" source "package/sound-theme-borealis/Config.in"package/rpi-userland/Config.in new file +12
-0@@ -0,0 +1,12 @@ +config BR2_PACKAGE_RPI_USERLAND + bool "rpi-userland" + select BR2_PACKAGE_LIBCOFI + help + Raspberry Pi Userland contains the necessary library to use the + VideoCore driver. + + Includes source for the ARM side code to interface to: + EGL, mmal, GLESv2, vcos, openmaxil, vchiq_arm, bcm_host, WFC, OpenVG. + + https://github.com/raspberrypi/userland/ +package/rpi-userland/rpi-userland.mk new file +12
-0@@ -0,0 +1,25 @@ +############################################################# +# +# rpi-userland +# +############################################################# +RPI_USERLAND_VERSION = 9852ce28826889e50c4d6786b942f51bccccac54 +RPI_USERLAND_SITE = http://github.com/raspberrypi/userland/tarball/master +RPI_USERLAND_LICENSE = FOSS +RPI_USERLAND_LICENSE_FILE = LICENCE +RPI_USERLAND_INSTALL_STAGING = YES + +define RPI_USERLAND_POST_TARGET_CLEANUP
Quoted 8 lines
package/rpi-userland/rpi-userland.mk line 18
Quoted 6 lines
package/rpi-userland/rpi-userland.mk new file +6
-0+ rm -Rf $(TARGET_DIR)/opt/vc/include + rm -Rf $(TARGET_DIR)/opt/vc/share + rm -Rf $(TARGET_DIR)/opt/vc/src + rm -f $(TARGET_DIR)/etc/init.d/vcfiled + rm -f $(TARGET_DIR)/opt/vc/lib/*.a + rmdir -p --ignore-fail-on-non-empty $(TARGET_DIR)/etc/init.d || trueSince you use the --ignore-fail-on-non-empty option, i think "|| true" is useless.
You're totally right.
Quoted 7 lines
package/rpi-userland/rpi-userland.mk line 21
Quoted 4 lines
package/rpi-userland/rpi-userland.mk new file +3
-0+ mv $(TARGET_DIR)/opt/vc/lib/* $(TARGET_DIR)/usr/lib/ + rm -Rf $(TARGET_DIR)/opt/vc/ +endefAlso, since you set
RPI_USERLAND_INSTALL_STAGING= YES, don't you need to do some cleanup/fixup hook for the staging area as well?
Is it really useful to cleanup the staging area ?
Quoted 9 lines
package/rpi-userland/rpi-userland.mk line 23
Quoted 3 lines
package/rpi-userland/rpi-userland.mk new file +2
-0+ +RPI_USERLAND_POST_INSTALL_TARGET_HOOKS += RPI_USERLAND_POST_TARGET_CLEANUPBTW, it is possible to avoid this cleanup hook (or at least reduce it to the example source) with this patch:
http://code.bulix.org/3fo6ye-82780
and by adding "-DVMCS_INSTALL_PREFIX=/usr" to theRPI_USERLAND_CONF_OPTvariable.
I think part of the cleanup is useful so we don't create a rootfs that comes with example sources code and useless files for runtime. In the other part, it's perfectly possible to add this option so it would install itself in the right place.
Quoted 10 lines
Quoted 5 lines
package/rpi-userland/rpi-userland.mk new file +2
-1+ +$(eval $(cmake-package)) --1.7.10.4
Regards,
--
Samuel
PATCH 2/3 rpi-userland: new package
In reply to Alex BradburyQuoted 31 lines · Alex Bradbury
Quoted 30 lines · Maxime Hadjinlian
Introducing a package to build the userland part of the Raspberry, needed by anyone who would want to build a rootfs for a RaspberryPi.
Signed-off-by Maxime Hadjinlian <[email protected]>--- package/Config.in | 1 + package/rpi-userland/Config.in | 12 ++++++++++++ package/rpi-userland/rpi-userland.mk | 25 +++++++++++++++++++++++++ 3 files changed, 38 insertions(+) create mode 100644 package/rpi-userland/Config.in create mode 100644 package/rpi-userland/rpi-userland.mkpackage/Config.in +1
-0@@ -579,6 +579,7 @@ source "package/collectd/Config.in" source "package/empty/Config.in" source "package/googlefontdirectory/Config.in" source "package/mobile-broadband-provider-info/Config.in" +source "package/rpi-userland/Config.in" source "package/shared-mime-info/Config.in" source "package/snowball-init/Config.in" source "package/sound-theme-borealis/Config.in"package/rpi-userland/Config.in new file +0
-0@@ -0,0 +1,12 @@
Quoted 8 lines
package/rpi-userland/Config.in line 3
Quoted 3 lines
package/rpi-userland/Config.in new file +3
-0+config BR2_PACKAGE_RPI_USERLAND + bool "rpi-userland" + select BR2_PACKAGE_LIBCOFILibcofi is not required, and honestly using it via
LD_PRELOADis too ugly to pull in to buildroot I would think. It would be better integrated as a glibc patch, which is how it should eventually be included in Raspbian.
It's true that libcofi is not required, but I didn't want to add it an independent package, although maybe that would be the best solution. Also, as you said, it's really ugly but as far as I can tell, really useful for a RaspberryPi.
Quoted 9 lines
package/rpi-userland/Config.in line 9
Quoted 7 lines
package/rpi-userland/Config.in new file +6
-0+# +############################################################# +RPI_USERLAND_VERSION = 9852ce28826889e50c4d6786b942f51bccccac54 +RPI_USERLAND_SITE = http://github.com/raspberrypi/userland/tarball/master +RPI_USERLAND_LICENSE = FOSS +RPI_USERLAND_LICENSE_FILE = LICENCEThe license is standard 3-clause BSD.
Thanks, I'll fix it
Quoted 2 lines
Alex
PATCH 3/3 rpi-fw: New package
In reply to Maxime HadjinlianQuoted 7 lines · Maxime Hadjinlian
Quoted 3 lines · Alex Bradbury
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
PATCH 2/3 rpi-userland: new package
In reply to Maxime HadjinlianHi Maxime,
2013/1/5 Maxime Hadjinlian <[email protected]>:
Quoted 5 lines · Samuel Martin
Quoted 1 line
Hi Maxime,
Hi Samuel,
Quoted 2 lines
2013/1/5 Maxime Hadjinlian <[email protected]>:
[snip]
Quoted 12 lines
Quoted 10 lines
package/rpi-userland/rpi-userland.mk line 18
Quoted 8 lines
package/rpi-userland/rpi-userland.mk new file +8
-0+ +define RPI_USERLAND_POST_TARGET_CLEANUP + rm -Rf $(TARGET_DIR)/opt/vc/include + rm -Rf $(TARGET_DIR)/opt/vc/share + rm -Rf $(TARGET_DIR)/opt/vc/src + rm -f $(TARGET_DIR)/etc/init.d/vcfiled + rm -f $(TARGET_DIR)/opt/vc/lib/*.a + rmdir -p --ignore-fail-on-non-empty $(TARGET_DIR)/etc/init.d || trueSince you use the --ignore-fail-on-non-empty option, i think "|| true" is useless.
You're totally right.
Quoted 1 line
Quoted 7 lines
Quoted 6 lines
package/rpi-userland/rpi-userland.mk line 21
Quoted 3 lines
package/rpi-userland/rpi-userland.mk new file +3
-0+ mv $(TARGET_DIR)/opt/vc/lib/* $(TARGET_DIR)/usr/lib/ + rm -Rf $(TARGET_DIR)/opt/vc/ +endefAlso, since you set
RPI_USERLAND_INSTALL_STAGING= YES, don't you need to do some cleanup/fixup hook for the staging area as well?Is it really useful to cleanup the staging area ?
Cleanup, not necessary...
But at least, fix the headers, libraries (static an dynamic) and perhaps the data install locations if you keep /opt/vc as install prefix, otherwise you will/may have some trouble to link against it...
Quoted 9 lines
Quoted 9 lines
Review
Quoted 3 lines
(quoted diff) +2
-0+ +RPI_USERLAND_POST_INSTALL_TARGET_HOOKS += RPI_USERLAND_POST_TARGET_CLEANUPBTW, it is possible to avoid this cleanup hook (or at least reduce it to the example source) with this patch:
http://code.bulix.org/3fo6ye-82780
and by adding "-DVMCS_INSTALL_PREFIX=/usr" to theRPI_USERLAND_CONF_OPTvariable.
Quoted 4 lines
I think part of the cleanup is useful so we don't create a rootfs that comes with example sources code and useless files for runtime. In the other part, it's perfectly possible to add this option so it would install itself in the right place.
I agree.
Regards,
Signature · 1 line
Samuel
PATCH 2/3 rpi-userland: new package
In reply to Samuel MartinDear Samuel Martin,
Quoted 7 lines · Samuel Martin
Quoted 1 line
+RPI_USERLAND_POST_INSTALL_TARGET_HOOKS +=
RPI_USERLAND_POST_TARGET_CLEANUPBTW, it is possible to avoid this cleanup hook (or at least reduce it to the example source) with this patch:
http://code.bulix.org/3fo6ye-82780
and by adding "-DVMCS_INSTALL_PREFIX=/usr" to theRPI_USERLAND_CONF_OPTvariable.
This looks good. I would really prefer to see those libs and headers installed in /usr, like all other libs and headers.
Maxime, can you integrate Samuel's patch?
Thomas
Signature · 4 lines
Thomas Petazzoni, Free Electrons Kernel, drivers, real-time and embedded Linux development, consulting, training and support. http://free-electrons.com
PATCH 3/3 rpi-fw: New package
In reply to Yann E. MORINDear Yann E. MORIN,
Quoted 7 lines · Yann E. MORIN
package/rpi-fw/Config.in line 2
Quoted 4 lines
+++ b/package/rpi-fw/Config.in
package/rpi-fw/Config.in new file +2
-0@@ -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".
Quoted 8 lines
package/rpi-fw/cmdline.txt line 1
Quoted 3 lines
package/rpi-fw/cmdline.txt new file +2
-0+++ 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 rootwaitThis 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.
Quoted 5 lines
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
Signature · 4 lines
Thomas Petazzoni, Free Electrons Kernel, drivers, real-time and embedded Linux development, consulting, training and support. http://free-electrons.com
PATCH 3/3 rpi-fw: New package
Maxime, Thomas, All,
Quoted 12 lines · On Saturday 05 January 2013 Thomas Petazzoni wrote:
Dear Yann E. MORIN,
Quoted 7 lines · Yann E. MORIN
package/rpi-fw/Config.in line 2
Quoted 4 lines
+++ b/package/rpi-fw/Config.in
package/rpi-fw/Config.in new file +2
-0@@ -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" ?
Quoted 2 lines
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.
Quoted 10 lines
Quoted 10 lines
package/rpi-fw/cmdline.txt line 1
Quoted 3 lines
package/rpi-fw/cmdline.txt new file +2
-0+++ 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 rootwaitThis 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... :-/
Quoted 7 lines
Quoted 3 lines
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.
Signature · 6 lines
.-----------------.--------------------.------------------.--------------------. | 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. | '------------------------------^-------^------------------^--------------------'
PATCH 3/3 rpi-fw: New package
Quoted 34 lines · Yann E. MORIN
Maxime, Thomas, All,
Quoted 12 lines · On Saturday 05 January 2013 Thomas Petazzoni wrote:
Dear Yann E. MORIN,
Quoted 7 lines · Yann E. MORIN
package/rpi-fw/Config.in line 2
Quoted 4 lines
+++ b/package/rpi-fw/Config.in
package/rpi-fw/Config.in new file +2
-0@@ -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" ?
Quoted 2 lines
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.
Quoted 14 lines
Quoted 13 lines
package/rpi-fw/cmdline.txt line 1
Quoted 3 lines
package/rpi-fw/cmdline.txt new file +2
-0+++ 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 rootwaitThis 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. ;-)
Quoted 7 lines
Quoted 3 lines
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.
Quoted 12 lines
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. |'------------------------------^-------^------------------^--------------------'
PATCH 2/3 rpi-userland: new package
In reply to Thomas PetazzoniQuoted 11 lines · Thomas Petazzoni
Dear Samuel Martin,
Quoted 7 lines · Samuel Martin
Quoted 1 line
+RPI_USERLAND_POST_INSTALL_TARGET_HOOKS +=
RPI_USERLAND_POST_TARGET_CLEANUPBTW, it is possible to avoid this cleanup hook (or at least reduce it to the example source) with this patch:
http://code.bulix.org/3fo6ye-82780
and by adding "-DVMCS_INSTALL_PREFIX=/usr" to theRPI_USERLAND_CONF_OPTvariable.
Quoted 4 lines
This looks good. I would really prefer to see those libs and headers installed in /usr, like all other libs and headers.
Maxime, can you integrate Samuel's patch?
Yep, I haven't had time to test it but I will do and send my v2 when it's done.
Quoted 7 lines
Thomas
--
Thomas Petazzoni, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com
PATCH 2/3 rpi-userland: new package
Maxime,
2013/1/5 Maxime Hadjinlian <[email protected]>:
Quoted 13 lines
Quoted 11 lines · Thomas Petazzoni
Dear Samuel Martin,
Quoted 7 lines · Samuel Martin
Quoted 1 line
+RPI_USERLAND_POST_INSTALL_TARGET_HOOKS +=
RPI_USERLAND_POST_TARGET_CLEANUPBTW, it is possible to avoid this cleanup hook (or at least reduce it to the example source) with this patch:
http://code.bulix.org/3fo6ye-82780
and by adding "-DVMCS_INSTALL_PREFIX=/usr" to theRPI_USERLAND_CONF_OPTvariable.
Quoted 5 lines
Quoted 4 lines
This looks good. I would really prefer to see those libs and headers installed in /usr, like all other libs and headers.
Maxime, can you integrate Samuel's patch?
Yep, I haven't had time to test it but I will do and send my v2 when it's done.
BTW, you can also try to just remove the "FORCE" in the relevant "set(VMCS_INSTALL_PREFIX ...)" line; it should have the same effect.
Regards,
Signature · 1 line
Samuel
PATCH 2/3 rpi-userland: new package
In reply to Maxime HadjinlianQuoted 2 lines · Maxime Hadjinlian
Introducing a package to build the userland part of the Raspberry, needed by anyone who would want to build a rootfs for a RaspberryPi.
rpi-userland does not build with the default buildroot uClibc toolchain.
==
[ 25%] /hdd/max/dev/tmp/buildroot/output/build/rpi-userland-9852ce28826889e50c4d6786b942f51bccccac54/interface/vcos/glibc/vcos_backtrace.c:30:22:
fatal error: execinfo.h: No such file or directory
==
Ran into the same issue a while back.
You can borrow my patch:
https://github.com/maxnet/userland/commit/93ae1bcd8005216baf7361ba860b53a2cf2e0401
Yours sincerely,
Floris Bos
PATCH 3/3 rpi-fw: New package
In reply to Maxime HadjinlianQuoted 2 lines · Maxime Hadjinlian
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
PATCH 2/3 rpi-userland: new package
In reply to Floris BosQuoted 14 lines · Floris Bos
Quoted 3 lines · Maxime Hadjinlian
Introducing a package to build the userland part of the Raspberry, needed by anyone who would want to build a rootfs for a RaspberryPi.
rpi-userland does not build with the default buildroot uClibc toolchain.
==
[ 25%] /hdd/max/dev/tmp/buildroot/output/build/rpi-userland-9852ce28826889e50c4d6786b942f51bccccac54/interface/vcos/glibc/vcos_backtrace.c:30:22:
fatal error:execinfo.h: No such file or directory
==
Quoted 4 lines
Ran into the same issue a while back.
You can borrow my patch:
https://github.com/maxnet/userland/commit/93ae1bcd8005216baf7361ba860b53a2cf2e0401
Thanks, I builded using eglibc at the moment.
Could you push your patch upstream so we won't need to have it ?
Quoted 10 lines
Yours sincerely,
Floris Bos
_______________________________________________
buildroot mailing list
buildroot at busybox.net
http://lists.busybox.net/mailman/listinfo/buildroot
PATCH 3/3 rpi-fw: New package
In reply to Floris BosQuoted 10 lines · Floris Bos
Quoted 4 lines · Maxime Hadjinlian
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.
Quoted 13 lines
==
/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
==
Quoted 4 lines
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.
Quoted 10 lines
Yours sincerely,
Floris Bos
_______________________________________________
buildroot mailing list
buildroot at busybox.net
http://lists.busybox.net/mailman/listinfo/buildroot
PATCH 2/3 rpi-userland: new package
In reply to Maxime HadjinlianQuoted 3 lines · Maxime Hadjinlian
Quoted 1 line
rpi-userland does not build with the default buildroot uClibc toolchain.
Thanks, I builded using eglibc at the moment.
Could you push your patch upstream so we won't need to have it ?
Send a pull request to upstream a month ago, but did not receive any response.
https://github.com/raspberrypi/userland/pull/7
Yours sincerely,
Floris Bos
PATCH 3/3 rpi-fw: New package
In reply to Floris BosQuoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Floris" == Floris Bos <[email protected]> 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.
Signature · 1 line
Bye, Peter Korsgaard
PATCH 3/3 rpi-fw: New package
Quoted 24 lines · Peter Korsgaard
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Floris" == Floris Bos <[email protected]> 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
Quoted 7 lines
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_DIRinstead.
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.
Quoted 7 lines
--
Bye, Peter Korsgaard
_______________________________________________
buildroot mailing list
buildroot at busybox.net
http://lists.busybox.net/mailman/listinfo/buildroot
PATCH 3/3 rpi-fw: New package
Quoted 10 lines · Maxime Hadjinlian
Quoted 7 lines
Quoted 7 lines
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_DIRinstead.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
Signature · 6 lines
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: 7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F