Bump On 02/10/2014 04:40 AM, Roger Quadros wrote: > Dan, > > On 02/07/2014 04:11 PM, Dan Murphy wrote: >> Roger >> >> On 02/07/2014 03:48 AM, Roger Quadros wrote: >>> Hi Dan, >>> >>> On 02/03/2014 02:59 PM, Dan Murphy wrote: >>>> Add spl_sata to read a fat partition from a bootable SATA >>>> drive. >>>> >>>> Signed-off-by: Dan Murphy <dmur...@ti.com> >>>> --- >>> I got some check-patch errors with this one. >>> Once that is fixed you can please add >> Thanks for the review >> >> Checkpatch errors or warnings? > Right, warnings not errors. > > cheers, > -roger > >> When I ran checkpatch before submitting I did have 2 warnings but these >> should be >> acceptable. >> >> I will let the maintainer decide on the acceptability of the two warnings >> since these warnings are consistent >> with the spl_mmc and spl_usb files >> >> WARNING: suspect code indent for conditional statements (8, 8) >> #122: FILE: common/spl/spl_sata.c:39: >> + if (spl_start_uboot() || spl_load_image_fat_os(stor_dev, >> [...] >> + err = spl_load_image_fat(stor_dev, >> >> WARNING: line over 80 characters >> #123: FILE: common/spl/spl_sata.c:40: >> + CONFIG_SYS_SATA_FAT_BOOT_PARTITION)) >> >> total: 0 errors, 2 warnings, 99 lines checked >> >> >>> Reviewed-by: Roger Quadros <rog...@ti.com> >>> >>> cheers, >>> -roger >>>> v2 - Removed debug print - http://patchwork.ozlabs.org/patch/314811/ >>>> >>>> common/Makefile | 3 +++ >>>> common/cmd_scsi.c | 2 ++ >>>> common/spl/Makefile | 1 + >>>> common/spl/spl.c | 5 +++++ >>>> common/spl/spl_sata.c | 49 >>>> +++++++++++++++++++++++++++++++++++++++++++++++++ >>>> include/spl.h | 3 +++ >>>> spl/Makefile | 1 + >>>> 7 files changed, 64 insertions(+) >>>> create mode 100644 common/spl/spl_sata.c >>>> >>>> diff --git a/common/Makefile b/common/Makefile >>>> index 4d99ecd..b0f5b62 100644 >>>> --- a/common/Makefile >>>> +++ b/common/Makefile >>>> @@ -201,6 +201,9 @@ ifdef CONFIG_SPL_USB_HOST_SUPPORT >>>> obj-$(CONFIG_SPL_USB_SUPPORT) += usb.o usb_hub.o >>>> obj-$(CONFIG_USB_STORAGE) += usb_storage.o >>>> endif >>>> +ifdef CONFIG_SPL_SATA_SUPPORT >>>> +obj-$(CONFIG_CMD_SCSI) += cmd_scsi.o >>>> +endif >>>> ifneq ($(CONFIG_SPL_NET_SUPPORT),y) >>>> obj-$(CONFIG_ENV_IS_NOWHERE) += env_nowhere.o >>>> obj-$(CONFIG_ENV_IS_IN_MMC) += env_mmc.o >>>> diff --git a/common/cmd_scsi.c b/common/cmd_scsi.c >>>> index 7b97dc9..b3f7687 100644 >>>> --- a/common/cmd_scsi.c >>>> +++ b/common/cmd_scsi.c >>>> @@ -168,7 +168,9 @@ removable: >>>> scsi_curr_dev = -1; >>>> >>>> printf("Found %d device(s).\n", scsi_max_devs); >>>> +#ifndef CONFIG_SPL_BUILD >>>> setenv_ulong("scsidevs", scsi_max_devs); >>>> +#endif >>>> } >>>> >>>> int scsi_get_disk_count(void) >>>> diff --git a/common/spl/Makefile b/common/spl/Makefile >>>> index 65a1484f..64569c2 100644 >>>> --- a/common/spl/Makefile >>>> +++ b/common/spl/Makefile >>>> @@ -18,4 +18,5 @@ obj-$(CONFIG_SPL_NET_SUPPORT) += spl_net.o >>>> obj-$(CONFIG_SPL_MMC_SUPPORT) += spl_mmc.o >>>> obj-$(CONFIG_SPL_USB_SUPPORT) += spl_usb.o >>>> obj-$(CONFIG_SPL_FAT_SUPPORT) += spl_fat.o >>>> +obj-$(CONFIG_SPL_SATA_SUPPORT) += spl_sata.o >>>> endif >>>> diff --git a/common/spl/spl.c b/common/spl/spl.c >>>> index 0645cee..774fdad 100644 >>>> --- a/common/spl/spl.c >>>> +++ b/common/spl/spl.c >>>> @@ -210,6 +210,11 @@ void board_init_r(gd_t *dummy1, ulong dummy2) >>>> spl_usb_load_image(); >>>> break; >>>> #endif >>>> +#ifdef CONFIG_SPL_SATA_SUPPORT >>>> + case BOOT_DEVICE_SATA: >>>> + spl_sata_load_image(); >>>> + break; >>>> +#endif >>>> default: >>>> debug("SPL: Un-supported Boot Device\n"); >>>> hang(); >>>> diff --git a/common/spl/spl_sata.c b/common/spl/spl_sata.c >>>> new file mode 100644 >>>> index 0000000..2e7adca >>>> --- /dev/null >>>> +++ b/common/spl/spl_sata.c >>>> @@ -0,0 +1,49 @@ >>>> +/* >>>> + * (C) Copyright 2013 >>>> + * Texas Instruments, <www.ti.com> >>>> + * >>>> + * Dan Murphy <dmur...@ti.com> >>>> + * >>>> + * SPDX-License-Identifier: GPL-2.0+ >>>> + * >>>> + * Derived work from spl_usb.c >>>> + */ >>>> + >>>> +#include <common.h> >>>> +#include <spl.h> >>>> +#include <asm/u-boot.h> >>>> +#include <sata.h> >>>> +#include <fat.h> >>>> +#include <version.h> >>>> +#include <image.h> >>>> + >>>> +DECLARE_GLOBAL_DATA_PTR; >>>> + >>>> +void spl_sata_load_image(void) >>>> +{ >>>> + int err; >>>> + block_dev_desc_t *stor_dev; >>>> + >>>> + err = init_sata(CONFIG_SPL_SATA_BOOT_DEVICE); >>>> + if (err) { >>>> +#ifdef CONFIG_SPL_LIBCOMMON_SUPPORT >>>> + printf("spl: sata init failed: err - %d\n", err); >>>> +#endif >>>> + hang(); >>>> + } else { >>>> + /* try to recognize storage devices immediately */ >>>> + stor_dev = scsi_get_dev(0); >>>> + } >>>> + >>>> +#ifdef CONFIG_SPL_OS_BOOT >>>> + if (spl_start_uboot() || spl_load_image_fat_os(stor_dev, >>>> + >>>> CONFIG_SYS_SATA_FAT_BOOT_PARTITION)) >>>> +#endif >>>> + err = spl_load_image_fat(stor_dev, >>>> + CONFIG_SYS_SATA_FAT_BOOT_PARTITION, >>>> + CONFIG_SPL_FAT_LOAD_PAYLOAD_NAME); >>>> + if (err) { >>>> + puts("Error loading sata device\n"); >>>> + hang(); >>>> + } >>>> +} >>>> diff --git a/include/spl.h b/include/spl.h >>>> index 5e24856..ee09fb6 100644 >>>> --- a/include/spl.h >>>> +++ b/include/spl.h >>>> @@ -64,6 +64,9 @@ 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); >>>> diff --git a/spl/Makefile b/spl/Makefile >>>> index 4143e38..28fcfdd 100644 >>>> --- a/spl/Makefile >>>> +++ b/spl/Makefile >>>> @@ -85,6 +85,7 @@ LIBS-$(CONFIG_SPL_USBETH_SUPPORT) += drivers/usb/gadget/ >>>> LIBS-$(CONFIG_SPL_WATCHDOG_SUPPORT) += drivers/watchdog/ >>>> LIBS-$(CONFIG_SPL_USB_HOST_SUPPORT) += drivers/usb/host/ >>>> LIBS-$(CONFIG_OMAP_USB_PHY) += drivers/usb/phy/ >>>> +LIBS-$(CONFIG_SPL_SATA_SUPPORT) += drivers/block/ >>>> >>>> ifneq (,$(CONFIG_MX23)$(CONFIG_MX35)$(filter $(SOC), mx25 mx27 mx5 mx6 >>>> mx31 mx35)) >>>> LIBS-y += arch/$(ARCH)/imx-common/ >>>> >>
-- ------------------ Dan Murphy _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot