Refactor the MIPI camera driver to support two ACPI device generation modes via a Kconfig choice: 1. Windows/Linux mode (MIPI_ACPI_TYPE_WINDOWS_LINUX): Generates a single ACPI device for the camera sensor and any associated VCM or NVM devices on the same I2C bus. The IPU ACPI device is attached to the iGPU, not standalone. This is the preferred method for Windows and mainline Linux. 2. ChromeOS mode (MIPI_ACPI_TYPE_CHROMEOS): Generates separate ACPI devices for each camera component (sensor, CIO2, VCM, NVM). The IPU ACPI device is generated separately from the iGPU. This maintains compatibility with the existing ChromeOS-style setup. The implementation uses runtime conditionals to select between the two modes. Common helper functions are shared between modes, while device- specific logic is conditional based on the selected ACPI type. The default selection is MIPI_ACPI_TYPE_CHROMEOS for ChromeOS builds and MIPI_ACPI_TYPE_WINDOWS_LINUX otherwise. Change-Id: I0bc4894aff04d6b296011e85d790d624890da055 Signed-off-by: Matt DeVillier <matt.devillier@gmail.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/90522 Reviewed-by: Felix Singer <service+coreboot-gerrit@felixsinger.de> Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Alicja Michalska <ahplka19@gmail.com> |
||
|---|---|---|
| .. | ||
| acpi | ||
| arch | ||
| commonlib | ||
| console | ||
| cpu | ||
| device | ||
| drivers | ||
| ec | ||
| include | ||
| lib | ||
| mainboard | ||
| northbridge | ||
| sbom | ||
| security | ||
| soc | ||
| southbridge | ||
| superio | ||
| vendorcode | ||
| Kconfig | ||