diff mbox series

[meta-ti,scarthgap/master] ti-img-rogue-umlibs: ship module blacklist

Message ID 20250312213803.1160562-1-rs@ti.com
State Accepted
Delegated to: Ryan Eatmon
Headers show
Series [meta-ti,scarthgap/master] ti-img-rogue-umlibs: ship module blacklist | expand

Commit Message

Randolph Sapp March 12, 2025, 9:38 p.m. UTC
From: Randolph Sapp <rs@ti.com>

Well, this is the evil vendor driver. Time to start acting like it.
Blacklist the upstream powervr module if this driver is present.

This patch also does away with the bin_package components. It was cool
and found some interesting bugs, but we might as well start leveraging
that Makefile more now that we're starting to get some more common
files between devices.

Signed-off-by: Randolph Sapp <rs@ti.com>
---
 .../ti-img-rogue-umlibs_24.2.6643903.bb       | 23 ++++++++++++-------
 1 file changed, 15 insertions(+), 8 deletions(-)

Comments

Khem Raj March 12, 2025, 9:43 p.m. UTC | #1
On Wed, Mar 12, 2025 at 2:38 PM Randolph Sapp via
lists.yoctoproject.org <rs=ti.com@lists.yoctoproject.org> wrote:
>
> From: Randolph Sapp <rs@ti.com>
>
> Well, this is the evil vendor driver. Time to start acting like it.
> Blacklist the upstream powervr module if this driver is present.
>
> This patch also does away with the bin_package components. It was cool
> and found some interesting bugs, but we might as well start leveraging
> that Makefile more now that we're starting to get some more common
> files between devices.
>
> Signed-off-by: Randolph Sapp <rs@ti.com>
> ---
>  .../ti-img-rogue-umlibs_24.2.6643903.bb       | 23 ++++++++++++-------
>  1 file changed, 15 insertions(+), 8 deletions(-)
>
> diff --git a/meta-ti-bsp/recipes-graphics/powervr-umlibs/ti-img-rogue-umlibs_24.2.6643903.bb b/meta-ti-bsp/recipes-graphics/powervr-umlibs/ti-img-rogue-umlibs_24.2.6643903.bb
> index b8153711..565e92eb 100644
> --- a/meta-ti-bsp/recipes-graphics/powervr-umlibs/ti-img-rogue-umlibs_24.2.6643903.bb
> +++ b/meta-ti-bsp/recipes-graphics/powervr-umlibs/ti-img-rogue-umlibs_24.2.6643903.bb
> @@ -3,19 +3,15 @@ HOMEPAGE = "http://git.ti.com/graphics/ti-img-rogue-umlibs"
>  LICENSE = "TI-TFL"
>  LIC_FILES_CHKSUM = "file://${WORKDIR}/git/LICENSE;md5=7232b98c1c58f99e3baa03de5207e76f"
>
> -inherit bin_package
> -
> -INHIBIT_DEFAULT_DEPS = ""
> -
>  PACKAGE_ARCH = "${MACHINE_ARCH}"
>  COMPATIBLE_MACHINE = "j721e|j721s2|j784s4|j742s2|am62xx|am62pxx|j722s"
>
> -PR = "r3"
> +PR = "r4"
>
>  BRANCH = "linuxws/scarthgap/k6.12/${PV}"
>  SRC_URI = "git://git.ti.com/git/graphics/ti-img-rogue-umlibs.git;protocol=https;branch=${BRANCH}"
> -SRCREV = "d578666fc6ecd09f7d6c3431747f1d93d128fe28"
> -S = "${WORKDIR}/git/targetfs/${TARGET_PRODUCT}/${PVR_WS}/${PVR_BUILD}"
> +SRCREV = "1ed9ee185cd876200e6747192854015b8e94a7b0"
> +S = "${WORKDIR}/git"
>
>  TARGET_PRODUCT:j721e = "j721e_linux"
>  TARGET_PRODUCT:j721s2 = "j721s2_linux"
> @@ -54,7 +50,12 @@ def get_file_list(package_list_var, d):
>                      file_list.append(f"{prefix}{package_file}")
>      return " ".join(file_list)
>
> -do_install:append() {
> +EXTRA_OEMAKE += 'BUILD=${PVR_BUILD} TARGET_PRODUCT=${TARGET_PRODUCT} WINDOW_SYSTEM=${PVR_WS}'
> +
> +do_configure[noexec] = "1"
> +do_compile[noexec] = "1"
> +do_install() {
> +    oe_runmake 'DESTDIR=${D}' install
>      if ${@bb.utils.contains('PACKAGECONFIG', 'opengl', 'false', 'true', d)}; then
>          for file in ${@get_file_list('GLES_PACKAGES',  d)}; do
>              rm -rf ${file}
> @@ -78,6 +79,9 @@ do_install:append() {
>
>      # clean up any empty directories
>      find "${D}" -empty -type d -delete
> +
> +    # fix permissions
> +    chown -R root:root "${D}"

Why is this needed ?

>  }
>
>  GLES_PACKAGES = "libgles1-rogue libgles2-rogue libgles3-rogue"
> @@ -141,6 +145,9 @@ INSANE_SKIP:${PN}-tools = "ldflags"
>  FILES:${PN}-firmware = "${base_libdir}/firmware/*"
>  INSANE_SKIP:${PN}-firmware += "arch"
>
> +# common libraries
> +FILES:${PN} = "${libdir}"
> +
>  RRECOMMENDS:${PN} += " \
>      ${PN}-tools \
>  "
> --
> 2.48.1
>
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#18374): https://lists.yoctoproject.org/g/meta-ti/message/18374
> Mute This Topic: https://lists.yoctoproject.org/mt/111668777/1997914
> Group Owner: meta-ti+owner@lists.yoctoproject.org
> Unsubscribe: https://lists.yoctoproject.org/g/meta-ti/unsub [raj.khem@gmail.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>
Randolph Sapp March 12, 2025, 10:28 p.m. UTC | #2
On Wed Mar 12, 2025 at 4:43 PM CDT, Khem Raj wrote:
> On Wed, Mar 12, 2025 at 2:38 PM Randolph Sapp via
> lists.yoctoproject.org <rs=ti.com@lists.yoctoproject.org> wrote:
>>
>> From: Randolph Sapp <rs@ti.com>
>>
>> Well, this is the evil vendor driver. Time to start acting like it.
>> Blacklist the upstream powervr module if this driver is present.
>>
>> This patch also does away with the bin_package components. It was cool
>> and found some interesting bugs, but we might as well start leveraging
>> that Makefile more now that we're starting to get some more common
>> files between devices.
>>
>> Signed-off-by: Randolph Sapp <rs@ti.com>
>> ---
>>  .../ti-img-rogue-umlibs_24.2.6643903.bb       | 23 ++++++++++++-------
>>  1 file changed, 15 insertions(+), 8 deletions(-)
>>
>> diff --git a/meta-ti-bsp/recipes-graphics/powervr-umlibs/ti-img-rogue-umlibs_24.2.6643903.bb b/meta-ti-bsp/recipes-graphics/powervr-umlibs/ti-img-rogue-umlibs_24.2.6643903.bb
>> index b8153711..565e92eb 100644
>> --- a/meta-ti-bsp/recipes-graphics/powervr-umlibs/ti-img-rogue-umlibs_24.2.6643903.bb
>> +++ b/meta-ti-bsp/recipes-graphics/powervr-umlibs/ti-img-rogue-umlibs_24.2.6643903.bb
>> @@ -3,19 +3,15 @@ HOMEPAGE = "http://git.ti.com/graphics/ti-img-rogue-umlibs"
>>  LICENSE = "TI-TFL"
>>  LIC_FILES_CHKSUM = "file://${WORKDIR}/git/LICENSE;md5=7232b98c1c58f99e3baa03de5207e76f"
>>
>> -inherit bin_package
>> -
>> -INHIBIT_DEFAULT_DEPS = ""
>> -
>>  PACKAGE_ARCH = "${MACHINE_ARCH}"
>>  COMPATIBLE_MACHINE = "j721e|j721s2|j784s4|j742s2|am62xx|am62pxx|j722s"
>>
>> -PR = "r3"
>> +PR = "r4"
>>
>>  BRANCH = "linuxws/scarthgap/k6.12/${PV}"
>>  SRC_URI = "git://git.ti.com/git/graphics/ti-img-rogue-umlibs.git;protocol=https;branch=${BRANCH}"
>> -SRCREV = "d578666fc6ecd09f7d6c3431747f1d93d128fe28"
>> -S = "${WORKDIR}/git/targetfs/${TARGET_PRODUCT}/${PVR_WS}/${PVR_BUILD}"
>> +SRCREV = "1ed9ee185cd876200e6747192854015b8e94a7b0"
>> +S = "${WORKDIR}/git"
>>
>>  TARGET_PRODUCT:j721e = "j721e_linux"
>>  TARGET_PRODUCT:j721s2 = "j721s2_linux"
>> @@ -54,7 +50,12 @@ def get_file_list(package_list_var, d):
>>                      file_list.append(f"{prefix}{package_file}")
>>      return " ".join(file_list)
>>
>> -do_install:append() {
>> +EXTRA_OEMAKE += 'BUILD=${PVR_BUILD} TARGET_PRODUCT=${TARGET_PRODUCT} WINDOW_SYSTEM=${PVR_WS}'
>> +
>> +do_configure[noexec] = "1"
>> +do_compile[noexec] = "1"
>> +do_install() {
>> +    oe_runmake 'DESTDIR=${D}' install
>>      if ${@bb.utils.contains('PACKAGECONFIG', 'opengl', 'false', 'true', d)}; then
>>          for file in ${@get_file_list('GLES_PACKAGES',  d)}; do
>>              rm -rf ${file}
>> @@ -78,6 +79,9 @@ do_install:append() {
>>
>>      # clean up any empty directories
>>      find "${D}" -empty -type d -delete
>> +
>> +    # fix permissions
>> +    chown -R root:root "${D}"
>
> Why is this needed ?
>

When you're copying over groups of file the permissions normally end up mangled.
You could install each dirctory manually before the copy to ensure proper
permissions, or you could just chown them after the fact.

The rust package in oe-core does the same thing.

>>  }
>>
>>  GLES_PACKAGES = "libgles1-rogue libgles2-rogue libgles3-rogue"
>> @@ -141,6 +145,9 @@ INSANE_SKIP:${PN}-tools = "ldflags"
>>  FILES:${PN}-firmware = "${base_libdir}/firmware/*"
>>  INSANE_SKIP:${PN}-firmware += "arch"
>>
>> +# common libraries
>> +FILES:${PN} = "${libdir}"
>> +
>>  RRECOMMENDS:${PN} += " \
>>      ${PN}-tools \
>>  "
>> --
>> 2.48.1
>>
>>
>> -=-=-=-=-=-=-=-=-=-=-=-
>> Links: You receive all messages sent to this group.
>> View/Reply Online (#18374): https://lists.yoctoproject.org/g/meta-ti/message/18374
>> Mute This Topic: https://lists.yoctoproject.org/mt/111668777/1997914
>> Group Owner: meta-ti+owner@lists.yoctoproject.org
>> Unsubscribe: https://lists.yoctoproject.org/g/meta-ti/unsub [raj.khem@gmail.com]
>> -=-=-=-=-=-=-=-=-=-=-=-
>>
Khem Raj March 12, 2025, 11:11 p.m. UTC | #3
On Wed, Mar 12, 2025 at 3:28 PM Randolph Sapp <rs@ti.com> wrote:

> On Wed Mar 12, 2025 at 4:43 PM CDT, Khem Raj wrote:
> > On Wed, Mar 12, 2025 at 2:38 PM Randolph Sapp via
> > lists.yoctoproject.org <rs=ti.com@lists.yoctoproject.org> wrote:
> >>
> >> From: Randolph Sapp <rs@ti.com>
> >>
> >> Well, this is the evil vendor driver. Time to start acting like it.
> >> Blacklist the upstream powervr module if this driver is present.
> >>
> >> This patch also does away with the bin_package components. It was cool
> >> and found some interesting bugs, but we might as well start leveraging
> >> that Makefile more now that we're starting to get some more common
> >> files between devices.
> >>
> >> Signed-off-by: Randolph Sapp <rs@ti.com>
> >> ---
> >>  .../ti-img-rogue-umlibs_24.2.6643903.bb       | 23 ++++++++++++-------
> >>  1 file changed, 15 insertions(+), 8 deletions(-)
> >>
> >> diff --git a/meta-ti-bsp/recipes-graphics/powervr-umlibs/
> ti-img-rogue-umlibs_24.2.6643903.bb
> b/meta-ti-bsp/recipes-graphics/powervr-umlibs/
> ti-img-rogue-umlibs_24.2.6643903.bb
> >> index b8153711..565e92eb 100644
> >> --- a/meta-ti-bsp/recipes-graphics/powervr-umlibs/
> ti-img-rogue-umlibs_24.2.6643903.bb
> >> +++ b/meta-ti-bsp/recipes-graphics/powervr-umlibs/
> ti-img-rogue-umlibs_24.2.6643903.bb
> >> @@ -3,19 +3,15 @@ HOMEPAGE = "
> http://git.ti.com/graphics/ti-img-rogue-umlibs"
> >>  LICENSE = "TI-TFL"
> >>  LIC_FILES_CHKSUM =
> "file://${WORKDIR}/git/LICENSE;md5=7232b98c1c58f99e3baa03de5207e76f"
> >>
> >> -inherit bin_package
> >> -
> >> -INHIBIT_DEFAULT_DEPS = ""
> >> -
> >>  PACKAGE_ARCH = "${MACHINE_ARCH}"
> >>  COMPATIBLE_MACHINE = "j721e|j721s2|j784s4|j742s2|am62xx|am62pxx|j722s"
> >>
> >> -PR = "r3"
> >> +PR = "r4"
> >>
> >>  BRANCH = "linuxws/scarthgap/k6.12/${PV}"
> >>  SRC_URI = "git://
> git.ti.com/git/graphics/ti-img-rogue-umlibs.git;protocol=https;branch=${BRANCH}
> <http://git.ti.com/git/graphics/ti-img-rogue-umlibs.git;protocol=https;branch=$%7BBRANCH%7D>
> "
> >> -SRCREV = "d578666fc6ecd09f7d6c3431747f1d93d128fe28"
> >> -S = "${WORKDIR}/git/targetfs/${TARGET_PRODUCT}/${PVR_WS}/${PVR_BUILD}"
> >> +SRCREV = "1ed9ee185cd876200e6747192854015b8e94a7b0"
> >> +S = "${WORKDIR}/git"
> >>
> >>  TARGET_PRODUCT:j721e = "j721e_linux"
> >>  TARGET_PRODUCT:j721s2 = "j721s2_linux"
> >> @@ -54,7 +50,12 @@ def get_file_list(package_list_var, d):
> >>                      file_list.append(f"{prefix}{package_file}")
> >>      return " ".join(file_list)
> >>
> >> -do_install:append() {
> >> +EXTRA_OEMAKE += 'BUILD=${PVR_BUILD} TARGET_PRODUCT=${TARGET_PRODUCT}
> WINDOW_SYSTEM=${PVR_WS}'
> >> +
> >> +do_configure[noexec] = "1"
> >> +do_compile[noexec] = "1"
> >> +do_install() {
> >> +    oe_runmake 'DESTDIR=${D}' install
> >>      if ${@bb.utils.contains('PACKAGECONFIG', 'opengl', 'false',
> 'true', d)}; then
> >>          for file in ${@get_file_list('GLES_PACKAGES',  d)}; do
> >>              rm -rf ${file}
> >> @@ -78,6 +79,9 @@ do_install:append() {
> >>
> >>      # clean up any empty directories
> >>      find "${D}" -empty -type d -delete
> >> +
> >> +    # fix permissions
> >> +    chown -R root:root "${D}"


> >
> > Why is this needed ?
> >
>
> When you're copying over groups of file the permissions normally end up
> mangled.
> You could install each dirctory manually before the copy to ensure proper
> permissions, or you could just chown them after the fact.
>
> The rust package in oe-core does the same thing.


If install utility is used you can control the permissions but in bulk this
might be fine


>
> >>  }
> >>
> >>  GLES_PACKAGES = "libgles1-rogue libgles2-rogue libgles3-rogue"
> >> @@ -141,6 +145,9 @@ INSANE_SKIP:${PN}-tools = "ldflags"
> >>  FILES:${PN}-firmware = "${base_libdir}/firmware/*"
> >>  INSANE_SKIP:${PN}-firmware += "arch"
> >>
> >> +# common libraries
> >> +FILES:${PN} = "${libdir}"
> >> +
> >>  RRECOMMENDS:${PN} += " \
> >>      ${PN}-tools \
> >>  "
> >> --
> >> 2.48.1
> >>
> >>
> >> -=-=-=-=-=-=-=-=-=-=-=-
> >> Links: You receive all messages sent to this group.
> >> View/Reply Online (#18374):
> https://lists.yoctoproject.org/g/meta-ti/message/18374
> >> Mute This Topic: https://lists.yoctoproject.org/mt/111668777/1997914
> >> Group Owner: meta-ti+owner@lists.yoctoproject.org
> >> Unsubscribe: https://lists.yoctoproject.org/g/meta-ti/unsub [
> raj.khem@gmail.com]
> >> -=-=-=-=-=-=-=-=-=-=-=-
> >>
>
>
diff mbox series

Patch

diff --git a/meta-ti-bsp/recipes-graphics/powervr-umlibs/ti-img-rogue-umlibs_24.2.6643903.bb b/meta-ti-bsp/recipes-graphics/powervr-umlibs/ti-img-rogue-umlibs_24.2.6643903.bb
index b8153711..565e92eb 100644
--- a/meta-ti-bsp/recipes-graphics/powervr-umlibs/ti-img-rogue-umlibs_24.2.6643903.bb
+++ b/meta-ti-bsp/recipes-graphics/powervr-umlibs/ti-img-rogue-umlibs_24.2.6643903.bb
@@ -3,19 +3,15 @@  HOMEPAGE = "http://git.ti.com/graphics/ti-img-rogue-umlibs"
 LICENSE = "TI-TFL"
 LIC_FILES_CHKSUM = "file://${WORKDIR}/git/LICENSE;md5=7232b98c1c58f99e3baa03de5207e76f"
 
-inherit bin_package
-
-INHIBIT_DEFAULT_DEPS = ""
-
 PACKAGE_ARCH = "${MACHINE_ARCH}"
 COMPATIBLE_MACHINE = "j721e|j721s2|j784s4|j742s2|am62xx|am62pxx|j722s"
 
-PR = "r3"
+PR = "r4"
 
 BRANCH = "linuxws/scarthgap/k6.12/${PV}"
 SRC_URI = "git://git.ti.com/git/graphics/ti-img-rogue-umlibs.git;protocol=https;branch=${BRANCH}"
-SRCREV = "d578666fc6ecd09f7d6c3431747f1d93d128fe28"
-S = "${WORKDIR}/git/targetfs/${TARGET_PRODUCT}/${PVR_WS}/${PVR_BUILD}"
+SRCREV = "1ed9ee185cd876200e6747192854015b8e94a7b0"
+S = "${WORKDIR}/git"
 
 TARGET_PRODUCT:j721e = "j721e_linux"
 TARGET_PRODUCT:j721s2 = "j721s2_linux"
@@ -54,7 +50,12 @@  def get_file_list(package_list_var, d):
                     file_list.append(f"{prefix}{package_file}")
     return " ".join(file_list)
 
-do_install:append() {
+EXTRA_OEMAKE += 'BUILD=${PVR_BUILD} TARGET_PRODUCT=${TARGET_PRODUCT} WINDOW_SYSTEM=${PVR_WS}'
+
+do_configure[noexec] = "1"
+do_compile[noexec] = "1"
+do_install() {
+    oe_runmake 'DESTDIR=${D}' install
     if ${@bb.utils.contains('PACKAGECONFIG', 'opengl', 'false', 'true', d)}; then
         for file in ${@get_file_list('GLES_PACKAGES',  d)}; do
             rm -rf ${file}
@@ -78,6 +79,9 @@  do_install:append() {
 
     # clean up any empty directories
     find "${D}" -empty -type d -delete
+
+    # fix permissions
+    chown -R root:root "${D}"
 }
 
 GLES_PACKAGES = "libgles1-rogue libgles2-rogue libgles3-rogue"
@@ -141,6 +145,9 @@  INSANE_SKIP:${PN}-tools = "ldflags"
 FILES:${PN}-firmware = "${base_libdir}/firmware/*"
 INSANE_SKIP:${PN}-firmware += "arch"
 
+# common libraries
+FILES:${PN} = "${libdir}"
+
 RRECOMMENDS:${PN} += " \
     ${PN}-tools \
 "