arndale_spl.c 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. // SPDX-License-Identifier: GPL-2.0+
  2. /*
  3. * Copyright (c) 2012 The Chromium OS Authors.
  4. */
  5. #include <common.h>
  6. #include <asm/arch/spl.h>
  7. #define SIGNATURE 0xdeadbeef
  8. /* Parameters of early board initialization in SPL */
  9. static struct spl_machine_param machine_param
  10. __section(".machine_param") = {
  11. .signature = SIGNATURE,
  12. .version = 1,
  13. .params = "vmubfasirM",
  14. .size = sizeof(machine_param),
  15. .mem_iv_size = 0x1f,
  16. .mem_type = DDR_MODE_DDR3,
  17. /*
  18. * Set uboot_size to 0x100000 bytes.
  19. *
  20. * This is an overly conservative value chosen to accommodate all
  21. * possible U-Boot image. You are advised to set this value to a
  22. * smaller realistic size via scripts that modifies the .machine_param
  23. * section of output U-Boot image.
  24. */
  25. .uboot_size = 0x100000,
  26. .boot_source = BOOT_MODE_OM,
  27. .frequency_mhz = 800,
  28. .arm_freq_mhz = 1000,
  29. .serial_base = 0x12c30000,
  30. .i2c_base = 0x12c60000,
  31. .mem_manuf = MEM_MANUF_SAMSUNG,
  32. };
  33. struct spl_machine_param *spl_get_machine_params(void)
  34. {
  35. if (machine_param.signature != SIGNATURE) {
  36. /* Will hang if SIGNATURE dont match */
  37. while (1)
  38. ;
  39. }
  40. return &machine_param;
  41. }