From: Jonathan Cameron <Jonathan.Cameron@Huawei.com>
To: Raag Jadav <raag.jadav@intel.com>
Cc: <rafael@kernel.org>, <len.brown@intel.com>,
<robert.moore@intel.com>, <mika.westerberg@linux.intel.com>,
<andriy.shevchenko@linux.intel.com>, <mark.rutland@arm.com>,
<will@kernel.org>, <linux@roeck-us.net>,
<linux-acpi@vger.kernel.org>, <linux-kernel@vger.kernel.org>,
<acpica-devel@lists.linuxfoundation.org>,
<linux-gpio@vger.kernel.org>,
<linux-arm-kernel@lists.infradead.org>,
<linux-hwmon@vger.kernel.org>,
<mallikarjunappa.sangannavar@intel.com>, <bala.senthil@intel.com>
Subject: Re: [PATCH v1 1/8] ACPI: utils: Introduce acpi_dev_uid_match() for matching _UID
Date: Fri, 20 Oct 2023 16:49:33 +0100 [thread overview]
Message-ID: <20231020164933.00002f53@Huawei.com> (raw)
In-Reply-To: <20231020084732.17130-2-raag.jadav@intel.com>
On Fri, 20 Oct 2023 14:17:25 +0530
Raag Jadav <raag.jadav@intel.com> wrote:
> Introduce acpi_dev_uid_match() helper that matches the device with
> supplied _UID string.
>
> Suggested-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
> Signed-off-by: Raag Jadav <raag.jadav@intel.com>
> Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
> /**
> * acpi_dev_hid_uid_match - Match device by supplied HID and UID
> * @adev: ACPI device to match.
> * @hid2: Hardware ID of the device.
> * @uid2: Unique ID of the device, pass NULL to not check _UID.
> *
> - * Matches HID and UID in @adev with given @hid2 and @uid2.
> - * Returns true if matches.
> + * Matches HID and UID in @adev with given @hid2 and @uid2. Absence of @uid2
> + * will be treated as a match. If user wants to validate @uid2, it should be
> + * done before calling this function. This behaviour is as needed by most of
> + * its current users.
If there are other other users that need different behavior are they
buggy? Also what behavior is this referring to?
I'd just drop the at last sentence as confusing and not adding much.
> + *
> + * Returns:
> + * - %true if matches or @uid2 is NULL.
> + * - %false otherwise.
> */
> bool acpi_dev_hid_uid_match(struct acpi_device *adev,
> const char *hid2, const char *uid2)
> {
> const char *hid1 = acpi_device_hid(adev);
> - const char *uid1 = acpi_device_uid(adev);
>
> if (strcmp(hid1, hid2))
> return false;
>
> - if (!uid2)
> - return true;
> -
> - return uid1 && !strcmp(uid1, uid2);
> + return acpi_dev_uid_match(adev, uid2);
> }
> EXPORT_SYMBOL(acpi_dev_hid_uid_match);
>
> diff --git a/include/acpi/acpi_bus.h b/include/acpi/acpi_bus.h
> index 254685085c82..d1fe6446ffe0 100644
> --- a/include/acpi/acpi_bus.h
> +++ b/include/acpi/acpi_bus.h
> @@ -760,6 +760,7 @@ static inline bool acpi_device_can_poweroff(struct acpi_device *adev)
> adev->power.states[ACPI_STATE_D3_HOT].flags.explicit_set);
> }
>
> +bool acpi_dev_uid_match(struct acpi_device *adev, const char *uid2);
> bool acpi_dev_hid_uid_match(struct acpi_device *adev, const char *hid2, const char *uid2);
> int acpi_dev_uid_to_integer(struct acpi_device *adev, u64 *integer);
>
> diff --git a/include/linux/acpi.h b/include/linux/acpi.h
> index afd94c9b8b8a..db3a33e19c97 100644
> --- a/include/linux/acpi.h
> +++ b/include/linux/acpi.h
> @@ -787,6 +787,11 @@ static inline bool acpi_dev_present(const char *hid, const char *uid, s64 hrv)
>
> struct acpi_device;
>
> +static inline bool acpi_dev_uid_match(struct acpi_device *adev, const char *uid2)
> +{
> + return false;
> +}
> +
> static inline bool
> acpi_dev_hid_uid_match(struct acpi_device *adev, const char *hid2, const char *uid2)
> {
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2023-10-20 15:50 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-10-20 8:47 [PATCH v1 0/8] Refine _UID references across kernel Raag Jadav
2023-10-20 8:47 ` [PATCH v1 1/8] ACPI: utils: Introduce acpi_dev_uid_match() for matching _UID Raag Jadav
2023-10-20 10:35 ` Andy Shevchenko
2023-10-20 15:49 ` Jonathan Cameron [this message]
2023-10-20 8:47 ` [PATCH v1 2/8] pinctrl: intel: use " Raag Jadav
2023-10-20 8:47 ` [PATCH v1 3/8] ACPI: sysfs: use acpi_device_uid() for fetching _UID Raag Jadav
2023-10-20 17:18 ` Rafael J. Wysocki
2023-10-20 8:47 ` [PATCH v1 4/8] ACPI: utils: use acpi_dev_uid_match() for matching _UID Raag Jadav
2023-10-20 10:36 ` Andy Shevchenko
2023-10-20 11:38 ` Raag Jadav
2023-10-20 13:42 ` Andy Shevchenko
2023-10-20 14:00 ` Raag Jadav
2023-10-20 17:11 ` Rafael J. Wysocki
2023-10-20 18:11 ` Raag Jadav
2023-10-21 6:51 ` Raag Jadav
2023-10-20 8:47 ` [PATCH v1 5/8] ACPI: x86: " Raag Jadav
2023-10-20 10:37 ` Andy Shevchenko
2023-10-20 17:05 ` Rafael J. Wysocki
2023-10-20 18:42 ` Andy Shevchenko
2023-10-20 8:47 ` [PATCH v1 6/8] perf: qcom: use acpi_device_uid() for fetching _UID Raag Jadav
2023-10-20 17:22 ` Rafael J. Wysocki
2023-10-20 8:47 ` [PATCH v1 7/8] hwmon: nct6775: use acpi_dev_hid_uid_match() for matching _HID and _UID Raag Jadav
2023-10-20 8:47 ` [PATCH v1 8/8] perf: arm_cspmu: " Raag Jadav
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=20231020164933.00002f53@Huawei.com \
--to=jonathan.cameron@huawei.com \
--cc=acpica-devel@lists.linuxfoundation.org \
--cc=andriy.shevchenko@linux.intel.com \
--cc=bala.senthil@intel.com \
--cc=len.brown@intel.com \
--cc=linux-acpi@vger.kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-gpio@vger.kernel.org \
--cc=linux-hwmon@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux@roeck-us.net \
--cc=mallikarjunappa.sangannavar@intel.com \
--cc=mark.rutland@arm.com \
--cc=mika.westerberg@linux.intel.com \
--cc=raag.jadav@intel.com \
--cc=rafael@kernel.org \
--cc=robert.moore@intel.com \
--cc=will@kernel.org \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).