mirror of https://github.com/OpenIPC/firmware.git
				
				
				
			
		
			
				
	
	
		
			30 lines
		
	
	
		
			860 B
		
	
	
	
		
			Diff
		
	
	
			
		
		
	
	
			30 lines
		
	
	
		
			860 B
		
	
	
	
		
			Diff
		
	
	
| diff --git a/drivers/mmc/host/himciv100/himci.c b/drivers/mmc/host/himciv100/himci.c
 | |
| index 64f9af3..dd49323 100644
 | |
| --- a/drivers/mmc/host/himciv100/himci.c
 | |
| +++ b/drivers/mmc/host/himciv100/himci.c
 | |
| @@ -112,6 +112,17 @@ static void hi_mci_sys_reset(struct himci_host *host)
 | |
|  	local_irq_restore(flags);
 | |
|  }
 | |
|  
 | |
| +static void hi_mci_sys_undo_reset(struct himci_host *host)
 | |
| +{
 | |
| +	unsigned long flags;
 | |
| +
 | |
| +	himci_trace(2, "undo reset");
 | |
| +
 | |
| +	local_irq_save(flags);
 | |
| +	hi_mci_ctr_undo_reset();
 | |
| +	local_irq_restore(flags);
 | |
| +}
 | |
| +
 | |
|  static void hi_mci_ctrl_power(struct himci_host *host, unsigned int flag)
 | |
|  {
 | |
|  	himci_trace(2, "begin");
 | |
| @@ -256,6 +267,8 @@ static void hi_mci_init_card(struct himci_host *host)
 | |
|  	hi_mci_ctrl_power(host, POWER_ON);
 | |
|  	udelay(200);
 | |
|  
 | |
| +	hi_mci_sys_undo_reset(host);
 | |
| +
 | |
|  	/* clear MMC host intr */
 | |
|  	himci_writel(ALL_INT_CLR, host->base + MCI_RINTSTS);
 |