mb/intel/mtlrvp: Add MTL-P RVP board ids
This adds MTL-P board id definition. Change include, 1. Add board_id.c implementation 2. Add board_id.h implementation 3. Add board_id config in variants.h 4. Makefile changes BUG=b:224325352 TEST=Able to build with the patch and boot the mtlrvp platform with the subsequent patches in the train Signed-off-by: Jamie Ryu <jamie.m.ryu@intel.com> Change-Id: I90b0543d5db208f696d2c2c2dc3d2581514a845b Signed-off-by: Harsha B R <harsha.b.r@intel.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/66102 Reviewed-by: Eric Lai <eric_lai@quanta.corp-partner.google.com> Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Usha P <usha.p@intel.com> Reviewed-by: Subrata Banik <subratabanik@google.com>
This commit is contained in:
parent
c03cdc143a
commit
ed8bdefcdf
|
@ -2,9 +2,32 @@
|
|||
|
||||
#include <boardid.h>
|
||||
#include "board_id.h"
|
||||
#include <ec/acpi/ec.h>
|
||||
#include <ec/google/chromeec/ec.h>
|
||||
#include <types.h>
|
||||
|
||||
/* Get RVP Board ID */
|
||||
static uint32_t get_board_id_via_ext_ec(void)
|
||||
{
|
||||
uint32_t id = BOARD_ID_INIT;
|
||||
|
||||
if (google_chromeec_get_board_version(&id))
|
||||
id = BOARD_ID_UNKNOWN;
|
||||
|
||||
return id;
|
||||
}
|
||||
|
||||
/* Get Board ID via EC I/O port write/read */
|
||||
int get_rvp_board_id(void)
|
||||
{
|
||||
return BOARD_ID_INIT;
|
||||
MAYBE_STATIC_NONZERO int id = BOARD_ID_UNKNOWN;
|
||||
|
||||
if (CONFIG(EC_GOOGLE_CHROMEEC)) { /* CHROME_EC */
|
||||
id = get_board_id_via_ext_ec();
|
||||
} else { /* WINDOWS_EC */
|
||||
if (send_ec_command(EC_FAB_ID_CMD) == 0) {
|
||||
id = recv_ec_data() << 8;
|
||||
id |= recv_ec_data();
|
||||
}
|
||||
}
|
||||
return (id & BOARD_ID_MASK);
|
||||
}
|
||||
|
|
|
@ -3,7 +3,15 @@
|
|||
#ifndef _MAINBOARD_COMMON_BOARD_ID_H_
|
||||
#define _MAINBOARD_COMMON_BOARD_ID_H_
|
||||
|
||||
/* Returns RVP board_id */
|
||||
/* Board/FAB ID Command */
|
||||
#define EC_FAB_ID_CMD 0x0d
|
||||
/* Bit 5:0 for Board ID */
|
||||
#define BOARD_ID_MASK 0x3f
|
||||
|
||||
/*
|
||||
* Returns board information (board id[15:8] and
|
||||
* Fab info[7:0]) on success and < 0 on error
|
||||
*/
|
||||
int get_rvp_board_id(void);
|
||||
|
||||
#endif /* _MAINBOARD_COMMON_BOARD_ID_H_ */
|
||||
|
|
|
@ -6,4 +6,5 @@ BASEBOARD_DIR:=$(call strip_quotes,$(CONFIG_BASEBOARD_DIR))
|
|||
subdirs-y += variants/baseboard/$(BASEBOARD_DIR)
|
||||
subdirs-y += variants/$(VARIANT_DIR)
|
||||
|
||||
CPPFLAGS_common += -I$(src)/mainboard/$(MAINBOARDDIR)/variants/baseboard/include
|
||||
CPPFLAGS_common += -I$(src)/mainboard/$(MAINBOARDDIR)/variants/baseboard/$(BASEBOARD_DIR)/include
|
||||
|
|
|
@ -0,0 +1,15 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0-only */
|
||||
|
||||
#ifndef __BASEBOARD_VARIANTS_H__
|
||||
#define __BASEBOARD_VARIANTS_H__
|
||||
|
||||
#include <stdint.h>
|
||||
|
||||
enum mtl_boardid {
|
||||
MTLP_DDR5_RVP = 0x01,
|
||||
MTLP_LP5_T3_RVP = 0x02,
|
||||
MTLP_LP5_T4_RVP = 0x04,
|
||||
MTLM_LP5_RVP = 0x06,
|
||||
};
|
||||
|
||||
#endif /*__BASEBOARD_VARIANTS_H__ */
|
Loading…
Reference in New Issue