17 May, 2014

1 commit


23 Apr, 2014

1 commit

  • Increase TXFIFOTHRES field value in TXFILLTUNING register of usb for T4 Rev 2.0.
    This decreases data burst rate with which data packets are posted from the TX
    latency FIFO to compensate for latencies in DDR pipeline during DMA.
    This avoids Tx buffer underruns and leads to successful usb writes

    Signed-off-by: Ramneek Mehresh
    Signed-off-by: Nikhil Badola
    Reviewed-by: York Sun

    Nikhil Badola
     

05 Mar, 2014

1 commit

  • Copied from Linux sources "include/linux/sizes.h" commit
    413541dd66d51f791a0b169d9b9014e4f56be13c

    Signed-off-by: Alexey Brodkin

    Cc: Vineet Gupta
    Cc: Tom Rini
    Cc: Stefan Roese
    Cc: Albert Aribaud
    Acked-by: Tom Rini
    Acked-by: Stefan Roese
    [trini: Add bcm Kona platforms to the patch]
    Signed-off-by: Tom Rini

    Alexey Brodkin
     

07 Feb, 2014

1 commit


06 Feb, 2014

2 commits

  • The mv_udc is not marvell-specific anymore. The mv_udc is used to drive
    generic ChipIdea CI13xxx series OTG cores, so rename the driver to ci_udc
    instead.

    Signed-off-by: Marek Vasut
    Cc: Eric Nelson
    Cc: Stefano Babic

    Marek Vasut
     
  • The Samsung's UDC driver is not anymore copying data from USB requests to
    aligned internal buffers. Now it works directly in data allocated in the
    upper layers like UMS, DFU, THOR.

    This change is possible since those gadgets now must take care to allocate
    buffers aligned to cache line (CONFIG_SYS_CACHELINE_SIZE).

    This can be achieved by using DEFINE_CACHE_ALIGN_BUFFER() or
    ALLOC_CACHE_ALIGN_BUFFER() macros. Those take care to allocate buffer
    aligned to cache line in both starting address and its size.
    Sometimes it is enough to just use memalign() with size being a
    multiplication of cache line size.

    Test condition
    - test HW + measurement: Trats - Exynos4210 rev.1
    - test HW Trats2 - Exynos4412 rev.1
    400 MiB compressed rootfs image download with `thor 0 mmc 0`

    Measurement:
    Transmission speed: 27.04 MiB/s

    Signed-off-by: Lukasz Majewski
    Cc: Marek Vasut

    Lukasz Majewski
     

25 Oct, 2013

1 commit


21 Oct, 2013

2 commits


30 Jul, 2013

7 commits

  • The requests sent to the controller are not properly cache aligned
    most of the time, thus implement a simple bounce buffer to avoid
    problem with cache.

    Signed-off-by: Marek Vasut
    Cc: Fabio Estevam
    Cc: Lei Wen
    Cc: Otavio Salvador
    Cc: Stefano Babic

    Marek Vasut
     
  • Allocate the qTD items all at once instead of allocating them
    separately. Moreover, make sure each qTD is properly aligned
    to 32-bytes boundary and that cache can be safely flushed over
    each qTD touple.

    Signed-off-by: Marek Vasut
    Cc: Fabio Estevam
    Cc: Lei Wen
    Cc: Otavio Salvador
    Cc: Stefano Babic

    Marek Vasut
     
  • Both the endpoint queue head and the endpoint item list is a controller
    specific thing. Move them both into controller private data.

    Signed-off-by: Marek Vasut
    Cc: Fabio Estevam
    Cc: Lei Wen
    Cc: Otavio Salvador
    Cc: Stefano Babic

    Marek Vasut
     
  • The usb_lowlevel_init() call already fills and passes back struct
    ehci_ctrl , which readily contains correctly determined address of
    the port register block address computed from values from controller
    configuration registers. Leverage this and make use of this value
    as this makes the code mode universal, but also gets us rid of the
    CONFIG_USB_REG_BASE configuration option.

    Moreover, this patch cleans up the usb_gadget_register_driver() call
    a little by correcting the error handling. Note the usb_lowlevel_init()
    and mvudc_probe() are now called in reversed order, but this has no
    impact on the code.

    Signed-off-by: Marek Vasut
    Cc: Fabio Estevam
    Cc: Lei Wen
    Cc: Otavio Salvador
    Cc: Stefano Babic

    Marek Vasut
     
  • Move the constant values that are programmed into mv_ep.ep into
    separate static const structure so they can be memcpy()'d when
    the initialization happens.

    Moveover, we only every init NUM_ENDPOINTS, not 2 * NUM_ENDPOINTS,
    so fix this bug as well.

    Signed-off-by: Marek Vasut
    Cc: Fabio Estevam
    Cc: Lei Wen
    Cc: Otavio Salvador
    Cc: Stefano Babic

    Marek Vasut
     
  • The endpoints are operated on a per-controller basis, move the
    endpoint array into controller's private data. Also shuffle the
    struct mv_ep structure definition just above the definition of
    the struct mv_drv so they're well grouped together.

    Signed-off-by: Marek Vasut
    Cc: Fabio Estevam
    Cc: Lei Wen
    Cc: Otavio Salvador
    Cc: Stefano Babic

    Marek Vasut
     
  • Do a coding-style cleanup of this file and throw away useless
    defined values. These values were likely a result of a copy-paste
    job.

    Signed-off-by: Marek Vasut
    Cc: Fabio Estevam
    Cc: Lei Wen
    Cc: Otavio Salvador
    Cc: Stefano Babic

    Marek Vasut
     

24 Jul, 2013

1 commit


13 Jun, 2013

1 commit

  • This patch adds support to both Faraday FUSBH200 and FOTG210,
    the differences between Faraday EHCI and standard EHCI are
    listed bellow:

    1. The PORTSC starts at 0x30 instead of 0x44.
    2. The CONFIGFLAG(0x40) is not only un-implemented, and
    also has its address space removed.
    3. Faraday EHCI is a TDI design, but it doesn't
    compatible with the general TDI implementation
    found at both U-Boot and Linux.
    4. The ISOC descriptors differ from standard EHCI in
    several ways. But since U-boot doesn't support ISOC,
    we don't have to worry about that.

    Signed-off-by: Kuo-Jung Su
    CC: Marek Vasut

    Kuo-Jung Su
     

05 May, 2013

1 commit


10 Dec, 2012

1 commit


20 Nov, 2012

1 commit


16 Nov, 2012

2 commits


16 Oct, 2012

2 commits


01 Sep, 2012

1 commit


20 May, 2012

3 commits


30 Apr, 2012

2 commits

  • Merge our duplicate definitions with the common header.

    Also fix drivers/usb/gadget/s3c_udc_otg_xfer_dma.c to
    use min() instead of min_t() since we remove the latter
    from compat.h.

    Additionally use memalign() directly as the lin_gadget
    specific kmalloc() macro is removed from lin_gadget_compat.h
    by this patch.

    Signed-off-by: Mike Frysinger
    Signed-off-by: Anatolij Gustschin
    Cc: Lukasz Majewski

    Mike Frysinger
     
  • No need to provide our own mdelay() macro when we have a func for it.

    Signed-off-by: Mike Frysinger

    Mike Frysinger
     

19 Mar, 2012

3 commits


12 Feb, 2012

1 commit


21 Dec, 2011

1 commit

  • Fix:
    In file included from s3c_udc_otg.c:216:0:
    s3c_udc_otg_xfer_dma.c: In function 'complete_tx':
    s3c_udc_otg_xfer_dma.c:280:33: warning: variable 'is_short' set but not used
    s3c_udc_otg_xfer_dma.c:280:6: warning: variable 'ep_tsr' set but not used
    s3c_udc_otg_xfer_dma.c: In function 's3c_udc_irq':
    s3c_udc_otg_xfer_dma.c:469:16: warning: variable 'flags' set but not used
    s3c_udc_otg_xfer_dma.c:468:18: warning: variable 'gintmsk' set but not used
    s3c_udc_otg_xfer_dma.c: In function 's3c_queue':
    s3c_udc_otg_xfer_dma.c:582:14: warning: variable 'gintsts' set but not used
    s3c_udc_otg_xfer_dma.c:581:16: warning: variable 'flags' set but not used
    s3c_udc_otg_xfer_dma.c: In function 's3c_ep0_read':
    s3c_udc_otg_xfer_dma.c:778:6: warning: variable 'ret' set but not used
    s3c_udc_otg_xfer_dma.c: In function 's3c_udc_set_halt':
    s3c_udc_otg_xfer_dma.c:1020:16: warning: variable 'flags' set but not used
    s3c_udc_otg_xfer_dma.c: In function 's3c_ep0_setup':
    s3c_udc_otg_xfer_dma.c:1258:13: warning: initialization from incompatible
    pointer type [enabled by default]
    s3c_udc_otg_xfer_dma.c:1239:16: warning: variable 'is_in' set but not used
    s3c_udc_otg_xfer_dma.c:1239:9: warning: variable 'bytes' set but not used
    s3c_udc_otg.c: In function 'usb_gadget_register_driver':
    s3c_udc_otg.c:292:16: warning: variable 'flags' set but not used
    s3c_udc_otg.c: In function 'usb_gadget_unregister_driver':
    s3c_udc_otg.c:338:16: warning: variable 'flags' set but not used
    s3c_udc_otg.c: In function 's3c_ep_enable':
    s3c_udc_otg.c:582:16: warning: variable 'flags' set but not used
    s3c_udc_otg.c: In function 's3c_ep_disable':
    s3c_udc_otg.c:646:16: warning: variable 'flags' set but not used
    s3c_udc_otg.c: In function 's3c_dequeue':
    s3c_udc_otg.c:704:16: warning: variable 'flags' set but not used

    Signed-off-by: Anatolij Gustschin
    Cc: Lukasz Majewski
    Cc: Remy Bohmer

    Anatolij Gustschin
     

17 Dec, 2011

2 commits


11 Dec, 2011

2 commits