Message ID | 20210325164713.1296407-8-robh@kernel.org |
---|---|
State | Accepted |
Commit | 8c8239c2c1fb82f171cb22a707f3bb88a2f22109 |
Headers | show |
Series | dt: doc build improvements and kerneldoc addition | expand |
Em Thu, 25 Mar 2021 10:47:12 -0600 Rob Herring <robh@kernel.org> escreveu: > Many of the DT kerneldoc comments are lacking a 'Return' section. Let's > add the section in cases we have a description of return values. There's > still some cases where the return values are not documented. > > Cc: Frank Rowand <frowand.list@gmail.com> > Cc: Mauro Carvalho Chehab <mchehab@kernel.org> Reviewed-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org> > Signed-off-by: Rob Herring <robh@kernel.org> > --- > drivers/of/base.c | 39 +++++++++++++------------ > drivers/of/dynamic.c | 19 ++++++++----- > drivers/of/fdt.c | 8 +++--- > drivers/of/irq.c | 14 ++++----- > drivers/of/overlay.c | 16 +++++------ > drivers/of/platform.c | 10 +++---- > drivers/of/property.c | 66 +++++++++++++++++++++++++++---------------- > include/linux/of.h | 63 ++++++++++++++++++++++++++--------------- > 8 files changed, 140 insertions(+), 95 deletions(-) > > diff --git a/drivers/of/base.c b/drivers/of/base.c > index b06bcb3f001a..3bf189d394bd 100644 > --- a/drivers/of/base.c > +++ b/drivers/of/base.c > @@ -244,7 +244,7 @@ struct device_node *__of_find_all_nodes(struct device_node *prev) > * @prev: Previous node or NULL to start iteration > * of_node_put() will be called on it > * > - * Returns a node pointer with refcount incremented, use > + * Return: A node pointer with refcount incremented, use > * of_node_put() on it when done. > */ > struct device_node *of_find_all_nodes(struct device_node *prev) > @@ -374,7 +374,7 @@ bool __weak arch_find_n_match_cpu_physical_id(struct device_node *cpun, > * before booting secondary cores. This function uses arch_match_cpu_phys_id > * which can be overridden by architecture specific implementation. > * > - * Returns a node pointer for the logical cpu with refcount incremented, use > + * Return: A node pointer for the logical cpu with refcount incremented, use > * of_node_put() on it when done. Returns NULL if not found. > */ > struct device_node *of_get_cpu_node(int cpu, unsigned int *thread) > @@ -394,8 +394,8 @@ EXPORT_SYMBOL(of_get_cpu_node); > * > * @cpu_node: Pointer to the device_node for CPU. > * > - * Returns the logical CPU number of the given CPU device_node. > - * Returns -ENODEV if the CPU is not found. > + * Return: The logical CPU number of the given CPU device_node or -ENODEV if the > + * CPU is not found. > */ > int of_cpu_node_to_id(struct device_node *cpu_node) > { > @@ -427,7 +427,7 @@ EXPORT_SYMBOL(of_cpu_node_to_id); > * bindings. This function check for both and returns the idle state node for > * the requested index. > * > - * In case an idle state node is found at @index, the refcount is incremented > + * Return: An idle state node if found at @index. The refcount is incremented > * for it, so call of_node_put() on it when done. Returns NULL if not found. > */ > struct device_node *of_get_cpu_state_node(struct device_node *cpu_node, > @@ -561,7 +561,7 @@ int of_device_compatible_match(struct device_node *device, > * of_machine_is_compatible - Test root of device tree for a given compatible value > * @compat: compatible string to look for in root node's compatible property. > * > - * Returns a positive integer if the root node has the given value in its > + * Return: A positive integer if the root node has the given value in its > * compatible property. > */ > int of_machine_is_compatible(const char *compat) > @@ -583,7 +583,7 @@ EXPORT_SYMBOL(of_machine_is_compatible); > * > * @device: Node to check for availability, with locks already held > * > - * Returns true if the status property is absent or set to "okay" or "ok", > + * Return: True if the status property is absent or set to "okay" or "ok", > * false otherwise > */ > static bool __of_device_is_available(const struct device_node *device) > @@ -611,7 +611,7 @@ static bool __of_device_is_available(const struct device_node *device) > * > * @device: Node to check for availability > * > - * Returns true if the status property is absent or set to "okay" or "ok", > + * Return: True if the status property is absent or set to "okay" or "ok", > * false otherwise > */ > bool of_device_is_available(const struct device_node *device) > @@ -632,7 +632,7 @@ EXPORT_SYMBOL(of_device_is_available); > * > * @device: Node to check for endianness > * > - * Returns true if the device has a "big-endian" property, or if the kernel > + * Return: True if the device has a "big-endian" property, or if the kernel > * was compiled for BE *and* the device has a "native-endian" property. > * Returns false otherwise. > * > @@ -816,7 +816,7 @@ EXPORT_SYMBOL(of_get_next_cpu_node); > * Lookup child node whose compatible property contains the given compatible > * string. > * > - * Returns a node pointer with refcount incremented, use of_node_put() on it > + * Return: a node pointer with refcount incremented, use of_node_put() on it > * when done; or NULL if not found. > */ > struct device_node *of_get_compatible_child(const struct device_node *parent, > @@ -1170,7 +1170,7 @@ EXPORT_SYMBOL(of_find_matching_node_and_match); > * It does this by stripping the manufacturer prefix (as delimited by a ',') > * from the first entry in the compatible list property. > * > - * This routine returns 0 on success, <0 on failure. > + * Return: This routine returns 0 on success, <0 on failure. > */ > int of_modalias_node(struct device_node *node, char *modalias, int len) > { > @@ -1190,7 +1190,7 @@ EXPORT_SYMBOL_GPL(of_modalias_node); > * of_find_node_by_phandle - Find a node given a phandle > * @handle: phandle of the node to find > * > - * Returns a node pointer with refcount incremented, use > + * Return: A node pointer with refcount incremented, use > * of_node_put() on it when done. > */ > struct device_node *of_find_node_by_phandle(phandle handle) > @@ -1426,7 +1426,7 @@ static int __of_parse_phandle_with_args(const struct device_node *np, > * @index: For properties holding a table of phandles, this is the index into > * the table > * > - * Returns the device_node pointer with refcount incremented. Use > + * Return: The device_node pointer with refcount incremented. Use > * of_node_put() on it when done. > */ > struct device_node *of_parse_phandle(const struct device_node *np, > @@ -1725,7 +1725,7 @@ EXPORT_SYMBOL(of_parse_phandle_with_fixed_args); > * @list_name: property name that contains a list > * @cells_name: property name that specifies phandles' arguments count > * > - * Returns the number of phandle + argument tuples within a property. It > + * Return: The number of phandle + argument tuples within a property. It > * is a typical pattern to encode a list of phandle and variable > * arguments into a single property. The number of arguments is encoded > * by a property in the phandle-target node. For example, a gpios > @@ -2025,7 +2025,9 @@ void of_alias_scan(void * (*dt_alloc)(u64 size, u64 align)) > * @stem: Alias stem of the given device_node > * > * The function travels the lookup table to get the alias id for the given > - * device_node and alias stem. It returns the alias id if found. > + * device_node and alias stem. > + * > + * Return: The alias id if found. > */ > int of_alias_get_id(struct device_node *np, const char *stem) > { > @@ -2134,8 +2136,9 @@ EXPORT_SYMBOL_GPL(of_alias_get_highest_id); > * @index: Index to use for preferred console. > * > * Check if the given device node matches the stdout-path property in the > - * /chosen node. If it does then register it as the preferred console and return > - * TRUE. Otherwise return FALSE. > + * /chosen node. If it does then register it as the preferred console. > + * > + * Return: TRUE if console successfully setup. Otherwise return FALSE. > */ > bool of_console_check(struct device_node *dn, char *name, int index) > { > @@ -2186,7 +2189,7 @@ struct device_node *of_find_next_cache_node(const struct device_node *np) > * > * @cpu: cpu number(logical index) for which the last cache level is needed > * > - * Returns the the level at which the last cache is present. It is exactly > + * Return: The the level at which the last cache is present. It is exactly > * same as the total number of cache levels for the given logical cpu. > */ > int of_find_last_cache_level(unsigned int cpu) > diff --git a/drivers/of/dynamic.c b/drivers/of/dynamic.c > index 1d7a22e44d78..cd3821a6444f 100644 > --- a/drivers/of/dynamic.c > +++ b/drivers/of/dynamic.c > @@ -27,7 +27,7 @@ static struct device_node *kobj_to_device_node(struct kobject *kobj) > * @node: Node to inc refcount, NULL is supported to simplify writing of > * callers > * > - * Returns node. > + * Return: The node with refcount incremented. > */ > struct device_node *of_node_get(struct device_node *node) > { > @@ -104,7 +104,8 @@ int of_reconfig_notify(unsigned long action, struct of_reconfig_data *p) > * @arg - argument of the of notifier > * > * Returns the new state of a device based on the notifier used. > - * Returns 0 on device going from enabled to disabled, 1 on device > + * > + * Return: 0 on device going from enabled to disabled, 1 on device > * going from disabled to enabled and -1 on no change. > */ > int of_reconfig_get_state_change(unsigned long action, struct of_reconfig_data *pr) > @@ -374,7 +375,8 @@ void of_node_release(struct kobject *kobj) > * property structure and the property name & contents. The property's > * flags have the OF_DYNAMIC bit set so that we can differentiate between > * dynamically allocated properties and not. > - * Returns the newly allocated property or NULL on out of memory error. > + * > + * Return: The newly allocated property or NULL on out of memory error. > */ > struct property *__of_prop_dup(const struct property *prop, gfp_t allocflags) > { > @@ -417,7 +419,7 @@ struct property *__of_prop_dup(const struct property *prop, gfp_t allocflags) > * another node. The node data are dynamically allocated and all the node > * flags have the OF_DYNAMIC & OF_DETACHED bits set. > * > - * Returns the newly allocated node or NULL on out of memory error. > + * Return: The newly allocated node or NULL on out of memory error. > */ > struct device_node *__of_node_dup(const struct device_node *np, > const char *full_name) > @@ -783,7 +785,8 @@ static int __of_changeset_apply(struct of_changeset *ocs) > * Any side-effects of live tree state changes are applied here on > * success, like creation/destruction of devices and side-effects > * like creation of sysfs properties and directories. > - * Returns 0 on success, a negative error value in case of an error. > + * > + * Return: 0 on success, a negative error value in case of an error. > * On error the partially applied effects are reverted. > */ > int of_changeset_apply(struct of_changeset *ocs) > @@ -877,7 +880,8 @@ static int __of_changeset_revert(struct of_changeset *ocs) > * was before the application. > * Any side-effects like creation/destruction of devices and > * removal of sysfs properties and directories are applied. > - * Returns 0 on success, a negative error value in case of an error. > + * > + * Return: 0 on success, a negative error value in case of an error. > */ > int of_changeset_revert(struct of_changeset *ocs) > { > @@ -905,7 +909,8 @@ EXPORT_SYMBOL_GPL(of_changeset_revert); > * + OF_RECONFIG_ADD_PROPERTY > * + OF_RECONFIG_REMOVE_PROPERTY, > * + OF_RECONFIG_UPDATE_PROPERTY > - * Returns 0 on success, a negative error value in case of an error. > + * > + * Return: 0 on success, a negative error value in case of an error. > */ > int of_changeset_action(struct of_changeset *ocs, unsigned long action, > struct device_node *np, struct property *prop) > diff --git a/drivers/of/fdt.c b/drivers/of/fdt.c > index ba53da9c3895..134c7fb43a14 100644 > --- a/drivers/of/fdt.c > +++ b/drivers/of/fdt.c > @@ -282,7 +282,7 @@ static void reverse_nodes(struct device_node *parent) > * @dad: Parent struct device_node > * @nodepp: The device_node tree created by the call > * > - * It returns the size of unflattened device tree or error code > + * Return: The size of unflattened device tree or error code > */ > static int unflatten_dt_nodes(const void *blob, > void *mem, > @@ -360,7 +360,7 @@ static int unflatten_dt_nodes(const void *blob, > * fills the "name" and "type" pointers of the nodes so the normal device-tree > * walking functions can be used. > * > - * Returns NULL on failure or the memory chunk containing the unflattened > + * Return: NULL on failure or the memory chunk containing the unflattened > * device tree on success. > */ > void *__unflatten_device_tree(const void *blob, > @@ -441,7 +441,7 @@ static DEFINE_MUTEX(of_fdt_unflatten_mutex); > * pointers of the nodes so the normal device-tree walking functions > * can be used. > * > - * Returns NULL on failure or the memory chunk containing the unflattened > + * Return: NULL on failure or the memory chunk containing the unflattened > * device tree on success. > */ > void *of_fdt_unflatten_tree(const unsigned long *blob, > @@ -716,7 +716,7 @@ const void *__init of_get_flat_dt_prop(unsigned long node, const char *name, > * @node: node to test > * @compat: compatible string to compare with compatible list. > * > - * On match, returns a non-zero value with smaller values returned for more > + * Return: a non-zero value on match with smaller values returned for more > * specific compatible values. > */ > static int of_fdt_is_compatible(const void *blob, > diff --git a/drivers/of/irq.c b/drivers/of/irq.c > index 25d17b8a1a1a..352e14b007e7 100644 > --- a/drivers/of/irq.c > +++ b/drivers/of/irq.c > @@ -48,7 +48,7 @@ EXPORT_SYMBOL_GPL(irq_of_parse_and_map); > * of_irq_find_parent - Given a device node, find its interrupt parent node > * @child: pointer to device node > * > - * Returns a pointer to the interrupt parent node, or NULL if the interrupt > + * Return: A pointer to the interrupt parent node, or NULL if the interrupt > * parent could not be determined. > */ > struct device_node *of_irq_find_parent(struct device_node *child) > @@ -81,14 +81,14 @@ EXPORT_SYMBOL_GPL(of_irq_find_parent); > * @addr: address specifier (start of "reg" property of the device) in be32 format > * @out_irq: structure of_phandle_args updated by this function > * > - * Returns 0 on success and a negative number on error > - * > * This function is a low-level interrupt tree walking function. It > * can be used to do a partial walk with synthetized reg and interrupts > * properties, for example when resolving PCI interrupts when no device > * node exist for the parent. It takes an interrupt specifier structure as > * input, walks the tree looking for any interrupt-map properties, translates > * the specifier for each map, and then returns the translated map. > + * > + * Return: 0 on success and a negative number on error > */ > int of_irq_parse_raw(const __be32 *addr, struct of_phandle_args *out_irq) > { > @@ -380,7 +380,7 @@ EXPORT_SYMBOL_GPL(of_irq_to_resource); > * @dev: pointer to device tree node > * @index: zero-based index of the IRQ > * > - * Returns Linux IRQ number on success, or 0 on the IRQ mapping failure, or > + * Return: Linux IRQ number on success, or 0 on the IRQ mapping failure, or > * -EPROBE_DEFER if the IRQ domain is not yet created, or error code in case > * of any other failure. > */ > @@ -407,7 +407,7 @@ EXPORT_SYMBOL_GPL(of_irq_get); > * @dev: pointer to device tree node > * @name: IRQ name > * > - * Returns Linux IRQ number on success, or 0 on the IRQ mapping failure, or > + * Return: Linux IRQ number on success, or 0 on the IRQ mapping failure, or > * -EPROBE_DEFER if the IRQ domain is not yet created, or error code in case > * of any other failure. > */ > @@ -447,7 +447,7 @@ int of_irq_count(struct device_node *dev) > * @res: array of resources to fill in > * @nr_irqs: the number of IRQs (and upper bound for num of @res elements) > * > - * Returns the size of the filled in table (up to @nr_irqs). > + * Return: The size of the filled in table (up to @nr_irqs). > */ > int of_irq_to_resource_table(struct device_node *dev, struct resource *res, > int nr_irqs) > @@ -602,7 +602,7 @@ static u32 __of_msi_map_id(struct device *dev, struct device_node **np, > * Walk up the device hierarchy looking for devices with a "msi-map" > * property. If found, apply the mapping to @id_in. > * > - * Returns the mapped MSI ID. > + * Return: The mapped MSI ID. > */ > u32 of_msi_map_id(struct device *dev, struct device_node *msi_np, u32 id_in) > { > diff --git a/drivers/of/overlay.c b/drivers/of/overlay.c > index c25679f7bd3f..d241273170fd 100644 > --- a/drivers/of/overlay.c > +++ b/drivers/of/overlay.c > @@ -298,7 +298,7 @@ static struct property *dup_and_fixup_symbol_prop( > * > * Update of property in symbols node is not allowed. > * > - * Returns 0 on success, -ENOMEM if memory allocation failure, or -EINVAL if > + * Return: 0 on success, -ENOMEM if memory allocation failure, or -EINVAL if > * invalid @overlay. > */ > static int add_changeset_property(struct overlay_changeset *ovcs, > @@ -403,7 +403,7 @@ static int add_changeset_property(struct overlay_changeset *ovcs, > * > * NOTE_2: Multiple mods of created nodes not supported. > * > - * Returns 0 on success, -ENOMEM if memory allocation failure, or -EINVAL if > + * Return: 0 on success, -ENOMEM if memory allocation failure, or -EINVAL if > * invalid @overlay. > */ > static int add_changeset_node(struct overlay_changeset *ovcs, > @@ -475,7 +475,7 @@ static int add_changeset_node(struct overlay_changeset *ovcs, > * > * Do not allow symbols node to have any children. > * > - * Returns 0 on success, -ENOMEM if memory allocation failure, or -EINVAL if > + * Return: 0 on success, -ENOMEM if memory allocation failure, or -EINVAL if > * invalid @overlay_node. > */ > static int build_changeset_next_level(struct overlay_changeset *ovcs, > @@ -606,7 +606,7 @@ static int find_dup_cset_prop(struct overlay_changeset *ovcs, > * the same node or duplicate {add, delete, or update} properties entries > * for the same property. > * > - * Returns 0 on success, or -EINVAL if duplicate changeset entry found. > + * Return: 0 on success, or -EINVAL if duplicate changeset entry found. > */ > static int changeset_dup_entry_check(struct overlay_changeset *ovcs) > { > @@ -630,7 +630,7 @@ static int changeset_dup_entry_check(struct overlay_changeset *ovcs) > * any portions of the changeset that were successfully created will remain > * in @ovcs->cset. > * > - * Returns 0 on success, -ENOMEM if memory allocation failure, or -EINVAL if > + * Return: 0 on success, -ENOMEM if memory allocation failure, or -EINVAL if > * invalid overlay in @ovcs->fragments[]. > */ > static int build_changeset(struct overlay_changeset *ovcs) > @@ -726,7 +726,7 @@ static struct device_node *find_target(struct device_node *info_node) > * the top level of @tree. The relevant top level nodes are the fragment > * nodes and the __symbols__ node. Any other top level node will be ignored. > * > - * Returns 0 on success, -ENOMEM if memory allocation failure, -EINVAL if error > + * Return: 0 on success, -ENOMEM if memory allocation failure, -EINVAL if error > * detected in @tree, or -ENOSPC if idr_alloc() error. > */ > static int init_overlay_changeset(struct overlay_changeset *ovcs, > @@ -1181,7 +1181,7 @@ static int overlay_removal_is_ok(struct overlay_changeset *remove_ovcs) > * If an error is returned by an overlay changeset post-remove notifier > * then no further overlay changeset post-remove notifier will be called. > * > - * Returns 0 on success, or a negative error number. *ovcs_id is set to > + * Return: 0 on success, or a negative error number. *ovcs_id is set to > * zero after reverting the changeset, even if a subsequent error occurs. > */ > int of_overlay_remove(int *ovcs_id) > @@ -1259,7 +1259,7 @@ EXPORT_SYMBOL_GPL(of_overlay_remove); > * > * Removes all overlays from the system in the correct order. > * > - * Returns 0 on success, or a negative error number > + * Return: 0 on success, or a negative error number > */ > int of_overlay_remove_all(void) > { > diff --git a/drivers/of/platform.c b/drivers/of/platform.c > index 0ed46d301431..25d448f5af91 100644 > --- a/drivers/of/platform.c > +++ b/drivers/of/platform.c > @@ -44,7 +44,7 @@ static const struct of_device_id of_skipped_node_table[] = { > * Takes a reference to the embedded struct device which needs to be dropped > * after use. > * > - * Returns platform_device pointer, or NULL if not found > + * Return: platform_device pointer, or NULL if not found > */ > struct platform_device *of_find_device_by_node(struct device_node *np) > { > @@ -160,7 +160,7 @@ EXPORT_SYMBOL(of_device_alloc); > * @platform_data: pointer to populate platform_data pointer with > * @parent: Linux device model parent device. > * > - * Returns pointer to created platform device, or NULL if a device was not > + * Return: Pointer to created platform device, or NULL if a device was not > * registered. Unavailable devices will not get registered. > */ > static struct platform_device *of_platform_device_create_pdata( > @@ -204,7 +204,7 @@ static struct platform_device *of_platform_device_create_pdata( > * @bus_id: name to assign device > * @parent: Linux device model parent device. > * > - * Returns pointer to created platform device, or NULL if a device was not > + * Return: Pointer to created platform device, or NULL if a device was not > * registered. Unavailable devices will not get registered. > */ > struct platform_device *of_platform_device_create(struct device_node *np, > @@ -463,7 +463,7 @@ EXPORT_SYMBOL(of_platform_bus_probe); > * New board support should be using this function instead of > * of_platform_bus_probe(). > * > - * Returns 0 on success, < 0 on failure. > + * Return: 0 on success, < 0 on failure. > */ > int of_platform_populate(struct device_node *root, > const struct of_device_id *matches, > @@ -607,7 +607,7 @@ static void devm_of_platform_populate_release(struct device *dev, void *res) > * Similar to of_platform_populate(), but will automatically call > * of_platform_depopulate() when the device is unbound from the bus. > * > - * Returns 0 on success, < 0 on failure. > + * Return: 0 on success, < 0 on failure. > */ > int devm_of_platform_populate(struct device *dev) > { > diff --git a/drivers/of/property.c b/drivers/of/property.c > index c000ed01db01..2046ae311322 100644 > --- a/drivers/of/property.c > +++ b/drivers/of/property.c > @@ -61,9 +61,11 @@ EXPORT_SYMBOL(of_graph_is_present); > * @elem_size: size of the individual element > * > * Search for a property in a device node and count the number of elements of > - * size elem_size in it. Returns number of elements on sucess, -EINVAL if the > - * property does not exist or its length does not match a multiple of elem_size > - * and -ENODATA if the property does not have a value. > + * size elem_size in it. > + * > + * Return: The number of elements on sucess, -EINVAL if the property does not > + * exist or its length does not match a multiple of elem_size and -ENODATA if > + * the property does not have a value. > */ > int of_property_count_elems_of_size(const struct device_node *np, > const char *propname, int elem_size) > @@ -95,8 +97,9 @@ EXPORT_SYMBOL_GPL(of_property_count_elems_of_size); > * @len: if !=NULL, actual length is written to here > * > * Search for a property in a device node and valid the requested size. > - * Returns the property value on success, -EINVAL if the property does not > - * exist, -ENODATA if property does not have a value, and -EOVERFLOW if the > + * > + * Return: The property value on success, -EINVAL if the property does not > + * exist, -ENODATA if property does not have a value, and -EOVERFLOW if the > * property data is too small or too large. > * > */ > @@ -129,7 +132,9 @@ static void *of_find_property_value_of_size(const struct device_node *np, > * @out_value: pointer to return value, modified only if no error. > * > * Search for a property in a device node and read nth 32-bit value from > - * it. Returns 0 on success, -EINVAL if the property does not exist, > + * it. > + * > + * Return: 0 on success, -EINVAL if the property does not exist, > * -ENODATA if property does not have a value, and -EOVERFLOW if the > * property data isn't large enough. > * > @@ -161,7 +166,9 @@ EXPORT_SYMBOL_GPL(of_property_read_u32_index); > * @out_value: pointer to return value, modified only if no error. > * > * Search for a property in a device node and read nth 64-bit value from > - * it. Returns 0 on success, -EINVAL if the property does not exist, > + * it. > + * > + * Return: 0 on success, -EINVAL if the property does not exist, > * -ENODATA if property does not have a value, and -EOVERFLOW if the > * property data isn't large enough. > * > @@ -196,12 +203,14 @@ EXPORT_SYMBOL_GPL(of_property_read_u64_index); > * sz_min will be read. > * > * Search for a property in a device node and read 8-bit value(s) from > - * it. Returns number of elements read on success, -EINVAL if the property > - * does not exist, -ENODATA if property does not have a value, and -EOVERFLOW > - * if the property data is smaller than sz_min or longer than sz_max. > + * it. > * > * dts entry of array should be like: > - * property = /bits/ 8 <0x50 0x60 0x70>; > + * ``property = /bits/ 8 <0x50 0x60 0x70>;`` > + * > + * Return: The number of elements read on success, -EINVAL if the property > + * does not exist, -ENODATA if property does not have a value, and -EOVERFLOW > + * if the property data is smaller than sz_min or longer than sz_max. > * > * The out_values is modified only if a valid u8 value can be decoded. > */ > @@ -244,12 +253,14 @@ EXPORT_SYMBOL_GPL(of_property_read_variable_u8_array); > * sz_min will be read. > * > * Search for a property in a device node and read 16-bit value(s) from > - * it. Returns number of elements read on success, -EINVAL if the property > - * does not exist, -ENODATA if property does not have a value, and -EOVERFLOW > - * if the property data is smaller than sz_min or longer than sz_max. > + * it. > * > * dts entry of array should be like: > - * property = /bits/ 16 <0x5000 0x6000 0x7000>; > + * ``property = /bits/ 16 <0x5000 0x6000 0x7000>;`` > + * > + * Return: The number of elements read on success, -EINVAL if the property > + * does not exist, -ENODATA if property does not have a value, and -EOVERFLOW > + * if the property data is smaller than sz_min or longer than sz_max. > * > * The out_values is modified only if a valid u16 value can be decoded. > */ > @@ -292,7 +303,9 @@ EXPORT_SYMBOL_GPL(of_property_read_variable_u16_array); > * sz_min will be read. > * > * Search for a property in a device node and read 32-bit value(s) from > - * it. Returns number of elements read on success, -EINVAL if the property > + * it. > + * > + * Return: The number of elements read on success, -EINVAL if the property > * does not exist, -ENODATA if property does not have a value, and -EOVERFLOW > * if the property data is smaller than sz_min or longer than sz_max. > * > @@ -331,7 +344,9 @@ EXPORT_SYMBOL_GPL(of_property_read_variable_u32_array); > * @out_value: pointer to return value, modified only if return value is 0. > * > * Search for a property in a device node and read a 64-bit value from > - * it. Returns 0 on success, -EINVAL if the property does not exist, > + * it. > + * > + * Return: 0 on success, -EINVAL if the property does not exist, > * -ENODATA if property does not have a value, and -EOVERFLOW if the > * property data isn't large enough. > * > @@ -366,7 +381,9 @@ EXPORT_SYMBOL_GPL(of_property_read_u64); > * sz_min will be read. > * > * Search for a property in a device node and read 64-bit value(s) from > - * it. Returns number of elements read on success, -EINVAL if the property > + * it. > + * > + * Return: The number of elements read on success, -EINVAL if the property > * does not exist, -ENODATA if property does not have a value, and -EOVERFLOW > * if the property data is smaller than sz_min or longer than sz_max. > * > @@ -408,10 +425,11 @@ EXPORT_SYMBOL_GPL(of_property_read_variable_u64_array); > * return value is 0. > * > * Search for a property in a device tree node and retrieve a null > - * terminated string value (pointer to data, not a copy). Returns 0 on > - * success, -EINVAL if the property does not exist, -ENODATA if property > - * does not have a value, and -EILSEQ if the string is not null-terminated > - * within the length of the property data. > + * terminated string value (pointer to data, not a copy). > + * > + * Return: 0 on success, -EINVAL if the property does not exist, -ENODATA if > + * property does not have a value, and -EILSEQ if the string is not > + * null-terminated within the length of the property data. > * > * The out_string pointer is modified only if a valid string can be decoded. > */ > @@ -775,7 +793,7 @@ EXPORT_SYMBOL(of_graph_get_remote_port_parent); > * @node: pointer to a local endpoint device_node > * > * Return: Remote port node associated with remote endpoint node linked > - * to @node. Use of_node_put() on it when done. > + * to @node. Use of_node_put() on it when done. > */ > struct device_node *of_graph_get_remote_port(const struct device_node *node) > { > @@ -808,7 +826,7 @@ EXPORT_SYMBOL(of_graph_get_endpoint_count); > * @endpoint: identifier (value of reg property) of the endpoint node > * > * Return: Remote device node associated with remote endpoint node linked > - * to @node. Use of_node_put() on it when done. > + * to @node. Use of_node_put() on it when done. > */ > struct device_node *of_graph_get_remote_node(const struct device_node *node, > u32 port, u32 endpoint) > diff --git a/include/linux/of.h b/include/linux/of.h > index e9209ef44cc0..ef6b161d1f91 100644 > --- a/include/linux/of.h > +++ b/include/linux/of.h > @@ -424,12 +424,14 @@ extern int of_detach_node(struct device_node *); > * @sz: number of array elements to read > * > * Search for a property in a device node and read 8-bit value(s) from > - * it. Returns 0 on success, -EINVAL if the property does not exist, > - * -ENODATA if property does not have a value, and -EOVERFLOW if the > - * property data isn't large enough. > + * it. > * > * dts entry of array should be like: > - * property = /bits/ 8 <0x50 0x60 0x70>; > + * ``property = /bits/ 8 <0x50 0x60 0x70>;`` > + * > + * Return: 0 on success, -EINVAL if the property does not exist, > + * -ENODATA if property does not have a value, and -EOVERFLOW if the > + * property data isn't large enough. > * > * The out_values is modified only if a valid u8 value can be decoded. > */ > @@ -454,12 +456,14 @@ static inline int of_property_read_u8_array(const struct device_node *np, > * @sz: number of array elements to read > * > * Search for a property in a device node and read 16-bit value(s) from > - * it. Returns 0 on success, -EINVAL if the property does not exist, > - * -ENODATA if property does not have a value, and -EOVERFLOW if the > - * property data isn't large enough. > + * it. > * > * dts entry of array should be like: > - * property = /bits/ 16 <0x5000 0x6000 0x7000>; > + * ``property = /bits/ 16 <0x5000 0x6000 0x7000>;`` > + * > + * Return: 0 on success, -EINVAL if the property does not exist, > + * -ENODATA if property does not have a value, and -EOVERFLOW if the > + * property data isn't large enough. > * > * The out_values is modified only if a valid u16 value can be decoded. > */ > @@ -485,7 +489,9 @@ static inline int of_property_read_u16_array(const struct device_node *np, > * @sz: number of array elements to read > * > * Search for a property in a device node and read 32-bit value(s) from > - * it. Returns 0 on success, -EINVAL if the property does not exist, > + * it. > + * > + * Return: 0 on success, -EINVAL if the property does not exist, > * -ENODATA if property does not have a value, and -EOVERFLOW if the > * property data isn't large enough. > * > @@ -513,7 +519,9 @@ static inline int of_property_read_u32_array(const struct device_node *np, > * @sz: number of array elements to read > * > * Search for a property in a device node and read 64-bit value(s) from > - * it. Returns 0 on success, -EINVAL if the property does not exist, > + * it. > + * > + * Return: 0 on success, -EINVAL if the property does not exist, > * -ENODATA if property does not have a value, and -EOVERFLOW if the > * property data isn't large enough. > * > @@ -1070,7 +1078,9 @@ static inline bool of_node_is_type(const struct device_node *np, const char *typ > * @propname: name of the property to be searched. > * > * Search for a property in a device node and count the number of u8 elements > - * in it. Returns number of elements on sucess, -EINVAL if the property does > + * in it. > + * > + * Return: The number of elements on sucess, -EINVAL if the property does > * not exist or its length does not match a multiple of u8 and -ENODATA if the > * property does not have a value. > */ > @@ -1087,7 +1097,9 @@ static inline int of_property_count_u8_elems(const struct device_node *np, > * @propname: name of the property to be searched. > * > * Search for a property in a device node and count the number of u16 elements > - * in it. Returns number of elements on sucess, -EINVAL if the property does > + * in it. > + * > + * Return: The number of elements on sucess, -EINVAL if the property does > * not exist or its length does not match a multiple of u16 and -ENODATA if the > * property does not have a value. > */ > @@ -1104,7 +1116,9 @@ static inline int of_property_count_u16_elems(const struct device_node *np, > * @propname: name of the property to be searched. > * > * Search for a property in a device node and count the number of u32 elements > - * in it. Returns number of elements on sucess, -EINVAL if the property does > + * in it. > + * > + * Return: The number of elements on sucess, -EINVAL if the property does > * not exist or its length does not match a multiple of u32 and -ENODATA if the > * property does not have a value. > */ > @@ -1121,7 +1135,9 @@ static inline int of_property_count_u32_elems(const struct device_node *np, > * @propname: name of the property to be searched. > * > * Search for a property in a device node and count the number of u64 elements > - * in it. Returns number of elements on sucess, -EINVAL if the property does > + * in it. > + * > + * Return: The number of elements on sucess, -EINVAL if the property does > * not exist or its length does not match a multiple of u64 and -ENODATA if the > * property does not have a value. > */ > @@ -1142,7 +1158,7 @@ static inline int of_property_count_u64_elems(const struct device_node *np, > * Search for a property in a device tree node and retrieve a list of > * terminated string values (pointer to data, not a copy) in that property. > * > - * If @out_strs is NULL, the number of strings in the property is returned. > + * Return: If @out_strs is NULL, the number of strings in the property is returned. > */ > static inline int of_property_read_string_array(const struct device_node *np, > const char *propname, const char **out_strs, > @@ -1158,10 +1174,11 @@ static inline int of_property_read_string_array(const struct device_node *np, > * @propname: name of the property to be searched. > * > * Search for a property in a device tree node and retrieve the number of null > - * terminated string contain in it. Returns the number of strings on > - * success, -EINVAL if the property does not exist, -ENODATA if property > - * does not have a value, and -EILSEQ if the string is not null-terminated > - * within the length of the property data. > + * terminated string contain in it. > + * > + * Return: The number of strings on success, -EINVAL if the property does not > + * exist, -ENODATA if property does not have a value, and -EILSEQ if the string > + * is not null-terminated within the length of the property data. > */ > static inline int of_property_count_strings(const struct device_node *np, > const char *propname) > @@ -1181,7 +1198,8 @@ static inline int of_property_count_strings(const struct device_node *np, > * Search for a property in a device tree node and retrieve a null > * terminated string value (pointer to data, not a copy) in the list of strings > * contained in that property. > - * Returns 0 on success, -EINVAL if the property does not exist, -ENODATA if > + * > + * Return: 0 on success, -EINVAL if the property does not exist, -ENODATA if > * property does not have a value, and -EILSEQ if the string is not > * null-terminated within the length of the property data. > * > @@ -1201,7 +1219,8 @@ static inline int of_property_read_string_index(const struct device_node *np, > * @propname: name of the property to be searched. > * > * Search for a property in a device node. > - * Returns true if the property exists false otherwise. > + * > + * Return: true if the property exists false otherwise. > */ > static inline bool of_property_read_bool(const struct device_node *np, > const char *propname) > @@ -1447,7 +1466,7 @@ static inline int of_reconfig_get_state_change(unsigned long action, > * of_device_is_system_power_controller - Tells if system-power-controller is found for device_node > * @np: Pointer to the given device_node > * > - * return true if present false otherwise > + * Return: true if present false otherwise > */ > static inline bool of_device_is_system_power_controller(const struct device_node *np) > { Thanks, Mauro
diff --git a/drivers/of/base.c b/drivers/of/base.c index b06bcb3f001a..3bf189d394bd 100644 --- a/drivers/of/base.c +++ b/drivers/of/base.c @@ -244,7 +244,7 @@ struct device_node *__of_find_all_nodes(struct device_node *prev) * @prev: Previous node or NULL to start iteration * of_node_put() will be called on it * - * Returns a node pointer with refcount incremented, use + * Return: A node pointer with refcount incremented, use * of_node_put() on it when done. */ struct device_node *of_find_all_nodes(struct device_node *prev) @@ -374,7 +374,7 @@ bool __weak arch_find_n_match_cpu_physical_id(struct device_node *cpun, * before booting secondary cores. This function uses arch_match_cpu_phys_id * which can be overridden by architecture specific implementation. * - * Returns a node pointer for the logical cpu with refcount incremented, use + * Return: A node pointer for the logical cpu with refcount incremented, use * of_node_put() on it when done. Returns NULL if not found. */ struct device_node *of_get_cpu_node(int cpu, unsigned int *thread) @@ -394,8 +394,8 @@ EXPORT_SYMBOL(of_get_cpu_node); * * @cpu_node: Pointer to the device_node for CPU. * - * Returns the logical CPU number of the given CPU device_node. - * Returns -ENODEV if the CPU is not found. + * Return: The logical CPU number of the given CPU device_node or -ENODEV if the + * CPU is not found. */ int of_cpu_node_to_id(struct device_node *cpu_node) { @@ -427,7 +427,7 @@ EXPORT_SYMBOL(of_cpu_node_to_id); * bindings. This function check for both and returns the idle state node for * the requested index. * - * In case an idle state node is found at @index, the refcount is incremented + * Return: An idle state node if found at @index. The refcount is incremented * for it, so call of_node_put() on it when done. Returns NULL if not found. */ struct device_node *of_get_cpu_state_node(struct device_node *cpu_node, @@ -561,7 +561,7 @@ int of_device_compatible_match(struct device_node *device, * of_machine_is_compatible - Test root of device tree for a given compatible value * @compat: compatible string to look for in root node's compatible property. * - * Returns a positive integer if the root node has the given value in its + * Return: A positive integer if the root node has the given value in its * compatible property. */ int of_machine_is_compatible(const char *compat) @@ -583,7 +583,7 @@ EXPORT_SYMBOL(of_machine_is_compatible); * * @device: Node to check for availability, with locks already held * - * Returns true if the status property is absent or set to "okay" or "ok", + * Return: True if the status property is absent or set to "okay" or "ok", * false otherwise */ static bool __of_device_is_available(const struct device_node *device) @@ -611,7 +611,7 @@ static bool __of_device_is_available(const struct device_node *device) * * @device: Node to check for availability * - * Returns true if the status property is absent or set to "okay" or "ok", + * Return: True if the status property is absent or set to "okay" or "ok", * false otherwise */ bool of_device_is_available(const struct device_node *device) @@ -632,7 +632,7 @@ EXPORT_SYMBOL(of_device_is_available); * * @device: Node to check for endianness * - * Returns true if the device has a "big-endian" property, or if the kernel + * Return: True if the device has a "big-endian" property, or if the kernel * was compiled for BE *and* the device has a "native-endian" property. * Returns false otherwise. * @@ -816,7 +816,7 @@ EXPORT_SYMBOL(of_get_next_cpu_node); * Lookup child node whose compatible property contains the given compatible * string. * - * Returns a node pointer with refcount incremented, use of_node_put() on it + * Return: a node pointer with refcount incremented, use of_node_put() on it * when done; or NULL if not found. */ struct device_node *of_get_compatible_child(const struct device_node *parent, @@ -1170,7 +1170,7 @@ EXPORT_SYMBOL(of_find_matching_node_and_match); * It does this by stripping the manufacturer prefix (as delimited by a ',') * from the first entry in the compatible list property. * - * This routine returns 0 on success, <0 on failure. + * Return: This routine returns 0 on success, <0 on failure. */ int of_modalias_node(struct device_node *node, char *modalias, int len) { @@ -1190,7 +1190,7 @@ EXPORT_SYMBOL_GPL(of_modalias_node); * of_find_node_by_phandle - Find a node given a phandle * @handle: phandle of the node to find * - * Returns a node pointer with refcount incremented, use + * Return: A node pointer with refcount incremented, use * of_node_put() on it when done. */ struct device_node *of_find_node_by_phandle(phandle handle) @@ -1426,7 +1426,7 @@ static int __of_parse_phandle_with_args(const struct device_node *np, * @index: For properties holding a table of phandles, this is the index into * the table * - * Returns the device_node pointer with refcount incremented. Use + * Return: The device_node pointer with refcount incremented. Use * of_node_put() on it when done. */ struct device_node *of_parse_phandle(const struct device_node *np, @@ -1725,7 +1725,7 @@ EXPORT_SYMBOL(of_parse_phandle_with_fixed_args); * @list_name: property name that contains a list * @cells_name: property name that specifies phandles' arguments count * - * Returns the number of phandle + argument tuples within a property. It + * Return: The number of phandle + argument tuples within a property. It * is a typical pattern to encode a list of phandle and variable * arguments into a single property. The number of arguments is encoded * by a property in the phandle-target node. For example, a gpios @@ -2025,7 +2025,9 @@ void of_alias_scan(void * (*dt_alloc)(u64 size, u64 align)) * @stem: Alias stem of the given device_node * * The function travels the lookup table to get the alias id for the given - * device_node and alias stem. It returns the alias id if found. + * device_node and alias stem. + * + * Return: The alias id if found. */ int of_alias_get_id(struct device_node *np, const char *stem) { @@ -2134,8 +2136,9 @@ EXPORT_SYMBOL_GPL(of_alias_get_highest_id); * @index: Index to use for preferred console. * * Check if the given device node matches the stdout-path property in the - * /chosen node. If it does then register it as the preferred console and return - * TRUE. Otherwise return FALSE. + * /chosen node. If it does then register it as the preferred console. + * + * Return: TRUE if console successfully setup. Otherwise return FALSE. */ bool of_console_check(struct device_node *dn, char *name, int index) { @@ -2186,7 +2189,7 @@ struct device_node *of_find_next_cache_node(const struct device_node *np) * * @cpu: cpu number(logical index) for which the last cache level is needed * - * Returns the the level at which the last cache is present. It is exactly + * Return: The the level at which the last cache is present. It is exactly * same as the total number of cache levels for the given logical cpu. */ int of_find_last_cache_level(unsigned int cpu) diff --git a/drivers/of/dynamic.c b/drivers/of/dynamic.c index 1d7a22e44d78..cd3821a6444f 100644 --- a/drivers/of/dynamic.c +++ b/drivers/of/dynamic.c @@ -27,7 +27,7 @@ static struct device_node *kobj_to_device_node(struct kobject *kobj) * @node: Node to inc refcount, NULL is supported to simplify writing of * callers * - * Returns node. + * Return: The node with refcount incremented. */ struct device_node *of_node_get(struct device_node *node) { @@ -104,7 +104,8 @@ int of_reconfig_notify(unsigned long action, struct of_reconfig_data *p) * @arg - argument of the of notifier * * Returns the new state of a device based on the notifier used. - * Returns 0 on device going from enabled to disabled, 1 on device + * + * Return: 0 on device going from enabled to disabled, 1 on device * going from disabled to enabled and -1 on no change. */ int of_reconfig_get_state_change(unsigned long action, struct of_reconfig_data *pr) @@ -374,7 +375,8 @@ void of_node_release(struct kobject *kobj) * property structure and the property name & contents. The property's * flags have the OF_DYNAMIC bit set so that we can differentiate between * dynamically allocated properties and not. - * Returns the newly allocated property or NULL on out of memory error. + * + * Return: The newly allocated property or NULL on out of memory error. */ struct property *__of_prop_dup(const struct property *prop, gfp_t allocflags) { @@ -417,7 +419,7 @@ struct property *__of_prop_dup(const struct property *prop, gfp_t allocflags) * another node. The node data are dynamically allocated and all the node * flags have the OF_DYNAMIC & OF_DETACHED bits set. * - * Returns the newly allocated node or NULL on out of memory error. + * Return: The newly allocated node or NULL on out of memory error. */ struct device_node *__of_node_dup(const struct device_node *np, const char *full_name) @@ -783,7 +785,8 @@ static int __of_changeset_apply(struct of_changeset *ocs) * Any side-effects of live tree state changes are applied here on * success, like creation/destruction of devices and side-effects * like creation of sysfs properties and directories. - * Returns 0 on success, a negative error value in case of an error. + * + * Return: 0 on success, a negative error value in case of an error. * On error the partially applied effects are reverted. */ int of_changeset_apply(struct of_changeset *ocs) @@ -877,7 +880,8 @@ static int __of_changeset_revert(struct of_changeset *ocs) * was before the application. * Any side-effects like creation/destruction of devices and * removal of sysfs properties and directories are applied. - * Returns 0 on success, a negative error value in case of an error. + * + * Return: 0 on success, a negative error value in case of an error. */ int of_changeset_revert(struct of_changeset *ocs) { @@ -905,7 +909,8 @@ EXPORT_SYMBOL_GPL(of_changeset_revert); * + OF_RECONFIG_ADD_PROPERTY * + OF_RECONFIG_REMOVE_PROPERTY, * + OF_RECONFIG_UPDATE_PROPERTY - * Returns 0 on success, a negative error value in case of an error. + * + * Return: 0 on success, a negative error value in case of an error. */ int of_changeset_action(struct of_changeset *ocs, unsigned long action, struct device_node *np, struct property *prop) diff --git a/drivers/of/fdt.c b/drivers/of/fdt.c index ba53da9c3895..134c7fb43a14 100644 --- a/drivers/of/fdt.c +++ b/drivers/of/fdt.c @@ -282,7 +282,7 @@ static void reverse_nodes(struct device_node *parent) * @dad: Parent struct device_node * @nodepp: The device_node tree created by the call * - * It returns the size of unflattened device tree or error code + * Return: The size of unflattened device tree or error code */ static int unflatten_dt_nodes(const void *blob, void *mem, @@ -360,7 +360,7 @@ static int unflatten_dt_nodes(const void *blob, * fills the "name" and "type" pointers of the nodes so the normal device-tree * walking functions can be used. * - * Returns NULL on failure or the memory chunk containing the unflattened + * Return: NULL on failure or the memory chunk containing the unflattened * device tree on success. */ void *__unflatten_device_tree(const void *blob, @@ -441,7 +441,7 @@ static DEFINE_MUTEX(of_fdt_unflatten_mutex); * pointers of the nodes so the normal device-tree walking functions * can be used. * - * Returns NULL on failure or the memory chunk containing the unflattened + * Return: NULL on failure or the memory chunk containing the unflattened * device tree on success. */ void *of_fdt_unflatten_tree(const unsigned long *blob, @@ -716,7 +716,7 @@ const void *__init of_get_flat_dt_prop(unsigned long node, const char *name, * @node: node to test * @compat: compatible string to compare with compatible list. * - * On match, returns a non-zero value with smaller values returned for more + * Return: a non-zero value on match with smaller values returned for more * specific compatible values. */ static int of_fdt_is_compatible(const void *blob, diff --git a/drivers/of/irq.c b/drivers/of/irq.c index 25d17b8a1a1a..352e14b007e7 100644 --- a/drivers/of/irq.c +++ b/drivers/of/irq.c @@ -48,7 +48,7 @@ EXPORT_SYMBOL_GPL(irq_of_parse_and_map); * of_irq_find_parent - Given a device node, find its interrupt parent node * @child: pointer to device node * - * Returns a pointer to the interrupt parent node, or NULL if the interrupt + * Return: A pointer to the interrupt parent node, or NULL if the interrupt * parent could not be determined. */ struct device_node *of_irq_find_parent(struct device_node *child) @@ -81,14 +81,14 @@ EXPORT_SYMBOL_GPL(of_irq_find_parent); * @addr: address specifier (start of "reg" property of the device) in be32 format * @out_irq: structure of_phandle_args updated by this function * - * Returns 0 on success and a negative number on error - * * This function is a low-level interrupt tree walking function. It * can be used to do a partial walk with synthetized reg and interrupts * properties, for example when resolving PCI interrupts when no device * node exist for the parent. It takes an interrupt specifier structure as * input, walks the tree looking for any interrupt-map properties, translates * the specifier for each map, and then returns the translated map. + * + * Return: 0 on success and a negative number on error */ int of_irq_parse_raw(const __be32 *addr, struct of_phandle_args *out_irq) { @@ -380,7 +380,7 @@ EXPORT_SYMBOL_GPL(of_irq_to_resource); * @dev: pointer to device tree node * @index: zero-based index of the IRQ * - * Returns Linux IRQ number on success, or 0 on the IRQ mapping failure, or + * Return: Linux IRQ number on success, or 0 on the IRQ mapping failure, or * -EPROBE_DEFER if the IRQ domain is not yet created, or error code in case * of any other failure. */ @@ -407,7 +407,7 @@ EXPORT_SYMBOL_GPL(of_irq_get); * @dev: pointer to device tree node * @name: IRQ name * - * Returns Linux IRQ number on success, or 0 on the IRQ mapping failure, or + * Return: Linux IRQ number on success, or 0 on the IRQ mapping failure, or * -EPROBE_DEFER if the IRQ domain is not yet created, or error code in case * of any other failure. */ @@ -447,7 +447,7 @@ int of_irq_count(struct device_node *dev) * @res: array of resources to fill in * @nr_irqs: the number of IRQs (and upper bound for num of @res elements) * - * Returns the size of the filled in table (up to @nr_irqs). + * Return: The size of the filled in table (up to @nr_irqs). */ int of_irq_to_resource_table(struct device_node *dev, struct resource *res, int nr_irqs) @@ -602,7 +602,7 @@ static u32 __of_msi_map_id(struct device *dev, struct device_node **np, * Walk up the device hierarchy looking for devices with a "msi-map" * property. If found, apply the mapping to @id_in. * - * Returns the mapped MSI ID. + * Return: The mapped MSI ID. */ u32 of_msi_map_id(struct device *dev, struct device_node *msi_np, u32 id_in) { diff --git a/drivers/of/overlay.c b/drivers/of/overlay.c index c25679f7bd3f..d241273170fd 100644 --- a/drivers/of/overlay.c +++ b/drivers/of/overlay.c @@ -298,7 +298,7 @@ static struct property *dup_and_fixup_symbol_prop( * * Update of property in symbols node is not allowed. * - * Returns 0 on success, -ENOMEM if memory allocation failure, or -EINVAL if + * Return: 0 on success, -ENOMEM if memory allocation failure, or -EINVAL if * invalid @overlay. */ static int add_changeset_property(struct overlay_changeset *ovcs, @@ -403,7 +403,7 @@ static int add_changeset_property(struct overlay_changeset *ovcs, * * NOTE_2: Multiple mods of created nodes not supported. * - * Returns 0 on success, -ENOMEM if memory allocation failure, or -EINVAL if + * Return: 0 on success, -ENOMEM if memory allocation failure, or -EINVAL if * invalid @overlay. */ static int add_changeset_node(struct overlay_changeset *ovcs, @@ -475,7 +475,7 @@ static int add_changeset_node(struct overlay_changeset *ovcs, * * Do not allow symbols node to have any children. * - * Returns 0 on success, -ENOMEM if memory allocation failure, or -EINVAL if + * Return: 0 on success, -ENOMEM if memory allocation failure, or -EINVAL if * invalid @overlay_node. */ static int build_changeset_next_level(struct overlay_changeset *ovcs, @@ -606,7 +606,7 @@ static int find_dup_cset_prop(struct overlay_changeset *ovcs, * the same node or duplicate {add, delete, or update} properties entries * for the same property. * - * Returns 0 on success, or -EINVAL if duplicate changeset entry found. + * Return: 0 on success, or -EINVAL if duplicate changeset entry found. */ static int changeset_dup_entry_check(struct overlay_changeset *ovcs) { @@ -630,7 +630,7 @@ static int changeset_dup_entry_check(struct overlay_changeset *ovcs) * any portions of the changeset that were successfully created will remain * in @ovcs->cset. * - * Returns 0 on success, -ENOMEM if memory allocation failure, or -EINVAL if + * Return: 0 on success, -ENOMEM if memory allocation failure, or -EINVAL if * invalid overlay in @ovcs->fragments[]. */ static int build_changeset(struct overlay_changeset *ovcs) @@ -726,7 +726,7 @@ static struct device_node *find_target(struct device_node *info_node) * the top level of @tree. The relevant top level nodes are the fragment * nodes and the __symbols__ node. Any other top level node will be ignored. * - * Returns 0 on success, -ENOMEM if memory allocation failure, -EINVAL if error + * Return: 0 on success, -ENOMEM if memory allocation failure, -EINVAL if error * detected in @tree, or -ENOSPC if idr_alloc() error. */ static int init_overlay_changeset(struct overlay_changeset *ovcs, @@ -1181,7 +1181,7 @@ static int overlay_removal_is_ok(struct overlay_changeset *remove_ovcs) * If an error is returned by an overlay changeset post-remove notifier * then no further overlay changeset post-remove notifier will be called. * - * Returns 0 on success, or a negative error number. *ovcs_id is set to + * Return: 0 on success, or a negative error number. *ovcs_id is set to * zero after reverting the changeset, even if a subsequent error occurs. */ int of_overlay_remove(int *ovcs_id) @@ -1259,7 +1259,7 @@ EXPORT_SYMBOL_GPL(of_overlay_remove); * * Removes all overlays from the system in the correct order. * - * Returns 0 on success, or a negative error number + * Return: 0 on success, or a negative error number */ int of_overlay_remove_all(void) { diff --git a/drivers/of/platform.c b/drivers/of/platform.c index 0ed46d301431..25d448f5af91 100644 --- a/drivers/of/platform.c +++ b/drivers/of/platform.c @@ -44,7 +44,7 @@ static const struct of_device_id of_skipped_node_table[] = { * Takes a reference to the embedded struct device which needs to be dropped * after use. * - * Returns platform_device pointer, or NULL if not found + * Return: platform_device pointer, or NULL if not found */ struct platform_device *of_find_device_by_node(struct device_node *np) { @@ -160,7 +160,7 @@ EXPORT_SYMBOL(of_device_alloc); * @platform_data: pointer to populate platform_data pointer with * @parent: Linux device model parent device. * - * Returns pointer to created platform device, or NULL if a device was not + * Return: Pointer to created platform device, or NULL if a device was not * registered. Unavailable devices will not get registered. */ static struct platform_device *of_platform_device_create_pdata( @@ -204,7 +204,7 @@ static struct platform_device *of_platform_device_create_pdata( * @bus_id: name to assign device * @parent: Linux device model parent device. * - * Returns pointer to created platform device, or NULL if a device was not + * Return: Pointer to created platform device, or NULL if a device was not * registered. Unavailable devices will not get registered. */ struct platform_device *of_platform_device_create(struct device_node *np, @@ -463,7 +463,7 @@ EXPORT_SYMBOL(of_platform_bus_probe); * New board support should be using this function instead of * of_platform_bus_probe(). * - * Returns 0 on success, < 0 on failure. + * Return: 0 on success, < 0 on failure. */ int of_platform_populate(struct device_node *root, const struct of_device_id *matches, @@ -607,7 +607,7 @@ static void devm_of_platform_populate_release(struct device *dev, void *res) * Similar to of_platform_populate(), but will automatically call * of_platform_depopulate() when the device is unbound from the bus. * - * Returns 0 on success, < 0 on failure. + * Return: 0 on success, < 0 on failure. */ int devm_of_platform_populate(struct device *dev) { diff --git a/drivers/of/property.c b/drivers/of/property.c index c000ed01db01..2046ae311322 100644 --- a/drivers/of/property.c +++ b/drivers/of/property.c @@ -61,9 +61,11 @@ EXPORT_SYMBOL(of_graph_is_present); * @elem_size: size of the individual element * * Search for a property in a device node and count the number of elements of - * size elem_size in it. Returns number of elements on sucess, -EINVAL if the - * property does not exist or its length does not match a multiple of elem_size - * and -ENODATA if the property does not have a value. + * size elem_size in it. + * + * Return: The number of elements on sucess, -EINVAL if the property does not + * exist or its length does not match a multiple of elem_size and -ENODATA if + * the property does not have a value. */ int of_property_count_elems_of_size(const struct device_node *np, const char *propname, int elem_size) @@ -95,8 +97,9 @@ EXPORT_SYMBOL_GPL(of_property_count_elems_of_size); * @len: if !=NULL, actual length is written to here * * Search for a property in a device node and valid the requested size. - * Returns the property value on success, -EINVAL if the property does not - * exist, -ENODATA if property does not have a value, and -EOVERFLOW if the + * + * Return: The property value on success, -EINVAL if the property does not + * exist, -ENODATA if property does not have a value, and -EOVERFLOW if the * property data is too small or too large. * */ @@ -129,7 +132,9 @@ static void *of_find_property_value_of_size(const struct device_node *np, * @out_value: pointer to return value, modified only if no error. * * Search for a property in a device node and read nth 32-bit value from - * it. Returns 0 on success, -EINVAL if the property does not exist, + * it. + * + * Return: 0 on success, -EINVAL if the property does not exist, * -ENODATA if property does not have a value, and -EOVERFLOW if the * property data isn't large enough. * @@ -161,7 +166,9 @@ EXPORT_SYMBOL_GPL(of_property_read_u32_index); * @out_value: pointer to return value, modified only if no error. * * Search for a property in a device node and read nth 64-bit value from - * it. Returns 0 on success, -EINVAL if the property does not exist, + * it. + * + * Return: 0 on success, -EINVAL if the property does not exist, * -ENODATA if property does not have a value, and -EOVERFLOW if the * property data isn't large enough. * @@ -196,12 +203,14 @@ EXPORT_SYMBOL_GPL(of_property_read_u64_index); * sz_min will be read. * * Search for a property in a device node and read 8-bit value(s) from - * it. Returns number of elements read on success, -EINVAL if the property - * does not exist, -ENODATA if property does not have a value, and -EOVERFLOW - * if the property data is smaller than sz_min or longer than sz_max. + * it. * * dts entry of array should be like: - * property = /bits/ 8 <0x50 0x60 0x70>; + * ``property = /bits/ 8 <0x50 0x60 0x70>;`` + * + * Return: The number of elements read on success, -EINVAL if the property + * does not exist, -ENODATA if property does not have a value, and -EOVERFLOW + * if the property data is smaller than sz_min or longer than sz_max. * * The out_values is modified only if a valid u8 value can be decoded. */ @@ -244,12 +253,14 @@ EXPORT_SYMBOL_GPL(of_property_read_variable_u8_array); * sz_min will be read. * * Search for a property in a device node and read 16-bit value(s) from - * it. Returns number of elements read on success, -EINVAL if the property - * does not exist, -ENODATA if property does not have a value, and -EOVERFLOW - * if the property data is smaller than sz_min or longer than sz_max. + * it. * * dts entry of array should be like: - * property = /bits/ 16 <0x5000 0x6000 0x7000>; + * ``property = /bits/ 16 <0x5000 0x6000 0x7000>;`` + * + * Return: The number of elements read on success, -EINVAL if the property + * does not exist, -ENODATA if property does not have a value, and -EOVERFLOW + * if the property data is smaller than sz_min or longer than sz_max. * * The out_values is modified only if a valid u16 value can be decoded. */ @@ -292,7 +303,9 @@ EXPORT_SYMBOL_GPL(of_property_read_variable_u16_array); * sz_min will be read. * * Search for a property in a device node and read 32-bit value(s) from - * it. Returns number of elements read on success, -EINVAL if the property + * it. + * + * Return: The number of elements read on success, -EINVAL if the property * does not exist, -ENODATA if property does not have a value, and -EOVERFLOW * if the property data is smaller than sz_min or longer than sz_max. * @@ -331,7 +344,9 @@ EXPORT_SYMBOL_GPL(of_property_read_variable_u32_array); * @out_value: pointer to return value, modified only if return value is 0. * * Search for a property in a device node and read a 64-bit value from - * it. Returns 0 on success, -EINVAL if the property does not exist, + * it. + * + * Return: 0 on success, -EINVAL if the property does not exist, * -ENODATA if property does not have a value, and -EOVERFLOW if the * property data isn't large enough. * @@ -366,7 +381,9 @@ EXPORT_SYMBOL_GPL(of_property_read_u64); * sz_min will be read. * * Search for a property in a device node and read 64-bit value(s) from - * it. Returns number of elements read on success, -EINVAL if the property + * it. + * + * Return: The number of elements read on success, -EINVAL if the property * does not exist, -ENODATA if property does not have a value, and -EOVERFLOW * if the property data is smaller than sz_min or longer than sz_max. * @@ -408,10 +425,11 @@ EXPORT_SYMBOL_GPL(of_property_read_variable_u64_array); * return value is 0. * * Search for a property in a device tree node and retrieve a null - * terminated string value (pointer to data, not a copy). Returns 0 on - * success, -EINVAL if the property does not exist, -ENODATA if property - * does not have a value, and -EILSEQ if the string is not null-terminated - * within the length of the property data. + * terminated string value (pointer to data, not a copy). + * + * Return: 0 on success, -EINVAL if the property does not exist, -ENODATA if + * property does not have a value, and -EILSEQ if the string is not + * null-terminated within the length of the property data. * * The out_string pointer is modified only if a valid string can be decoded. */ @@ -775,7 +793,7 @@ EXPORT_SYMBOL(of_graph_get_remote_port_parent); * @node: pointer to a local endpoint device_node * * Return: Remote port node associated with remote endpoint node linked - * to @node. Use of_node_put() on it when done. + * to @node. Use of_node_put() on it when done. */ struct device_node *of_graph_get_remote_port(const struct device_node *node) { @@ -808,7 +826,7 @@ EXPORT_SYMBOL(of_graph_get_endpoint_count); * @endpoint: identifier (value of reg property) of the endpoint node * * Return: Remote device node associated with remote endpoint node linked - * to @node. Use of_node_put() on it when done. + * to @node. Use of_node_put() on it when done. */ struct device_node *of_graph_get_remote_node(const struct device_node *node, u32 port, u32 endpoint) diff --git a/include/linux/of.h b/include/linux/of.h index e9209ef44cc0..ef6b161d1f91 100644 --- a/include/linux/of.h +++ b/include/linux/of.h @@ -424,12 +424,14 @@ extern int of_detach_node(struct device_node *); * @sz: number of array elements to read * * Search for a property in a device node and read 8-bit value(s) from - * it. Returns 0 on success, -EINVAL if the property does not exist, - * -ENODATA if property does not have a value, and -EOVERFLOW if the - * property data isn't large enough. + * it. * * dts entry of array should be like: - * property = /bits/ 8 <0x50 0x60 0x70>; + * ``property = /bits/ 8 <0x50 0x60 0x70>;`` + * + * Return: 0 on success, -EINVAL if the property does not exist, + * -ENODATA if property does not have a value, and -EOVERFLOW if the + * property data isn't large enough. * * The out_values is modified only if a valid u8 value can be decoded. */ @@ -454,12 +456,14 @@ static inline int of_property_read_u8_array(const struct device_node *np, * @sz: number of array elements to read * * Search for a property in a device node and read 16-bit value(s) from - * it. Returns 0 on success, -EINVAL if the property does not exist, - * -ENODATA if property does not have a value, and -EOVERFLOW if the - * property data isn't large enough. + * it. * * dts entry of array should be like: - * property = /bits/ 16 <0x5000 0x6000 0x7000>; + * ``property = /bits/ 16 <0x5000 0x6000 0x7000>;`` + * + * Return: 0 on success, -EINVAL if the property does not exist, + * -ENODATA if property does not have a value, and -EOVERFLOW if the + * property data isn't large enough. * * The out_values is modified only if a valid u16 value can be decoded. */ @@ -485,7 +489,9 @@ static inline int of_property_read_u16_array(const struct device_node *np, * @sz: number of array elements to read * * Search for a property in a device node and read 32-bit value(s) from - * it. Returns 0 on success, -EINVAL if the property does not exist, + * it. + * + * Return: 0 on success, -EINVAL if the property does not exist, * -ENODATA if property does not have a value, and -EOVERFLOW if the * property data isn't large enough. * @@ -513,7 +519,9 @@ static inline int of_property_read_u32_array(const struct device_node *np, * @sz: number of array elements to read * * Search for a property in a device node and read 64-bit value(s) from - * it. Returns 0 on success, -EINVAL if the property does not exist, + * it. + * + * Return: 0 on success, -EINVAL if the property does not exist, * -ENODATA if property does not have a value, and -EOVERFLOW if the * property data isn't large enough. * @@ -1070,7 +1078,9 @@ static inline bool of_node_is_type(const struct device_node *np, const char *typ * @propname: name of the property to be searched. * * Search for a property in a device node and count the number of u8 elements - * in it. Returns number of elements on sucess, -EINVAL if the property does + * in it. + * + * Return: The number of elements on sucess, -EINVAL if the property does * not exist or its length does not match a multiple of u8 and -ENODATA if the * property does not have a value. */ @@ -1087,7 +1097,9 @@ static inline int of_property_count_u8_elems(const struct device_node *np, * @propname: name of the property to be searched. * * Search for a property in a device node and count the number of u16 elements - * in it. Returns number of elements on sucess, -EINVAL if the property does + * in it. + * + * Return: The number of elements on sucess, -EINVAL if the property does * not exist or its length does not match a multiple of u16 and -ENODATA if the * property does not have a value. */ @@ -1104,7 +1116,9 @@ static inline int of_property_count_u16_elems(const struct device_node *np, * @propname: name of the property to be searched. * * Search for a property in a device node and count the number of u32 elements - * in it. Returns number of elements on sucess, -EINVAL if the property does + * in it. + * + * Return: The number of elements on sucess, -EINVAL if the property does * not exist or its length does not match a multiple of u32 and -ENODATA if the * property does not have a value. */ @@ -1121,7 +1135,9 @@ static inline int of_property_count_u32_elems(const struct device_node *np, * @propname: name of the property to be searched. * * Search for a property in a device node and count the number of u64 elements - * in it. Returns number of elements on sucess, -EINVAL if the property does + * in it. + * + * Return: The number of elements on sucess, -EINVAL if the property does * not exist or its length does not match a multiple of u64 and -ENODATA if the * property does not have a value. */ @@ -1142,7 +1158,7 @@ static inline int of_property_count_u64_elems(const struct device_node *np, * Search for a property in a device tree node and retrieve a list of * terminated string values (pointer to data, not a copy) in that property. * - * If @out_strs is NULL, the number of strings in the property is returned. + * Return: If @out_strs is NULL, the number of strings in the property is returned. */ static inline int of_property_read_string_array(const struct device_node *np, const char *propname, const char **out_strs, @@ -1158,10 +1174,11 @@ static inline int of_property_read_string_array(const struct device_node *np, * @propname: name of the property to be searched. * * Search for a property in a device tree node and retrieve the number of null - * terminated string contain in it. Returns the number of strings on - * success, -EINVAL if the property does not exist, -ENODATA if property - * does not have a value, and -EILSEQ if the string is not null-terminated - * within the length of the property data. + * terminated string contain in it. + * + * Return: The number of strings on success, -EINVAL if the property does not + * exist, -ENODATA if property does not have a value, and -EILSEQ if the string + * is not null-terminated within the length of the property data. */ static inline int of_property_count_strings(const struct device_node *np, const char *propname) @@ -1181,7 +1198,8 @@ static inline int of_property_count_strings(const struct device_node *np, * Search for a property in a device tree node and retrieve a null * terminated string value (pointer to data, not a copy) in the list of strings * contained in that property. - * Returns 0 on success, -EINVAL if the property does not exist, -ENODATA if + * + * Return: 0 on success, -EINVAL if the property does not exist, -ENODATA if * property does not have a value, and -EILSEQ if the string is not * null-terminated within the length of the property data. * @@ -1201,7 +1219,8 @@ static inline int of_property_read_string_index(const struct device_node *np, * @propname: name of the property to be searched. * * Search for a property in a device node. - * Returns true if the property exists false otherwise. + * + * Return: true if the property exists false otherwise. */ static inline bool of_property_read_bool(const struct device_node *np, const char *propname) @@ -1447,7 +1466,7 @@ static inline int of_reconfig_get_state_change(unsigned long action, * of_device_is_system_power_controller - Tells if system-power-controller is found for device_node * @np: Pointer to the given device_node * - * return true if present false otherwise + * Return: true if present false otherwise */ static inline bool of_device_is_system_power_controller(const struct device_node *np) {
Many of the DT kerneldoc comments are lacking a 'Return' section. Let's add the section in cases we have a description of return values. There's still some cases where the return values are not documented. Cc: Frank Rowand <frowand.list@gmail.com> Cc: Mauro Carvalho Chehab <mchehab@kernel.org> Signed-off-by: Rob Herring <robh@kernel.org> --- drivers/of/base.c | 39 +++++++++++++------------ drivers/of/dynamic.c | 19 ++++++++----- drivers/of/fdt.c | 8 +++--- drivers/of/irq.c | 14 ++++----- drivers/of/overlay.c | 16 +++++------ drivers/of/platform.c | 10 +++---- drivers/of/property.c | 66 +++++++++++++++++++++++++++---------------- include/linux/of.h | 63 ++++++++++++++++++++++++++--------------- 8 files changed, 140 insertions(+), 95 deletions(-) -- 2.27.0