xref: /aosp_15_r20/external/coreboot/util/intelp2m/fields/raw/raw.go (revision b9411a12aaaa7e1e6a6fb7c5e057f44ee179a49c)
1package raw
2
3import (
4	"fmt"
5	"review.coreboot.org/coreboot.git/util/intelp2m/platforms/common"
6)
7
8type FieldMacros struct {}
9
10func (FieldMacros) DecodeDW0() {
11	macro := common.GetMacro()
12	// Do not decode, print as is.
13	macro.Add(fmt.Sprintf("0x%0.8x", macro.Register(common.PAD_CFG_DW0).ValueGet()))
14}
15
16func (FieldMacros) DecodeDW1() {
17	macro := common.GetMacro()
18	// Do not decode, print as is.
19	macro.Add(fmt.Sprintf("0x%0.8x", macro.Register(common.PAD_CFG_DW1).ValueGet()))
20}
21
22// GenerateString - generates the entire string of bitfield macros.
23func (bitfields FieldMacros) GenerateString() {
24	macro := common.GetMacro()
25	macro.Add("_PAD_CFG_STRUCT(").Id().Add(", ")
26	bitfields.DecodeDW0()
27	macro.Add(", ")
28	bitfields.DecodeDW1()
29	macro.Add("),")
30}
31