1. 03 Jan, 2018 2 commits
  2. 24 Dec, 2017 2 commits
  3. 20 Dec, 2017 4 commits
  4. 19 Dec, 2017 5 commits
  5. 18 Dec, 2017 1 commit
  6. 15 Dec, 2017 2 commits
  7. 14 Dec, 2017 2 commits
  8. 13 Dec, 2017 1 commit
    • Roberto Vargas's avatar
      io: block: fix block_read/write may read/write overlap buffer · e19e40af
      Roberto Vargas authored
      
      
      The block operations were trying to optimize the number of memory
      copies, and it tried to use directly the buffer supplied by the user
      to them. This was a mistake because it created too many corner cases:
      
      	1- It was possible to generate unaligned
      	   operations to unaligned buffers. Drivers that were using
      	   DMA transfer failed in that case.
      
      	2- It was possible to generate read operations
      	   with sizes that weren't a multiple of the block size. Some
      	   low level drivers assumed that condition and they calculated
      	   the number of blocks dividing the number of bytes by the
      	   size of the block, without considering the remaining bytes.
      
      	3- The block_* operations didn't control the
      	   number of bytes actually copied to memory, because the
      	   low level drivers were writing directly to the user buffer.
      
      This patch rewrite block_read and block_write to use always the device
      buffer, which the platform ensures that has the correct aligment and
      the correct size.
      
      Change-Id: I5e479bb7bc137e6ec205a8573eb250acd5f40420
      Signed-off-by: default avatarQixiang Xu <qixiang.xu@arm.com>
      Signed-off-by: default avatarRoberto Vargas <roberto.vargas@arm.com>
      e19e40af
  9. 12 Dec, 2017 6 commits
  10. 11 Dec, 2017 1 commit
  11. 10 Dec, 2017 1 commit
  12. 09 Dec, 2017 7 commits
  13. 08 Dec, 2017 1 commit
  14. 06 Dec, 2017 5 commits