Blame view

include/spl.h 1.54 KB
47f7bcae8   Tom Rini   SPL: Move the oma...
1
2
3
4
  /*
   * (C) Copyright 2012
   * Texas Instruments, <www.ti.com>
   *
1a4596601   Wolfgang Denk   Add GPL-2.0+ SPDX...
5
   * SPDX-License-Identifier:	GPL-2.0+
47f7bcae8   Tom Rini   SPL: Move the oma...
6
7
8
9
10
   */
  #ifndef	_SPL_H_
  #define	_SPL_H_
  
  /* Platform-specific defines */
6507f133f   Tom Rini   SPL: Create arch/...
11
  #include <linux/compiler.h>
47f7bcae8   Tom Rini   SPL: Move the oma...
12
  #include <asm/spl.h>
773b5940b   Dan Murphy   spl: common: Move...
13

47f7bcae8   Tom Rini   SPL: Move the oma...
14
15
16
17
18
19
20
21
22
23
24
  /* Boot type */
  #define MMCSD_MODE_UNDEFINED	0
  #define MMCSD_MODE_RAW		1
  #define MMCSD_MODE_FAT		2
  
  struct spl_image_info {
  	const char *name;
  	u8 os;
  	u32 load_addr;
  	u32 entry_point;
  	u32 size;
022b4975c   Stefan Roese   SPL: Add option t...
25
  	u32 flags;
47f7bcae8   Tom Rini   SPL: Move the oma...
26
  };
022b4975c   Stefan Roese   SPL: Add option t...
27
  #define SPL_COPY_PAYLOAD_ONLY	1
47f7bcae8   Tom Rini   SPL: Move the oma...
28
  extern struct spl_image_info spl_image;
47f7bcae8   Tom Rini   SPL: Move the oma...
29
30
31
32
33
34
35
  
  /* SPL common functions */
  void preloader_console_init(void);
  u32 spl_boot_device(void);
  u32 spl_boot_mode(void);
  void spl_parse_image_header(const struct image_header *header);
  void spl_board_prepare_for_linux(void);
6507f133f   Tom Rini   SPL: Create arch/...
36
  void __noreturn jump_to_image_linux(void *arg);
47f7bcae8   Tom Rini   SPL: Move the oma...
37
38
39
40
41
  int spl_start_uboot(void);
  void spl_display_print(void);
  
  /* NAND SPL functions */
  void spl_nand_load_image(void);
6000992e2   Enric Balletbo i Serra   SPL: ONENAND: Sup...
42
43
  /* OneNAND SPL functions */
  void spl_onenand_load_image(void);
33d346464   Stefan Roese   SPL: Add NOR flas...
44
45
  /* NOR SPL functions */
  void spl_nor_load_image(void);
47f7bcae8   Tom Rini   SPL: Move the oma...
46
47
48
49
50
51
52
  /* MMC SPL functions */
  void spl_mmc_load_image(void);
  
  /* YMODEM SPL functions */
  void spl_ymodem_load_image(void);
  
  /* SPI SPL functions */
a4cc1c487   Tom Rini   SPL: SPI: Enhance...
53
  void spl_spi_load_image(void);
47f7bcae8   Tom Rini   SPL: Move the oma...
54

7ac2fe2da   Ilya Yanok   OMAP: networking ...
55
56
  /* Ethernet SPL functions */
  void spl_net_load_image(const char *device);
8cffe5bd0   Dan Murphy   spl: common: Supp...
57
58
  /* USB SPL functions */
  void spl_usb_load_image(void);
773b5940b   Dan Murphy   spl: common: Move...
59
60
61
  /* SPL FAT image functions */
  int spl_load_image_fat(block_dev_desc_t *block_dev, int partition, const char *filename);
  int spl_load_image_fat_os(block_dev_desc_t *block_dev, int partition);
47f7bcae8   Tom Rini   SPL: Move the oma...
62
63
64
65
  #ifdef CONFIG_SPL_BOARD_INIT
  void spl_board_init(void);
  #endif
  #endif