Skip to contentSkip to conversation

package/linux-firmware: Add Qualcomm video firmware option

PATCH New Andre Renaud 3 participants 5 messages Mar 11, 2018 – Apr 11, 2018

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 package/linux-firmware: Add Qualcomm video firmware option

Added Qualcomm video firmware option.

---
 package/linux-firmware/Config.in         | 5 +++++
 package/linux-firmware/linux-firmware.mk | 5 +++++
 2 files changed, 10 insertions(+)
(quoted diff) +0 -0

b/package/linux-firmware/Config.in
index 4e77a3f9a3..61164e101c 100644

package/linux-firmware/Config.in +5 -0
@@ -29,6 +29,11 @@ config BR2_PACKAGE_LINUX_FIRMWARE_RADEON
        help
          Firmware files for AMD Radeon video cards.
 
+config BR2_PACKAGE_LINUX_FIRMWARE_QCOM
+       bool "Qualcomm video card firmware"
+       help
+         Firmware files for Qualcomm/Snapdragon video cards.
+
 endmenu # Video
 
 menu "Bluetooth firmware"
(quoted diff) +0 -0

b/package/linux-firmware/linux-firmware.mk
index a6fd8ebba4..da106a9941 100644

package/linux-firmware/linux-firmware.mk +5 -0
@@ -24,6 +24,11 @@ LINUX_FIRMWARE_DIRS += radeon
 LINUX_FIRMWARE_ALL_LICENSE_FILES += LICENSE.radeon
 endif
 
+ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_QCOM),y)
+LINUX_FIRMWARE_DIRS += qcom
+LINUX_FIRMWARE_ALL_LICENSE_FILES += LICENSE.qcom
+endif
+
 # Intel Wireless Bluetooth
 ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_IBT),y)
 LINUX_FIRMWARE_FILES += intel/ibt-*
Signature · 4 lines
2.15.1
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20180311/c383ca05/attachment.html>
#1 lore raw

PATCH 1/1 package/linux-firmware: Add Qualcomm video firmware option

Hello Andre,

Thanks for this contribution! See below for some comments.

Quoted 14 lines · Andre Renaud

Added Qualcomm video firmware option.

---
 package/linux-firmware/Config.in         | 5 +++++
 package/linux-firmware/linux-firmware.mk | 5 +++++
 2 files changed, 10 insertions(+)
package/linux-firmware/Config.in +0 -0
index 4e77a3f9a3..61164e101c 100644

package/linux-firmware/Config.in config BR2_PACKAGE_LINUX_FIRMWARE_RADEON · line 35

Quoted 7 lines
package/linux-firmware/Config.in +4 -0
@@ -29,6 +29,11 @@ config BR2_PACKAGE_LINUX_FIRMWARE_RADEON
        help
          Firmware files for AMD Radeon video cards.
 
+config BR2_PACKAGE_LINUX_FIRMWARE_QCOM
+       bool "Qualcomm video card firmware"
+       help
+         Firmware files for Qualcomm/Snapdragon video cards.

"video cards" doesn't mean much. Are you talking about GPU, VPU?

And in fact, if you look at the "WHENCE" file in the linux-firmware project, you'll see:

--------------------------------------------------------------------------

Driver: venus - Qualcomm Venus video codec accelerator

File: qcom/venus-1.8/venus.mdt
File: qcom/venus-1.8/venus.b00
File: qcom/venus-1.8/venus.b01
File: qcom/venus-1.8/venus.b02
File: qcom/venus-1.8/venus.b03
File: qcom/venus-1.8/venus.b04

Version: 1.8-00109

File: qcom/venus-4.2/venus.mdt
File: qcom/venus-4.2/venus.b00
File: qcom/venus-4.2/venus.b01
File: qcom/venus-4.2/venus.b02
File: qcom/venus-4.2/venus.b03
File: qcom/venus-4.2/venus.b04

Version: 4.2

Licence: Redistributable. See LICENSE.qcom and qcom/NOTICE.txt for details

Binary files supplied originally from
https://developer.qualcomm.com/hardware/dragonboard-410c/tools

--------------------------------------------------------------------------

--------------------------------------------------------------------------

Driver: adreno - Qualcomm Adreno GPU firmware

File: qcom/a300_pfp.fw
Link: a300_pfp.fw -> qcom/a300_pfp.fw
File: qcom/a300_pm4.fw
Link: a300_pm4.fw -> qcom/a300_pm4.fw
File: qcom/a530_pfp.fw
File: qcom/a530_pm4.fw
File: qcom/a530v3_gpmu.fw2
File: qcom/a530_zap.b00
File: qcom/a530_zap.b01
File: qcom/a530_zap.b02
File: qcom/a530_zap.mdt

Licence: Redistributable. See LICENSE.qcom and qcom/NOTICE.txt for details

Binary files supplied originally from
https://developer.qualcomm.com/hardware/dragonboard-410c/tools

