Dear Andreas Bießmann, > Hi Bo, > > On 09/04/2013 09:42 AM, Bo Shen wrote: > > Hi Andreas, > > > > On 9/4/2013 15:32, Andreas Bießmann wrote: > >> Hi Bo, Marek, > >> > >> On 09/04/2013 04:01 AM, Bo Shen wrote: > >>> Hi Marek Vasut, > >>> > >>> On 09/04/2013 09:55 AM, Marek Vasut wrote: > >>>>>> 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. > >>> > >>> OK, I will put it into header file. > >> > >> I'm fine with a header too. But for the records, the mentioned file is > >> _not_ board code but SoC code. > > > > I will create a header file named atmel_usba_udc.h as other peripheral > > (at91_udc.h is reserved for full speed usb device), and put it under > > "arm/arm/include/asm/arch-at91/", the contents as following, does it OK? > > > > ---8>--- > > /* > > > > * Copyright (C) 2005-2013 Atmel Corporation > > * Bo Shen <voice.s...@atmel.com> > > * > > * SPDX-License-Identifier: GPL-2.0+ > > */ > > > > #ifndef __ATMEL_USBA_UDC_H__ > > #define __ATMEL_USBA_UDC_H__ > > > > #include <linux/usb/atmel_usba_udc.h> > > > > #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, \ > > > > } > > > > #if defined(CONFIG_AT91SAM9G45) || defined(CONFIG_AT91SAM9M10G45) || \ > > > > defined(CONFIG_AT91SAM9X5) > > > > static struct usba_ep_data usba_udc_ep[] = { > > > > EP("ep0", 0, 64, 1, 0, 0), > > > > ... ... > > > > EP("ep6", 6, 1024, 3, 1, 1), > > > > }; > > #elif defined(CONFIG_SAMA5D3) > > static struct usba_ep_data usba_udc_ep[] = { > > > > EP("ep0", 0, 64, 1, 0, 0), > > .. > > EP("ep15", 15, 1024, 2, 0, 0), > > > > }; > > > > #else > > # error "NO usba_udc_ep defined" > > #endif > > > > #undef EP > > > > struct usba_platform_data pdata = { > > > > .num_ep = ARRAY_SIZE(usba_udc_ep), > > .ep = usba_udc_ep, > > > > }; > > > > #endif > > ---<8--- > > I'm fine with that.
Same here, I'm fine with it Best regards, Marek Vasut _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot