[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20120830210959.GA11153@roeck-us.net>
Date: Thu, 30 Aug 2012 14:09:59 -0700
From: Guenter Roeck <linux@...ck-us.net>
To: Vivien Didelot <vivien.didelot@...oirfairelinux.com>
Cc: lm-sensors@...sensors.org, Jean Delvare <khali@...ux-fr.org>,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH] hwmon: add Maxim MAX197 support
On Thu, Aug 30, 2012 at 02:39:55PM -0400, Vivien Didelot wrote:
> The MAX197 is an A/D converter, made by Maxim. This driver currently
> supports the MAX197, and MAX199. They are both 8-Channel, Multi-Range,
> 5V, 12-Bit DAS with 8+4 Bus Interface and Fault Protection.
>
> The available ranges for the MAX197 are {0,-5V} to 5V, and {0,-10V} to
> 10V, while they are {0,-2V} to 2V, and {0,-4V} to 4V on the MAX199.
>
> Signed-off-by: Vivien Didelot <vivien.didelot@...oirfairelinux.com>
Hi Vivien,
I have the solution for the platform driver.
enum chips { max197, max199 };
[ ... ]
static struct platform_device_id max197_driver_ids[] = {
{
.name = "max197",
.driver_data = max197,
}, {
.name = "max199",
.driver_data = max199,
}
};
MODULE_DEVICE_TABLE(platform, max197_driver_ids);
In the probe function:
enum chips chip = platform_get_device_id(pdev)->driver_data;
This way you only need a single platform driver, no module alias, and you don't
need strcmp() in the probe function to detect the chip type.
Guenter
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists