All boards that are trying to use MIPI panels eventually run into the problem that they need to store physical parameters and a list of DCS initialization commands for each panel, and these commands can be very different (e.g. a large amount of very short commands, a few very large commands, etc.). Finding a data format to fit all these different cases efficiently into the same structures keeps being a challenge, and the Kukui mainboard already once put a lot of effort into designing a clean, flexible and efficient solution for this. This patch moves that framework into a common src/device/mipi/ library where it can be used by other boards as well. (Also, this will hopefully allow us to save some duplicated work when using the same panel on different boards at some point.) Signed-off-by: Julius Werner <jwerner@chromium.org> Change-Id: I877f2b0c7ab984412b288e2ed27f37cd93c70863 Reviewed-on: https://review.coreboot.org/c/coreboot/+/56965 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Yu-Ping Wu <yupingso@google.com> Reviewed-by: Hung-Te Lin <hungte@chromium.org>
118 lines
4.0 KiB
Plaintext
118 lines
4.0 KiB
Plaintext
## SPDX-License-Identifier: GPL-2.0-only
|
|
|
|
# Umbrella option to be selected by variant boards.
|
|
config BOARD_GOOGLE_KUKUI_COMMON
|
|
def_bool n
|
|
|
|
config BOARD_GOOGLE_JACUZZI_COMMON
|
|
def_bool n
|
|
select BOARD_GOOGLE_KUKUI_COMMON
|
|
select DRIVER_PARADE_PS8640 if BOARD_GOOGLE_JACUZZI
|
|
# All Jacuzzi followers are using ANX7625 except the reference board.
|
|
select DRIVER_ANALOGIX_ANX7625 if !BOARD_GOOGLE_JACUZZI
|
|
|
|
if BOARD_GOOGLE_KUKUI_COMMON
|
|
|
|
config VBOOT
|
|
select EC_GOOGLE_CHROMEEC_SWITCHES
|
|
select VBOOT_VBNV_FLASH
|
|
|
|
config BOARD_SPECIFIC_OPTIONS
|
|
def_bool y
|
|
select RTC
|
|
select SOC_MEDIATEK_MT8183
|
|
select BOARD_ROMSIZE_KB_8192
|
|
select MAINBOARD_HAS_CHROMEOS
|
|
select CHROMEOS_CAMERA
|
|
select CHROMEOS_USE_EC_WATCHDOG_FLAG if CHROMEOS
|
|
select COMMON_CBFS_SPI_WRAPPER
|
|
select SPI_FLASH
|
|
select SPI_FLASH_INCLUDE_ALL_DRIVERS
|
|
select EC_GOOGLE_CHROMEEC
|
|
select EC_GOOGLE_CHROMEEC_BOARDID
|
|
select EC_GOOGLE_CHROMEEC_SPI
|
|
select MAINBOARD_HAS_SPI_TPM_CR50 if VBOOT
|
|
select MAINBOARD_HAS_TPM2 if VBOOT
|
|
select MAINBOARD_HAS_NATIVE_VGA_INIT
|
|
select MAINBOARD_FORCE_NATIVE_VGA_INIT
|
|
select HAVE_LINEAR_FRAMEBUFFER
|
|
select MT8183_DRAM_EMCP if BOARD_GOOGLE_KRANE || BOARD_GOOGLE_KAKADU || BOARD_GOOGLE_KATSU
|
|
select MIPI_PANEL_AUO_KD101N80_45NA if BOARD_GOOGLE_KRANE
|
|
select MIPI_PANEL_BOE_TV101WUM_NL6 if BOARD_GOOGLE_KRANE
|
|
select MIPI_PANEL_AUO_B101UAN08_3 if BOARD_GOOGLE_KODAMA
|
|
select MIPI_PANEL_BOE_TV101WUM_N53 if BOARD_GOOGLE_KODAMA
|
|
select MIPI_PANEL_BOE_TV105WUM_NW0 if BOARD_GOOGLE_KAKADU
|
|
select MIPI_PANEL_CMN_P097PFG_SSD2858 if BOARD_GOOGLE_KUKUI
|
|
select MIPI_PANEL_AUO_NT51021D8P if BOARD_GOOGLE_FLAPJACK
|
|
select MIPI_PANEL_BOE_TV080WUM_NG0 if BOARD_GOOGLE_FLAPJACK
|
|
select MIPI_PANEL_BOE_TV101WUM_NG0 if BOARD_GOOGLE_FLAPJACK
|
|
select MIPI_PANEL_INX_OTA7290D10P if BOARD_GOOGLE_FLAPJACK
|
|
select MIPI_PANEL_STA_2081101QFH032011_53G if BOARD_GOOGLE_KATSU
|
|
select MIPI_PANEL_BOE_TV105WUM_NW0 if BOARD_GOOGLE_KATSU
|
|
|
|
config MAINBOARD_DIR
|
|
default "google/kukui"
|
|
|
|
config MAINBOARD_PART_NUMBER
|
|
default "Kukui" if BOARD_GOOGLE_KUKUI
|
|
default "Krane" if BOARD_GOOGLE_KRANE
|
|
default "Kodama" if BOARD_GOOGLE_KODAMA
|
|
default "Kakadu" if BOARD_GOOGLE_KAKADU
|
|
default "Flapjack" if BOARD_GOOGLE_FLAPJACK
|
|
default "Jacuzzi" if BOARD_GOOGLE_JACUZZI
|
|
default "Juniper" if BOARD_GOOGLE_JUNIPER
|
|
default "Kappa" if BOARD_GOOGLE_KAPPA
|
|
default "Damu" if BOARD_GOOGLE_DAMU
|
|
default "Cerise" if BOARD_GOOGLE_CERISE
|
|
default "Stern" if BOARD_GOOGLE_STERN
|
|
default "Willow" if BOARD_GOOGLE_WILLOW
|
|
default "Esche" if BOARD_GOOGLE_ESCHE
|
|
default "Burnet" if BOARD_GOOGLE_BURNET
|
|
default "Fennel" if BOARD_GOOGLE_FENNEL
|
|
default "Katsu" if BOARD_GOOGLE_KATSU
|
|
default "Cozmo" if BOARD_GOOGLE_COZMO
|
|
default "Makomo" if BOARD_GOOGLE_MAKOMO
|
|
default "Munna" if BOARD_GOOGLE_MUNNA
|
|
default "Pico" if BOARD_GOOGLE_PICO
|
|
|
|
config DRIVER_TPM_SPI_BUS
|
|
hex
|
|
default 0x0
|
|
|
|
config BOOT_DEVICE_SPI_FLASH_BUS
|
|
int
|
|
default 1
|
|
|
|
config EC_GOOGLE_CHROMEEC_SPI_BUS
|
|
hex
|
|
default 0x2
|
|
|
|
config BOARD_SDRAM_TABLE_OFFSET
|
|
hex
|
|
default 0x10 if BOARD_GOOGLE_BURNET || BOARD_GOOGLE_ESCHE || BOARD_GOOGLE_FENNEL || BOARD_GOOGLE_CERISE || BOARD_GOOGLE_STERN || BOARD_GOOGLE_MAKOMO || BOARD_GOOGLE_MUNNA
|
|
default 0x20 if BOARD_GOOGLE_KAKADU || BOARD_GOOGLE_KATSU
|
|
default 0x30 if BOARD_GOOGLE_COZMO || BOARD_GOOGLE_PICO
|
|
default 0x0
|
|
|
|
config BOARD_OVERRIDE_LCM_ID
|
|
hex
|
|
default 0x1 if BOARD_GOOGLE_JUNIPER || BOARD_GOOGLE_KAPPA || BOARD_GOOGLE_DAMU
|
|
default 0x1 if BOARD_GOOGLE_BURNET || BOARD_GOOGLE_ESCHE
|
|
default 0x0
|
|
|
|
config SPEAKER_GPIO_NAME
|
|
string
|
|
# MAX98357A, should include KENZO in future.
|
|
default "speaker enable" if BOARD_GOOGLE_JACUZZI || BOARD_GOOGLE_JUNIPER
|
|
default "speaker enable" if BOARD_GOOGLE_WILLOW || BOARD_GOOGLE_DAMU
|
|
# MAX98360
|
|
default "speaker enable" if BOARD_GOOGLE_BURNET || BOARD_GOOGLE_ESCHE
|
|
default "speaker enable" if BOARD_GOOGLE_KAPPA
|
|
# ALC1015Q (default for Jacuzzi followers)
|
|
default "rt1015p sdb" if BOARD_GOOGLE_KAKADU || BOARD_GOOGLE_KATSU
|
|
default "rt1015p sdb" if BOARD_GOOGLE_JACUZZI_COMMON
|
|
# MAX98357A (default for Kukui followers)
|
|
default "speaker enable"
|
|
|
|
endif
|