--------------------------------------------------------------------------

So the files in qcom/venus/ are for a video processing unit (doing video encoding/decoding acceleration), while the qcom/a* files are for the Adreno GPUs.

So, I believe we need two sub-options:

BR2_PACKAGE_LINUX_FIRMWARE_QCOM_VENUS
BR2_PACKAGE_LINUX_FIRMWARE_QCOM_ADRENO

Could you rework your patch to add those two options instead ?

Thanks!

Thomas Petazzoni

Signature · 3 lines
Thomas Petazzoni, CTO, Bootlin (formerly Free Electrons)
Embedded Linux and Kernel engineering
https://bootlin.com
#2 lore raw

PATCH 1/1 package/linux-firmware: Add Qualcomm video firmware option

Added Qualcomm video accelerator and GPU firmware option.

---
 package/linux-firmware/Config.in         | 10 ++++++++++
 package/linux-firmware/linux-firmware.mk | 10 ++++++++++
 2 files changed, 20 insertions(+)
(quoted diff) +0 -0

b/package/linux-firmware/Config.in
index 4e77a3f9a3..9d8d8b340b 100644

package/linux-firmware/Config.in +10 -0
@@ -29,6 +29,16 @@ config BR2_PACKAGE_LINUX_FIRMWARE_RADEON
  help
    Firmware files for AMD Radeon video cards.
 
+config BR2_PACKAGE_LINUX_FIRMWARE_QCOM_VENUS
+       bool "Qualcomm Venus video codec accelerator"
+       help
+         Firmware files for Qualcomm Venus video codec accelerator
+
+config BR2_PACKAGE_LINUX_FIRMWARE_QCOM_ADRENO
+       bool "Qualcomm Adreno GPU firmware"
+       help
+         Firmware files for Qualcomm Adreno GPU firmware
+
 endmenu # Video
 
 menu "Bluetooth firmware"
(quoted diff) +0 -0

b/package/linux-firmware/linux-firmware.mk
index 6f0ba53800..03c4b2c576 100644

package/linux-firmware/linux-firmware.mk +10 -0
@@ -24,6 +24,16 @@ LINUX_FIRMWARE_DIRS += radeon
 LINUX_FIRMWARE_ALL_LICENSE_FILES += LICENSE.radeon
 endif
 
+ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_QCOM_VENUS),y)
+LINUX_FIRMWARE_DIRS += qcom/venus-1.8 qcom/venus-4.2
+LINUX_FIRMWARE_ALL_LICENSE_FILES += LICENSE.qcom
+endif
+
+ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_QCOM_ADRENO),y)
+LINUX_FIRMWARE_FILES += qcom/a*
+LINUX_FIRMWARE_ALL_LICENSE_FILES += LICENSE.qcom
+endif
+
 # Intel Wireless Bluetooth
 ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_IBT),y)
 LINUX_FIRMWARE_FILES += intel/ibt-*
Quoted 95 lines · On Tue, 27 Mar 2018 at 10:33 Thomas Petazzoni <[email protected]>…

Hello Andre,

Thanks for this contribution! See below for some comments.

Quoted 14 lines · Andre Renaud

Added Qualcomm video firmware option.

---
 package/linux-firmware/Config.in         | 5 +++++
 package/linux-firmware/linux-firmware.mk | 5 +++++
 2 files changed, 10 insertions(+)
package/linux-firmware/Config.in +0 -0
index 4e77a3f9a3..61164e101c 100644

package/linux-firmware/Config.in config BR2_PACKAGE_LINUX_FIRMWARE_RADEON · line 35

Quoted 7 lines
package/linux-firmware/Config.in +4 -0
@@ -29,6 +29,11 @@ config BR2_PACKAGE_LINUX_FIRMWARE_RADEON
        help
          Firmware files for AMD Radeon video cards.
 
+config BR2_PACKAGE_LINUX_FIRMWARE_QCOM
+       bool "Qualcomm video card firmware"
+       help
+         Firmware files for Qualcomm/Snapdragon video cards.

"video cards" doesn't mean much. Are you talking about GPU, VPU?

And in fact, if you look at the "WHENCE" file in the linux-firmware project, you'll see:

--------------------------------------------------------------------------

Driver: venus - Qualcomm Venus video codec accelerator

File: qcom/venus-1.8/venus.mdt
File: qcom/venus-1.8/venus.b00
File: qcom/venus-1.8/venus.b01
File: qcom/venus-1.8/venus.b02
File: qcom/venus-1.8/venus.b03
File: qcom/venus-1.8/venus.b04

Version: 1.8-00109

File: qcom/venus-4.2/venus.mdt
File: qcom/venus-4.2/venus.b00
File: qcom/venus-4.2/venus.b01
File: qcom/venus-4.2/venus.b02
File: qcom/venus-4.2/venus.b03
File: qcom/venus-4.2/venus.b04

