[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <bfbe69a1-e1dd-de1a-52b9-8de48190bc0b@linux.intel.com>
Date: Sun, 22 Oct 2017 15:44:47 +0530
From: Pierre-Louis Bossart <pierre-louis.bossart@...ux.intel.com>
To: Vinod Koul <vinod.koul@...el.com>, Mark Brown <broonie@...nel.org>
Cc: Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
LKML <linux-kernel@...r.kernel.org>,
ALSA <alsa-devel@...a-project.org>, Takashi <tiwai@...e.de>,
Sanyog Kale <sanyog.r.kale@...el.com>,
Shreyas NC <shreyas.nc@...el.com>, patches.audio@...el.com,
alan@...ux.intel.com,
Charles Keepax <ckeepax@...nsource.cirrus.com>,
Sagar Dharia <sdharia@...eaurora.org>,
srinivas.kandagatla@...aro.org, plai@...eaurora.org,
Sudheer Papothi <spapothi@...eaurora.org>
Subject: Re: [alsa-devel] [PATCH 04/14] soundwire: Add MIPI DisCo property
helpers
On 10/21/17 5:07 PM, Vinod Koul wrote:
> On Sat, Oct 21, 2017 at 10:20:46AM +0100, Mark Brown wrote:
>> On Thu, Oct 19, 2017 at 08:33:20AM +0530, Vinod Koul wrote:
>>
>>> + /* device is probed so let's read the properties now */
>>> + if (slave->ops && slave->ops->read_prop)
>>> + slave->ops->read_prop(slave);
>>
>> Is it valid for us to not be able to read the properties?
>
> Practically no. Without the values bus wont work
The notion of read is a bit overloaded here. What is needed is that the
information is provided to the bus, whether you read it from firmware or
a table in the codec driver is an implementation choice - see below.
>
>>
>>> + fwnode_property_read_u32(node, "mipi-sdw-port-max-wordlength",
>>> + &dpn[i].max_word);
>>> + fwnode_property_read_u32(node, "mipi-sdw-port-min-wordlength",
>>> + &dpn[i].min_word);
>>
>> Don't we know this stuff simply by virtue of knowing what device we're
>> talking to (given that there aren't class devices)?
>
> Well I think the spec is midway to device class so they added it to make it
> generic :)
The properties are needed so that the bus can perform all the
transport-related stuff. As explained in the patches, we are not making
assumptions on how the codec driver is written, the implementation can
either get the properties from firmware (DT or ACPI) or hard-code them
in the driver.
The only property that needs to be defined is for multi-lane setups,
since the topology is not known to a codec driver.
Powered by blists - more mailing lists