From: Peter Ujfalusi <peter.ujfalusi@nokia.com>
To: "ext Krishnamoorthy, Balaji T" <balajitk@ti.com>
Cc: "alsa-devel@alsa-project.org" <alsa-devel@alsa-project.org>,
"linux-omap@vger.kernel.org" <linux-omap@vger.kernel.org>,
"Lopez Cruz, Misael" <x0052729@ti.com>,
Mark Brown <broonie@opensource.wolfsonmicro.com>
Subject: Re: [PATCHv3 1/7] OMAP4: PMIC: Add support for twl6030 codec
Date: Wed, 7 Oct 2009 10:41:12 +0300 [thread overview]
Message-ID: <200910071041.12595.peter.ujfalusi@nokia.com> (raw)
In-Reply-To: <19F8576C6E063C45BE387C64729E73940436CF92F8@dbde02.ent.ti.com>
On Wednesday 07 October 2009 08:20:35 ext Krishnamoorthy, Balaji T wrote:
> > > #define twl_has_mmc() false
> > > #endif
> > >
> > > +#if defined(CONFIG_SND_SOC_TWL6030) ||
>
> defined(CONFIG_SND_SOC_TWL6030_MODULE) ||
> defined(CONFIG_SND_SOC_TWL4030) ||
> defined(CONFIG_SND_SOC_TWL4030_MODULE)
>
> > > +#define twl_has_codec() true
> > > +#else
> > > +#define twl_has_codec() false
> > > +#endif
> > > +
> > > #if defined(CONFIG_TWL4030_USB) || defined(CONFIG_TWL4030_USB_MODULE)
> > > #define twl_has_usb() true
> > > #else
> > > @@ -190,6 +196,7 @@
> > > #define BCI_SUB_CHIP_ID SUB_CHIP_ID1
> > > #define GPIO_SUB_CHIP_ID 0 /* NOT SUPPORTED IN TWL6030 */
> > > #define KEYPAD_SUB_CHIP_ID 0 /* ADDED FOR COMPILATION ONLY */
> > > +#define CODEC_SUB_CHIP_ID SUB_CHIP_ID3
> >
> > TWL4030 codec is under ID2 address group.
>
> To pick the sub chip id from structure twl_mapping twl6030_map or
> twl4030_map at Runtime.
Yes, it can be done.
>
> > > /* subchip/slave 0 0x48 - POWER */
> > > #define TWL6030_BASEADD_RTC 0x0000
> > > @@ -632,6 +639,14 @@ add_children(struct twl_platform_data *pdata,
> > > unsigned long features) if (IS_ERR(child))
> > > return PTR_ERR(child);
> > > }
> > > +
> > > + if (twl_has_codec()) {
> > > + child = add_child(CODEC_SUB_CHIP_ID, "twl6030_codec",
> > > + pdata->codec, sizeof(*pdata->codec), false,
> > > + 0, 0);
> > > + if (IS_ERR(child))
> > > + return PTR_ERR(child);
> > > + }
>
> after [PATCH v3 0/4] TWL6030 patch series
> Will now become something like
> + if (twl_has_codec() && twl_class_is_6030()) {
> + sub_chip_id = twl_map[TWL_MODULE_AUDIO_VOICE].sid;
> + child = add_child(sub_chip_id, "twl6030_codec",
> + pdata->codec, sizeof(*pdata->codec), false,
> + 0, 0);
> + if (IS_ERR(child))
> + return PTR_ERR(child);
> + }
> And similarly for 4030 code
> + if (twl_has_codec() && twl_class_is_4030()) {
> + sub_chip_id = twl_map[TWL_MODULE_AUDIO_VOICE].sid;
> + child = add_child(sub_chip_id, "twl4030_codec",
> + pdata->codec, sizeof(*pdata->codec), false,
> + 0, 0);
> + if (IS_ERR(child))
> + return PTR_ERR(child);
> + }
Sounds good.
>
> > We are going to have the twl4030 as child as well.
> >
> > > #endif
> > >
> > > if (twl_has_usb() && pdata->usb) {
> > > diff --git a/include/linux/i2c/twl.h b/include/linux/i2c/twl.h
> > > index b687a8b..e76ca9b 100644
> > > --- a/include/linux/i2c/twl.h
> > > +++ b/include/linux/i2c/twl.h
> > > @@ -472,6 +472,12 @@ struct twl_usb_data {
> > > enum twl_usb_mode usb_mode;
> > > };
> > >
> > > +struct twl_codec_data {
>
> 4030 and 6030 codec common fields can be added here
>
> > > + /* twl6030 */
> > > + int audpwron_gpio; /* audio power-on gpio */
> > > + int naudint_irq; /* audio interrupt */
>
> Here twl4030 specific fields can be added
We can also use different twl_codec_data for 6030 and 4030.
There are not that many common things to handle, or is there?
>
> > > +};
>
> CONFIG_TWL6030_CORE and CONFIG_TWL4030_CORE is merged to CONFIG_TWL_CORE
> As two different build config was not encouraged. Now switch
> twl_class_is_6030() will be used to decide at runtime time to support for
> 6030 related drivers, Similarly twl_class_is_4030() for 4030 drivers
I will hold back the patches for the twl4030 codec and twl core for now and wait
till things settled a bit.
Thanks,
Péter
next prev parent reply other threads:[~2009-10-07 7:41 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-10-06 7:29 [PATCHv3 1/7] OMAP4: PMIC: Add support for twl6030 codec Lopez Cruz, Misael
2009-10-06 8:46 ` Peter Ujfalusi
2009-10-06 16:35 ` Mark Brown
2009-10-07 6:26 ` [alsa-devel] " Shilimkar, Santosh
2009-10-07 9:37 ` Mark Brown
2009-10-07 9:40 ` [alsa-devel] " Shilimkar, Santosh
2009-10-06 16:53 ` Lopez Cruz, Misael
2009-10-07 7:32 ` Peter Ujfalusi
2009-10-07 5:20 ` [alsa-devel] " Krishnamoorthy, Balaji T
2009-10-07 7:41 ` Peter Ujfalusi [this message]
2009-10-08 1:30 ` Lopez Cruz, Misael
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=200910071041.12595.peter.ujfalusi@nokia.com \
--to=peter.ujfalusi@nokia.com \
--cc=alsa-devel@alsa-project.org \
--cc=balajitk@ti.com \
--cc=broonie@opensource.wolfsonmicro.com \
--cc=linux-omap@vger.kernel.org \
--cc=x0052729@ti.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.