Version: 4.2

Licence: Redistributable. See LICENSE.qcom and qcom/NOTICE.txt for details

Binary files supplied originally from
https://developer.qualcomm.com/hardware/dragonboard-410c/tools

--------------------------------------------------------------------------

--------------------------------------------------------------------------

Driver: adreno - Qualcomm Adreno GPU firmware

File: qcom/a300_pfp.fw
Link: a300_pfp.fw -> qcom/a300_pfp.fw
File: qcom/a300_pm4.fw
Link: a300_pm4.fw -> qcom/a300_pm4.fw
File: qcom/a530_pfp.fw
File: qcom/a530_pm4.fw
File: qcom/a530v3_gpmu.fw2
File: qcom/a530_zap.b00
File: qcom/a530_zap.b01
File: qcom/a530_zap.b02
File: qcom/a530_zap.mdt

Licence: Redistributable. See LICENSE.qcom and qcom/NOTICE.txt for details

Binary files supplied originally from
https://developer.qualcomm.com/hardware/dragonboard-410c/tools

--------------------------------------------------------------------------

So the files in qcom/venus/ are for a video processing unit (doing video encoding/decoding acceleration), while the qcom/a* files are for the Adreno GPUs.

So, I believe we need two sub-options:

BR2_PACKAGE_LINUX_FIRMWARE_QCOM_VENUS
BR2_PACKAGE_LINUX_FIRMWARE_QCOM_ADRENO

Could you rework your patch to add those two options instead ?

Quoted 8 lines

Thanks!

Thomas Petazzoni
--
Thomas Petazzoni, CTO, Bootlin (formerly Free Electrons) Embedded Linux and Kernel engineering
https://bootlin.com

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20180411/73131dda/attachment.html>

#3 lore raw

PATCH 1/1 package/linux-firmware: Add Qualcomm video firmware option

Hi Andre,

Quoted 3 lines · Andre Renaud

Added Qualcomm video accelerator and GPU firmware option.

...

package/linux-firmware/linux-firmware.mk LINUX_FIRMWARE_DIRS += radeon · line 29

Quoted 3 lines
package/linux-firmware/linux-firmware.mk +3 -0
+ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_QCOM_VENUS),y)
+LINUX_FIRMWARE_DIRS += qcom/venus-1.8 qcom/venus-4.2
+LINUX_FIRMWARE_ALL_LICENSE_FILES += LICENSE.qcom

qcom/NOTICE.txt is also applicable, I think. Don't forget to update the .hash file.

package/linux-firmware/linux-firmware.mk LINUX_FIRMWARE_DIRS += radeon · line 35

Quoted 6 lines
package/linux-firmware/linux-firmware.mk +6 -0
+endif
+
+ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_QCOM_ADRENO),y)
+LINUX_FIRMWARE_FILES += qcom/a*
+LINUX_FIRMWARE_ALL_LICENSE_FILES += LICENSE.qcom
+endif

baruch

Signature · 3 lines
     http://baruch.siach.name/blog/                  ~. .~   Tk Open Systems
=}------------------------------------------------ooO--U--Ooo------------{=
   - baruch at tkos.co.il - tel: +972.2.679.5364, http://www.tkos.co.il -
#4 lore raw

PATCH 1/1 package/linux-firmware: Add Qualcomm video firmware option

In reply to Andre Renaud

Hello Andre,

Quoted 7 lines · Andre Renaud

Added Qualcomm video accelerator and GPU firmware option.

---
 package/linux-firmware/Config.in         | 10 ++++++++++
 package/linux-firmware/linux-firmware.mk | 10 ++++++++++
 2 files changed, 20 insertions(+)

Thanks for this new version! Could you please sent this as a proper new patch with git send-email, and not pasted above the previous patch? Also, see beloiw.

package/linux-firmware/Config.in config BR2_PACKAGE_LINUX_FIRMWARE_RADEON · line 34

Quoted 12 lines
package/linux-firmware/Config.in +3 -0
index 4e77a3f9a3..9d8d8b340b 100644
@@ -29,6 +29,16 @@ config BR2_PACKAGE_LINUX_FIRMWARE_RADEON
  help
    Firmware files for AMD Radeon video cards.
 
+config BR2_PACKAGE_LINUX_FIRMWARE_QCOM_VENUS
+       bool "Qualcomm Venus video codec accelerator"
+       help

Indentation should be done with tabs

package/linux-firmware/Config.in config BR2_PACKAGE_LINUX_FIRMWARE_RADEON · line 35

Quoted 1 line
package/linux-firmware/Config.in +1 -0
+         Firmware files for Qualcomm Venus video codec accelerator

And here one tab + 2 spaces.

You can run ./utils/check-package package/linux-firmware/Config.in, which well validate this kind of trivial coding style issues.

Thanks!

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Bootlin (formerly Free Electrons)
Embedded Linux and Kernel engineering
https://bootlin.com