aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/dma/ste_dma40.c
diff options
context:
space:
mode:
authorLee Jones <lee.jones@linaro.org>2013-05-03 10:32:08 -0400
committerLinus Walleij <linus.walleij@linaro.org>2013-05-23 15:12:55 -0400
commit8b2fe9b6b310a6e5d68de648d6f0697227581d66 (patch)
tree5b0de1364619adbcc1956693c09c30c9a41121da /drivers/dma/ste_dma40.c
parent8a59fed39577d7313921a59dba8cc1711ae90da5 (diff)
dmaengine: ste_dma40: Move rev error-check up to revision acquisition
At the moment we fetch the hardware revision, then do some stuff, then check whether the revision is correct and return in error if it's not. Well we may as well check it as soon as we know what it is, so let's move the check right up underneath where we acquire the version. Acked-by: Vinod Koul <vnod.koul@intel.com> Signed-off-by: Lee Jones <lee.jones@linaro.org> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Diffstat (limited to 'drivers/dma/ste_dma40.c')
-rw-r--r--drivers/dma/ste_dma40.c10
1 files changed, 4 insertions, 6 deletions
diff --git a/drivers/dma/ste_dma40.c b/drivers/dma/ste_dma40.c
index 7ccb8e2d59be..fb79db3313d3 100644
--- a/drivers/dma/ste_dma40.c
+++ b/drivers/dma/ste_dma40.c
@@ -3204,6 +3204,10 @@ static struct d40_base * __init d40_hw_detect_init(struct platform_device *pdev)
3204 * DB8540v1 has revision 4 3204 * DB8540v1 has revision 4
3205 */ 3205 */
3206 rev = AMBA_REV_BITS(pid); 3206 rev = AMBA_REV_BITS(pid);
3207 if (rev < 2) {
3208 d40_err(&pdev->dev, "hardware revision: %d is not supported", rev);
3209 goto failure;
3210 }
3207 3211
3208 plat_data = pdev->dev.platform_data; 3212 plat_data = pdev->dev.platform_data;
3209 3213
@@ -3218,12 +3222,6 @@ static struct d40_base * __init d40_hw_detect_init(struct platform_device *pdev)
3218 dev_info(&pdev->dev, "hardware revision: %d @ 0x%x with %d physical channels\n", 3222 dev_info(&pdev->dev, "hardware revision: %d @ 0x%x with %d physical channels\n",
3219 rev, res->start, num_phy_chans); 3223 rev, res->start, num_phy_chans);
3220 3224
3221 if (rev < 2) {
3222 d40_err(&pdev->dev, "hardware revision: %d is not supported",
3223 rev);
3224 goto failure;
3225 }
3226
3227 base = kzalloc(ALIGN(sizeof(struct d40_base), 4) + 3225 base = kzalloc(ALIGN(sizeof(struct d40_base), 4) +
3228 (num_phy_chans + num_log_chans + ARRAY_SIZE(dma40_memcpy_channels)) * 3226 (num_phy_chans + num_log_chans + ARRAY_SIZE(dma40_memcpy_channels)) *
3229 sizeof(struct d40_chan), GFP_KERNEL); 3227 sizeof(struct d40_chan), GFP_KERNEL);