Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1467651

Re: [PATCH v1 2/3] of: Add support for reading a s32 from a multi-value property.

From Finley Xiao <finley.xiao@rock-chips.com>
Newsgroups linux.kernel
Subject Re: [PATCH v1 2/3] of: Add support for reading a s32 from a multi-value property.
Date 2016-08-22 16:10 +0200
Message-ID <s8Y5j-7jf-3@gated-at.bofh.it> (permalink)
References <s6CBX-5G4-3@gated-at.bofh.it> <s6CLE-5JI-17@gated-at.bofh.it> <s7SOm-6FX-17@gated-at.bofh.it> <s7YTL-1Yp-13@gated-at.bofh.it> <s7Z3s-21V-15@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw



在 2016/8/20 4:47, David Woodhouse 写道:
> On Fri, 2016-08-19 at 22:41 +0200, Heiko Stuebner wrote:
>>> So no, don't *add* any more of these functions. Only add the generic
>>> version. And if your driver isn't using the generic property
>>> functions... fix it.
>> As far as I can see, all the device_property_* functions are grounded on their
>> of_property_*, acpi_property_* etc counterparts and functions reading specific
>> elements (the _index variants) are currently not available at all.
>>
>> drivers/base/property.c:
>> #define OF_DEV_PROP_READ_ARRAY(node, propname, type, val, nval)                         \
>>          (val) ? of_property_read_##type##_array((node), (propname), (val), (nval))      \
>>                : of_property_count_elems_of_size((node), (propname), sizeof(type))
>>
>> So even if you're using the device_property_* functions you'd still need
>> a match in the underlying functions or am I missing something?
> Yes, but the underlying function should never be used directly by
> drivers. And should probably be prefixed with __ or marked deprecated
> (with an override in its one genuine call site).
>

So can I add a device_property_read_s32_array function in property.h?

--- a/include/linux/property.h
+++ b/include/linux/property.h
@@ -108,6 +108,13 @@ static inline int device_property_read_u32(struct 
device *dev,
         return device_property_read_u32_array(dev, propname, val, 1);
  }

+static inline int device_property_read_s32_array(struct device *dev, 
const char *propname,
+                                  s32 *val, size_t nval)
+{
+       return device_property_read_u32_array(struct device *dev, const 
char *propname,
+                                  (u32 *)val, size_t nval);
+}

-- 
Finley

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH v1 2/3] of: Add support for reading a s32 from a multi-value property. Finlye Xiao <finley.xiao@rock-chips.com> - 2016-08-16 05:00 +0200
  Re: [PATCH v1 2/3] of: Add support for reading a s32 from a multi-value property. Heiko Stübner <heiko@sntech.de> - 2016-08-16 14:20 +0200
  Re: [PATCH v1 2/3] of: Add support for reading a s32 from a  multi-value property. David Woodhouse <dwmw2@infradead.org> - 2016-08-19 16:20 +0200
    Re: [PATCH v1 2/3] of: Add support for reading a s32 from a multi-value property. Heiko Stuebner <heiko@sntech.de> - 2016-08-19 22:50 +0200
      Re: [PATCH v1 2/3] of: Add support for reading a s32 from a  multi-value property. David Woodhouse <dwmw2@infradead.org> - 2016-08-19 23:00 +0200
        Re: [PATCH v1 2/3] of: Add support for reading a s32 from a  multi-value property. Finley Xiao <finley.xiao@rock-chips.com> - 2016-08-22 16:10 +0200
        Re: [PATCH v1 2/3] of: Add support for reading a s32 from a  multi-value property. Mark Rutland <mark.rutland@arm.com> - 2016-08-22 17:00 +0200

csiph-web