Subject: Re: [PATCH v1] ACPI: Switch to use generic UUID API

From: Felipe Balbi <[email-masked]>
Date: Tue, 09 May 2017 10:56:43 +0300

Hi,

Andy Shevchenko <[email-masked]> writes:
> acpi_evaluate_dsm() and friends take a pointer to a raw buffer of 16
> bytes. Instead we convert them to use uuid_le type. At the same time we
> convert current users.
>
> acpi_str_to_uuid() becomes useless after the conversion and it's safe to
> get rid of it.
>
> The conversion fixes a potential bug in int340x_thermal as well since
> we have to use memcmp() on binary data.
>
> Cc: Rafael J. Wysocki <[email-masked]>
> Cc: Mika Westerberg <[email-masked]>
> Cc: Borislav Petkov <[email-masked]>
> Cc: Dan Williams <[email-masked]>
> Cc: Amir Goldstein <[email-masked]>
> Cc: Jarkko Sakkinen <[email-masked]>
> Cc: Jani Nikula <[email-masked]>
> Cc: Ben Skeggs <[email-masked]>
> Cc: Benjamin Tissoires <[email-masked]>
> Cc: Joerg Roedel <[email-masked]>
> Cc: Adrian Hunter <[email-masked]>
> Cc: Yisen Zhuang <[email-masked]>
> Cc: Bjorn Helgaas <[email-masked]>
> Cc: Zhang Rui <[email-masked]>
> Cc: Felipe Balbi <[email-masked]>
> Cc: Mathias Nyman <[email-masked]>
> Cc: Heikki Krogerus <[email-masked]>
> Cc: Liam Girdwood <[email-masked]>
> Cc: Mark Brown <[email-masked]>
> Signed-off-by: Andy Shevchenko <[email-masked]>
> diff --git a/drivers/usb/dwc3/dwc3-pci.c b/drivers/usb/dwc3/dwc3-pci.c
> index a15ec71d0423..6b5284ec76df 100644
> --- a/drivers/usb/dwc3/dwc3-pci.c
> +++ b/drivers/usb/dwc3/dwc3-pci.c
> @@ -56,7 +56,7 @@ struct dwc3_pci {
>  	struct platform_device *dwc3;
>  	struct pci_dev *pci;
>  
> -	u8 uuid[16];
> +	uuid_le uuid;
>  
>  	unsigned int has_dsm_for_pm:1;
>  };
> @@ -118,7 +118,7 @@ static int dwc3_pci_quirks(struct dwc3_pci *dwc)
>  
>  		if (pdev->device == PCI_DEVICE_ID_INTEL_BXT ||
>  				pdev->device == PCI_DEVICE_ID_INTEL_BXT_M) {
> -			acpi_str_to_uuid(PCI_INTEL_BXT_DSM_UUID, dwc->uuid);
> +			uuid_le_to_bin(PCI_INTEL_BXT_DSM_UUID, &dwc->uuid);
>  			dwc->has_dsm_for_pm = true;
>  		}
>  
> @@ -288,7 +288,7 @@ static int dwc3_pci_dsm(struct dwc3_pci *dwc, int param)
>  	tmp.type = ACPI_TYPE_INTEGER;
>  	tmp.integer.value = param;
>  
> -	obj = acpi_evaluate_dsm(ACPI_HANDLE(&dwc->pci->dev), dwc->uuid,
> +	obj = acpi_evaluate_dsm(ACPI_HANDLE(&dwc->pci->dev), &dwc->uuid,
>  			1, PCI_INTEL_BXT_FUNC_PMU_PWR, &argv4);
>  	if (!obj) {
>  		dev_err(&dwc->pci->dev, "failed to evaluate _DSM\n");

Acked-by: Felipe Balbi <[email-masked]>

-- 
balbi