ahci: Fix cache align error messages
Align the ATA ID buffer to the cache-line boundary. This gets rid of the below error mesages on ARM v7 platforms. scanning bus for devices... ERROR: v7_dcache_inval_range - start address is not aligned - 0xfee48618 ERROR: v7_dcache_inval_range - stop address is not aligned - 0xfee48818 CC: Aneesh V <aneesh@ti.com> Signed-off-by: Roger Quadros <rogerq@ti.com>
This commit is contained in:
		
							parent
							
								
									d73763a4fb
								
							
						
					
					
						commit
						2faf5fb82e
					
				|  | @ -623,7 +623,7 @@ static int ata_scsiop_inquiry(ccb *pccb) | ||||||
| 		95 - 4, | 		95 - 4, | ||||||
| 	}; | 	}; | ||||||
| 	u8 fis[20]; | 	u8 fis[20]; | ||||||
| 	u16 *tmpid; | 	ALLOC_CACHE_ALIGN_BUFFER(u16, tmpid, ATA_ID_WORDS); | ||||||
| 	u8 port; | 	u8 port; | ||||||
| 
 | 
 | ||||||
| 	/* Clean ccb data buffer */ | 	/* Clean ccb data buffer */ | ||||||
|  | @ -642,16 +642,10 @@ static int ata_scsiop_inquiry(ccb *pccb) | ||||||
| 
 | 
 | ||||||
| 	/* Read id from sata */ | 	/* Read id from sata */ | ||||||
| 	port = pccb->target; | 	port = pccb->target; | ||||||
| 	tmpid = malloc(ATA_ID_WORDS * 2); |  | ||||||
| 	if (!tmpid) { |  | ||||||
| 		printf("%s: No memory for tmpid\n", __func__); |  | ||||||
| 		return -ENOMEM; |  | ||||||
| 	} |  | ||||||
| 
 | 
 | ||||||
| 	if (ahci_device_data_io(port, (u8 *) &fis, sizeof(fis), (u8 *)tmpid, | 	if (ahci_device_data_io(port, (u8 *) &fis, sizeof(fis), (u8 *)tmpid, | ||||||
| 				ATA_ID_WORDS * 2, 0)) { | 				ATA_ID_WORDS * 2, 0)) { | ||||||
| 		debug("scsi_ahci: SCSI inquiry command failure.\n"); | 		debug("scsi_ahci: SCSI inquiry command failure.\n"); | ||||||
| 		free(tmpid); |  | ||||||
| 		return -EIO; | 		return -EIO; | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue