Work note: eMenlow Bring Up

最近終於拿到第一版 Atom Z530 + Poulsbo US15W(SCH, System Control Hub, 即傳統的南北橋合一版) board,但是卻卡關在Power sequence 很久一直進不到BIOS.

該版預計Power Sequence control 最後會由 EC(Embedded controller)實做這部份, 但是一開始同樣使用 intel refernce design 的 CPLD code. 也實際量測各種信號的時序, 皆如同參考設計, 但是一直不會跑完整個流程, 每次都是發出RST_N, 換SCH本身要發 CPU Power Good and CPU Reset 給Atom processor這里發不出來, 跟據Intel 的不齊全文件, 得知當 RST_N 發出來後, SCH 會去ROM/BIOS space 讀 CMC(Chipset Microcode Code), 將SCH本身做正確的初始化.

SCH  透過GPIO 3/0 的狀態去引導, 從那個 address讀 CMC, 這檢查過很多遍, 最後HW連 LA都搬出來, 確認過確實有讀到CMC, Intel 參考設計是 0xFFFD0000

最後發現因為該版是DRAM 直接Mount 在板上, 其SPD 的資料未寫, 導致SCH無法正確初始化, 這個問題有兩個選擇, 透過寫入正確的SPD資料, 或是使用Intel 的 SoftStraps tools 可以去modify 對應的設定!

這是跟傳統平台, 進入BIOS才初始Memory controller 有很大的不同, 導致一開始Debug 方向錯誤, 多花一兩週工作時間.

Work note: eMenlow Bring Up 有 “ 10 則迴響 ”

      1. 我只是PC爱好者,近来在折腾Coreboot,需要这个CMC。相同芯片组,但不同厂商的CMC是相同的吗?可以通用吗?谢谢。

    1. CMC應該是相同的(有版本之分, 還有些設東西會依據HW設計可以modify的) 所以如果你手上已經有可以跑的版子, 可以去自己 dump 該板子的 CMC binary(64KB), 然後放到 Coreboot內用, 據我了解 Coreboot有 porting Menlow platform了 只要有該binary 就可以了

      1. 64K?说一下我现在的情况:我的那个板子本来是跑EFI的(糟糕的很,没有CSM,装不了xp),现在有这个EFI的文件备份(AMI),分解这个文件得到很多ROM文件,但没有一个是64K的…….苦苦探索中。

  1. 應該你boot後, 就可以dump FFFD0000 – FFFDFFFF 位置的內容就可以, 或是從 EFI的備份找, 它應該是個ROM hole(AMI的EFI code我不清處它的format) , 當然除非你的版子有改過, 不見得一定是 0xFFFD0000, 不過一般不會改它, 而這個CMC必須存在BIOS之前, 所以它一定是在ROM的固定位址

    因此有可能的話, 直接讀出你的ROM image 去dump 是比較快的方法

      1. 如果你之後還是找不到的話, 你可以寄給我你的ROM IMAGE FILE, 可以幫你找找,
        如果需要可以寄到 kunyi.chen (at) gmail.com 給我!, 先祝你好運了!

發表留言