if VENDOR_LENOVO

choice
	prompt "Mainboard model"

source "src/mainboard/lenovo/*/Kconfig.name"

endchoice

source "src/mainboard/lenovo/*/Kconfig"

config MAINBOARD_VENDOR
	default "LENOVO"

config MAINBOARD_FAMILY
	string
	default MAINBOARD_PART_NUMBER

endif # VENDOR_LENOVO
