27 Apr, 2018

4 commits

  • enable the GPMI NAND driver for i.MX8, the major changes

    - register defination for i.mx8
    - Makefile change for misc.c
    - DMA structure must be 32bit address

    Signed-off-by: Han Xu
    (cherry picked from commit 474c4270108551647c7064a23abdc2e11d7f37ab)

    Han Xu
     
  • Update the gpmi/apbh_dma/bch drivers and relevant registers for i.MX8M.

    Signed-off-by: Ye Li
    (cherry picked from commit 6cb839cabb42b81e37214e00448fc5dac89fd1f1)

    Ye Li
     
  • Add the fuse checking in drivers, when the module is disabled in fuse,
    the driver will not work.

    Changed drivers: BEE, GPMI, APBH-DMA, ESDHC, FEC, QSPI, ECSPI, I2C,
    USB-EHCI, GIS, LCDIF and EPDC.

    Signed-off-by: Ye Li
    (cherry picked from commit 1704e116f9b39aeb99201919a18bc2b1e19a980e)
    (cherry picked from commit 2d3b5df8530cd5ef883750378838dea7c40259af)

    Ye Li
     
  • The list_first_entry always assumes the list is not empty, it won't return NULL pointer when
    the list is empty. So the "if (pdesc == NULL)" becomes a dead code. Fix the issue by calling
    the list_empty before the list_first_entry.

    (Coverity CID 29934)

    Signed-off-by: Ye.Li
    (cherry picked from commit ff3923f294cc2e15f436d7520b4042736b1b48a6)
    (cherry picked from commit 64c6a7b5d621080b8bd948c061a4f223a8c2d886)

    Ye.Li
     

09 Feb, 2018

1 commit


20 Jan, 2018

1 commit


04 Oct, 2017

1 commit

  • U-Boot widely uses error() as a bit noisier variant of printf().

    This macro causes name conflict with the following line in
    include/linux/compiler-gcc.h:

    # define __compiletime_error(message) __attribute__((error(message)))

    This prevents us from using __compiletime_error(), and makes it
    difficult to fully sync BUILD_BUG macros with Linux. (Notice
    Linux's BUILD_BUG_ON_MSG is implemented by using compiletime_assert().)

    Let's convert error() into now treewide-available pr_err().

    Done with the help of Coccinelle, excluing tools/ directory.

    The semantic patch I used is as follows:

    //
    @@@@
    -error
    +pr_err
    (...)
    //

    Signed-off-by: Masahiro Yamada
    Reviewed-by: Simon Glass
    [trini: Re-run Coccinelle]
    Signed-off-by: Tom Rini

    Masahiro Yamada
     

12 Jul, 2017

1 commit

  • Change is consistent with other SOCs and it is in preparation
    for adding SOMs. SOC's related files are moved from cpu/ to
    mach-imx/.

    This change is also coherent with the structure in kernel.

    Signed-off-by: Stefano Babic

    CC: Fabio Estevam
    CC: Akshay Bhat
    CC: Ken Lin
    CC: Marek Vasut
    CC: Heiko Schocher
    CC: "Sébastien Szymanski"
    CC: Christian Gmeiner
    CC: Stefan Roese
    CC: Patrick Bruenn
    CC: Troy Kisky
    CC: Nikita Kiryanov
    CC: Otavio Salvador
    CC: "Eric Bénard"
    CC: Jagan Teki
    CC: Ye Li
    CC: Peng Fan
    CC: Adrian Alonso
    CC: Alison Wang
    CC: Tim Harvey
    CC: Martin Donnelly
    CC: Marcin Niestroj
    CC: Lukasz Majewski
    CC: Adam Ford
    CC: "Albert ARIBAUD (3ADEV)"
    CC: Boris Brezillon
    CC: Soeren Moch
    CC: Richard Hu
    CC: Wig Cheng
    CC: Vanessa Maegima
    CC: Max Krummenacher
    CC: Stefan Agner
    CC: Markus Niebel
    CC: Breno Lima
    CC: Francesco Montefoschi
    CC: Jaehoon Chung
    CC: Scott Wood
    CC: Joe Hershberger
    CC: Anatolij Gustschin
    CC: Simon Glass
    CC: "Andrew F. Davis"
    CC: "Łukasz Majewski"
    CC: Patrice Chotard
    CC: Nobuhiro Iwamatsu
    CC: Hans de Goede
    CC: Masahiro Yamada
    CC: Stephen Warren
    CC: Andre Przywara
    CC: "Álvaro Fernández Rojas"
    CC: York Sun
    CC: Xiaoliang Yang
    CC: Chen-Yu Tsai
    CC: George McCollister
    CC: Sven Ebenfeld
    CC: Filip Brozovic
    CC: Petr Kulhavy
    CC: Eric Nelson
    CC: Bai Ping
    CC: Anson Huang
    CC: Sanchayan Maity
    CC: Lokesh Vutla
    CC: Patrick Delaunay
    CC: Gary Bisson
    CC: Alexander Graf
    CC: u-boot@lists.denx.de
    Reviewed-by: Fabio Estevam
    Reviewed-by: Christian Gmeiner

    Stefano Babic
     

01 Jun, 2017

2 commits

  • These support the flat device tree. We want to use the dev_read_..()
    prefix for functions that support both flat tree and live tree. So rename
    the existing functions to avoid confusion.

    In the end we will have:

    1. dev_read_addr...() - works on devices, supports flat/live tree
    2. devfdt_get_addr...() - current functions, flat tree only
    3. of_get_address() etc. - new functions, live tree only

    All drivers will be written to use 1. That function will in turn call
    either 2 or 3 depending on whether the flat or live tree is in use.

    Note this involves changing some dead code - the imx_lpi2c.c file.

    Signed-off-by: Simon Glass

    Simon Glass
     
  • This header includes things that are needed to make driver build. Adjust
    existing users to include that always, even if other dm/ includes are
    present

    Signed-off-by: Simon Glass

    Simon Glass
     

24 Sep, 2016

1 commit


23 Feb, 2016

3 commits


24 Jan, 2016

1 commit


23 Oct, 2015

1 commit


19 Aug, 2015

1 commit

  • Incorporate DMA driver from legacy LPCLinux NXP BSP.
    The files taken from the legacy patch are:
    - lpc32xx DMA driver
    - lpc3250 header file DMA registers definition.

    The legacy driver was updated and clean-up as part of the integration with the latest u-boot.

    Signed-off-by: Sylvain Lemieux
    Acked-by: Marek Vasut
    Tested-by: Vladimir Zapolskiy

    Sylvain Lemieux
     

18 Aug, 2015

1 commit


07 Nov, 2014

1 commit


23 Oct, 2014

3 commits

  • The EDMA3 controller’s primary purpose is to service data transfers
    that you program between two memory-mapped slave endpoints on the device.

    Typical usage includes, but is not limited to the following:
    - Servicing software-driven paging transfers (e.g., transfers from external
    memory, such as SDRAM to internal device memory, such as DSP L2 SRAM)
    - Servicing event-driven peripherals, such as a serial port
    - Performing sorting or sub-frame extraction of various data structures
    - Offloading data transfers from the main device DSP(s)
    - See the device-specific data manual for specific peripherals that are
    accessible via the EDMA3 controller

    Signed-off-by: Ivan Khoronzhuk

    Khoronzhuk, Ivan
     
  • The keystone_nav driver is general driver intended to be used for
    working with queue manager and pktdma for different IPs like NETCP,
    AIF, FFTC, etc. So the it's API shouldn't be named like it works only
    with one of them, it should be general names. The names with prefix
    like netcp_* rather do for drivers/net/keystone_net.c driver. So it's
    good to generalize this driver to be used for different IP's and
    delete confusion with real NETCP driver.

    The current netcp_* functions of keystone navigator can be used for
    other settings of pktdma, not only for NETCP. The API of this driver
    is used by the keystone_net driver to work with NETCP, so net driver
    also should be corrected. For convenience collect pkdma
    configurations in drivers/dma/keystone_nav_cfg.c.

    Acked-by: Vitaly Andrianov
    Signed-off-by: Ivan Khoronzhuk

    Khoronzhuk, Ivan
     
  • The keystone_nav is used by drivers/net/keystone_net.c driver to
    send and receive packets, but currently it's placed at keystone
    arch sources. So it should be in the drivers directory also.
    It's separate driver that can be used for sending and receiving
    pktdma packets by others drivers also.

    This patch just move this driver to appropriate directory and
    doesn't add any functional changes.

    Acked-by: Murali Karicheri
    Signed-off-by: Ivan Khoronzhuk

    Khoronzhuk, Ivan
     

25 Sep, 2014

2 commits


09 Aug, 2014

1 commit

  • The following configs are not defined at all.

    - CONFIG_OMAP1510
    - CONFIG_OMAP_1510P1
    - CONFIG_OMAP_SX1
    - CONFIG_OMAP3_DMA
    - CONFIG_OMAP3_ZOOM2
    - CONFIG_OMAP_INNOVATOR

    Signed-off-by: Masahiro Yamada
    Cc: Tom Rini

    Masahiro Yamada
     

01 Nov, 2013

1 commit


10 Aug, 2013

1 commit

  • Add special function that executes a specially crafted circular
    DMA descriptor. The function doesn't wait for the descriptor to
    finish the transfer, since the descritor never finishes. This is
    useful when operating a SmartLCD through the LCDIF interface, as
    the LCDIF does not give us any means to have continuous refresh
    of the SmartLCD. Instead, the RUN bit in the LCDIF CTRL register
    must be triggered manually. This can be worked around by starting
    an DMA transfer which continuously sets the RUN bit. This function
    allows starting exactly such transfer.

    Signed-off-by: Marek Vasut
    Cc: Anatolij Gustschin
    Cc: Fabio Estevam
    Cc: Otavio Salvador
    Cc: Stefano Babic

    Marek Vasut
     

24 Jul, 2013

1 commit


22 Apr, 2013

2 commits


28 Jan, 2013

1 commit

  • The MX23 has less channels for the APBH DMA, sligtly different register
    layout and some bits in those registers are placed differently. Reflect
    this in the driver. This patch fixes MMC/DMA issue on MX23.

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

    Marek Vasut
     

01 Sep, 2012

3 commits


16 Apr, 2012

1 commit

  • This fixes the issue where mxs_dma_init() was called either twice or never,
    without introducing any new init hooks.

    The idea is to allow each and every device using the APBH DMA block to
    configure and request only the channels it uses, instead of making it call init
    for all the channels as is now.

    The common DMA block init part, which only configures the block, is then called
    from CPUs arch_cpu_init() call.

    NOTE: This patch depends on:

    http://patchwork.ozlabs.org/patch/150957/

    Signed-off-by: Marek Vasut
    Cc: Stefano Babic
    Cc: Wolfgang Denk
    Cc: Detlev Zundel
    Cc: Fabio Estevam
    Tested-by: Fabio Estevam

    Marek Vasut
     

29 Mar, 2012

1 commit


07 Dec, 2011

2 commits


11 Nov, 2011

1 commit


28 Oct, 2011

1 commit