On Mon, Sep 14, 2009 at 02:13:07PM +0800, Barry Song wrote: > + unsigned int channel_map[8] = {0, 4, 1, 5, 2, 6, 3, 7}; As a coding style thing it would be better to use [] here and let the arrray size be figured out by the compiler and also... > + /* set cpu DAI channel mapping */ > + ret = snd_soc_dai_set_channel_map(cpu_dai, 8, channel_map, > + 8, channel_map); ...use ARRAY_SIZE() here. > + if ((tx_num > MAX_TDM_SLOTS) || (rx_num > MAX_TDM_SLOTS)) > + return -EINVAL; > + > + for (i = 0; i < tx_num; i++) > + bf5xx_tdm.tx_map[i] = tx_slot[i]; It'd be good if the function also recorded the number of slots that were mapped to provide some error checking in case someone tries to use more channels than were mapped. > +#define MAX_TDM_SLOTS 8 This define needs to be namespaced - it's visible outside the driver and is very likely to collide with something a CODEC driver wants to set up. _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx http://mailman.alsa-project.org/mailman/listinfo/alsa-devel