Hi,
On Thu, 7 Dec 2017 12:50:50 -0500 Sinan Kaya wrote:
On 12/7/2017 10:20 AM, Lothar Wa?mann wrote:
quoted
Hi,
On Thu, 7 Dec 2017 09:45:31 -0500 Sinan Kaya wrote:
quoted
On 12/7/2017 8:10 AM, Lothar Wa?mann wrote:
quoted
quoted
+void *of_fwnode_get_match_data(const struct fwnode_handle *fwnode,
+ struct device *dev)
Shouldn't this be 'const void *of_fwnode_get_match_data
OF keeps the driver data as a (const void*) internally. ACPI keeps the
driver data as kernel_ulong_t in struct acpi_device_id.
I tried to find the middle ground here by converting output to void*
but not keeping const.
It should be no problem to cast a (const void *) to an unsigned long
data type (without const qualifier).
It is the other way around. If I change this API to return a a (const void*),
the device_get_match_data() function need to return a (const void *).
While implementing the ACPI piece, I have to convert an unsigned long to
(const void *) in ACPI code so that the APIs are compatible.
That's true, but I don't see any problem with that. Your
device_get_match_data() is merely a wrapper around of_device_get_match_data()
which returns a const pointer. I see no reason to change this to a
non-const pointer by the wrapper function.
Lothar Wa?mann