All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] Location of external firmware
@ 2019-05-06 14:14 Mats Jansson
  2019-05-06 20:54 ` Arnout Vandecappelle
  0 siblings, 1 reply; 4+ messages in thread
From: Mats Jansson @ 2019-05-06 14:14 UTC (permalink / raw)
  To: buildroot

Hi,

I have an external firmware to be loaed by a driver. The normal way is
to put the firmware in /lib/firmware. But since it needs to
be loaded during boot and udev is not intitialised at that point I
have found out that I need to build it into the kernel.

I want to put this file in my buildroot-external-tree just like I do
with patches. Any idea on how to do it?
I have tried two different approaches.
1. Creating a patch, but then I get the error message that "git binary diffs are not
supported."
2. setting CONFIG_EXTRA_FIRMWARE_DIR to $(BR2_EXTERNAL)/firmware but I
get the error message "BR2_EXTERNAL: command does not exist"

Anyone have a good idea on how to solve this?

Best regards
Mats                          mailto:matsmanhav at tele2.se

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [Buildroot] Location of external firmware
  2019-05-06 14:14 [Buildroot] Location of external firmware Mats Jansson
@ 2019-05-06 20:54 ` Arnout Vandecappelle
  2019-05-07  8:25   ` Mats Jansson
  0 siblings, 1 reply; 4+ messages in thread
From: Arnout Vandecappelle @ 2019-05-06 20:54 UTC (permalink / raw)
  To: buildroot



On 06/05/2019 16:14, Mats Jansson wrote:
> Hi,
> 
> I have an external firmware to be loaed by a driver. The normal way is
> to put the firmware in /lib/firmware. But since it needs to
> be loaded during boot and udev is not intitialised at that point I
> have found out that I need to build it into the kernel.
> 
> I want to put this file in my buildroot-external-tree just like I do
> with patches. Any idea on how to do it?
> I have tried two different approaches.
> 1. Creating a patch, but then I get the error message that "git binary diffs are not
> supported."

 That will indeed not be possible, unfortunately.

> 2. setting CONFIG_EXTRA_FIRMWARE_DIR to $(BR2_EXTERNAL)/firmware but I
> get the error message "BR2_EXTERNAL: command does not exist"

 Looks like you're trying to do this from the shell; $(...) in shell means
executing a subcommand, which is not what you want here.

 In addtion, $(BR2_EXTERNAL) should no longer be used (since 2016.11). Instead,
each external has a name, and you should use $(BR2_EXTERNAL_<name>_PATH). This
variable is exported, so you can use it in your linux configuration file.

 Regards,
 Arnout

> 
> Anyone have a good idea on how to solve this?
> 
> Best regards
> Mats                          mailto:matsmanhav at tele2.se
> 
> _______________________________________________
> buildroot mailing list
> buildroot at busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot
> 

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [Buildroot] Location of external firmware
  2019-05-06 20:54 ` Arnout Vandecappelle
@ 2019-05-07  8:25   ` Mats Jansson
  2019-05-07 23:32     ` Arnout Vandecappelle
  0 siblings, 1 reply; 4+ messages in thread
From: Mats Jansson @ 2019-05-07  8:25 UTC (permalink / raw)
  To: buildroot


AV> On 06/05/2019 16:14, Mats Jansson wrote:
>> Hi,
>> 
>> I have an external firmware to be loaed by a driver. The normal way is
>> to put the firmware in /lib/firmware. But since it needs to
>> be loaded during boot and udev is not intitialised at that point I
>> have found out that I need to build it into the kernel.
>> 
>> I want to put this file in my buildroot-external-tree just like I do
>> with patches. Any idea on how to do it?
>> I have tried two different approaches.
>> 1. Creating a patch, but then I get the error message that "git binary diffs are not
>> supported."

AV>  That will indeed not be possible, unfortunately.

>> 2. setting CONFIG_EXTRA_FIRMWARE_DIR to $(BR2_EXTERNAL)/firmware but I
>> get the error message "BR2_EXTERNAL: command does not exist"

AV>  Looks like you're trying to do this from the shell; $(...) in shell means
AV> executing a subcommand, which is not what you want here.

AV>  In addtion, $(BR2_EXTERNAL) should no longer be used (since 2016.11). Instead,
AV> each external has a name, and you should use
AV> $(BR2_EXTERNAL_<name>_PATH). This
AV> variable is exported, so you can use it in your linux configuration file.

I am just letting buildroot handle things, by running make in
buildroot. So I suppose it is running in a shell.

Setting
CONFIG_EXTRA_FIRMWARE="htc9271.fw"
CONFIG_EXTRA_FIRMWARE_DIR="$(BR2_EXTERNAL_e100_PATH)/firmware"
also gets me the message "command does not exist".

