|
@@ -3482,7 +3482,7 @@ static int __init d40_of_probe(struct platform_device *pdev,
|
|
|
struct device_node *np)
|
|
|
{
|
|
|
struct stedma40_platform_data *pdata;
|
|
|
- int num_memcpy = 0;
|
|
|
+ int num_phy = 0, num_memcpy = 0;
|
|
|
const const __be32 *list;
|
|
|
|
|
|
pdata = devm_kzalloc(&pdev->dev,
|
|
@@ -3491,6 +3491,11 @@ static int __init d40_of_probe(struct platform_device *pdev,
|
|
|
if (!pdata)
|
|
|
return -ENOMEM;
|
|
|
|
|
|
+ /* If absent this value will be obtained from h/w. */
|
|
|
+ of_property_read_u32(np, "dma-channels", &num_phy);
|
|
|
+ if (num_phy > 0)
|
|
|
+ pdata->num_of_phy_chans = num_phy;
|
|
|
+
|
|
|
list = of_get_property(np, "memcpy-channels", &num_memcpy);
|
|
|
num_memcpy /= sizeof(*list);
|
|
|
|