[OpenWrt-Devel] [PATCH v2 2/2] octeontx: enable Cavium CPT and ZIP drivers

Hauke Mehrtens hauke at hauke-m.de
Thu Jun 11 08:21:43 EDT 2020


On 6/3/20 10:16 PM, Tim Harvey wrote:
> On Tue, Jun 2, 2020 at 3:21 PM Hauke Mehrtens <hauke at hauke-m.de> wrote:
>>
>> On 6/2/20 7:05 PM, Tim Harvey wrote:
>>> The CPT module requires firmware which we add here as well.
>>>
>>> Signed-off-by: Tim Harvey <tharvey at gateworks.com>
>>> ---
>>> v2: added license file for firmware
>>> ---
>>>  target/linux/octeontx/config-5.4                     |  11 +++++++++++
>>>  target/linux/octeontx/files/firmware/cpt8x-mc-ae.out | Bin 0 -> 9760 bytes
>>>  target/linux/octeontx/files/firmware/cpt8x-mc-se.out | Bin 0 -> 35584 bytes
>>>  target/linux/octeontx/files/firmware/license.txt     |  11 +++++++++++
>>>  4 files changed, 22 insertions(+)
>>>  create mode 100644 target/linux/octeontx/files/firmware/cpt8x-mc-ae.out
>>>  create mode 100644 target/linux/octeontx/files/firmware/cpt8x-mc-se.out
>>>  create mode 100644 target/linux/octeontx/files/firmware/license.txt
>>>
>>> diff --git a/target/linux/octeontx/config-5.4 b/target/linux/octeontx/config-5.4
>>> index cfb8b19..9fcd12b 100644
>>> --- a/target/linux/octeontx/config-5.4
>>> +++ b/target/linux/octeontx/config-5.4
>> ......
>>> @@ -233,6 +239,8 @@ CONFIG_EEPROM_AT24=y
>>>  CONFIG_EFI_EARLYCON=y
>>>  CONFIG_EXT4_FS=y
>>>  CONFIG_EXT4_FS_POSIX_ACL=y
>>> +CONFIG_EXTRA_FIRMWARE="cpt8x-mc-ae.out cpt8x-mc-se.out"
>>> +CONFIG_EXTRA_FIRMWARE_DIR="firmware"
>>>  CONFIG_F2FS_FS=y
>>>  CONFIG_F2FS_FS_XATTR=y
>>>  CONFIG_F2FS_STAT_FS=y
>> ....
>>>
>>> diff --git a/target/linux/octeontx/files/firmware/license.txt b/target/linux/octeontx/files/firmware/license.txt
>>> new file mode 100644
>>> index 0000000..531eaba
>>> --- /dev/null
>>> +++ b/target/linux/octeontx/files/firmware/license.txt
>>
>> Hi,
>>
>> I think this is not compatible with the OpenWrt license or at least goes
>> into a gray area.
>>
>>> @@ -0,0 +1,11 @@
>>> +Copyright (C) 2019 Marvell International Ltd.
>>> +
>>> +The software package is subject to the Marvell binary license that prohibits the
>>> +licensee to modify the software, in any manner and that prohibits to distribute
>>> +the software as a stand-alone product.
>>
>> Is the distribution in
>> target/linux/octeontx/files/firmware/cpt8x-mc-se.out not a standalone
>> product?
> 
> Hauke,
> 
> I agree that this is a gray area for sure. I don't like the wording at
> all either.
> 
>> You can create a link to https://git.openwrt.org where you can directly
>> download it when we push it into openwrt master.
>>
> 
> I'm not sure what you mean by this. Are you saying we can still push
> the firmware binaries 'somewhere' on https://git.openwrt.org but not
> include the build process?

I do not know if such a link would be a distribution as a standalone
product:
https://git.openwrt.org/?p=openwrt/openwrt.git;a=blob_plain;f=target/linux/lantiq/files/firmware/lantiq/xrx200_phy11g_a14.bin;hb=HEAD

I would prefer if the user has to get the firmware files from somewhere
else if we wants to use this feature as long as Marvell is not willing
to change the license.

>>> +Any use of the software, in all or in
>>> +part, shall not be made subject to or otherwise contaminated by, a copyleft open
>>> +source license (as defined by the Open Source Initiative), such as without
>>> +limitation, GNU GPL or LGPL licenses.
>>
>> Adding this file in CONFIG_EXTRA_FIRMWARE could be seen as bundeling it
>> with GPL code.
>>
>> The CONFIG_EXTRA_FIRMWARE option says this:
>>   WARNING: If you include additional firmware files into your binary
>>   kernel image that are not available under the terms of the GPL,
>>   then it may be a violation of the GPL to distribute the resulting
>>   image since it combines both GPL and non-GPL work. You should
>>   consult a lawyer of your own before distributing such an image.
>> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/drivers/base/firmware_loader/Kconfig#n32
>>
>>> +Any software which integrates this code or any part of it thereof, should
>>> +include in its header the above license.
>>
>> We would have to extend the license information for all our octeontx
>> binaries to add this information.
>>
> 
> I can replace this with a patch that enables the cpt driver as a
> module to make it easier for people to use but they will have to go
> get firmware and place it in their /lib/firmware on their rootfs this
> way.
> 
>>
>> If this firmware contains cryptography we could also violate some export
>> control regulation, but normally no one cares.
>>
> 
> agreed.

Having this as a module and the user has to download the firmware on his
own would be nice. If you add a script to make it easier to download it
would be nice, but not necessary in my opineon.

If the system still works without this firmware I am also find with
building this into the kernel if this would be needed.

Hauke

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 488 bytes
Desc: OpenPGP digital signature
URL: <http://lists.infradead.org/pipermail/openwrt-devel/attachments/20200611/cba3718b/attachment.sig>
-------------- next part --------------
_______________________________________________
openwrt-devel mailing list
openwrt-devel at lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


More information about the openwrt-devel mailing list