Re: [PATCHv5 0/8] 2c: Relax mandatory I2C ID table passing
From: Lee Jones
Date: Mon May 09 2016 - 05:14:23 EST
On Wed, 04 May 2016, Kieran Bingham wrote:
> This patch set finally pops up again, after a long time stuck somewhere in the
> midst of my stack.
>
> As it stood last year, the requirements were to rename probe2 to probe_new, and
> ensure that it was correctly tested. The rename was the easy bit, but the
> testing took me more time to get things set up properly. And other commitments
> then got in the way of things. Of course this patch set has also been rebased
> as well, but there wasn't any major pain there.
>
> Testing
> -------
>
> To try to establish testing, I have used a beagle-bone-black, and a DS1307 RTC
> connected to the BBB SCL and SDA lines. The main reason for these choices is
> accesibility. i.e. I have them, and the BBB readily boots a kernel for me to
> test and iterate with.
>
> I've tested the device with i2cdetect, and then worked through testing the
> sysfs interface, device tree, and module autoloading, each time ensuring that
> the RTC enumerates and operates
>
> * new_device (built-in, and external module)
> echo ds1307 0x68 > /sys/bus/i2c/devices/i2c-2/new_device
> cat /sys/class/rtc/rtc0/date
>
> - Both of those worked fine.
>
> * Device Tree
> I tested that the device would still register by adding a node in the device
> tree for the board, and testing with a built-in module.
>
> - This worked fine.
>
> * Module Autoloading
> With the device tree node in the board dts file, it wouldn't automatically
> load from the external module. This was due to the rtc-ds1307 module not
> exporting an of_match table, and not yet having Javier's "report OF style
> modalias when probing using DT" [0] patch applied
>
> - With the module updated, and Javiers patch applied, the module autoloads
>
> Finally, I feel I can safely add this tag to the patch set:
> Tested-by: Kieran Bingham <kieran@xxxxxxxxxxx>
Great work Kieran.
Wolfram, Javier,
Looks like Kieran has ticked each of your boxes.
I guess there is nothing stopping this set from being applied now,
right?
> Please let me know if there is any other specific use case missing here that
> needs to be tested.
>
> [0] https://patchwork.ozlabs.org/patch/502201/
>
> Patches
> -------
> Lee Jones (8):
> i2c: Add pointer dereference protection to i2c_match_id()
> i2c: Add the ability to match device to compatible string without an
> of_node
> i2c: Match using traditional OF methods, then by vendor-less
> compatible strings
> i2c: Make I2C ID tables non-mandatory for DT'ed devices
> i2c: Export i2c_match_id() for direct use by device drivers
> i2c: Provide a temporary .probe_new() call-back type
> mfd: 88pm860x: Move over to new I2C device .probe() call
> mfd: as3722: Rid driver of superfluous I2C device ID structure
>
> drivers/i2c/i2c-core.c | 75 +++++++++++++++++++++++++++++++++++++++------
> drivers/mfd/88pm860x-core.c | 5 ++-
> drivers/mfd/as3722.c | 12 ++------
> include/linux/i2c.h | 22 ++++++++++++-
> 4 files changed, 91 insertions(+), 23 deletions(-)
>
--
Lee Jones
Linaro STMicroelectronics Landing Team Lead
Linaro.org â Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog