mb/google/*: Use newly added Chrome EC boardid function

Instead of duplicating code across multiple mainboards, use newly
added helper function to read boardid from Chrome EC.

Change-Id: I1671c0a0b87d0c4c45da5340e8f17a4a798317ca
Signed-off-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-on: https://review.coreboot.org/21682
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Sumeet R Pawnikar <sumeet.r.pawnikar@intel.com>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
This commit is contained in:
Furquan Shaikh 2017-09-25 08:06:56 -07:00 committed by Aaron Durbin
parent a2094835b1
commit a4ab665a55
36 changed files with 10 additions and 357 deletions

View File

@ -8,6 +8,7 @@ config BOARD_SPECIFIC_OPTIONS # dummy
select DRIVERS_I2C_NAU8825
select EC_GOOGLE_CHROMEEC
select EC_GOOGLE_CHROMEEC_ACPI_MEMMAP
select EC_GOOGLE_CHROMEEC_BOARDID
select EC_GOOGLE_CHROMEEC_LPC
select EC_GOOGLE_CHROMEEC_MEC
select EC_GOOGLE_CHROMEEC_PD

View File

@ -17,7 +17,6 @@ subdirs-y += spd
bootblock-y += bootblock_mainboard.c
romstage-y += boardid.c
romstage-y += pei_data.c
bootblock-$(CONFIG_CHROMEOS) += chromeos.c
@ -27,7 +26,6 @@ ramstage-$(CONFIG_CHROMEOS) += chromeos.c
ramstage-$(CONFIG_EC_GOOGLE_CHROMEEC) += ec.c
ramstage-y += boardid.c
ramstage-y += mainboard.c
ramstage-y += pei_data.c
ramstage-y += ramstage.c

View File

@ -1,28 +0,0 @@
/*
* This file is part of the coreboot project.
*
* Copyright (C) 2015 Google Inc.
* Copyright (C) 2015 Intel Corporation
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; version 2 of the License.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*/
#include <boardid.h>
#include <ec/google/chromeec/ec.h>
uint8_t board_id(void)
{
MAYBE_STATIC int id = -1;
if (id < 0)
id = google_chromeec_get_board_version();
return id;
}

View File

@ -2,6 +2,7 @@ config BOARD_GOOGLE_BASEBOARD_CYAN
def_bool n
select BOARD_ROMSIZE_KB_8192
select EC_GOOGLE_CHROMEEC
select EC_GOOGLE_CHROMEEC_BOARDID
select EC_GOOGLE_CHROMEEC_MEC
select EC_GOOGLE_CHROMEEC_ACPI_MEMMAP
select ENABLE_BUILTIN_COM1

View File

@ -18,7 +18,6 @@ romstage-$(CONFIG_CHROMEOS) += chromeos.c
romstage-$(CONFIG_ENABLE_BUILTIN_COM1) += com_init.c
romstage-y += spd/spd.c
ramstage-y += boardid.c
ramstage-$(CONFIG_CHROMEOS) += chromeos.c
ramstage-y += ec.c
ramstage-y += irqroute.c

View File

@ -1,30 +0,0 @@
/*
* This file is part of the coreboot project.
*
* Copyright (C) 2013 Google Inc.
* Copyright (C) 2015 Intel Corp.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; version 2 of the License.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*/
#include <boardid.h>
#include <stdlib.h>
#include <ec/google/chromeec/ec.h>
uint8_t board_id(void)
{
static int id = -1;
#if IS_ENABLED(CONFIG_EC_GOOGLE_CHROMEEC)
if (id < 0)
id = google_chromeec_get_board_version();
#endif
return id;
}

View File

@ -10,6 +10,7 @@ config BOARD_SPECIFIC_OPTIONS
select DRIVERS_I2C_MAX98927
select DRIVERS_SPI_ACPI
select EC_GOOGLE_CHROMEEC
select EC_GOOGLE_CHROMEEC_BOARDID
select EC_GOOGLE_CHROMEEC_LPC
select HAVE_ACPI_RESUME
select HAVE_ACPI_TABLES

View File

@ -17,14 +17,11 @@ subdirs-y += spd
bootblock-y += bootblock.c
romstage-y += boardid.c
bootblock-$(CONFIG_CHROMEOS) += chromeos.c
verstage-$(CONFIG_CHROMEOS) += chromeos.c
romstage-$(CONFIG_CHROMEOS) += chromeos.c
ramstage-$(CONFIG_CHROMEOS) += chromeos.c
ramstage-y += boardid.c
ramstage-y += mainboard.c
ramstage-y += ramstage.c
ramstage-$(CONFIG_EC_GOOGLE_CHROMEEC) += ec.c

View File

@ -1,27 +0,0 @@
/*
* This file is part of the coreboot project.
*
* Copyright (C) 2016 Google Inc.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; version 2 of the License.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*/
#include <boardid.h>
#include <ec/google/chromeec/ec.h>
uint8_t board_id(void)
{
MAYBE_STATIC int id = -1;
if (id < 0)
id = google_chromeec_get_board_version();
return id;
}

View File

@ -7,6 +7,7 @@ config BOARD_SPECIFIC_OPTIONS
select DRIVERS_I2C_GENERIC
select DRIVERS_SPI_ACPI
select EC_GOOGLE_CHROMEEC
select EC_GOOGLE_CHROMEEC_BOARDID
select EC_GOOGLE_CHROMEEC_LPC
select HAVE_ACPI_RESUME
select HAVE_ACPI_TABLES

View File

@ -18,10 +18,8 @@ bootblock-$(CONFIG_CHROMEOS) += chromeos.c
verstage-$(CONFIG_CHROMEOS) += chromeos.c
romstage-y += boardid.c
romstage-$(CONFIG_CHROMEOS) += chromeos.c
ramstage-y += boardid.c
ramstage-$(CONFIG_CHROMEOS) += chromeos.c
ramstage-$(CONFIG_EC_GOOGLE_CHROMEEC) += ec.c
ramstage-y += mainboard.c

View File

@ -1,27 +0,0 @@
/*
* This file is part of the coreboot project.
*
* Copyright (C) 2017 Google Inc.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; version 2 of the License.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*/
#include <boardid.h>
#include <ec/google/chromeec/ec.h>
uint8_t board_id(void)
{
MAYBE_STATIC int id = -1;
if (id < 0)
id = google_chromeec_get_board_version();
return id;
}

View File

@ -7,6 +7,7 @@ config BOARD_SPECIFIC_OPTIONS # dummy
select DRIVERS_I2C_GENERIC
select DRIVERS_I2C_NAU8825
select EC_GOOGLE_CHROMEEC
select EC_GOOGLE_CHROMEEC_BOARDID
select EC_GOOGLE_CHROMEEC_ACPI_MEMMAP
select EC_GOOGLE_CHROMEEC_LPC
select EC_GOOGLE_CHROMEEC_MEC

View File

@ -17,7 +17,6 @@ subdirs-y += spd
bootblock-y += bootblock_mainboard.c
romstage-y += boardid.c
romstage-y += pei_data.c
bootblock-$(CONFIG_CHROMEOS) += chromeos.c
@ -27,7 +26,6 @@ ramstage-$(CONFIG_CHROMEOS) += chromeos.c
ramstage-$(CONFIG_EC_GOOGLE_CHROMEEC) += ec.c
ramstage-y += boardid.c
ramstage-y += mainboard.c
ramstage-y += pei_data.c
ramstage-y += ramstage.c

View File

@ -1,28 +0,0 @@
/*
* This file is part of the coreboot project.
*
* Copyright (C) 2015 Google Inc.
* Copyright (C) 2015 Intel Corporation
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; version 2 of the License.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*/
#include <boardid.h>
#include <ec/google/chromeec/ec.h>
uint8_t board_id(void)
{
MAYBE_STATIC int id = -1;
if (id < 0)
id = google_chromeec_get_board_version();
return id;
}

View File

@ -9,6 +9,7 @@ config BOARD_SPECIFIC_OPTIONS # dummy
select DRIVERS_I2C_NAU8825
select EC_GOOGLE_CHROMEEC
select EC_GOOGLE_CHROMEEC_ACPI_MEMMAP
select EC_GOOGLE_CHROMEEC_BOARDID
select EC_GOOGLE_CHROMEEC_LPC
select EC_GOOGLE_CHROMEEC_MEC
select EC_GOOGLE_CHROMEEC_PD

View File

@ -18,7 +18,6 @@ subdirs-y += spd
bootblock-y += bootblock_mainboard.c
romstage-y += boardid.c
romstage-y += pei_data.c
bootblock-$(CONFIG_CHROMEOS) += chromeos.c
@ -28,7 +27,6 @@ ramstage-$(CONFIG_CHROMEOS) += chromeos.c
ramstage-$(CONFIG_EC_GOOGLE_CHROMEEC) += ec.c
ramstage-y += boardid.c
ramstage-y += mainboard.c
ramstage-y += pei_data.c
ramstage-y += ramstage.c

View File

@ -1,28 +0,0 @@
/*
* This file is part of the coreboot project.
*
* Copyright (C) 2015 Google Inc.
* Copyright (C) 2015 Intel Corporation
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; version 2 of the License.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*/
#include <boardid.h>
#include <ec/google/chromeec/ec.h>
uint8_t board_id(void)
{
MAYBE_STATIC int id = -1;
if (id < 0)
id = google_chromeec_get_board_version();
return id;
}

View File

@ -8,6 +8,7 @@ config BOARD_GOOGLE_BASEBOARD_POPPY
select DRIVERS_I2C_MAX98927
select DRIVERS_SPI_ACPI
select EC_GOOGLE_CHROMEEC
select EC_GOOGLE_CHROMEEC_BOARDID
select EC_GOOGLE_CHROMEEC_LPC
select HAVE_ACPI_RESUME
select HAVE_ACPI_TABLES

View File

@ -18,10 +18,8 @@ bootblock-$(CONFIG_CHROMEOS) += chromeos.c
verstage-$(CONFIG_CHROMEOS) += chromeos.c
romstage-y += boardid.c
romstage-$(CONFIG_CHROMEOS) += chromeos.c
ramstage-y += boardid.c
ramstage-$(CONFIG_CHROMEOS) += chromeos.c
ramstage-$(CONFIG_EC_GOOGLE_CHROMEEC) += ec.c
ramstage-y += mainboard.c

View File

@ -1,28 +0,0 @@
/*
* This file is part of the coreboot project.
*
* Copyright (C) 2016 Google Inc.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; version 2 of the License.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*/
#include <baseboard/variants.h>
#include <boardid.h>
#include <stddef.h>
uint8_t board_id(void)
{
MAYBE_STATIC int id = -1;
if (id < 0)
id = variant_board_id();
return id;
}

View File

@ -1,8 +1,6 @@
bootblock-y += gpio.c
romstage-y += boardid.c
romstage-y += memory.c
ramstage-y += boardid.c
ramstage-y += gpio.c
ramstage-y += nhlt.c

View File

@ -1,22 +0,0 @@
/*
* This file is part of the coreboot project.
*
* Copyright 2017 Google Inc.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; version 2 of the License.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*/
#include <baseboard/variants.h>
#include <ec/google/chromeec/ec.h>
uint8_t __attribute__((weak)) variant_board_id(void)
{
return google_chromeec_get_board_version();
}

View File

@ -20,9 +20,6 @@
#include <stdint.h>
#include <vendorcode/google/chromeos/chromeos.h>
/* Return the board id for the current variant board. */
uint8_t variant_board_id(void);
/*
* The next set of functions return the gpio table and fill in the number of
* entries for each table.

View File

@ -9,6 +9,7 @@ config BOARD_GOOGLE_BASEBOARD_REEF
select DRIVERS_I2C_HID
select DRIVERS_PS2_KEYBOARD
select EC_GOOGLE_CHROMEEC
select EC_GOOGLE_CHROMEEC_BOARDID
select EC_GOOGLE_CHROMEEC_LPC
select HAVE_ACPI_RESUME
select HAVE_ACPI_TABLES

View File

@ -2,9 +2,7 @@ bootblock-y += bootblock.c
bootblock-y += ec.c
romstage-$(CONFIG_CHROMEOS) += chromeos.c
romstage-y += boardid.c
ramstage-y += boardid.c
ramstage-$(CONFIG_CHROMEOS) += chromeos.c
ramstage-y += ec.c
ramstage-y += mainboard.c

View File

@ -1,29 +0,0 @@
/*
* This file is part of the coreboot project.
*
* Copyright (C) 2015 Google Inc.
* Copyright (C) 2015 Intel Corporation
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; version 2 of the License.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*/
#include <baseboard/variants.h>
#include <boardid.h>
#include <stddef.h>
uint8_t board_id(void)
{
MAYBE_STATIC int id = -1;
if (id < 0)
id = variant_board_id();
return id;
}

View File

@ -1,9 +1,7 @@
bootblock-y += gpio.c
romstage-y += boardid.c
romstage-y += memory.c
ramstage-y += boardid.c
ramstage-y += gpio.c
ramstage-y += nhlt.c

View File

@ -1,22 +0,0 @@
/*
* This file is part of the coreboot project.
*
* Copyright 2016 Google Inc.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; version 2 of the License.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*/
#include <baseboard/variants.h>
#include <ec/google/chromeec/ec.h>
uint8_t __attribute__((weak)) variant_board_id(void)
{
return google_chromeec_get_board_version();
}

View File

@ -24,9 +24,6 @@
/* Return the sku id based off the strapping resistors attached to SoC. */
uint8_t sku_strapping_value(void);
/* Return the board id for the current variant board. */
uint8_t variant_board_id(void);
/* The next set of functions return the gpio table and fill in the number of
* entries for each table. */
const struct pad_config *variant_gpio_table(size_t *num);

View File

@ -9,6 +9,7 @@ config BOARD_SPECIFIC_OPTIONS # dummy
select DRIVERS_I2C_NAU8825
select EC_GOOGLE_CHROMEEC
select EC_GOOGLE_CHROMEEC_ACPI_MEMMAP
select EC_GOOGLE_CHROMEEC_BOARDID
select EC_GOOGLE_CHROMEEC_LPC
select EC_GOOGLE_CHROMEEC_MEC
select EC_GOOGLE_CHROMEEC_PD

View File

@ -18,7 +18,6 @@ subdirs-y += spd
bootblock-y += bootblock_mainboard.c
romstage-y += boardid.c
romstage-y += pei_data.c
bootblock-$(CONFIG_CHROMEOS) += chromeos.c
@ -28,7 +27,6 @@ ramstage-$(CONFIG_CHROMEOS) += chromeos.c
ramstage-$(CONFIG_EC_GOOGLE_CHROMEEC) += ec.c
ramstage-y += boardid.c
ramstage-y += mainboard.c
ramstage-y += pei_data.c
ramstage-y += ramstage.c

View File

@ -1,28 +0,0 @@
/*
* This file is part of the coreboot project.
*
* Copyright (C) 2015 Google Inc.
* Copyright (C) 2015 Intel Corporation
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; version 2 of the License.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*/
#include <boardid.h>
#include <ec/google/chromeec/ec.h>
uint8_t board_id(void)
{
MAYBE_STATIC int id = -1;
if (id < 0)
id = google_chromeec_get_board_version();
return id;
}

View File

@ -4,6 +4,7 @@ config BOARD_SPECIFIC_OPTIONS
def_bool y
select BOARD_ROMSIZE_KB_8192
select EC_GOOGLE_CHROMEEC
select EC_GOOGLE_CHROMEEC_BOARDID
select EC_GOOGLE_CHROMEEC_MEC
select EC_GOOGLE_CHROMEEC_ACPI_MEMMAP
select ENABLE_BUILTIN_COM1

View File

@ -14,11 +14,9 @@
## GNU General Public License for more details.
##
romstage-y += boardid.c
romstage-$(CONFIG_MAINBOARD_HAS_CHROMEOS) += chromeos.c
romstage-$(CONFIG_ENABLE_BUILTIN_COM1) += com_init.c
ramstage-y += boardid.c
ramstage-$(CONFIG_MAINBOARD_HAS_CHROMEOS) += chromeos.c
ramstage-$(CONFIG_MAINBOARD_HAS_CHROMEOS) += ec.c
ramstage-$(CONFIG_MAINBOARD_HAS_CHROMEOS) += gpio.c

View File

@ -1,30 +0,0 @@
/*
* This file is part of the coreboot project.
*
* Copyright(C) 2013 Google Inc.
* Copyright (C) 2015 Intel Corp.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; version 2 of the License.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*/
#include <boardid.h>
#include <stdlib.h>
#include "ec/google/chromeec/ec.h"
uint8_t board_id(void)
{
MAYBE_STATIC int id = -1;
#if IS_ENABLED(CONFIG_EC_GOOGLE_CHROMEEC)
if (id < 0)
id = google_chromeec_get_board_version();
#endif
return id;
}