Re: [PATCH v2 1/2] USB: dwc3-exynos: Add support for device tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Oct 26, 2012 at 01:44:38PM +0200, Benoit Cousson wrote:
> 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@xxxxxx> 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@xxxxxxxxxxx>
> >>>>>> ---
> >>>>>>  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 :-(

fair enough, then we will go with Vivek's approach, I'll wait until next
friday before looking into these patches again though.

-- 
balbi

Attachment: signature.asc
Description: Digital signature


[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux