NXP S32V234 GPU 驅動編譯

大家好,

今天要來介紹一下S32V234 平台上的 GPU 驅動要怎麼製作及使用。首先, S32V234 2平台的 GPU 驅動名稱為 galcore.ko ,要使用 GPU 驅動前,我們要準備好 U-Boot & Kernel 的環境。這邊簡單介紹一下 GPU 驅動在 Stand Alone 的編譯方式,在 Yocto Project 的編譯方式有機會我再另外出一篇專文來說明。

取得交叉編譯器 GCC :
1. 依照不同 BSP 版本取的對應的交叉編譯器:

$ wget

for BSP14.0 / BSP15.0
https://releases.linaro.org/archive/15.05/components/toolchain/binaries/aarch64-linux-gnu/gcc-linaro-4.9-2015.05-x86_64_aarch64-linux-gnu.tar.xz

for BSP16.0 / BSP16.1 / BSP17.0 / BSP18.0 / BSP19.0 / BSP20.0
https://releases.linaro.org/components/toolchain/binaries/6.3-2017.05/aarch64-linux-gnu/gcc-linaro-6.3.1-2017.05-x86_64_aarch64-linux-gnu.tar.xz

2. 解壓縮交叉編譯器:

$ tar xf gcc-linato-.tar.xz

取得及編譯 U-Boot Source Code :
1. git clone :

$ git clone https://source.codeaurora.org/external/autobsps32/u-boot
$ cd u-boot

2. 確認 tag :

$ git tag -l | grep bsp


3. git checkout (依照上述步驟選擇對應 BSP 版本的 tag):

$ git checkout -b alb/master

4. 設定 U-Boot default config :

$ make ARCH=aarch64 CROSS_COMPILE=/bin/aarch64-linux-gnu- s32v234evb_defconfig

取得並編譯 Kernel :
1. git clone :

$ git clone https://source.codeaurora.org/external/autobsps32/linux
$ cd linux

2. 確認 tag :

$ git tag -l | grep bsp


3. git checkout (依照上述步驟選擇對應 BSP 版本的 tag):

$ git checkout -b alb/master


4. 設定 Kernel default config :

$ make ARCH=arm64 CROSS_COMPILE=/bin/aarch64-linux-gnu- s32v234evb_defconfig

5. 編譯:

$ make ARCH=arm64 CROSS_COMPILE=/bin/aarch64-linux-gnu-
取得並編譯 GPU 驅動:
1. git clone :

$ git clone https://source.codeaurora.org/external/autobsps32/galcore
$ cd galcore

2. 確認 tag :

$ git tag –l


3. git checkout (依照上述步驟選擇對應 BSP 版本的 tag):

$ git checkout -b alb/master

4. 編譯:

$ make ARCH=arm64 TOOLCHAIN= CROSS_COMPILE=aarch64-linux-gnu-  KERNEL_DIR=

完成上述步驟後,就可以在 Host PC 上得到 galcore.ko 的 GPU 驅動模組。接下來的步驟就可以把 galcore.ko 複製到 S32V234 開發板上使用。本篇專文的附加檔案提供了 NXP 原廠提供的 GPU_Hello 的 Demo 執行檔,在啟用 GPU 驅動模組後,可以拿來測試 GPU 驅動模組是否可以正常使用。

在 S32V234 開發板上使用 GPU 驅動模組:
1. 將 galcore.ko 複製到 /s32v234 路徑下:

# cp galcore.ko /s32v234

2. 載入 galcore.ko ,並且設定連續的記憶體空間為 32MB :

# cd /s32v234
# insmod galcore.ko contiguousSize=0x2000000

執行 GPU_Hello Demo :
1. 將 gpu_hello.elf 複製到開發板上:

# cp gpu_hello.elf ~/

2. 執行 gpu_hello.elf :

# cd ~/
#./gpu_hello.elf
此時就可以在畫面輸出上看到旋轉的彩色三角形。

以上就是本篇專文的內容,如果大家還有想知道哪些 S32V GPU 的使用,可以在下方回覆我,如果我有經驗的話,可以幫您解答,或是安排下次專文的內容說明。

★博文內容均由個人提供,與平台無關,如有違法或侵權,請與網站管理員聯繫。

★文明上網,請理性發言。內容一周內被舉報5次,發文人進小黑屋喔~

評論

jian2020

jian2020

2020年5月8日
gpu_hello.elf 在哪里呢?