| /* | 
 |  * Copyright (c) 2012 The Chromium OS Authors. | 
 |  * | 
 |  * SPDX-License-Identifier:	GPL-2.0+ | 
 |  */ | 
 |  | 
 | #include <common.h> | 
 | #include <asm/arch/spl.h> | 
 |  | 
 | #define SIGNATURE	0xdeadbeef | 
 |  | 
 | /* Parameters of early board initialization in SPL */ | 
 | static struct spl_machine_param machine_param | 
 | 		__attribute__((section(".machine_param"))) = { | 
 | 	.signature	= SIGNATURE, | 
 | 	.version	= 1, | 
 | 	.params		= "vmubfasirM", | 
 | 	.size		= sizeof(machine_param), | 
 |  | 
 | 	.mem_iv_size	= 0x1f, | 
 | 	.mem_type	= DDR_MODE_DDR3, | 
 |  | 
 | 	/* | 
 | 	 * Set uboot_size to 0x100000 bytes. | 
 | 	 * | 
 | 	 * This is an overly conservative value chosen to accommodate all | 
 | 	 * possible U-Boot image.  You are advised to set this value to a | 
 | 	 * smaller realistic size via scripts that modifies the .machine_param | 
 | 	 * section of output U-Boot image. | 
 | 	 */ | 
 | 	.uboot_size	= 0x100000, | 
 |  | 
 | 	.boot_source	= BOOT_MODE_OM, | 
 | 	.frequency_mhz	= 800, | 
 | 	.arm_freq_mhz	= 1000, | 
 | 	.serial_base	= 0x12c30000, | 
 | 	.i2c_base	= 0x12c60000, | 
 | 	.mem_manuf	= MEM_MANUF_SAMSUNG, | 
 | }; | 
 |  | 
 | struct spl_machine_param *spl_get_machine_params(void) | 
 | { | 
 | 	if (machine_param.signature != SIGNATURE) { | 
 | 		/* Will hang if SIGNATURE dont match */ | 
 | 		while (1) | 
 | 			; | 
 | 	} | 
 |  | 
 | 	return &machine_param; | 
 | } |