最近寫的一個在 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
您好
回覆刪除能教學如何製作efi嗎?
與新增PCA9532支援?
謝謝
不好意思,現在才看到此訊息 ? 你要支援 I2C GPIO ?
刪除作者已經移除這則留言。
回覆刪除作者已經移除這則留言。
回覆刪除您好,方便分享access GPIO方法或programing guide嗎?
回覆刪除目前需在Comet Lake上使用GPIO, 我使用你目前最新版V1.2.2似乎也無法控制H/L
另外我切到Community 1, 前面幾個number的CFG0/CFG1是否有錯誤?
Hi 不好意思,現在才看到訊息 >"<
刪除請問你是用 CML PCH-H 的嗎 ?
另外,我處理 GPIO 的方式其實是用標準作法,就是 FSBA + PortID + Offset 的,只是 FSBA 目前適用固定位置 0xFD00_0000 !
thanks
您好,
刪除是的, 是CML PCH, 另外新版的V1.2.4無法下載
我目前只有試過 W480、Q470 ~
刪除比較擔心是 FSBA 的位置不同,因為我目前是用固定的方式來宣告,如果BIOS有特別變更的話,可能會有問題 ...
v1.2.2 是iGPIO_Plus_v122.efi
回覆刪除v1.2.4 是iGPIO_Plus_v124.Encode
請問要怎樣用 v1.2.4?
作者已經移除這則留言。
回覆刪除使用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 不知道如何使用
您使用的這片開發版應該是 BayTrail 吧? 如果是的話,老實說,我確實沒有特別在 BYT 上長時間測試過,其實在 BYT 的時代,剛好是我切換操作的方式 ...,後續也沒有太多板子可以驗證,我在確認一下 Code ~ 感謝。
刪除我試著透過ACPI MCFG換算P2SB MMIO位置來unhide P2SB, 可是沒有成功, 換算D31/F0倒是會show PCI configuration registers, D31/F1算出來的位置就都是FF, 跟RU 看到的一樣, 可以請問新的獲取P2SB base的方式嗎? 謝謝!
回覆刪除您好,我的方式是透過 Chipset NVS 的變數宣告來得到 P2SB 的 base,缺點就是不同的晶片組都會有不同的宣告,而且可能會需要有 BIOS Code 才能得到精確的結構式宣告。
刪除