Furquan Shaikh has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/43777 )
Change subject: mb/google/zork: Remove reset_gpio from bt when not supported ......................................................................
Patch Set 3:
(3 comments)
https://review.coreboot.org/c/coreboot/+/43777/3/src/mainboard/google/zork/v... File src/mainboard/google/zork/variants/baseboard/gpio_baseboard_dalboz.c:
https://review.coreboot.org/c/coreboot/+/43777/3/src/mainboard/google/zork/v... PS3, Line 319: #if !DEVTREE_EARLY Is this check required?
https://review.coreboot.org/c/coreboot/+/43777/3/src/mainboard/google/zork/v... PS3, Line 351: find_dev_nested_path In general, I think it would be better to have a callback from the device_operations in drivers/usb/acpi. But, I understand that this code is supposed to be short-lived. So, it should be fine.
https://review.coreboot.org/c/coreboot/+/43777/3/src/mainboard/google/zork/v... File src/mainboard/google/zork/variants/berknip/variant.c:
https://review.coreboot.org/c/coreboot/+/43777/3/src/mainboard/google/zork/v... PS3, Line 18: variant_devtree_update If I understand correctly, this is the state of things:
* BT_RESET_GPIO (GPIO_14) on Trembyle reference was added in v3+ schematics. * GPIO_14 in pre-v3 is used for USB_OC
* BT_RESET_GPIO (GPIO_143) on Dalboz reference was added in v2.2 schematics * GPIO_143 was unused before that
Based on this, I think we can do this:
1. Dalboz - No need to remove reset_gpio since it is NC pad so there should not be any side-effect.
2. Trembyle - We already have a Kconfig that identifies v3+ schematics (VARIANT_MIN_BOARD_ID_V3_SCHEMATICS). That can be used in common code directly.
- Add call to `variant_bluetooth_update()` in `mainboard_devtree_update()` in mainboard.c - `variant_bluetooth_update()` can be implemented in variants/baseboard/ramstage_common.c and it will do the following: - If CONFIG(BOARD_GOOGLE_BASEBOARD_DALBOZ) --> do nothing, return. - If variant_uses_v3_schematics() --> do nothing, return. - Call `baseboard_remove_bluetooth_reset_gpio()`
Then you don't have to make changes in each variant.