1. 02 Nov, 2017 2 commits
  2. 20 Dec, 2016 2 commits
    • Michal Simek's avatar
      block: Move ceva driver to DM · 49c4c78e
      Michal Simek authored
      This patch also includes ARM64 zynqmp changes:
      - Remove platform non DM initialization
      - Remove hardcoded sata base address
      Signed-off-by: default avatarMichal Simek <michal.simek@xilinx.com>
      Reviewed-by: default avatarSimon Glass <sjg@chromium.org>
      49c4c78e
    • Michal Simek's avatar
      dm: Add support for scsi/sata based devices · e8a016b5
      Michal Simek authored
      All sata based drivers are bind and corresponding block
      device is created. Based on this find_scsi_device() is able
      to get back block device based on scsi_curr_dev pointer.
      
      intr_scsi() is commented now but it can be replaced by calling
      find_scsi_device() and scsi_scan().
      
      scsi_dev_desc[] is commented out but common/scsi.c heavily depends on
      it. That's why CONFIG_SYS_SCSI_MAX_DEVICE is hardcoded to 1 and symbol
      is reassigned to a block description allocated by uclass.
      There is only one block description by device now but it doesn't need to
      be correct when more devices are present.
      
      scsi_bind() ensures corresponding block device creation.
      uclass post_probe (scsi_post_probe()) is doing low level init.
      
      SCSI/SATA DM based drivers requires to have 64bit base address as
      the first entry in platform data structure to setup mmio_base.
      Signed-off-by: default avatarMichal Simek <michal.simek@xilinx.com>
      Reviewed-by: default avatarSimon Glass <sjg@chromium.org>
      e8a016b5
  3. 09 Dec, 2016 1 commit
  4. 08 Dec, 2016 2 commits
    • Michal Simek's avatar
      block: Move ceva driver to DM · 8814c038
      Michal Simek authored
      This patch also includes ARM64 zynqmp changes:
      - Remove platform non DM initialization
      - Remove hardcoded sata base address
      Signed-off-by: default avatarMichal Simek <michal.simek@xilinx.com>
      Reviewed-by: default avatarSimon Glass <sjg@chromium.org>
      Series-to: sjg, agraf@suse.de
      Series-cc: uboot
      Series-version: 4
      Series-changes: 2
      - make ceva_init_sata static
      - Move SATA_CEVA to defconfig
      - Initalized max_lun and max_id platdata
      
      Series-changes: 3
      - Extend Kconfig help description
      - sort dm.h
      - Remove SPL undefinition from board file
      - Fix Kconfig dependecies
      8814c038
    • Michal Simek's avatar
      dm: Add support for scsi/sata based devices · bce4d18c
      Michal Simek authored
      All sata based drivers are bind and corresponding block
      device is created. Based on this find_scsi_device() is able
      to get back block device based on scsi_curr_dev pointer.
      
      intr_scsi() is commented now but it can be replaced by calling
      find_scsi_device() and scsi_scan().
      
      scsi_dev_desc[] is commented out but common/scsi.c heavily depends on
      it. That's why CONFIG_SYS_SCSI_MAX_DEVICE is hardcoded to 1 and symbol
      is reassigned to a block description allocated by uclass.
      There is only one block description by device now but it doesn't need to
      be correct when more devices are present.
      
      scsi_bind() ensures corresponding block device creation.
      uclass post_probe (scsi_post_probe()) is doing low level init.
      
      SCSI/SATA DM based drivers requires to have 64bit base address as
      the first entry in platform data structure to setup mmio_base.
      Signed-off-by: default avatarMichal Simek <michal.simek@xilinx.com>
      Reviewed-by: default avatarSimon Glass <sjg@chromium.org>
      Series-changes: 2
      - Use CONFIG_DM_SCSI instead of mix of DM_SCSI and DM_SATA
        Ceva sata has never used sata commands that's why keep it in
        SCSI part only.
      - Separate scsi_scan() for DM_SCSI and do not change cmd/scsi.c
      - Extend platdata
      
      Series-changes: 3
      - Fix scsi_scan return path
      - Fix header location uclass-internal.h
      - Add scsi_max_devs under !DM_SCSI
      - Add new header device-internal because of device_probe()
      - Redesign block device creation algorithm
      - Use device_unbind in error path
      - Create block device with id and lun numbers (lun was there in v2)
      - Cleanup dev_num initialization in block device description
        with fixing parameters in blk_create_devicef
      - Create new Kconfig menu for SATA/SCSI drivers
      - Extend description for DM_SCSI
      - Fix Kconfig dependencies
      - Fix kernel doc format in scsi_platdata
      - Fix ahci_init_one - vendor variable
      
      Series-changes: 4
      - Fix Kconfig entry
      - Remove SPL ifdef around SCSI uclass
      - Clean ahci_print_info() ifdef logic
      bce4d18c
  5. 05 Dec, 2016 1 commit
  6. 03 Dec, 2016 1 commit
  7. 11 Oct, 2016 1 commit
  8. 27 Sep, 2016 1 commit
    • Stefan Roese's avatar
      ahci: Make ahci_port_base() non-static to enable overwrite · 22f5de6b
      Stefan Roese authored
      To allow a board- / platform-specific ahci_port_base() function, this
      patch removes "static inline" and adds __weak to this function. This
      will be used by the upcoming Armada 7K/8K SATA / AHCI support, which
      unfortunately needs a different port base address calculation.
      Signed-off-by: default avatarStefan Roese <sr@denx.de>
      Cc: Nadav Haklai <nadavh@marvell.com>
      Cc: Neta Zur Hershkovits <neta@marvell.com>
      Cc: Kostya Porotchkin <kostap@marvell.com>
      Cc: Omri Itach <omrii@marvell.com>
      Cc: Igal Liberman <igall@marvell.com>
      Cc: Haim Boot <hayim@marvell.com>
      Cc: Hanna Hawa <hannah@marvell.com>
      22f5de6b
  9. 23 Sep, 2016 2 commits
  10. 24 May, 2016 1 commit
    • Peng Fan's avatar
      block: dwc_ahsata: support i.MX6DQPlus · 3fd9eb66
      Peng Fan authored
      i.MX6DQPlus support sata interface, so not return failure
      when CPU is i.MX6DQPlus.
      
      In this patch, also use simpler runtime cpu dections macros to replace
      is_cpu_type.
      Signed-off-by: default avatarPeng Fan <van.freenix@gmail.com>
      Cc: Stefano Babic <sbabic@denx.de>
      Cc: Simon Glass <sjg@chromium.org>
      Cc: Tang Yuantian <Yuantian.Tang@freescale.com>
      Cc: Shaohui Xie <Shaohui.Xie@freescale.com>
      Cc: Bin Meng <bmeng.cn@gmail.com>
      3fd9eb66
  11. 17 May, 2016 19 commits
  12. 18 Apr, 2016 1 commit
  13. 04 Apr, 2016 1 commit
  14. 01 Apr, 2016 1 commit
    • Eric Nelson's avatar
      drivers: block: add block device cache · e40cf34a
      Eric Nelson authored
      Add a block device cache to speed up repeated reads of block devices by
      various filesystems.
      
      This small amount of cache can dramatically speed up filesystem
      operations by skipping repeated reads of common areas of a block
      device (typically directory structures).
      
      This has shown to have some benefit on FAT filesystem operations of
      loading a kernel and RAM disk, but more dramatic benefits on ext4
      filesystems when the kernel and/or RAM disk are spread across
      multiple extent header structures as described in commit fc0fc50f.
      
      The cache is implemented through a minimal list (block_cache) maintained
      in most-recently-used order and count of the current number of entries
      (cache_count). It uses a maximum block count setting to prevent copies
      of large block reads and an upper bound on the number of cached areas.
      
      The maximum number of entries in the cache defaults to 32 and the maximum
      number of blocks per cache entry has a default of 2, which has shown to
      produce the best results on testing of ext4 and FAT filesystems.
      
      The 'blkcache' command (enabled through CONFIG_CMD_BLOCK_CACHE) allows
      changing these values and can be used to tune for a particular filesystem
      layout.
      Signed-off-by: default avatarEric Nelson <eric@nelint.com>
      e40cf34a
  15. 22 Mar, 2016 1 commit
  16. 18 Mar, 2016 1 commit
  17. 14 Mar, 2016 2 commits