Blame view

bootloader/u-boot_2015_04/include/spl.h 1.92 KB
6b13f685e   김민수   BSP 최초 추가
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
  /*
   * (C) Copyright 2012
   * Texas Instruments, <www.ti.com>
   *
   * SPDX-License-Identifier:	GPL-2.0+
   */
  #ifndef	_SPL_H_
  #define	_SPL_H_
  
  /* Platform-specific defines */
  #include <linux/compiler.h>
  #include <asm/spl.h>
  
  
  /* Boot type */
  #define MMCSD_MODE_UNDEFINED	0
  #define MMCSD_MODE_RAW		1
  #define MMCSD_MODE_FS		2
  #define MMCSD_MODE_EMMCBOOT	3
  
  struct spl_image_info {
  	const char *name;
  	u8 os;
  	u32 load_addr;
  	u32 entry_point;
  	u32 size;
  	u32 flags;
  };
  
  #define SPL_COPY_PAYLOAD_ONLY	1
  
  extern struct spl_image_info spl_image;
  
  /* SPL common functions */
  void preloader_console_init(void);
  u32 spl_boot_device(void);
  u32 spl_boot_mode(void);
  void spl_set_header_raw_uboot(void);
  void spl_parse_image_header(const struct image_header *header);
  void spl_board_prepare_for_linux(void);
  void __noreturn jump_to_image_linux(void *arg);
  int spl_start_uboot(void);
  void spl_display_print(void);
  
  /* NAND SPL functions */
  void spl_nand_load_image(void);
  
  /* OneNAND SPL functions */
  void spl_onenand_load_image(void);
  
  /* NOR SPL functions */
  void spl_nor_load_image(void);
  
  /* MMC SPL functions */
  void spl_mmc_load_image(void);
  
  /* YMODEM SPL functions */
  void spl_ymodem_load_image(void);
  
  /* SPI SPL functions */
  void spl_spi_load_image(void);
  
  /* Ethernet SPL functions */
  void spl_net_load_image(const char *device);
  
  /* USB SPL functions */
  void spl_usb_load_image(void);
  
  /* SATA SPL functions */
  void spl_sata_load_image(void);
  
  /* 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);
  
  void __noreturn jump_to_image_no_args(struct spl_image_info *spl_image);
  
  /* SPL EXT image functions */
  int spl_load_image_ext(block_dev_desc_t *block_dev, int partition, const char *filename);
  int spl_load_image_ext_os(block_dev_desc_t *block_dev, int partition);
  
  #ifdef CONFIG_SPL_BOARD_INIT
  void spl_board_init(void);
  #endif
  #endif