On 2/12/2015 1:04 AM, Kaukab, Yousaf wrote: >> -----Original Message----- >> From: John Youn [mailto:John.Youn@xxxxxxxxxxxx] >> Sent: Wednesday, February 11, 2015 11:00 PM >> To: Zhangfei Gao; Kaukab, Yousaf >> Cc: balbi@xxxxxx; john.youn@xxxxxxxxxxxx; linux-usb@xxxxxxxxxxxxxxx >> Subject: Re: [PATCH 2/2] usb: dwc2: gadget reuse ahbcfg assigned from >> platform >> >> On 2/6/2015 2:23 PM, John Youn wrote: >>> On 2/6/2015 6:02 AM, Zhangfei Gao wrote: >>>> On 6 February 2015 at 16:07, Kaukab, Yousaf <yousaf.kaukab@xxxxxxxxx> >> wrote: >>>>>>>> GAHBCFG_HBSTLEN_INCR4 << diff --git a/drivers/usb/dwc2/gadget.c >>>>>>>> b/drivers/usb/dwc2/gadget.c index 15aa578..20085de 100644 >>>>>>>> --- a/drivers/usb/dwc2/gadget.c >>>>>>>> +++ b/drivers/usb/dwc2/gadget.c >>>>>>>> @@ -2314,9 +2314,13 @@ void >>>>>>>> s3c_hsotg_core_init_disconnected(struct >>>>>>>> dwc2_hsotg *hsotg, >>>>>>>> GINTSTS_USBSUSP | GINTSTS_WKUPINT, >>>>>>>> hsotg->regs + GINTMSK); >>>>>>>> >>>>>>>> + if ((hsotg->core_params) && (hsotg->core_params->ahbcfg != >>>>>>>> + - >>>>>>>> 1)) >>>>>>>> + val = hsotg->core_params->ahbcfg & >>>>>>>> ~GAHBCFG_CTRL_MASK; >>>>>>>> + else >>>>>>>> + val = GAHBCFG_HBSTLEN_INCR4 << >>>>>>>> GAHBCFG_HBSTLEN_SHIFT; >>>>>>>> + >>>>>>>> if (using_dma(hsotg)) >>>>>>>> - writel(GAHBCFG_GLBL_INTR_EN | >>>>>>>> GAHBCFG_DMA_EN | >>>>>>>> - (GAHBCFG_HBSTLEN_INCR4 << >>>>>>>> GAHBCFG_HBSTLEN_SHIFT), >>>>>>>> + writel(GAHBCFG_GLBL_INTR_EN | >>>>>>>> GAHBCFG_DMA_EN | val, >>>>>>>> hsotg->regs + GAHBCFG); >>>>>>>> else >>>>>>>> writel(((hsotg->dedicated_fifos) ? >>>>>>>> (GAHBCFG_NP_TXF_EMP_LVL | >>>>>>> >>>>>>> There are other bits in GAHBCFG that can be set from platform. >>>>>>> They will be >>>>>> preserved by your patch, as they are not part of GAHBCFG_CTRL_MASK, >>>>>> but only in case dma is enabled. Perhaps preserve them in non-dma case >> as well. >>>>>> >>>>>> Here may have issue if also set hsotg->core_params->ahbcfg for >>>>>> non-dma case, since GAHBCFG[4:1] may be set. >>>>> >>>>> You can mask off HBstLen in that case. However, I don't think setting burst >> length will be an issue in non DMA case as DWC2 will not act as a bus master. >> John, can you please confirm if setting burst length will be an issue in non-dma >> case? >>> >>> I don't think it hurts to preserve those bits, but I will check. >>> >> >> I can confirm that AHB_SINGLE, NOTI_ALL_DMA_WRIT, REM_MEM_SUPP, >> HBSTLEN, and INV_DESC_ENDIANNESS only apply in DMA mode and are >> ignored in slave mode operation. > > John, thank you! So, there is no harm in setting these in non-dma mode. > That's correct. John -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html