public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
* [edk2-devel] edk2-platforms: developing Whitley Lake package
@ 2023-11-01  7:20 Alireza Banejad
  2023-11-04 23:53 ` Nate DeSimone
  0 siblings, 1 reply; 2+ messages in thread
From: Alireza Banejad @ 2023-11-01  7:20 UTC (permalink / raw)
  To: devel

Hello everyone,
I am trying to port edk2-platforms for an IceLake-SP board which uses
a C621a chipset. digging into the repo I found out that the most
compatible board inside WhitelyLakePkg is the WilsonCityRvp (The
ReadMe file inside Platform/Intel explicitly says it is IceLake-SP ).
I built it but it didn't work at all. looking into the Uba/Pei files I
found this gpio table:
#define GPIO_SKL_H_GPP_A0 0x01000000
#define GPIO_SKL_H_GPP_A1 0x01000001
#define GPIO_SKL_H_GPP_A2 0x01000002
#define GPIO_SKL_H_GPP_A3 0x01000003
#define GPIO_SKL_H_GPP_A4 0x01000004
#define GPIO_SKL_H_GPP_A5 0x01000005
#define GPIO_SKL_H_GPP_A6 0x01000006
#define GPIO_SKL_H_GPP_A7 0x01000007
#define GPIO_SKL_H_GPP_A8 0x01000008
#define GPIO_SKL_H_GPP_A9 0x01000009
#define GPIO_SKL_H_GPP_A10 0x0100000A
#define GPIO_SKL_H_GPP_A11 0x0100000B
#define GPIO_SKL_H_GPP_A12 0x0100000C
#define GPIO_SKL_H_GPP_A13 0x0100000D
#define GPIO_SKL_H_GPP_A14 0x0100000E
#define GPIO_SKL_H_GPP_A15 0x0100000F
#define GPIO_SKL_H_GPP_A16 0x01000010
#define GPIO_SKL_H_GPP_A17 0x01000011
...
Looking at the macro names I think this is meant for the SkyLake-H
platform but why does WilsonCityRvp(IceLake-SP) use this table as
well? Also, I am having a hard time understanding the values assigned
for these macros? are they the offset for each gpio register? because
in the c620 series datasheet the offset of gpio registers (A to L)
starts from 0x400.


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#110469): https://edk2.groups.io/g/devel/message/110469
Mute This Topic: https://groups.io/mt/102314314/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-



^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [edk2-devel] edk2-platforms: developing Whitley Lake package
  2023-11-01  7:20 [edk2-devel] edk2-platforms: developing Whitley Lake package Alireza Banejad
@ 2023-11-04 23:53 ` Nate DeSimone
  0 siblings, 0 replies; 2+ messages in thread
From: Nate DeSimone @ 2023-11-04 23:53 UTC (permalink / raw)
  To: devel@edk2.groups.io, alibanejad1376@gmail.com

Hi Alireza,

The GPIO table for Wilson City is stored in this file:

edk2-platforms/Platform/Intel/WhitleyOpenBoardPkg/Uba/UbaMain/TypeWilsonCityRP/Pei/GpioTable.c

Note that IceLake-SP (ICX) pairs with the Lewisburg (LBG) PCH. The pin definitions for LBG come from this file: edk2-platforms/Silicon/Intel/WhitleySiliconPkg/Pch/SouthClusterLbg/Include/GpioPinsSklH.h

You are right that the GPIO pin definitions are very similar to the SunrisePoint-H (SPT-H) PCH definitions, which are here: edk2-platforms/Silicon/Intel/KabylakeSiliconPkg/Pch/Include/GpioPinsSklH.h

But if you compare the two files you will see that the GPIO pins are not identical. LBG was used for 3 generations of Xeon: SkyLake-SP, Cascade Lake, and IceLake-SP/Cooper Lake. The lineage of LBG being a descendant from SPT probably makes more sense now.

Hope that helps,
Nate

-----Original Message-----
From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of Alireza Banejad
Sent: Wednesday, November 1, 2023 12:21 AM
To: devel@edk2.groups.io
Subject: [edk2-devel] edk2-platforms: developing Whitley Lake package

Hello everyone,
I am trying to port edk2-platforms for an IceLake-SP board which uses a C621a chipset. digging into the repo I found out that the most compatible board inside WhitelyLakePkg is the WilsonCityRvp (The ReadMe file inside Platform/Intel explicitly says it is IceLake-SP ).
I built it but it didn't work at all. looking into the Uba/Pei files I found this gpio table:
#define GPIO_SKL_H_GPP_A0 0x01000000
#define GPIO_SKL_H_GPP_A1 0x01000001
#define GPIO_SKL_H_GPP_A2 0x01000002
#define GPIO_SKL_H_GPP_A3 0x01000003
#define GPIO_SKL_H_GPP_A4 0x01000004
#define GPIO_SKL_H_GPP_A5 0x01000005
#define GPIO_SKL_H_GPP_A6 0x01000006
#define GPIO_SKL_H_GPP_A7 0x01000007
#define GPIO_SKL_H_GPP_A8 0x01000008
#define GPIO_SKL_H_GPP_A9 0x01000009
#define GPIO_SKL_H_GPP_A10 0x0100000A
#define GPIO_SKL_H_GPP_A11 0x0100000B
#define GPIO_SKL_H_GPP_A12 0x0100000C
#define GPIO_SKL_H_GPP_A13 0x0100000D
#define GPIO_SKL_H_GPP_A14 0x0100000E
#define GPIO_SKL_H_GPP_A15 0x0100000F
#define GPIO_SKL_H_GPP_A16 0x01000010
#define GPIO_SKL_H_GPP_A17 0x01000011
...
Looking at the macro names I think this is meant for the SkyLake-H platform but why does WilsonCityRvp(IceLake-SP) use this table as well? Also, I am having a hard time understanding the values assigned for these macros? are they the offset for each gpio register? because in the c620 series datasheet the offset of gpio registers (A to L) starts from 0x400.







-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#110674): https://edk2.groups.io/g/devel/message/110674
Mute This Topic: https://groups.io/mt/102314314/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-



^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2023-11-04 23:53 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-11-01  7:20 [edk2-devel] edk2-platforms: developing Whitley Lake package Alireza Banejad
2023-11-04 23:53 ` Nate DeSimone

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox