[U-Boot] [PATCH] mxs: mxsboot: Add support for SD card generation for i.MX23

Fabio Estevam festevam at gmail.com
Mon Feb 4 19:12:11 CET 2013


On Thu, Jan 24, 2013 at 4:39 PM, Marek Vasut <marex at denx.de> wrote:

> PATCH:
> diff --git a/tools/mxsboot.c b/tools/mxsboot.c
> index 6c05aa4..d92c39f 100644
> --- a/tools/mxsboot.c
> +++ b/tools/mxsboot.c
> @@ -551,7 +551,7 @@ static int mx28_create_sd_image(int infd, int outfd)
>
>         fsize = lseek(infd, 0, SEEK_END);
>         lseek(infd, 0, SEEK_SET);
> -       size = fsize + 512;
> +       size = fsize + 4 * 512;
>
>         buf = malloc(size);
>         if (!buf) {
> @@ -559,7 +559,7 @@ static int mx28_create_sd_image(int infd, int outfd)
>                 goto err0;
>         }
>
> -       ret = read(infd, (uint8_t *)buf + 512, fsize);
> +       ret = read(infd, (uint8_t *)buf + 4 * 512, fsize);
>         if (ret != fsize) {
>                 ret = -1;
>                 goto err1;
> @@ -574,8 +574,8 @@ static int mx28_create_sd_image(int infd, int outfd)
>         cb->drv_info[0].chip_num = 0x0;
>         cb->drv_info[0].drive_type = 0x0;
>         cb->drv_info[0].tag = 0x1;
> -       cb->drv_info[0].first_sector_number = sd_sector + 1;
> -       cb->drv_info[0].sector_count = (size - 1) / 512;
> +       cb->drv_info[0].first_sector_number = sd_sector + 4;
> +       cb->drv_info[0].sector_count = (size - 4) / 512;
>
>         wr_size = write(outfd, buf, size);
>         if (wr_size != size) {

My mx28evk does not boot with this patch applied.


More information about the U-Boot mailing list