[PATCH v2 1/2] USB: dwc3-exynos: Add support for device tree
Benoit Cousson
b-cousson at ti.com
Fri Oct 26 22:44:38 EST 2012
Hi Felipe,
On 10/26/2012 10:13 AM, Felipe Balbi wrote:
> Hi,
>
> On Thu, Oct 25, 2012 at 11:37:33AM +0530, Vivek Gautam wrote:
>> Hi,
>>
>> On Tue, Oct 16, 2012 at 3:38 PM, Felipe Balbi <balbi at ti.com> wrote:
>>> Hi,
>>>
>>> On Tue, Oct 16, 2012 at 03:36:43PM +0530, kishon wrote:
>>>> Hi,
>>>>
>>>> On Tuesday 16 October 2012 03:23 PM, Felipe Balbi wrote:
>>>>> On Tue, Oct 16, 2012 at 02:15:56PM +0530, Vivek Gautam wrote:
>>>>>> This patch adds support to parse probe data for
>>>>>> dwc3-exynos driver using device tree.
>>>>>>
>>>>>> Signed-off-by: Vivek Gautam <gautam.vivek at samsung.com>
>>>>>> ---
>>>>>> drivers/usb/dwc3/dwc3-exynos.c | 20 ++++++++++++++++++++
>>>>>> 1 files changed, 20 insertions(+), 0 deletions(-)
>>>>>>
>>>>>> diff --git a/drivers/usb/dwc3/dwc3-exynos.c b/drivers/usb/dwc3/dwc3-exynos.c
>>>>>> index ca65978..d11ef49 100644
>>>>>> --- a/drivers/usb/dwc3/dwc3-exynos.c
>>>>>> +++ b/drivers/usb/dwc3/dwc3-exynos.c
>>>>>> @@ -21,6 +21,7 @@
>>>>>> #include <linux/clk.h>
>>>>>> #include <linux/usb/otg.h>
>>>>>> #include <linux/usb/nop-usb-xceiv.h>
>>>>>> +#include <linux/of.h>
>>>>>>
>>>>>> #include "core.h"
>>>>>>
>>>>>> @@ -87,6 +88,8 @@ err1:
>>>>>> return ret;
>>>>>> }
>>>>>>
>>>>>> +static u64 dwc3_exynos_dma_mask = DMA_BIT_MASK(32);
>>>>>> +
>>>>>> static int __devinit dwc3_exynos_probe(struct platform_device *pdev)
>>>>>> {
>>>>>> struct dwc3_exynos_data *pdata = pdev->dev.platform_data;
>>>>>> @@ -103,6 +106,14 @@ static int __devinit dwc3_exynos_probe(struct platform_device *pdev)
>>>>>> goto err0;
>>>>>> }
>>>>>>
>>>>>> + /*
>>>>>> + * Right now device-tree probed devices don't get dma_mask set.
>>>>>> + * Since shared usb code relies on it, set it here for now.
>>>>>> + * Once we move to full device tree support this will vanish off.
>>>>>> + */
>>>>>> + if (!pdev->dev.dma_mask)
>>>>>> + pdev->dev.dma_mask = &dwc3_exynos_dma_mask;
>>>>>
>>>>> says who ?
>>>>>
>>>>> $ git grep -e dma_mask drivers/of/
>>>>> drivers/of/platform.c: dev->dev.dma_mask = &dev->archdata.dma_mask;
>>>>> drivers/of/platform.c: dev->archdata.dma_mask = 0xffffffffUL;
>>>>> drivers/of/platform.c: dev->dev.coherent_dma_mask = DMA_BIT_MASK(32);
>>>>> drivers/of/platform.c: dev->dev.coherent_dma_mask = ~0;
>>>>> drivers/of/platform.c: dev->dma_mask = ~0;
>>>>>
>>>>> -ECONFUSED
>>>>
>>>> dma_mask is set under some ifdef except for "dev->dma_mask = ~0;".
>>>> However I agree with you for coherent_dma_mask case.
>>>
>>> indeed. Should we try to patch that instead ?
>>>
>>> Rob, should we set dma_mask at the driver or do you have a nicer way to
>>> handle it ??
>>>
>> Can i have suggestions here please ? :)
>
> Benoit, can you answer here since nobody else does ?
Well, I wish I could, but honestly I don't have a clue :-(
Benoit
More information about the devicetree-discuss
mailing list