pflash: Dont open memarea for full IO if already done.
When wcycle is non zero the area is already opened for readable IO. Avoiding the re-registration of the memarea significantly speeds up the flash emulation. In particular for flashes connected through 8 or 16-bit buses. Signed-off-by: Edgar E. Iglesias <edgar.iglesias@petalogix.com>
This commit is contained in:
		
							parent
							
								
									4737fa266e
								
							
						
					
					
						commit
						e9cbbcacb6
					
				@ -247,8 +247,10 @@ static void pflash_write(pflash_t *pfl, target_phys_addr_t offset,
 | 
				
			|||||||
    DPRINTF("%s: writing offset " TARGET_FMT_plx " value %08x width %d wcycle 0x%x\n",
 | 
					    DPRINTF("%s: writing offset " TARGET_FMT_plx " value %08x width %d wcycle 0x%x\n",
 | 
				
			||||||
            __func__, offset, value, width, pfl->wcycle);
 | 
					            __func__, offset, value, width, pfl->wcycle);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    if (!pfl->wcycle) {
 | 
				
			||||||
        /* Set the device in I/O access mode */
 | 
					        /* Set the device in I/O access mode */
 | 
				
			||||||
        cpu_register_physical_memory(pfl->base, pfl->total_len, pfl->fl_mem);
 | 
					        cpu_register_physical_memory(pfl->base, pfl->total_len, pfl->fl_mem);
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    switch (pfl->wcycle) {
 | 
					    switch (pfl->wcycle) {
 | 
				
			||||||
    case 0:
 | 
					    case 0:
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user