Thread (48 messages) 48 messages, 4 authors, 2021-11-29

Re: [PATCH v2 8/9] i2c: i801: Improve register_dell_lis3lv02d_i2c_device

From: Heiner Kallweit <hkallweit1@gmail.com>
Date: 2021-08-11 21:05:24

On 11.08.2021 17:52, Andy Shevchenko wrote:
On Fri, Aug 06, 2021 at 11:18:05PM +0200, Heiner Kallweit wrote:
quoted
- Use an initializer for struct i2c_board_info info
- Use dmi_match()
- Simplify loop logic
I'm wondering if changing this to a DMI match table will give better result.

Something like
(Sorry I forgot APIs, but plenty of examples are under PDx86: drivers/platform/x86):

struct dmi_..._id *id;

id = dmi_..._match();
if (!id) {
	pci_warn();
	return;
}

i2c_new_client_device(...);
We could do something like the following. Whether it's better may be a
question of personal taste. I have no strong opinion here and would leave
it to Jean.

const struct dmi_system_id lis3_id_table[] = {
        {
                .driver_data = (void *)0x29,
                .matches = {
                        DMI_MATCH(DMI_PRODUCT_NAME, "Latitude E5550"),
                },
        },
	...

dmi_system_id *id = dmi_first_match(lis3_id_table);
if (id)
	i2c_new_client_device(..., (unsigned int)id->driver_data;
else
	lament()
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help