~pmdj/ubuntu/trusty/qemu/2.9+applesmc+fadtv3

« back to all changes in this revision

Viewing changes to roms/u-boot/common/spl/spl_sata.c

  • Committer: Phil Dennis-Jordan
  • Date: 2017-07-21 08:03:43 UTC
  • mfrom: (1.1.1)
  • Revision ID: phil@philjordan.eu-20170721080343-2yr2vdj7713czahv
New upstream release 2.9.0.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*
 
2
 * (C) Copyright 2013
 
3
 * Texas Instruments, <www.ti.com>
 
4
 *
 
5
 * Dan Murphy <dmurphy@ti.com>
 
6
 *
 
7
 * SPDX-License-Identifier:     GPL-2.0+
 
8
 *
 
9
 * Derived work from spl_usb.c
 
10
 */
 
11
 
 
12
#include <common.h>
 
13
#include <spl.h>
 
14
#include <asm/u-boot.h>
 
15
#include <sata.h>
 
16
#include <fat.h>
 
17
#include <version.h>
 
18
#include <image.h>
 
19
 
 
20
DECLARE_GLOBAL_DATA_PTR;
 
21
 
 
22
void spl_sata_load_image(void)
 
23
{
 
24
        int err;
 
25
        block_dev_desc_t *stor_dev;
 
26
 
 
27
        err = init_sata(CONFIG_SPL_SATA_BOOT_DEVICE);
 
28
        if (err) {
 
29
#ifdef CONFIG_SPL_LIBCOMMON_SUPPORT
 
30
                printf("spl: sata init failed: err - %d\n", err);
 
31
#endif
 
32
                hang();
 
33
        } else {
 
34
                /* try to recognize storage devices immediately */
 
35
                stor_dev = scsi_get_dev(0);
 
36
        }
 
37
 
 
38
#ifdef CONFIG_SPL_OS_BOOT
 
39
        if (spl_start_uboot() || spl_load_image_fat_os(stor_dev,
 
40
                                                                        CONFIG_SYS_SATA_FAT_BOOT_PARTITION))
 
41
#endif
 
42
        err = spl_load_image_fat(stor_dev,
 
43
                                CONFIG_SYS_SATA_FAT_BOOT_PARTITION,
 
44
                                CONFIG_SPL_FAT_LOAD_PAYLOAD_NAME);
 
45
        if (err) {
 
46
                puts("Error loading sata device\n");
 
47
                hang();
 
48
        }
 
49
}