Attention is currently required from: Raul Rangel, Furquan Shaikh, Martin Roth, Rob Barnes. Tim Wawrzynczak has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/54134 )
Change subject: mb/google/guybrush: Add SoC thermal zone ......................................................................
Patch Set 1:
(1 comment)
File src/mainboard/google/guybrush/variants/baseboard/devicetree.cb:
https://review.coreboot.org/c/coreboot/+/54134/comment/af8be806_45c3dc62 PS1, Line 55: chip drivers/acpi/thermal_zone : register "name" = ""SOC"" : : register "temperature_sensor_id" = "0" : : register "polling_period" = "10000" : : # EC is configured to power off the system at 92C, so add one degree of buffer : # so the OS can gracefully shutdown : register "critical_temperature" = "91" : : # EC is configured to assert PROCHOT at 90C. That drastically lowers : # performance. Instead we will tell the OS to start throttling the CPUs at : # 85C in hopes that we don't hit the PROCHOT limit. : register "passive_config" = "{ : .temperature = 85, : .time_constant_1 = 2, : .time_constant_2 = 5, : .time_sampling_period = 2000, : }" : : device generic 0 on end : end
I thought about placing it under the EC, but I wasn't quite convinced: […]
Another suggestion: The new alias syntax allows you to add a pointer to another `struct device` like https://review.coreboot.org/plugins/gitiles/coreboot/+/refs/heads/master/src...
example here could look like: add this to config structure in chip.h ``` DEVTREE_CONST struct device *temp_controller; ```
and in devicetree: ``` chip drivers/acpi/thermal_zone use chrome_ec as temp_controller register "name" = ""SOC"" ... end ... device ref lpc_bridge on chip ec/google/chromeec device pnp 0c09.0 alias chrome_ec on end end end ```
then the generation code can use the struct device that points to the EC, and use `acpi_device_path_join` ``` const char *path[40]; acpi_device_path_join(config->temp_controller, "TSRD"); ```