[Buildroot] adding a new machine configuration
Roland
rolandu at gmail.com
Fri Mar 2 16:46:54 UTC 2012
On 03/01/2012 03:39 PM, Thomas Petazzoni wrote:
> Le Thu, 01 Mar 2012 15:07:48 +0200,
> Roland<rolandu at gmail.com> a écrit :
>
>> I have created a new machine configuration file.
>>
>> Target is Voipac iMX25 module ( http://voipac.com/#X25-DMM-254 ).
>>
>> I'm gonna also create one for iMX51.
>>
>> The problem is, the generated filesystem image won't work if don't
>> change the fs/ubinize.cfg file (problem with alignment). And
>> currently it's not possible to edit ubinize.cfg file in the buildroot
>> configuration file.
> I guess you're talking about the vol_alignment parameter, is this
> correct?
>
>> I'm interested in sharing the config and other files so, it can be
>> merged to buildroot's git.
>> But it's probably not possible until ubinize.cfg is configurable.
>>
>> Any comments by the people, who have commit access?
> You can simply add a new configuration option in the menuconfig to
> specify the alignment, with a default value equal to the one used in
> the current ubinize.cfg. Then, you change the ubinize.cfg to something
> like:
>
> vol_alignment=__BR_VOL_ALIGNMENT__
>
> And then when the filesystem image is built, you copy this ubinize.cfg
> somewhere, making the replacement of __BR_VOL_ALIGNMENT__ with the
> value from the configuration, and you run ubinize with it.
>
> Is this what you're looking for?
>
> Thomas
Thanks,
This was helpful
Managed to change the Config.in file, but I'm having some trouble with
ubi.mk
Which is better version... I'm specifically interested in the IF
section where BR2_TARGET_ROOTFS_UBI_ALIGNMENT_DEFINED is used.
Or suggest the correct buildroot way of doing this.
Thanks.
Version 1
#############################################################
#
# Embed the ubifs image into an ubi one
#
#############################################################
UBI_UBINIZE_OPTS := -m $(BR2_TARGET_ROOTFS_UBIFS_MINIOSIZE)
UBI_UBINIZE_OPTS += -p $(BR2_TARGET_ROOTFS_UBI_PEBSIZE)
ifneq ($(BR2_TARGET_ROOTFS_UBI_SUBSIZE),0)
UBI_UBINIZE_OPTS += -s $(BR2_TARGET_ROOTFS_UBI_SUBSIZE)
endif
UBI_UBINIZE_ECHO_ALIGNMENT :=
ifeq ($(BR2_TARGET_ROOTFS_UBI_ALIGNMENT_DEFINED),y)
UBI_UBINIZE_ECHO_ALIGNMENT := echo
"vol_alignment=$(BR2_TARGET_ROOTFS_UBI_VOL_ALIGNMENT)" \
>> $(BUILD_DIR)/_ubinize.cfg ;
endif
ROOTFS_UBI_DEPENDENCIES = rootfs-ubifs
define ROOTFS_UBI_CMD
cp fs/ubifs/ubinize.cfg $(BUILD_DIR)/_ubinize.cfg ;\
echo "vol_name=$(BR2_TARGET_ROOTFS_UBI_VOL_NAME)" \
>> $(BUILD_DIR)/_ubinize.cfg ;\
$(UBI_UBINIZE_ECHO_ALIGNMENT) \
echo "image=$$@fs" \
>> $(BUILD_DIR)/_ubinize.cfg ;\
$(HOST_DIR)/usr/sbin/ubinize -o $$@ $(UBI_UBINIZE_OPTS)
$(BUILD_DIR)/_ubinize.cfg ;\
rm $(BUILD_DIR)/_ubinize.cfg
endef
$(eval $(call ROOTFS_TARGET,ubi))
#############################################################
Version 2
#############################################################
#
# Embed the ubifs image into an ubi one
#
#############################################################
UBI_UBINIZE_OPTS := -m $(BR2_TARGET_ROOTFS_UBIFS_MINIOSIZE)
UBI_UBINIZE_OPTS += -p $(BR2_TARGET_ROOTFS_UBI_PEBSIZE)
ifneq ($(BR2_TARGET_ROOTFS_UBI_SUBSIZE),0)
UBI_UBINIZE_OPTS += -s $(BR2_TARGET_ROOTFS_UBI_SUBSIZE)
endif
ROOTFS_UBI_DEPENDENCIES = rootfs-ubifs
define ROOTFS_UBI_CMD
cp fs/ubifs/ubinize.cfg $(BUILD_DIR)/_ubinize.cfg ;\
echo "vol_name=$(BR2_TARGET_ROOTFS_UBI_VOL_NAME)" \
>> $(BUILD_DIR)/_ubinize.cfg ;\
[ "_y" = "_$(BR2_TARGET_ROOTFS_UBI_ALIGNMENT_DEFINED)" ] && \
echo
"vol_alignment=$(BR2_TARGET_ROOTFS_UBI_VOL_ALIGNMENT)" \
>> $(BUILD_DIR)/_ubinize.cfg ;\
echo "image=$$@fs" \
>> $(BUILD_DIR)/_ubinize.cfg ;\
$(HOST_DIR)/usr/sbin/ubinize -o $$@ $(UBI_UBINIZE_OPTS)
$(BUILD_DIR)/_ubinize.cfg ;\
rm $(BUILD_DIR)/_ubinize.cfg
endef
$(eval $(call ROOTFS_TARGET,ubi))
#############################################################
More information about the buildroot
mailing list