On 01/28/2018 05:19 PM, Jagan Teki wrote: > From: Jun Nie <jun....@linaro.org> > > Add fifo config for H3 as H3 differ with other SoC > on ep number. > > Signed-off-by: Jun Nie <jun....@linaro.org> > Reviewed-by: Jagan Teki <ja...@openedev.com> > [jagan: fixed num_eps for H3] > Signed-off-by: Jagan Teki <ja...@amarulasolutions.com> > Cc: Marek Vasut <ma...@denx.de> > --- > drivers/usb/musb-new/sunxi.c | 32 ++++++++++++++++++++++++++++++++ > 1 file changed, 32 insertions(+) > > diff --git a/drivers/usb/musb-new/sunxi.c b/drivers/usb/musb-new/sunxi.c > index aedc24b..46c8bd2 100644 > --- a/drivers/usb/musb-new/sunxi.c > +++ b/drivers/usb/musb-new/sunxi.c > @@ -290,10 +290,42 @@ static const struct musb_platform_ops sunxi_musb_ops = { > .disable = sunxi_musb_disable, > }; > > +#if defined(CONFIG_MACH_SUN8I_H3) > +static struct musb_fifo_cfg sunxi_musb_fifo_config[] = { > + { .hw_ep_num = 1, .style = FIFO_TX, .maxpacket = 512, }, > + { .hw_ep_num = 1, .style = FIFO_RX, .maxpacket = 512, }, > + { .hw_ep_num = 2, .style = FIFO_TX, .maxpacket = 512, }, > + { .hw_ep_num = 2, .style = FIFO_RX, .maxpacket = 512, }, > + { .hw_ep_num = 3, .style = FIFO_TX, .maxpacket = 512, }, > + { .hw_ep_num = 3, .style = FIFO_RX, .maxpacket = 512, }, > + { .hw_ep_num = 4, .style = FIFO_TX, .maxpacket = 512, }, > + { .hw_ep_num = 4, .style = FIFO_RX, .maxpacket = 512, }, > +}; > +#else > +static struct musb_fifo_cfg sunxi_musb_fifo_config[] = { > + { .hw_ep_num = 1, .style = FIFO_TX, .maxpacket = 512, }, > + { .hw_ep_num = 1, .style = FIFO_RX, .maxpacket = 512, }, > + { .hw_ep_num = 2, .style = FIFO_TX, .maxpacket = 512, }, > + { .hw_ep_num = 2, .style = FIFO_RX, .maxpacket = 512, }, > + { .hw_ep_num = 3, .style = FIFO_TX, .maxpacket = 512, }, > + { .hw_ep_num = 3, .style = FIFO_RX, .maxpacket = 512, }, > + { .hw_ep_num = 4, .style = FIFO_TX, .maxpacket = 512, }, > + { .hw_ep_num = 4, .style = FIFO_RX, .maxpacket = 512, }, > + { .hw_ep_num = 5, .style = FIFO_TX, .maxpacket = 512, }, > + { .hw_ep_num = 5, .style = FIFO_RX, .maxpacket = 512, }, > +};
Ugh, each and every two entries are the same except for style being either RX/TX . And each tuple differs only in hw_ep_num . Generate that with some sane macro ... Moreover, the driver is DT capable, use that to discern different SoCs and DO NOT ADD MORE IFDEFs . > +#endif > + > static struct musb_hdrc_config musb_config = { > + .fifo_cfg = sunxi_musb_fifo_config, > + .fifo_cfg_size = ARRAY_SIZE(sunxi_musb_fifo_config), > .multipoint = 1, > .dyn_fifo = 1, > +#if defined(CONFIG_MACH_SUN8I_H3) > + .num_eps = 5, > +#else > .num_eps = 6, > +#endif > .ram_bits = 11, > }; > > -- Best regards, Marek Vasut _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot