[U-Boot] [PATCH 1/4] usb: ums: move ums code from trats to Samsung common directory

Marek Vasut marex at denx.de
Thu Oct 17 19:39:10 CEST 2013


Dear Przemyslaw Marczak,

> UMS init was implemented in trats board file but mostly it comprises
> common code. Due to that it has been moved to common/ums.c to avoid
> code duplication in the future.
> 
> Changes:
> - move ums initialization code from trats to common/ums.c
> - remove unused CONFIG_USB_GADGET_MASS_STORAGE from trats.h
> 
> Signed-off-by: Przemyslaw Marczak <p.marczak at samsung.com>
> Cc: Marek Vasut <marex at denx.de>
> Cc: Minkyu Kang <mk7.kang at samsung.com>
> Cc: Lukasz Majewski <l.majewski at samsung.com>
> ---
>  board/samsung/common/Makefile |    1 +
>  board/samsung/common/ums.c    |   66
> +++++++++++++++++++++++++++++++++++++++++ board/samsung/trats/trats.c   | 
>  62 -------------------------------------- include/configs/trats.h       |
>    2 --
>  4 files changed, 67 insertions(+), 64 deletions(-)
>  create mode 100644 board/samsung/common/ums.c
> 
> diff --git a/board/samsung/common/Makefile b/board/samsung/common/Makefile
> index ad7564c..d122169 100644
> --- a/board/samsung/common/Makefile
> +++ b/board/samsung/common/Makefile
> @@ -11,6 +11,7 @@ LIB	= $(obj)libsamsung.o
> 
>  COBJS-$(CONFIG_SOFT_I2C_MULTI_BUS) += multi_i2c.o
>  COBJS-$(CONFIG_THOR_FUNCTION) += thor.o
> +COBJS-$(CONFIG_CMD_USB_MASS_STORAGE) += ums.o
> 
>  SRCS    := $(COBJS-y:.o=.c)
>  OBJS	:= $(addprefix $(obj),$(COBJS-y))
> diff --git a/board/samsung/common/ums.c b/board/samsung/common/ums.c
> new file mode 100644
> index 0000000..506f4b5
> --- /dev/null
> +++ b/board/samsung/common/ums.c
> @@ -0,0 +1,66 @@
> +/*
> + * Copyright (C) 2013 Samsung Electronics
> + * Lukasz Majewski <l.majewski at samsung.com>
> + *
> + * SPDX-License-Identifier:	GPL-2.0+
> + */
> +
> +#include <common.h>
> +#include <usb_mass_storage.h>
> +#include <part.h>
> +
> +static int ums_read_sector(struct ums_device *ums_dev,
> +			   ulong start, lbaint_t blkcnt, void *buf)
> +{
> +	if (ums_dev->mmc->block_dev.block_read(ums_dev->dev_num,
> +					       start + ums_dev->offset, blkcnt,
> +					       buf) != blkcnt)

This looks like hell.

typeT block_dev = ums_dev->mmc;
int ret;

ret = block_dev->block_read(....);

return ret;

Is it necessary to return -1? Why ?

Please fix the whole thing in-place first, then rebase this migration patch on 
top of the fix.


More information about the U-Boot mailing list