From ad7b2e23ab5954f150a4b2f62378f1e7133e56c9 Mon Sep 17 00:00:00 2001 From: Sam Lewis Date: Mon, 3 Aug 2020 20:18:29 +1000 Subject: cpu/ti/am335x: Move from cpu to soc in tree The AM335X is a SoC, so should be in the soc tree. This moves all the existing am335x code to soc/ and updates any references. It also adds a soc.c file as required for the ramstage. Change-Id: Ic1ccb0e9b9c24a8b211b723b5f4cc26cdd0eaaab Signed-off-by: Sam Lewis Reviewed-on: https://review.coreboot.org/c/coreboot/+/44378 Tested-by: build bot (Jenkins) Reviewed-by: Patrick Rudolph --- src/soc/ti/am335x/header.c | 57 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 src/soc/ti/am335x/header.c (limited to 'src/soc/ti/am335x/header.c') diff --git a/src/soc/ti/am335x/header.c b/src/soc/ti/am335x/header.c new file mode 100644 index 0000000000..9edfdd062b --- /dev/null +++ b/src/soc/ti/am335x/header.c @@ -0,0 +1,57 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#include +#include + +#include "header.h" + +struct config_headers { + // The table of contents. + struct configuration_header_toc_item toc_chsettings; + struct configuration_header_toc_item toc_end; + + // An inert instance of chsettings. + struct configuration_header_settings chsettings; +} __packed; + +struct omap_image_headers { + union { + struct config_headers config_headers; + uint8_t bytes[512]; + }; + struct gp_device_header image_header; +}; + +// A symbol which defines how much of the image the iROM should load. +extern char header_load_size; + +struct omap_image_headers headers __attribute__((section(".header"))) = { + .config_headers = { + .toc_chsettings = { + .start = offsetof(struct omap_image_headers, + config_headers.chsettings), + .size = sizeof(struct configuration_header_settings), + .reserved = { 0, 0, 0 }, + .filename = "CHSETTINGS\0" + }, + .toc_end = { + .start = 0xffffffff, + .size = 0xffffffff, + .reserved = { 0xffffffff, 0xffffffff, 0xffffffff }, + .filename = { 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff } + }, + .chsettings = { + .key = 0xc0c0c0c1, + .valid = 0, + .version = 1, + .reserved = 0, + .flags = 0 + } + }, + .image_header = { + .size = (uintptr_t)&header_load_size, + .destination = (uintptr_t)_dram + } +}; -- cgit v1.2.3