coresight: tmc: Report DMA setup failures
authorSuzuki K Poulose <suzuki.poulose@arm.com>
Thu, 25 Apr 2019 19:52:41 +0000 (13:52 -0600)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 25 Apr 2019 20:00:15 +0000 (22:00 +0200)
If we failed to setup the DMA mask for TMC-ETR, report the
error before failing the probe.

Cc: Mathieu Poirier <mathieu.poirier@linaro.org>
Signed-off-by: Suzuki K Poulose <suzuki.poulose@arm.com>
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/hwtracing/coresight/coresight-tmc.c

index 2a02da3d630f4e50fa3508dd8e94ef32edd49dae..647b6aa93554a0cec0c581ae59b57a823652c59f 100644 (file)
@@ -340,6 +340,8 @@ static inline bool tmc_etr_can_use_sg(struct tmc_drvdata *drvdata)
 static int tmc_etr_setup_caps(struct tmc_drvdata *drvdata,
                             u32 devid, void *dev_caps)
 {
+       int rc;
+
        u32 dma_mask = 0;
 
        /* Set the unadvertised capabilities */
@@ -369,7 +371,10 @@ static int tmc_etr_setup_caps(struct tmc_drvdata *drvdata,
                dma_mask = 40;
        }
 
-       return dma_set_mask_and_coherent(drvdata->dev, DMA_BIT_MASK(dma_mask));
+       rc = dma_set_mask_and_coherent(drvdata->dev, DMA_BIT_MASK(dma_mask));
+       if (rc)
+               dev_err(drvdata->dev, "Failed to setup DMA mask: %d\n", rc);
+       return rc;
 }
 
 static int tmc_probe(struct amba_device *adev, const struct amba_id *id)