File tree Expand file tree Collapse file tree 1 file changed +11
-5
lines changed Expand file tree Collapse file tree 1 file changed +11
-5
lines changed Original file line number Diff line number Diff line change @@ -590,15 +590,21 @@ static void amd_spi_mem_data_in(struct amd_spi *amd_spi,
590
590
* Use index mode otherwise.
591
591
*/
592
592
if (amd_spi -> version == AMD_HID2_SPI && amd_is_spi_read_cmd (op -> cmd .opcode )) {
593
+ u64 * dma_buf64 = (u64 * )amd_spi -> dma_virt_addr ;
594
+ u8 * dma_buf ;
595
+
593
596
amd_spi_hiddma_read (amd_spi , op );
594
597
595
- for (i = 0 ; left_data >= 8 ; i ++ , left_data -= 8 )
596
- * buf_64 ++ = readq ((u8 __iomem * )amd_spi -> dma_virt_addr + (i * 8 ));
598
+ /* Copy data from DMA buffer */
599
+ while (left_data >= 8 ) {
600
+ * buf_64 ++ = * dma_buf64 ++ ;
601
+ left_data -= 8 ;
602
+ }
597
603
598
604
buf = (u8 * )buf_64 ;
599
- for ( i = 0 ; i < left_data ; i ++ )
600
- buf [ i ] = readb (( u8 __iomem * ) amd_spi -> dma_virt_addr +
601
- ( nbytes - left_data + i )) ;
605
+ dma_buf = ( u8 * ) dma_buf64 ;
606
+ while ( left_data -- )
607
+ * buf ++ = * dma_buf ++ ;
602
608
603
609
/* Reset HID RX memory logic */
604
610
data = amd_spi_readreg32 (amd_spi , AMD_SPI_HID2_CNTRL );
You can’t perform that action at this time.
0 commit comments