new codec tda1543

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Commit 9f79c0289fa4b02544c6a51c789c84edd6a479fc ("audio: add support for philips tda1543 dac chip") new simple driver for the old well known philips tda1543 dac chip.


Hello,

We would like to contribute with an audio codec file for the well known Philips TDA1543 dac chip. We have already made a PR for Raspbian with Raspberry Pi specific driver that is well suited together with this codec. We have already got OK confirmation for our PR request and we just need to upstream this codec to finalize the system for our new commersial dac module for Raspberyy PI.
https://github.com/McDaisy/linux-1/commit/9f79c0289fa4b02544c6a51c789c84edd6a479fc

Thanks!

BR
George




The code:

/*
 * Driver for the tda1543 codec
 *
 * Author:    Georgios F <georgios@xxxxxxx>
 *                Copyright 2017
 *                based on code by Florian Meier <florian.meier@xxxxxxxx>
 *
 * This program is free software; you can redistribute it and/or
 * modify it under the terms of the GNU General Public License
 * version 2 as published by the Free Software Foundation.
 *
 * This program is distributed in the hope that it will be useful, but
 * WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 * General Public License for more details.
 */


#include <linux/init.h>
#include <linux/module.h>
#include <linux/platform_device.h>
#include <sound/soc.h>

static struct snd_soc_dai_driver tda1543_dai = {
    .name = "tda1543-hifi",
    .playback = {
        .channels_min = 2,
        .channels_max = 2,
        .rates = SNDRV_PCM_RATE_8000_192000,
        .formats = SNDRV_PCM_FMTBIT_S16_LE |
               SNDRV_PCM_FMTBIT_S24_LE
    },
};

static struct snd_soc_codec_driver soc_codec_dev_tda1543;

static int tda1543_probe(struct platform_device *pdev)
{
    return snd_soc_register_codec(&pdev->dev, &soc_codec_dev_tda1543,
            &tda1543_dai, 1);
}

static int tda1543_remove(struct platform_device *pdev)
{
    snd_soc_unregister_codec(&pdev->dev);
    return 0;
}

static const struct of_device_id tda1543_of_match[] = {
    { .compatible = "ti,tda1543", },
    { }
};
MODULE_DEVICE_TABLE(of, tda1543_of_match);

static struct platform_driver tda1543_codec_driver = {
    .probe         = tda1543_probe,
    .remove     = tda1543_remove,
    .driver        = {
        .name    = "tda1543-codec",
        .owner    = THIS_MODULE,
        .of_match_table = of_match_ptr(tda1543_of_match),
    },
};

module_platform_driver(tda1543_codec_driver);

MODULE_AUTHOR("Georgios F <georgios@xxxxxxx>");
MODULE_DESCRIPTION("ASoC tda1543 codec driver");
MODULE_LICENSE("GPL v2");
_______________________________________________
Alsa-devel mailing list
Alsa-devel@xxxxxxxxxxxxxxxx
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel



[Index of Archives]     [ALSA User]     [Linux Audio Users]     [Kernel Archive]     [Asterisk PBX]     [Photo Sharing]     [Linux Sound]     [Video 4 Linux]     [Gimp]     [Yosemite News]

  Powered by Linux