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

Marek Vasut
2013-10-18T13:58:44Z

Dear Przemyslaw Marczak,

> Hello Marek,
> Thank you for fast reply.
>
> On 10/17/2013 07:39 PM, Marek Vasut wrote:
> > 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@samsung.com>
> >> Cc: Marek Vasut <marex@denx.de>
> >> Cc: Minkyu Kang <mk7.kang@samsung.com>
> >> Cc: Lukasz Majewski <l.majewski@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@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;
>
> Ok, you're right - I will fix it in next patch set.
>
> > Is it necessary to return -1? Why ?
>
> It's only because of ums gadged driver design but it is easy to simplify.

A proper errno.h patch would be good here.

> > Please fix the whole thing in-place first, then rebase this migration
> > patch on top of the fix.
>
> OK, migration patch will be at the top.
>
> And one more. Do you want me to make it applicable to usb-next or
> usb-master tree?

-next please.