util/intelp2m: Add support for Emmitsburg macro generation

Test: Generated GPIO for ASRock Rack SPC741D8-2L2T/BCM.

Change-Id: Ib7ded47fb1c0b87ebb3cecaf3e41319ac552b797
Signed-off-by: Fabian Meyer <fabian.meyer@student.kit.edu>
Co-authored-by: Yussuf Khalil <yussuf.khalil@kit.edu>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/82204
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Maxim <max.senia.poliak@gmail.com>
This commit is contained in:
Fabian Meyer
2024-05-06 16:54:48 +02:00
committed by Felix Held
parent 2fb6eec811
commit 92e372bb35
5 changed files with 157 additions and 9 deletions

View File

@@ -0,0 +1,27 @@
package ebg
import "review.coreboot.org/coreboot.git/util/intelp2m/platforms/common"
type InheritanceTemplate interface {
GroupNameExtract(line string) (bool, string)
KeywordCheck(line string) bool
}
// GroupNameExtract - This function extracts the group ID, if it exists in a row
// line : string from the configuration file
// return
// bool : true if the string contains a group identifier
// string : group identifier
func (platform PlatformSpecific) GroupNameExtract(line string) (bool, string) {
return common.KeywordsCheck(line,
"GPPC_A", "GPPC_B", "GPPC_S", "GPPC_C", "GPP_D", "GPP_E", "GPPC_H", "GPP_J",
"GPP_I", "GPP_L", "GPP_M", "GPP_N")
}
// KeywordCheck - This function is used to filter parsed lines of the configuration file and
// returns true if the keyword is contained in the line.
// line : string from the configuration file
func (platform PlatformSpecific) KeywordCheck(line string) bool {
isIncluded, _ := common.KeywordsCheck(line, "GPP_", "GPPC_")
return isIncluded
}