From mboxrd@z Thu Jan 1 00:00:00 1970 From: Marek Vasut Date: Wed, 4 Sep 2013 03:55:59 +0200 Subject: [U-Boot] [RFC PATCH 3/3] ARM: atmel: add RNDIS gadget support In-Reply-To: <52269110.1030905@atmel.com> References: <1378180030-26101-1-git-send-email-voice.shen@atmel.com> <201309040031.58932.marex@denx.de> <52269110.1030905@atmel.com> Message-ID: <201309040355.59386.marex@denx.de> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Dear Bo Shen, > Hi Marek Vasut, > > On 09/04/2013 06:31 AM, Marek Vasut wrote: > > [snip] > > >> +#ifdef CONFIG_USB_GADGET_ATMEL_USBA > >> +#define EP(nam, idx, maxpkt, maxbk, dma, isoc) \ > >> + [idx] = { \ > >> + .name = nam, \ > >> + .index = idx, \ > >> + .fifo_size = maxpkt, \ > >> + .nr_banks = maxbk, \ > >> + .can_dma = dma, \ > >> + .can_isoc = isoc, \ > >> + } > >> + > >> +static struct usba_ep_data usba_udc_ep[] = { > >> + EP("ep0", 0, 64, 1, 0, 0), > >> + EP("ep1", 1, 1024, 3, 1, 0), > >> + EP("ep2", 2, 1024, 3, 1, 0), > >> + EP("ep3", 3, 1024, 2, 1, 0), > >> + EP("ep4", 4, 1024, 2, 1, 0), > >> + EP("ep5", 5, 1024, 2, 1, 0), > >> + EP("ep6", 6, 1024, 2, 1, 0), > >> + EP("ep7", 7, 1024, 2, 1, 0), > >> + EP("ep8", 8, 1024, 2, 0, 0), > >> + EP("ep9", 9, 1024, 2, 0, 0), > >> + EP("ep10", 10, 1024, 2, 0, 0), > >> + EP("ep11", 11, 1024, 2, 0, 0), > >> + EP("ep12", 12, 1024, 2, 0, 0), > >> + EP("ep13", 13, 1024, 2, 0, 0), > >> + EP("ep14", 14, 1024, 2, 0, 0), > >> + EP("ep15", 15, 1024, 2, 0, 0), > >> +}; > > > > Can this not be part of the driver itself ? > > I have considered to put this in driver, however, different Atmel SoC > have different attributes for each endpoint and different number of > endpoint. > > for example; > at91sam9x5: EP("ep1", 1, 1024, 2, 1, 1) > sama5d3x: EP("ep1", 1, 1024, 3, 1, 0) > > So, if I put this in driver, there will be many #ifdef. If newly SoC > added, maybe we will need to add #ifdef again. So, I put it here. Can you not pull it into some header file at least? Having it in the board file will clearly result in duplication. Best regards, Marek Vasut