From: Bjorn Andersson <bjorn.andersson@linaro.org>
To: Baolin Wang <baolin.wang@linaro.org>
Cc: ohad@wizery.com, broonie@kernel.org, linux-spi@vger.kernel.org,
linux-remoteproc@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH 1/8] hwspinlock: Add one new API to support getting a specific hwlock by the name
Date: Tue, 26 Jun 2018 13:54:38 -0700 [thread overview]
Message-ID: <20180626205438.GG3206@builder> (raw)
In-Reply-To: <c23ed23d6d355e80401abce6242523f32ce480fd.1529654288.git.baolin.wang@linaro.org>
On Fri 22 Jun 01:08 PDT 2018, Baolin Wang wrote:
> The hardware spinlock binding already supplied the 'hwlock-names' property
> to match and get a specific hwlock, but did not supply one API for users
> to get a specific hwlock by the hwlock name. So this patch introduces one
> API to support this requirement.
>
> Signed-off-by: Baolin Wang <baolin.wang@linaro.org>
Thanks Baolin,
Picked up all but patch 6 from the series; including 7 and 8 with Mark's
ack.
Regards,
Bjorn
> ---
> drivers/hwspinlock/hwspinlock_core.c | 29 +++++++++++++++++++++++++++++
> include/linux/hwspinlock.h | 7 +++++++
> 2 files changed, 36 insertions(+)
>
> diff --git a/drivers/hwspinlock/hwspinlock_core.c b/drivers/hwspinlock/hwspinlock_core.c
> index d16e6a3..bea3586 100644
> --- a/drivers/hwspinlock/hwspinlock_core.c
> +++ b/drivers/hwspinlock/hwspinlock_core.c
> @@ -367,6 +367,35 @@ int of_hwspin_lock_get_id(struct device_node *np, int index)
> }
> EXPORT_SYMBOL_GPL(of_hwspin_lock_get_id);
>
> +/**
> + * of_hwspin_lock_get_id_byname() - get lock id for an specified hwlock name
> + * @np: device node from which to request the specific hwlock
> + * @name: hwlock name
> + *
> + * This function provides a means for DT users of the hwspinlock module to
> + * get the global lock id of a specific hwspinlock using the specified name of
> + * the hwspinlock device, so that it can be requested using the normal
> + * hwspin_lock_request_specific() API.
> + *
> + * Returns the global lock id number on success, -EPROBE_DEFER if the hwspinlock
> + * device is not yet registered, -EINVAL on invalid args specifier value or an
> + * appropriate error as returned from the OF parsing of the DT client node.
> + */
> +int of_hwspin_lock_get_id_byname(struct device_node *np, const char *name)
> +{
> + int index;
> +
> + if (!name)
> + return -EINVAL;
> +
> + index = of_property_match_string(np, "hwlock-names", name);
> + if (index < 0)
> + return index;
> +
> + return of_hwspin_lock_get_id(np, index);
> +}
> +EXPORT_SYMBOL_GPL(of_hwspin_lock_get_id_byname);
> +
> static int hwspin_lock_register_single(struct hwspinlock *hwlock, int id)
> {
> struct hwspinlock *tmp;
> diff --git a/include/linux/hwspinlock.h b/include/linux/hwspinlock.h
> index 57537e6..2b6f389 100644
> --- a/include/linux/hwspinlock.h
> +++ b/include/linux/hwspinlock.h
> @@ -66,6 +66,7 @@ int __hwspin_lock_timeout(struct hwspinlock *, unsigned int, int,
> unsigned long *);
> int __hwspin_trylock(struct hwspinlock *, int, unsigned long *);
> void __hwspin_unlock(struct hwspinlock *, int, unsigned long *);
> +int of_hwspin_lock_get_id_byname(struct device_node *np, const char *name);
>
> #else /* !CONFIG_HWSPINLOCK */
>
> @@ -125,6 +126,12 @@ static inline int hwspin_lock_get_id(struct hwspinlock *hwlock)
> return 0;
> }
>
> +static inline
> +int of_hwspin_lock_get_id_byname(struct device_node *np, const char *name)
> +{
> + return 0;
> +}
> +
> #endif /* !CONFIG_HWSPINLOCK */
>
> /**
> --
> 1.7.9.5
>
WARNING: multiple messages have this Message-ID (diff)
From: Bjorn Andersson <bjorn.andersson@linaro.org>
To: Baolin Wang <baolin.wang@linaro.org>
Cc: ohad@wizery.com, broonie@kernel.org, linux-spi@vger.kernel.org,
linux-remoteproc@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH 1/8] hwspinlock: Add one new API to support getting a specific hwlock by the name
Date: Tue, 26 Jun 2018 13:54:39 -0700 [thread overview]
Message-ID: <20180626205438.GG3206@builder> (raw)
In-Reply-To: <c23ed23d6d355e80401abce6242523f32ce480fd.1529654288.git.baolin.wang@linaro.org>
On Fri 22 Jun 01:08 PDT 2018, Baolin Wang wrote:
> The hardware spinlock binding already supplied the 'hwlock-names' property
> to match and get a specific hwlock, but did not supply one API for users
> to get a specific hwlock by the hwlock name. So this patch introduces one
> API to support this requirement.
>
> Signed-off-by: Baolin Wang <baolin.wang@linaro.org>
Thanks Baolin,
Picked up all but patch 6 from the series; including 7 and 8 with Mark's
ack.
Regards,
Bjorn
> ---
> drivers/hwspinlock/hwspinlock_core.c | 29 +++++++++++++++++++++++++++++
> include/linux/hwspinlock.h | 7 +++++++
> 2 files changed, 36 insertions(+)
>
> diff --git a/drivers/hwspinlock/hwspinlock_core.c b/drivers/hwspinlock/hwspinlock_core.c
> index d16e6a3..bea3586 100644
> --- a/drivers/hwspinlock/hwspinlock_core.c
> +++ b/drivers/hwspinlock/hwspinlock_core.c
> @@ -367,6 +367,35 @@ int of_hwspin_lock_get_id(struct device_node *np, int index)
> }
> EXPORT_SYMBOL_GPL(of_hwspin_lock_get_id);
>
> +/**
> + * of_hwspin_lock_get_id_byname() - get lock id for an specified hwlock name
> + * @np: device node from which to request the specific hwlock
> + * @name: hwlock name
> + *
> + * This function provides a means for DT users of the hwspinlock module to
> + * get the global lock id of a specific hwspinlock using the specified name of
> + * the hwspinlock device, so that it can be requested using the normal
> + * hwspin_lock_request_specific() API.
> + *
> + * Returns the global lock id number on success, -EPROBE_DEFER if the hwspinlock
> + * device is not yet registered, -EINVAL on invalid args specifier value or an
> + * appropriate error as returned from the OF parsing of the DT client node.
> + */
> +int of_hwspin_lock_get_id_byname(struct device_node *np, const char *name)
> +{
> + int index;
> +
> + if (!name)
> + return -EINVAL;
> +
> + index = of_property_match_string(np, "hwlock-names", name);
> + if (index < 0)
> + return index;
> +
> + return of_hwspin_lock_get_id(np, index);
> +}
> +EXPORT_SYMBOL_GPL(of_hwspin_lock_get_id_byname);
> +
> static int hwspin_lock_register_single(struct hwspinlock *hwlock, int id)
> {
> struct hwspinlock *tmp;
> diff --git a/include/linux/hwspinlock.h b/include/linux/hwspinlock.h
> index 57537e6..2b6f389 100644
> --- a/include/linux/hwspinlock.h
> +++ b/include/linux/hwspinlock.h
> @@ -66,6 +66,7 @@ int __hwspin_lock_timeout(struct hwspinlock *, unsigned int, int,
> unsigned long *);
> int __hwspin_trylock(struct hwspinlock *, int, unsigned long *);
> void __hwspin_unlock(struct hwspinlock *, int, unsigned long *);
> +int of_hwspin_lock_get_id_byname(struct device_node *np, const char *name);
>
> #else /* !CONFIG_HWSPINLOCK */
>
> @@ -125,6 +126,12 @@ static inline int hwspin_lock_get_id(struct hwspinlock *hwlock)
> return 0;
> }
>
> +static inline
> +int of_hwspin_lock_get_id_byname(struct device_node *np, const char *name)
> +{
> + return 0;
> +}
> +
> #endif /* !CONFIG_HWSPINLOCK */
>
> /**
> --
> 1.7.9.5
>
next prev parent reply other threads:[~2018-06-26 20:54 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-06-22 8:08 [PATCH 1/8] hwspinlock: Add one new API to support getting a specific hwlock by the name Baolin Wang
2018-06-22 8:08 ` [PATCH 2/8] hwspinlock: Add devm_xxx() APIs to request/free hwlock Baolin Wang
2018-06-22 8:09 ` [PATCH 3/8] hwspinlock: Add devm_xxx() APIs to register/unregister one hwlock controller Baolin Wang
2018-06-22 8:09 ` [PATCH 4/8] hwspinlock: Remove redundant config Baolin Wang
2018-06-22 8:09 ` [PATCH 5/8] hwspinlock: Fix one comment mistake Baolin Wang
2018-06-22 8:09 ` [PATCH 6/8] hwspinlock: sprd: Use devm_hwspin_lock_register() Baolin Wang
2018-06-26 20:51 ` Bjorn Andersson
2018-06-27 2:17 ` Baolin Wang
2018-06-22 8:09 ` [PATCH 7/8] spi: sprd: Replace of_hwspin_lock_get_id() with of_hwspin_lock_get_id_byname() Baolin Wang
2018-06-25 12:47 ` Mark Brown
2018-06-22 8:09 ` [PATCH 8/8] spi: sprd: Change to use devm_hwspin_lock_request_specific() Baolin Wang
2018-06-25 12:47 ` Mark Brown
2018-06-26 20:54 ` Bjorn Andersson [this message]
2018-06-26 20:54 ` [PATCH 1/8] hwspinlock: Add one new API to support getting a specific hwlock by the name Bjorn Andersson
2018-06-27 2:18 ` Baolin Wang
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20180626205438.GG3206@builder \
--to=bjorn.andersson@linaro.org \
--cc=baolin.wang@linaro.org \
--cc=broonie@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-remoteproc@vger.kernel.org \
--cc=linux-spi@vger.kernel.org \
--cc=ohad@wizery.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.