Re: [PATCH v2] soc/lapis: add machine driver

From: Mark Brown
Date: Mon Dec 05 2011 - 13:32:26 EST


On Mon, Dec 05, 2011 at 06:33:03PM +0900, Tomoya MORINAGA wrote:
> 2011/12/3 Mark Brown <broonie@xxxxxxxxxxxxxxxxxxxxxxxxxxx>:

> >> +     {I2C_BOARD_INFO("ioh_i2c-5", CODEC_DEV_ADDR + 0)},

> > This looks completely wrong.  I'd not expect to see any I2C_BOARD_INFO
> > usage at all in a machine driver (that should be done by whatever
> > enumerates the system as a whole)

> Do you mean machine driver must not use I2C_BOARD_INFO ? Is this true ?
> Grepping I2C_BOARD_INFO at sound/soc, the following drivers use
> I2C_BOARD_INFO.
> pxa/raumfeld.c: I2C_BOARD_INFO("max9485", 0x63),
> pxa/magician.c: I2C_BOARD_INFO("uda1380", 0x18),
> s6000/s6105-ipcam.c: { I2C_BOARD_INFO("tlv320aic33", 0x18), }

You'll note that this is *really* rare; there are vastly more machine
drivers that don't do this. If there's some specific reason then
there's nothing technical stopping this happening but it's very unusual.

> >> +     ret = snd_soc_dai_set_fmt(codec_dai, SND_SOC_DAIFMT_I2S |
> >> +                             SND_SOC_DAIFMT_NB_NF | SND_SOC_DAIFMT_CBS_CFS);
> >> +     if (ret < 0)
> >> +             return ret;

> > Use the dai_fmt field in the dai_link to set this.

> Sorry, I can't understand your saying.
> Let me know in more detail.

I'm not sure what more to say... Have you looked at that field and how
it is both implemented and used in other drivers, or at the commit logs
for relevant changes? What do you find unclear?

> > Should have MODULE_ALIAS too.

> Do you mean machine driver should have MODULE_ALIAS ?
> Grepping MODULE_ALIAS at sound/soc, it seems MODULE_ALIAS is used in
> platform driver only like below.
> pxa/pxa2xx-i2s.c:MODULE_ALIAS("platform:pxa2xx-i2s");

I don't think you're looking at a current kernel...

> Does machine driver need like "MODULE_ALIAS("machine:ml7213CRB")" ?

No, it should match the name of the platform driver you created. The
platform: refers to the bus type.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/