diff options
author | Denys Dmytriyenko <denys@ti.com> | 2013-09-12 21:23:01 -0400 |
---|---|---|
committer | Denys Dmytriyenko <denys@ti.com> | 2013-09-13 12:07:48 -0400 |
commit | bb8ab63ea937951ef4e53b60237319df9bd7822b (patch) | |
tree | 1309bc783ec3f9d05512ec79b2b881f05e18dce8 /recipes-bsp/powervr-drivers | |
parent | ed4ebd0b7c7a4fe24601144f03c4ecb438128698 (diff) | |
download | meta-ti-bb8ab63ea937951ef4e53b60237319df9bd7822b.tar.gz |
omap3-sgx-modules: add automatic selection between softfp and hardfp binaries
This is based on the work by Franklin Cooper, with following changes:
* Cleanup and simplify the logic
* Reduce the number of Python calls
* Expand support from Raw to X11 variant
The original description:
* The Graphics SDK includes some binaries that are prebuilt.
* These prebuilt binaries come in two versions of the Graphics SDK. By default
the prebuilt binaries are built using a softfp toolchain. A separate hardfp
Graphics SDK exist that contains binaries that are prebuilt with a hardfp
toolchain.
* Add support for both by checking to see if the toolchain used in the OE build
is using a hardfp or softfp toolchain.
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
Cc: Franklin S. Cooper Jr <fcooper@ti.com>
Acked-by: Chase Maupin <chase.maupin@ti.com>
Diffstat (limited to 'recipes-bsp/powervr-drivers')
-rw-r--r-- | recipes-bsp/powervr-drivers/omap3-sgx-modules-x11_4.09.00.01.bb | 18 | ||||
-rw-r--r-- | recipes-bsp/powervr-drivers/omap3-sgx-modules_4.09.00.01.bb | 20 |
2 files changed, 30 insertions, 8 deletions
diff --git a/recipes-bsp/powervr-drivers/omap3-sgx-modules-x11_4.09.00.01.bb b/recipes-bsp/powervr-drivers/omap3-sgx-modules-x11_4.09.00.01.bb index 9134e61d..fd798189 100644 --- a/recipes-bsp/powervr-drivers/omap3-sgx-modules-x11_4.09.00.01.bb +++ b/recipes-bsp/powervr-drivers/omap3-sgx-modules-x11_4.09.00.01.bb | |||
@@ -7,19 +7,29 @@ require ../../recipes-ti/includes/ti-eula-unpack.inc | |||
7 | 7 | ||
8 | SGXPV = "4_09_00_01" | 8 | SGXPV = "4_09_00_01" |
9 | IMGPV = "1.9.2188537" | 9 | IMGPV = "1.9.2188537" |
10 | BINFILE = "Graphics_SDK_setuplinux_${SGXPV}_minimal_demos.bin" | ||
11 | 10 | ||
12 | inherit module | 11 | inherit module |
13 | 12 | ||
14 | MACHINE_KERNEL_PR_append = "b" | 13 | MACHINE_KERNEL_PR_append = "c" |
15 | PR = "${MACHINE_KERNEL_PR}" | 14 | PR = "${MACHINE_KERNEL_PR}" |
16 | 15 | ||
17 | DEFAULT_PREFERENCE = "-1" | 16 | DEFAULT_PREFERENCE = "-1" |
18 | 17 | ||
18 | # Select the corresponding hardfp/softfp filename and checksums based on tune flags | ||
19 | BINFILE_SOFTFP = "Graphics_SDK_setuplinux_${SGXPV}_minimal_demos.bin" | ||
20 | MD5SUM_SOFTFP = "bd35e9d8843aff3a2aca9d41e7db1c7d" | ||
21 | SHA256SUM_SOFTFP = "eb37f75ddde4640b09e760fa86e689beb394330ecdf68786188c34f249247647" | ||
22 | |||
23 | BINFILE_HARDFP = "Graphics_SDK_setuplinux_${SGXPV}_hardfp_minimal_demos.bin" | ||
24 | MD5SUM_HARDFP = "c9f656dce062d1ab10afffd4dfb71b67" | ||
25 | SHA256SUM_HARDFP = "dbfeba8e1298f139495816334edec1455e6b49b1e11bd1b2aa0a888e5788bb6b" | ||
26 | |||
27 | BINFILE = "${@base_contains('TUNE_FEATURES', 'callconvention-hard', '${BINFILE_HARDFP}', '${BINFILE_SOFTFP}', d)}" | ||
28 | |||
19 | SRC_URI = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/gfxsdk/${SGXPV}/exports/${BINFILE}" | 29 | SRC_URI = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/gfxsdk/${SGXPV}/exports/${BINFILE}" |
20 | 30 | ||
21 | SRC_URI[md5sum] = "bd35e9d8843aff3a2aca9d41e7db1c7d" | 31 | SRC_URI[md5sum] = "${@base_contains('TUNE_FEATURES', 'callconvention-hard', '${MD5SUM_HARDFP}', '${MD5SUM_SOFTFP}', d)}" |
22 | SRC_URI[sha256sum] = "eb37f75ddde4640b09e760fa86e689beb394330ecdf68786188c34f249247647" | 32 | SRC_URI[sha256sum] = "${@base_contains('TUNE_FEATURES', 'callconvention-hard', '${SHA256SUM_HARDFP}', '${SHA256SUM_SOFTFP}', d)}" |
23 | 33 | ||
24 | TI_BIN_UNPK_WDEXT="/Graphics_SDK_${SGXPV}" | 34 | TI_BIN_UNPK_WDEXT="/Graphics_SDK_${SGXPV}" |
25 | S = "${WORKDIR}${TI_BIN_UNPK_WDEXT}/GFX_Linux_KM" | 35 | S = "${WORKDIR}${TI_BIN_UNPK_WDEXT}/GFX_Linux_KM" |
diff --git a/recipes-bsp/powervr-drivers/omap3-sgx-modules_4.09.00.01.bb b/recipes-bsp/powervr-drivers/omap3-sgx-modules_4.09.00.01.bb index 399374d4..1c8718c1 100644 --- a/recipes-bsp/powervr-drivers/omap3-sgx-modules_4.09.00.01.bb +++ b/recipes-bsp/powervr-drivers/omap3-sgx-modules_4.09.00.01.bb | |||
@@ -7,19 +7,29 @@ require ../../recipes-ti/includes/ti-eula-unpack.inc | |||
7 | 7 | ||
8 | SGXPV = "4_09_00_01" | 8 | SGXPV = "4_09_00_01" |
9 | IMGPV = "1.9.2188537" | 9 | IMGPV = "1.9.2188537" |
10 | BINFILE = "Graphics_SDK_setuplinux_${SGXPV}_minimal_demos.bin" | ||
11 | 10 | ||
12 | inherit module | 11 | inherit module |
13 | 12 | ||
14 | MACHINE_KERNEL_PR_append = "a" | 13 | MACHINE_KERNEL_PR_append = "b" |
15 | PR = "${MACHINE_KERNEL_PR}" | 14 | PR = "${MACHINE_KERNEL_PR}" |
16 | 15 | ||
17 | DEFAULT_PREFERENCE = "-1" | 16 | DEFAULT_PREFERENCE = "-1" |
18 | 17 | ||
18 | # Select the corresponding hardfp/softfp filename and checksums based on tune flags | ||
19 | BINFILE_SOFTFP = "Graphics_SDK_setuplinux_${SGXPV}_minimal_demos.bin" | ||
20 | MD5SUM_SOFTFP = "bd35e9d8843aff3a2aca9d41e7db1c7d" | ||
21 | SHA256SUM_SOFTFP = "eb37f75ddde4640b09e760fa86e689beb394330ecdf68786188c34f249247647" | ||
22 | |||
23 | BINFILE_HARDFP = "Graphics_SDK_setuplinux_${SGXPV}_hardfp_minimal_demos.bin" | ||
24 | MD5SUM_HARDFP = "c9f656dce062d1ab10afffd4dfb71b67" | ||
25 | SHA256SUM_HARDFP = "dbfeba8e1298f139495816334edec1455e6b49b1e11bd1b2aa0a888e5788bb6b" | ||
26 | |||
27 | BINFILE = "${@base_contains('TUNE_FEATURES', 'callconvention-hard', '${BINFILE_HARDFP}', '${BINFILE_SOFTFP}', d)}" | ||
28 | |||
19 | SRC_URI = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/gfxsdk/${SGXPV}/exports/${BINFILE}" | 29 | SRC_URI = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/gfxsdk/${SGXPV}/exports/${BINFILE}" |
20 | 30 | ||
21 | SRC_URI[md5sum] = "bd35e9d8843aff3a2aca9d41e7db1c7d" | 31 | SRC_URI[md5sum] = "${@base_contains('TUNE_FEATURES', 'callconvention-hard', '${MD5SUM_HARDFP}', '${MD5SUM_SOFTFP}', d)}" |
22 | SRC_URI[sha256sum] = "eb37f75ddde4640b09e760fa86e689beb394330ecdf68786188c34f249247647" | 32 | SRC_URI[sha256sum] = "${@base_contains('TUNE_FEATURES', 'callconvention-hard', '${SHA256SUM_HARDFP}', '${SHA256SUM_SOFTFP}', d)}" |
23 | 33 | ||
24 | TI_BIN_UNPK_WDEXT="/Graphics_SDK_${SGXPV}" | 34 | TI_BIN_UNPK_WDEXT="/Graphics_SDK_${SGXPV}" |
25 | S = "${WORKDIR}${TI_BIN_UNPK_WDEXT}/GFX_Linux_KM" | 35 | S = "${WORKDIR}${TI_BIN_UNPK_WDEXT}/GFX_Linux_KM" |
@@ -41,6 +51,8 @@ MODULESLOCATION_ti33x = "dc_ti335x_linux" | |||
41 | 51 | ||
42 | MAKE_TARGETS = " BUILD=${PVRBUILD} TI_PLATFORM=${TI_PLATFORM} SUPPORT_XORG=0" | 52 | MAKE_TARGETS = " BUILD=${PVRBUILD} TI_PLATFORM=${TI_PLATFORM} SUPPORT_XORG=0" |
43 | 53 | ||
54 | MAKE_TARGETS_append_ti33x = " PM_RUNTIME=1" | ||
55 | |||
44 | do_install() { | 56 | do_install() { |
45 | mkdir -p ${D}/lib/modules/${KERNEL_VERSION}/kernel/drivers/gpu/pvr | 57 | mkdir -p ${D}/lib/modules/${KERNEL_VERSION}/kernel/drivers/gpu/pvr |
46 | cp ${S}/pvrsrvkm.ko \ | 58 | cp ${S}/pvrsrvkm.ko \ |