lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Tue, 21 Jan 2014 10:06:35 +0100 From: Nicolas Ferre <nicolas.ferre@...el.com> To: Bo Shen <voice.shen@...el.com>, Jean-Christophe PLAGNIOL-VILLARD <plagnioj@...osoft.com> CC: Felipe Balbi <balbi@...com>, Greg Kroah-Hartman <gregkh@...uxfoundation.org>, <linux-arm-kernel@...ts.infradead.org>, <linux-usb@...r.kernel.org>, <linux-kernel@...r.kernel.org> Subject: Re: [PATCH 1/2] USB: at91: fix the number of endpoint parameter On 21/01/2014 09:12, Bo Shen : > Hi J, > > On 01/21/2014 01:49 PM, Jean-Christophe PLAGNIOL-VILLARD wrote: >> On 11:39 Mon 20 Jan , Bo Shen wrote: >>> Hi J, >>> >>> On 01/18/2014 01:20 PM, Jean-Christophe PLAGNIOL-VILLARD wrote: >>>> On 10:59 Fri 17 Jan , Bo Shen wrote: >>>>> In sama5d3 SoC, there are 16 endpoints. As the USBA_NR_ENDPOINTS >>>>> is only 7. So, fix it for sama5d3 SoC using the udc->num_ep. >>>>> >>>>> Signed-off-by: Bo Shen <voice.shen@...el.com> >>>>> --- >>>>> >>>>> drivers/usb/gadget/atmel_usba_udc.c | 2 +- >>>>> 1 file changed, 1 insertion(+), 1 deletion(-) >>>>> >>>>> diff --git a/drivers/usb/gadget/atmel_usba_udc.c b/drivers/usb/gadget/atmel_usba_udc.c >>>>> index 2cb52e0..7e67a81 100644 >>>>> --- a/drivers/usb/gadget/atmel_usba_udc.c >>>>> +++ b/drivers/usb/gadget/atmel_usba_udc.c >>>>> @@ -1670,7 +1670,7 @@ static irqreturn_t usba_udc_irq(int irq, void *devid) >>>>> if (ep_status) { >>>>> int i; >>>>> >>>>> - for (i = 0; i < USBA_NR_ENDPOINTS; i++) >>>>> + for (i = 0; i < udc->num_ep; i++) >>>> >>>> no the limit need to specified in the driver as a checkpoint by the compatible >>>> or platform driver id >>> >>> You mean, we should not trust the data passed from dt node or >>> platform data? Or do you think we should do double confirm? >> >> no base on the driver name or the compatible you will known the MAX EP >> >> not based on the dt ep description >> >> as we do on pinctrl-at91 > > I am sorry, I am not fully get it after reading the code of > pinctrl-at91.c, can you give the example code in pinctrl-at91.c? > > Btw, the udc->num_ep is get from the following code. > for dt > --->8--- > while ((pp = of_get_next_child(np, pp))) > udc->num_ep++; > ---<8--- > > for non-dt > --->8--- > udc->num_ep = pdata->num_ep; > ---8<--- It seems to me pretty valid to use num_ep in this driver and not have to rely on another compatibility string just for this. The information is here, it is retrieved pretty cleanly so I vote for a simple use of it: if we introduce another information we will have to double check the cross errors that would happen... Bye, >>>>> if (ep_status & (1 << i)) { >>>>> if (ep_is_control(&udc->usba_ep[i])) >>>>> usba_control_irq(udc, &udc->usba_ep[i]); >>>>> -- >>>>> 1.8.5.2 >>>>> >>> >>> Best Regards, >>> Bo Shen > > Best Regards, > Bo Shen > -- Nicolas Ferre -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@...r.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists