mailbox: mailbox-test: fix null pointer if no mmio
Fix null pointer issue if resource_size is called with no ioresource. Signed-off-by: Ludovic Barre <ludovic.barre@st.com> Signed-off-by: Fabien Dessenne <fabien.dessenne@st.com> Signed-off-by: Jassi Brar <jaswinder.singh@linaro.org>
This commit is contained in:
parent
10cfc5a92e
commit
6899b4f7c9
|
@ -363,22 +363,24 @@ static int mbox_test_probe(struct platform_device *pdev)
|
||||||
|
|
||||||
/* It's okay for MMIO to be NULL */
|
/* It's okay for MMIO to be NULL */
|
||||||
res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
|
res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
|
||||||
size = resource_size(res);
|
|
||||||
tdev->tx_mmio = devm_ioremap_resource(&pdev->dev, res);
|
tdev->tx_mmio = devm_ioremap_resource(&pdev->dev, res);
|
||||||
if (PTR_ERR(tdev->tx_mmio) == -EBUSY)
|
if (PTR_ERR(tdev->tx_mmio) == -EBUSY) {
|
||||||
/* if reserved area in SRAM, try just ioremap */
|
/* if reserved area in SRAM, try just ioremap */
|
||||||
|
size = resource_size(res);
|
||||||
tdev->tx_mmio = devm_ioremap(&pdev->dev, res->start, size);
|
tdev->tx_mmio = devm_ioremap(&pdev->dev, res->start, size);
|
||||||
else if (IS_ERR(tdev->tx_mmio))
|
} else if (IS_ERR(tdev->tx_mmio)) {
|
||||||
tdev->tx_mmio = NULL;
|
tdev->tx_mmio = NULL;
|
||||||
|
}
|
||||||
|
|
||||||
/* If specified, second reg entry is Rx MMIO */
|
/* If specified, second reg entry is Rx MMIO */
|
||||||
res = platform_get_resource(pdev, IORESOURCE_MEM, 1);
|
res = platform_get_resource(pdev, IORESOURCE_MEM, 1);
|
||||||
size = resource_size(res);
|
|
||||||
tdev->rx_mmio = devm_ioremap_resource(&pdev->dev, res);
|
tdev->rx_mmio = devm_ioremap_resource(&pdev->dev, res);
|
||||||
if (PTR_ERR(tdev->rx_mmio) == -EBUSY)
|
if (PTR_ERR(tdev->rx_mmio) == -EBUSY) {
|
||||||
|
size = resource_size(res);
|
||||||
tdev->rx_mmio = devm_ioremap(&pdev->dev, res->start, size);
|
tdev->rx_mmio = devm_ioremap(&pdev->dev, res->start, size);
|
||||||
else if (IS_ERR(tdev->rx_mmio))
|
} else if (IS_ERR(tdev->rx_mmio)) {
|
||||||
tdev->rx_mmio = tdev->tx_mmio;
|
tdev->rx_mmio = tdev->tx_mmio;
|
||||||
|
}
|
||||||
|
|
||||||
tdev->tx_channel = mbox_test_request_channel(pdev, "tx");
|
tdev->tx_channel = mbox_test_request_channel(pdev, "tx");
|
||||||
tdev->rx_channel = mbox_test_request_channel(pdev, "rx");
|
tdev->rx_channel = mbox_test_request_channel(pdev, "rx");
|
||||||
|
|
Loading…
Reference in New Issue