19 Feb, 2020

1 commit

  • The implementation of dma_map_single() and dma_unmap_single() is
    exactly the same for all the architectures that support them.

    Factor them out to , and make all drivers to
    include instead of .

    If we need to differentiate them for some architectures, we can
    move the generic definitions to .

    Add some comments to the helpers. The concept is quite similar to
    the DMA-API of Linux kernel. Drivers are agnostic about what is
    going on behind the scene. Just call dma_map_single() before the
    DMA, and dma_unmap_single() after it.

    Signed-off-by: Masahiro Yamada

    Masahiro Yamada
     

06 Feb, 2020

2 commits

  • At present dm/device.h includes the linux-compatible features. This
    requires including linux/compat.h which in turn includes a lot of headers.
    One of these is malloc.h which we thus end up including in every file in
    U-Boot. Apart from the inefficiency of this, it is problematic for sandbox
    which needs to use the system malloc() in some files.

    Move the compatibility features into a separate header file.

    Signed-off-by: Simon Glass

    Simon Glass
     
  • At present devres.h is included in all files that include dm.h but few
    make use of it. Also this pulls in linux/compat which adds several more
    headers. Drop the automatic inclusion and require files to include devres
    themselves. This provides a good indication of which files use devres.

    Signed-off-by: Simon Glass
    Reviewed-by: Anatolij Gustschin

    Simon Glass
     

24 Oct, 2019

3 commits

  • Add glue layer driver for the controller present on TI's J721E devices.

    Signed-off-by: Faiz Abbas

    Faiz Abbas
     
  • Add Support for the platform driver for the Cadence device present on
    TI's J721e device.

    Signed-off-by: Faiz Abbas

    Faiz Abbas
     
  • Add Support for UFS Host Controller Interface (UFSHCI) for communicating
    with Universal Flash Storage (UFS) devices. The steps to initialize the
    host controller interface are the following:

    - Initiate the Host Controller Initialization process by writing to the
    Host controller enable register.
    - Configure the Host Controller base address registers by allocating a
    host memory space and related data structures.
    - Unipro link startup procedure
    - Check for connected device
    - Configure UFS host controller to process requests

    Also register this host controller as a SCSI host controller.

    Taken from Linux Kernel v5.2 (drivers/scsi/ufs/ufshcd.c) and ported to
    U-boot.

    Signed-off-by: Faiz Abbas

    Faiz Abbas