Attention is currently required from: Maulik V Vaghela, Tim Wawrzynczak, Nick Vaccaro, Angel Pons, Meera Ravindranath, Patrick Rudolph, EricR Lai. Subrata Banik has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/60774 )
Change subject: soc/intel/common/gpio: Rework PAD config macro to add lock support ......................................................................
Patch Set 4:
(3 comments)
Commit Message:
https://review.coreboot.org/c/coreboot/+/60774/comment/38bac066_213a121e PS3, Line 10: to
space
Ack
File src/soc/intel/common/block/gpio/gpio.c:
https://review.coreboot.org/c/coreboot/+/60774/comment/37404823_2e045442 PS4, Line 345: gpio_lock_pad(cfg->pad, cfg->action);
Doesn't this need to run in SMM?
Ideally you don't need to run unlock to lock operation in SMM mode. But if you are programming lock config at the later stage when sideband access restriction is applied (after postboot_sai), then only way to use sideband access is inside SMM. With this CL, we are pulling PAD lock configuration prior to FSP-S as part of GPIO PAD config so, hopefully we don't need to use SBI. (Eric is helping me on debug/enabling this 😊)
Although GPIO BWG (doc: 630603) recommends to perform lock to unlock operation inside SMM. But it also says, one can even perform this operation outside SMM as well,
`Unlock the GPIO PIN, configure the desired value and then lock it again prior to enabling SMI using non-SMM code.`
File src/soc/intel/common/block/include/intelblocks/gpio.h:
https://review.coreboot.org/c/coreboot/+/60774/comment/40772bb4_d9092d66 PS3, Line 79: gpio_lock_action action
use tab to align this
Ack