(dropping the very long cc list just cc'ing LKML and devicetree)
On Fri, 2019-06-14 at 18:53 +0100, Suzuki K Poulose wrote:
We have device iterators to find a particular device matching a criteria
for a given bus/class/driver. i.e, {bus,class,driver}_find_device() APIs.
The matching criteria is a function pointer for the APIs. Often the lookup
is based on a generic property of a device (e.g, name, fwnode, of node pointer
or device type) rather than a driver specific information. However, each driver
writes up its own "match" function, spilling the similar match functions all
over the driver subsystems.
Additionally the prototype for the "match" functions accepted by the above APIs
have a minute difference which prevents us otherwise sharing the match functions.
i.e,
int (*match)(struct device *dev, void *data) for {bus/driver}_find_device()
vs
int (*match)(struct device *dev, const void *) for class_find_device()
As you are doing treewide conversions, perhaps using
bool (*match)(...)
is a more sensible api.
Changes since v1:
- Drop start parameter for *_find_device_by_devt().
- Fix build warnings for s390
- Add *_find_device_by_acpi_dev() wrappers.
- Group wrappers and the consumers into single patch, reducing
the total patches to 28 from 57. (Rafael).
- Better description for acpi cleanup patch.
- Added tags from v1.
Below this is a _very_ long list of cc:'s.
If the list is generated using scripts/get_maintainer.pl
perhaps it is more sensible to add --nogit --nogit-fallback
to its arguments to cc actual maintainers and avoid people
that have submitted cleanup style patches to various files.