From bf534180997889bb5feef45178eaf24ef834241a Mon Sep 17 00:00:00 2001 From: Aaron Durbin Date: Mon, 4 Aug 2014 11:40:45 -0500 Subject: tegra132: output chip information and MTS version It's helpful to be able to track this information. Therefore dump it in to the console log. BRANCH=None BUG=chrome-os-partner:31126 TEST=Built and ran on rush. Revision information is put out on the console. Change-Id: I22e7d222259c1179b90edda6d7807559357f6725 Signed-off-by: Patrick Georgi Original-Commit-Id: 18d318331b696a6a32e0a45b8f903eb740896b02 Original-Change-Id: Ic95382126a6b8929d0998d1c9adfcbd10e90663f Original-Signed-off-by: Aaron Durbin Original-Reviewed-on: https://chromium-review.googlesource.com/210903 Original-Reviewed-by: Tom Warren Original-Reviewed-by: Furquan Shaikh Reviewed-on: http://review.coreboot.org/8905 Tested-by: build bot (Jenkins) Reviewed-by: Stefan Reinauer --- src/soc/nvidia/tegra/apbmisc.c | 13 +++++++++++++ src/soc/nvidia/tegra/apbmisc.h | 11 +++++++++++ 2 files changed, 24 insertions(+) (limited to 'src/soc/nvidia/tegra') diff --git a/src/soc/nvidia/tegra/apbmisc.c b/src/soc/nvidia/tegra/apbmisc.c index 5983d546d2..3fc0ef7de1 100644 --- a/src/soc/nvidia/tegra/apbmisc.c +++ b/src/soc/nvidia/tegra/apbmisc.c @@ -33,3 +33,16 @@ void clamp_tristate_inputs(void) { write32(PP_PINMUX_CLAMP_INPUTS, &misc->pp_pinmux_global); } + +void tegra_revision_info(struct tegra_revision *id) +{ + uintptr_t gp_hidrev= (uintptr_t)TEGRA_APB_MISC_BASE + MISC_GP_HIDREV; + uint32_t reg; + + reg = read32((void *)(gp_hidrev)); + + id->hid_fam = (reg >> 0) & 0x0f; + id->chip_id = (reg >> 8) & 0xff; + id->major = (reg >> 4) & 0x0f; + id->minor = (reg >> 16) & 0x07; +} diff --git a/src/soc/nvidia/tegra/apbmisc.h b/src/soc/nvidia/tegra/apbmisc.h index 2f1811a1dd..38cd527c9f 100644 --- a/src/soc/nvidia/tegra/apbmisc.h +++ b/src/soc/nvidia/tegra/apbmisc.h @@ -34,8 +34,19 @@ struct apbmisc { #define PP_PINMUX_CLAMP_INPUTS (1 << 0) +enum { + MISC_GP_HIDREV = 0x804 +}; + +struct tegra_revision { + int hid_fam; + int chip_id; + int major; + int minor; +}; void enable_jtag(void); void clamp_tristate_inputs(void); +void tegra_revision_info(struct tegra_revision *id); #endif /* __SOC_NVIDIA_TEGRA_APBMISC_H__ */ -- cgit v1.2.3