mmc: mv_sdhci: fix uninitialized pointer deref on probe
Since commit3d296365e4("mmc: sdhci: Add support for sdhci-caps-mask") sdhci_setup_cfg() expects a valid sdhci_host mmc field. Move the mmc field initialization before sdhci_setup_cfg() call to avoid crash on mmc pointer dereference. Fixes:3d296365e4("mmc: sdhci: Add support for sdhci-caps-mask") Cc: Faiz Abbas <faiz_abbas@ti.com> Signed-off-by: Baruch Siach <baruch@tkos.co.il>
This commit is contained in:
		
							parent
							
								
									09da18deab
								
							
						
					
					
						commit
						41a9fab8da
					
				|  | @ -114,6 +114,9 @@ static int mv_sdhci_probe(struct udevice *dev) | ||||||
| 	host->name = MVSDH_NAME; | 	host->name = MVSDH_NAME; | ||||||
| 	host->ioaddr = (void *)devfdt_get_addr(dev); | 	host->ioaddr = (void *)devfdt_get_addr(dev); | ||||||
| 	host->quirks = SDHCI_QUIRK_32BIT_DMA_ADDR | SDHCI_QUIRK_WAIT_SEND_CMD; | 	host->quirks = SDHCI_QUIRK_32BIT_DMA_ADDR | SDHCI_QUIRK_WAIT_SEND_CMD; | ||||||
|  | 	host->mmc = &plat->mmc; | ||||||
|  | 	host->mmc->dev = dev; | ||||||
|  | 	host->mmc->priv = host; | ||||||
| 
 | 
 | ||||||
| 	ret = sdhci_setup_cfg(&plat->cfg, host, 0, 0); | 	ret = sdhci_setup_cfg(&plat->cfg, host, 0, 0); | ||||||
| 	if (ret) | 	if (ret) | ||||||
|  | @ -124,9 +127,6 @@ static int mv_sdhci_probe(struct udevice *dev) | ||||||
| 		sdhci_mvebu_mbus_config(host->ioaddr); | 		sdhci_mvebu_mbus_config(host->ioaddr); | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	host->mmc = &plat->mmc; |  | ||||||
| 	host->mmc->dev = dev; |  | ||||||
| 	host->mmc->priv = host; |  | ||||||
| 	upriv->mmc = host->mmc; | 	upriv->mmc = host->mmc; | ||||||
| 
 | 
 | ||||||
| 	return sdhci_probe(dev); | 	return sdhci_probe(dev); | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue