2017年8月15日 星期二

[UEFI] iGPIO+ ,提供快速取得 GPIO 資訊的工具。

最近寫的一個在 UEFI 下的程式,功能是可以觀看 Chipset 的 GPIO 組態,主要是希望在偵錯的時候可以用比較快的方式取得這些資訊,畢竟新晶片組的GPIO存取方式真的是給他 ....
多樣化 XD,也希望大家在使用上如有問題的話也不吝賜教,讓工具可以進化 ^^

目前支援的晶片組:
1. BayTrail
2. Apollo Lake
3. Denverton
4. SKL/KBL PCH and ULT
5. Intel 300 series PCH (Cannon Point)
6. AMD V1000 SoC
7. Intel 400 series PCH (Comet Lake PCH H/LP/V)
8. Intel Elkhart Lake SoC
9. Intel 600/700 series PCH (ADL-S / RPL-S)

預計支援的晶片組:
1. etc ...

目前只支援 64Bit 的 Shell。

修改紀錄:

v2.0.0 - 2022.05.13
1. 支援 Alder Lake / Raptor Lake 對應的 600/700 series PCH。
2. 修正 IO/MEM 存取程序,解決新平台無法動作的問題。
3. 支援 Shell v2.0。

P.S. 更改取得 P2SB base 的方式,避免因 P2SB PCIE controller 被隱藏而取不到位置。

v1.2.4 - 2021.08.13
1. 支援 Elkhart Lake SoC。

v1.2.2
1. 支援 Comet Lake 對應的 400 Series PCH H/LP/V。
2. 修正 PCH 300 GPIO D Group 暫存器位置錯誤問題。

v1.2.1
1. 支援 Coffee Lake 對應的 300 Series PCH。
2. 支援 AMD Ryzen Embedded V1000 SoC。

v1.2.0
1. Realtime status 使用多頁顯示(APL Only)。
2. 將 GPIO 的 Base 與 Port ID 同步顯示到即時窗。

v1.1.1
1. 支援 SKL/KBL PCH and SoC

v1.1.0
1. 支援 Denverton SoC
2. 支援快速鍵 "S",可快速切換 GPIO 的 TX/RX 狀態。

v1.0.1
1. 第一次釋出。


解壓縮密碼 : FoxBloger or Fox1234

點我下載 v1.0.1
點我下載 v1.1.0
點我下載 v1.1.1
點我下載 v1.2.0
點我下載 v1.2.1 
點我下載 v1.2.2
點我下載 v1.2.4
點我下載 v2.0.0 



12 則留言:

  1. 您好
    能教學如何製作efi嗎?
    與新增PCA9532支援?
    謝謝

    回覆刪除
    回覆
    1. 不好意思,現在才看到此訊息 ? 你要支援 I2C GPIO ?

      刪除
  2. 作者已經移除這則留言。

    回覆刪除
  3. 作者已經移除這則留言。

    回覆刪除
  4. 您好,方便分享access GPIO方法或programing guide嗎?
    目前需在Comet Lake上使用GPIO, 我使用你目前最新版V1.2.2似乎也無法控制H/L
    另外我切到Community 1, 前面幾個number的CFG0/CFG1是否有錯誤?

    回覆刪除
    回覆
    1. Hi 不好意思,現在才看到訊息 >"<

      請問你是用 CML PCH-H 的嗎 ?
      另外,我處理 GPIO 的方式其實是用標準作法,就是 FSBA + PortID + Offset 的,只是 FSBA 目前適用固定位置 0xFD00_0000 !

      thanks

      刪除
    2. 您好,

      是的, 是CML PCH, 另外新版的V1.2.4無法下載

      刪除
    3. 我目前只有試過 W480、Q470 ~
      比較擔心是 FSBA 的位置不同,因為我目前是用固定的方式來宣告,如果BIOS有特別變更的話,可能會有問題 ...

      刪除
  5. v1.2.2 是iGPIO_Plus_v122.efi
    v1.2.4 是iGPIO_Plus_v124.Encode
    請問要怎樣用 v1.2.4?

    回覆刪除
  6. 作者已經移除這則留言。

    回覆刪除
  7. 使用1.2.2 在MinnowBoard Max 板上https://mjoldfield.com/atelier/2014/12/mbmx-gpio.html
    無法控制GPIO_S5[02],但是在OS上
    無論是 linux 或是win 10, PIN GPIO_S5[02] H/L 控制都正常

    V1.2.2 不是每一PIN 控制都正常,還沒有找到原因
    V1.2.4 不知道如何使用

    回覆刪除
    回覆
    1. 您使用的這片開發版應該是 BayTrail 吧? 如果是的話,老實說,我確實沒有特別在 BYT 上長時間測試過,其實在 BYT 的時代,剛好是我切換操作的方式 ...,後續也沒有太多板子可以驗證,我在確認一下 Code ~ 感謝。

      刪除

[UEFI][APP] Utility to Send IPMI Command by KCS in UEFI Shell

 因為之前有在網路上看到有人寫了可以於 UEFI Shell 下發送命令的程式,因此自己也試試是否可以寫出類似功能的程式,如同 Linux 上的 ipmicmd 依樣,但主要可以在 UEFI Shell 下進行,可以方便開發人員快速的送出命令,便於測試。 功能 : 支援...