+static int snd_rk_mc_remove(struct platform_device *pdev)
+{
+struct snd_soc_card *soc_card = platform_get_drvdata(pdev);
+
+snd_soc_card_set_drvdata(soc_card, NULL);
+snd_soc_unregister_card(soc_card);
+platform_set_drvdata(pdev, NULL);
No need for any of the _set_drvdata() ca
On 2015年07月18日 02:04, Mark Brown wrote:
On Wed, Jul 15, 2015 at 11:15:42AM +0800, Xing Zheng wrote:
This looks pretty good, a couple of minor points below which should be
quick to fix.
+static int rk_init(struct snd_soc_pcm_runtime *runtime)
+{
+ struct snd_soc_card *card = runtime->card
On Wed, Jul 15, 2015 at 11:15:42AM +0800, Xing Zheng wrote:
This looks pretty good, a couple of minor points below which should be
quick to fix.
> +static int rk_init(struct snd_soc_pcm_runtime *runtime)
> +{
> + struct snd_soc_card *card = runtime->card;
> +
> + card->dapm.idle_bias_off
Hi Paul,
On 2015年07月16日 22:15, Paul Bolle wrote:
That's exactly how I understood MODULE_ALIAS() to work.
And it works, in short, because a platform device fires a
"MODALIAS=platform:[...]" uevent when it's created. And userspace uses
that uevent to load the module carrying that alias.
Let's pu
On Thu, Jul 16, 2015 at 06:22:45PM +0200, Paul Bolle wrote:
> On do, 2015-07-16 at 16:05 +0100, Mark Brown wrote:
> > Why would this not be the case - what is the difference you beleive
> > this driver has to other platform drivers?
> It's my believe that for MODULE_ALIAS("platform:[...]") to be u
On do, 2015-07-16 at 16:05 +0100, Mark Brown wrote:
> Why would this not be the case - what is the difference you beleive
> this driver has to other platform drivers?
It's my believe that for MODULE_ALIAS("platform:[...]") to be useful
there needs to be corresponding struct platform_device. For th
Hi Gerry,
On do, 2015-07-16 at 23:25 +0800, Jiang Liu wrote:
> May be that is hidden in some device tree files.
> MODULE_ALIAS() is used by a driver to announce that it supports
> such types of devices. And bus enumerator will create those
> devices by probing hardware or parsing some configuratio
On 2015/7/16 22:19, Paul Bolle wrote:
> Hi,
>
> On do, 2015-07-16 at 19:59 +0800, zhengxing wrote:
>> I mean that the use of MODALIAS() in this patch, and I refered to
>> tegra_max98090.c(have been upstreamed) that used it like this also. So
>> I didn't care the using.
>
> And I think the same pr
On Thu, Jul 16, 2015 at 04:15:16PM +0200, Paul Bolle wrote:
> Let's put it this was. If one does
> sudo find /sys -perm -o=r -name uevent -exec grep -H MODALIAS=platform:
> {} \;
>
> or
> sudo find /sys -perm -o=r -name modalias -exec grep -H platform: {} \;
> (both lists should be simi
Hi,
On do, 2015-07-16 at 19:59 +0800, zhengxing wrote:
> I mean that the use of MODALIAS() in this patch, and I refered to
> tegra_max98090.c(have been upstreamed) that used it like this also. So
> I didn't care the using.
And I think the same problem with MODULE_ALIAS() can be found in that
driv
On do, 2015-07-16 at 13:55 +0100, Mark Brown wrote:
> No, in that case you've not understood what the MODULE_ALIAS is
> for. It's there so that userspace knows which module to load if it
> gets
> a device with no driver, it goes in the driver not in the code
> registering the device.
That's exac
On Thu, Jul 16, 2015 at 01:47:41PM +0200, Paul Bolle wrote:
> On do, 2015-07-16 at 12:00 +0100, Mark Brown wrote:
> > You've got platform_device and platform_driver confused I think.
> I did? You mean that creating a platform_DRIVER triggers that
> MODALIAS=platform:{...] uevent?
No, in that cas
Hi Paul,
I mean that the use of MODALIAS() in this patch, and I refered to
tegra_max98090.c(have been upstreamed) that used it like this also. So I
didn't care the using.
Thanks.
On 2015年07月16日 19:49, Paul Bolle wrote:
Hi,
On do, 2015-07-16 at 19:20 +0800, zhengxing wrote:
Did I miss s
Hi,
On do, 2015-07-16 at 19:20 +0800, zhengxing wrote:
> > Did I miss something? Or is there another way this alias is useful
> > here?
> Yes, I didn't care about this but I think it maybe correct.
What is correct: my comment or the use of MODALIAS() in this patch?
Thanks,
Paul Bolle
--
To un
On do, 2015-07-16 at 12:00 +0100, Mark Brown wrote:
> You've got platform_device and platform_driver confused I think.
I did? You mean that creating a platform_DRIVER triggers that
MODALIAS=platform:{...] uevent?
Paul Bolle
--
To unsubscribe from this list: send the line "unsubscribe linux-kerne
On 2015年07月16日 19:00, Mark Brown wrote:
On Thu, Jul 16, 2015 at 10:05:44AM +0200, Paul Bolle wrote:
+static struct platform_driver snd_rk_mc_driver = {
+ .probe = snd_rk_mc_probe,
+ .remove = snd_rk_mc_remove,
+ .driver = {
+ .name = DRV_NAME,
+MODULE_ALIAS("plat
Hi Paul,
Thank you for your reply.
On 2015年07月16日 16:05, Paul Bolle wrote:
On wo, 2015-07-15 at 11:15 +0800, Xing Zheng wrote:
+static const struct of_device_id rockchip_max98090_of_match[] = {
+ { .compatible = "rockchip,rockchip-audio-max98090", },
+ {},
+};
+
+static struct p
On Thu, Jul 16, 2015 at 10:05:44AM +0200, Paul Bolle wrote:
> > +static struct platform_driver snd_rk_mc_driver = {
> > + .probe = snd_rk_mc_probe,
> > + .remove = snd_rk_mc_remove,
> > + .driver = {
> > + .name = DRV_NAME,
> > +MODULE_ALIAS("platform:" DRV_NAME);
> This seems on
On wo, 2015-07-15 at 11:15 +0800, Xing Zheng wrote:
> --- /dev/null
> +++ b/sound/soc/rockchip/rockchip_max98090.c
> +#define DRV_NAME "rockchip-snd-max98090"
> +static const struct of_device_id rockchip_max98090_of_match[] = {
> + { .compatible = "rockchip,rockchip-audio-max98090", },
> +
From: zhengxing
The driver is used for rockchip board using a max98090.
Reviewed-by: Dylan Reid
Signed-off-by: zhengxing
---
sound/soc/rockchip/Kconfig | 10 ++
sound/soc/rockchip/Makefile|4 +
sound/soc/rockchip/rockchip_max98090.c | 246 ++
20 matches
Mail list logo