Re: [PATCH v3] ASoC: rockchip: Add machine driver for MAX98357A/RT5514/DA7219

Xing Zheng
2016-06-07T11:38:57Z

Hi Mark,

On 2016年06月07日 18:47, Mark Brown wrote:
> On Tue, Jun 07, 2016 at 10:49:35AM +0800, Xing Zheng wrote:
>> On 2016年06月07日 07:50, Mark Brown wrote:
>>> It should probably be three compatibles, one per CODEC, if the driver
>>> needs to handle each separately.
>> Do you mean like this:
>> --------
>> sound {
>> compatible = "rockchip,rk3399-max98357a-rt5514-da7219";
>>
>> dailink-0 {
>> compatible = "rockchip,rk3399-max98357a";
>> rockchip,cpu =<&i2s0>;
>> rockchip,codec =<&max98357a>;
>> };
>>
>> dailink-1 {
>> compatible = "rockchip,rk3399-rt5514";
>> rockchip,cpu =<&i2s0>;
>> rockchip,codec =<&headsetcodec>;
>> };
>>
>> dailink-2 {
>> compatible = "rockchip,rk3399-da7219";
>> rockchip,cpu =<&i2s0>;
>> rockchip,codec =<&codec>;
>> };
>> };
>> --------
>> Above, the machine drvier will handle them. Please correct me if I
>> misunderstand.
> No, that'd be one card with all three CODECs on the same board which I'm
> guessing isn't the intention?
Yes, because on our board, the audio connection by hardware really is such:
|-- max98357a
i2s0 <==> |-- rt5514
| -- da7219

We do need to support max98357a / rt5514 / da7219 via i2s0 on the same
board for RK3399.

I remember that it will be failed if we register card with i2s0 more
times. Therefore, I chose this mothod that create 3 dai-links on one
machine driver.

Thanks.

--
- Xing Zheng