Re: brcmsmac: firmware

From: Arend van Spriel
Date: Tue Apr 02 2013 - 06:55:28 EST


On 03/31/2013 10:38 AM, John Talbut wrote:
> On 29/03/13 11:06, Arend van Spriel wrote:
>> On 03/29/2013 07:14 AM, John Talbut wrote:
>>>
>>> As a matter of curiosity, why is the code currently in the firmware not
>>> included in the kernel driver?
>>
>> Well. the kernel driver is what is running on the host. In your case on
>> the Atom processor. The firmware contains of initialization data for the
>> device and code that is using an instruction set that is dedicated to
>> the broadcom device so there is no way to move that into the driver
>> other than as a binary blob, but that is not acceptable in open-source
>> Linux drivers. So people in the community invented the user-space
>> firmware loading stuff.
>>
>> Gr. AvS
>
> Hi Arend
>
> Hmm. As I understand it, if the source code for the initialization data
> for the device and code that is using an instruction set that is
> dedicated to the broadcom device was released then the code could be
> compiled into the kernel.
>
> Do you have any sense of why Broadcom does not do this?

Well. Your understanding is different from mine. Here is mine: the linux
kernel aims for a separation between kernel code and firmware (mainly to
resolve licensing issues, I think) and all drivers with embedded
firmware have/are converted to using the request_firmware API. This is
described in [1].

Gr. AvS

[1]
https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/firmware/README.AddingFirmware

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/