Setting it to
CONFIG_EXTRA_FIRMWARE="htc9271.fw"
CONFIG_EXTRA_FIRMWARE_DIR="$BR2_EXTERNAL_e100_PATH/firmware"
gives me
*** No rule to create the target "R2_EXTERNAL_e100_PATH/firmware/htc_9271.fw?, needed by ?firmware/htc_9271.fw.gen.o?.  Stopping.

The use of $(BR2_EXTERNAL_e100_PATH) works in other parts of the configuration, eg
for patches. But maybe it is not possible to use the BR2_EXTERNAL_e100_PATH variable
when building the kernel.config?

AV>  Regards,
AV>  Arnout

>> 
>> Anyone have a good idea on how to solve this?
>> 
>> Best regards
>> Mats                          mailto:matsmanhav at tele2.se
>> 
>> _______________________________________________
>> buildroot mailing list
>> buildroot at busybox.net
>> http://lists.busybox.net/mailman/listinfo/buildroot
>> 
AV> _______________________________________________
AV> buildroot mailing list
AV> buildroot at busybox.net
AV> http://lists.busybox.net/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [Buildroot] Location of external firmware
  2019-05-07  8:25   ` Mats Jansson
@ 2019-05-07 23:32     ` Arnout Vandecappelle
  0 siblings, 0 replies; 4+ messages in thread
From: Arnout Vandecappelle @ 2019-05-07 23:32 UTC (permalink / raw)
  To: buildroot



On 07/05/2019 10:25, Mats Jansson wrote:
> 
> AV> On 06/05/2019 16:14, Mats Jansson wrote:
>>> Hi,
>>>
>>> I have an external firmware to be loaed by a driver. The normal way is
>>> to put the firmware in /lib/firmware. But since it needs to
>>> be loaded during boot and udev is not intitialised at that point I
>>> have found out that I need to build it into the kernel.
>>>
>>> I want to put this file in my buildroot-external-tree just like I do
>>> with patches. Any idea on how to do it?
>>> I have tried two different approaches.
>>> 1. Creating a patch, but then I get the error message that "git binary diffs are not
>>> supported."
> 
> AV>  That will indeed not be possible, unfortunately.
> 
>>> 2. setting CONFIG_EXTRA_FIRMWARE_DIR to $(BR2_EXTERNAL)/firmware but I
>>> get the error message "BR2_EXTERNAL: command does not exist"
> 
> AV>  Looks like you're trying to do this from the shell; $(...) in shell means
> AV> executing a subcommand, which is not what you want here.
> 
> AV>  In addtion, $(BR2_EXTERNAL) should no longer be used (since 2016.11). Instead,
> AV> each external has a name, and you should use
> AV> $(BR2_EXTERNAL_<name>_PATH). This
> AV> variable is exported, so you can use it in your linux configuration file.
> 
> I am just letting buildroot handle things, by running make in
> buildroot. So I suppose it is running in a shell.
> 
> Setting
> CONFIG_EXTRA_FIRMWARE="htc9271.fw"
> CONFIG_EXTRA_FIRMWARE_DIR="$(BR2_EXTERNAL_e100_PATH)/firmware"
> also gets me the message "command does not exist".

 Yeah, auto.conf gives that message but I don't think it's very relevant, is it?

 If it really is a problem, you can use ${BR2_EXTERNAL_e100_PATH} instead (i.e.
curly braces instead of round brackets). This is used both by shell and make as
a variable name delimiter.

 Regards,
 Arnout

> 
> Setting it to
> CONFIG_EXTRA_FIRMWARE="htc9271.fw"
> CONFIG_EXTRA_FIRMWARE_DIR="$BR2_EXTERNAL_e100_PATH/firmware"
> gives me
> *** No rule to create the target "R2_EXTERNAL_e100_PATH/firmware/htc_9271.fw?, needed by ?firmware/htc_9271.fw.gen.o?.  Stopping.
> 
> The use of $(BR2_EXTERNAL_e100_PATH) works in other parts of the configuration, eg
> for patches. But maybe it is not possible to use the BR2_EXTERNAL_e100_PATH variable
> when building the kernel.config?
> 
> AV>  Regards,
> AV>  Arnout
> 
>>>
>>> Anyone have a good idea on how to solve this?
>>>
>>> Best regards
>>> Mats                          mailto:matsmanhav at tele2.se
>>>
>>> _______________________________________________
>>> buildroot mailing list
>>> buildroot at busybox.net
>>> http://lists.busybox.net/mailman/listinfo/buildroot
>>>
> AV> _______________________________________________
> AV> buildroot mailing list
> AV> buildroot at busybox.net
> AV> http://lists.busybox.net/mailman/listinfo/buildroot
> 

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2019-05-07 23:32 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-05-06 14:14 [Buildroot] Location of external firmware Mats Jansson
2019-05-06 20:54 ` Arnout Vandecappelle
2019-05-07  8:25   ` Mats Jansson
2019-05-07 23:32     ` Arnout Vandecappelle

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.