[PATCH v3 2/2] i2c/of: Automatically populate i2c mux busses from device tree data.
David Daney
ddaney.cavm at gmail.com
Tue Apr 24 02:48:40 EST 2012
On 04/22/2012 09:20 AM, Wolfram Sang wrote:
> On Thu, Apr 12, 2012 at 02:14:23PM -0700, David Daney wrote:
>> From: David Daney<david.daney at cavium.com>
>>
>> For 'normal' i2c bus drivers, we can call of_i2c_register_devices()
>> and have the device tree framework automatically populate the bus with
>> the devices specified in the device tree.
>>
>> This patch adds a common code to the i2c mux framework to have the mux
>> sub-busses be populated by the of_i2c_register_devices() too. If the
>> mux device has an of_node, we populate the sub-bus' of_node so that
>> the subsequent call to of_i2c_register_devices() will find the
>> corresponding devices.
>>
>> It seemed better to put this logic in i2c_add_mux_adapter() rather
>> than the individual mux drivers, as they will all probably want to do
>> the same thing.
>
> Both patches looking mostly good, two things here:
>
>> + /*
>> + * Try to get populate the mux adapter's of_node, expands to
>
> "get populate"? I'd think you mean "populate" only, but am not sure
> enough to fix it myself.
You are correct.
>
>> + * nothing if !CONFIG_OF.
>> + */
>> + if (mux_dev->of_node) {
>> + struct device_node *child;
>> + u32 reg;
>> + int ret;
>
> We have a "ret" already in this function.
>
Good catch. That definition of "ret" could (and should) be removed.
The code works correctly, but fails the elegance test.
I can send a new patch set with those corrections, or if you prefer, you
could commit these making the changes yourself.
Which do you prefer?
David Daney
More information about the devicetree-discuss
mailing list