drivers/spi: Re-factor spi_crop_chunk
spi_crop_chunk is a property of the SPI controller since it depends upon the maximum transfer size that is supported by the controller. Also, it is possible to implement this within spi-generic layer by obtaining following parameters from the controller: 1. max_xfer_size: Maximum transfer size supported by the controller (Size of 0 indicates invalid size, and unlimited transfer size is indicated by UINT32_MAX.) 2. deduct_cmd_len: Whether cmd_len needs to be deducted from the max_xfer_size to determine max data size that can be transferred. (This is used by the amd boards.) Change-Id: I81c199413f879c664682088e93bfa3f91c6a46e5 Signed-off-by: Furquan Shaikh <furquan@chromium.org> Reviewed-on: https://review.coreboot.org/19386 Reviewed-by: Aaron Durbin <adurbin@chromium.org> Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Tested-by: coreboot org <coreboot.org@gmail.com>
This commit is contained in:
		
				
					committed by
					
						 Martin Roth
						Martin Roth
					
				
			
			
				
	
			
			
			
						parent
						
							f1db5fdb4d
						
					
				
				
					commit
					de705fa1f4
				
			| @@ -95,7 +95,7 @@ static int eon_write(const struct spi_flash *flash, | ||||
| 	for (actual = 0; actual < len; actual += chunk_len) { | ||||
| 		byte_addr = offset % page_size; | ||||
| 		chunk_len = min(len - actual, page_size - byte_addr); | ||||
| 		chunk_len = spi_crop_chunk(sizeof(cmd), chunk_len); | ||||
| 		chunk_len = spi_crop_chunk(&flash->spi, sizeof(cmd), chunk_len); | ||||
|  | ||||
| 		ret = spi_flash_cmd(&flash->spi, CMD_EN25_WREN, NULL, 0); | ||||
| 		if (ret < 0) { | ||||
|   | ||||
		Reference in New Issue
	
	Block a user