Previously, `KconfigBool` was used to generate selects (if the option value is true) or bool option overrides (if the option value is false). This approach is not particularly flexible: one cannot have conditions for selects, and bool option overrides can only disable options. Introduce a new `KconfigStatement` map of Kconfig names to conditions. An empty condition string means that no condition is to be added. Also update uses of `KconfigBool` to `KconfigSelect` to preserve autoport's current behaviour. TEST=Generated files for HP ProBook 4740s (Sandy Bridge) do not change. Change-Id: I88666ce0d761c1d393ac602196229ec0878fed42 Signed-off-by: Angel Pons <th3fanbus@gmail.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/90585 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Matt DeVillier <matt.devillier@gmail.com>
39 lines
1.3 KiB
Go
39 lines
1.3 KiB
Go
package main
|
|
|
|
import "fmt"
|
|
|
|
type rce823 struct {
|
|
variant string
|
|
}
|
|
|
|
func (r rce823) Scan(ctx Context, addr PCIDevData) {
|
|
if addr.Dev == 0 && addr.Func == 0 {
|
|
cur := DevTreeNode{
|
|
Chip: "drivers/ricoh/rce822",
|
|
Comment: "Ricoh cardreader",
|
|
Registers: map[string]string{
|
|
|
|
"sdwppol": fmt.Sprintf("%d", (addr.ConfigDump[0xfb]&2)>>1),
|
|
"disable_mask": fmt.Sprintf("0x%x", addr.ConfigDump[0xcb]),
|
|
},
|
|
PCISlots: []PCISlot{
|
|
PCISlot{PCIAddr: PCIAddr{Bus: addr.Bus, Dev: 0x0, Func: 0}, writeEmpty: false},
|
|
PCISlot{PCIAddr: PCIAddr{Bus: addr.Bus, Dev: 0x0, Func: 1}, writeEmpty: false},
|
|
PCISlot{PCIAddr: PCIAddr{Bus: addr.Bus, Dev: 0x0, Func: 2}, writeEmpty: false},
|
|
PCISlot{PCIAddr: PCIAddr{Bus: addr.Bus, Dev: 0x0, Func: 3}, writeEmpty: false},
|
|
PCISlot{PCIAddr: PCIAddr{Bus: addr.Bus, Dev: 0x0, Func: 4}, writeEmpty: false},
|
|
PCISlot{PCIAddr: PCIAddr{Bus: addr.Bus, Dev: 0x0, Func: 5}, writeEmpty: false},
|
|
PCISlot{PCIAddr: PCIAddr{Bus: addr.Bus, Dev: 0x0, Func: 6}, writeEmpty: false},
|
|
PCISlot{PCIAddr: PCIAddr{Bus: addr.Bus, Dev: 0x0, Func: 7}, writeEmpty: false},
|
|
},
|
|
}
|
|
PutPCIChip(addr, cur)
|
|
}
|
|
PutPCIDev(addr, "Ricoh SD card reader")
|
|
KconfigSelect["DRIVERS_RICOH_RCE822"] = ""
|
|
}
|
|
|
|
func init() {
|
|
RegisterPCI(0x1180, 0xe822, rce823{})
|
|
RegisterPCI(0x1180, 0xe823, rce823{})
|
|
}
|