From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932381AbdA0Nd1 (ORCPT ); Fri, 27 Jan 2017 08:33:27 -0500 Received: from bert.emutex.com ([91.103.1.109]:57874 "EHLO bert.emutex.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754833AbdA0NcP (ORCPT ); Fri, 27 Jan 2017 08:32:15 -0500 From: "Dan O'Donovan" To: linux-acpi@vger.kernel.org, Andy Shevchenko , "Rafael J . Wysocki" , Jarkko Nikula , Mika Westerberg , Mark Brown Cc: Len Brown , linux-i2c@vger.kernel.org, Wolfram Sang , linux-spi@vger.kernel.org, linux-kernel@vger.kernel.org, "Dan O'Donovan" , Crestez Dan Leonard Subject: [PATCH v4 3/3] spi: acpi: Initialize modalias from of_compatible Date: Fri, 27 Jan 2017 13:30:15 +0000 Message-Id: <1485523815-9629-4-git-send-email-dan@emutex.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1485523815-9629-1-git-send-email-dan@emutex.com> References: <1485187737-22414-1-git-send-email-dan@emutex.com> <1485523815-9629-1-git-send-email-dan@emutex.com> X-Spam-Score: -1.0 (-) X-Spam-Report: Spam detection software, running on the system "statler.emutex.com", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see @@CONTACT_ADDRESS@@ for details. Content preview: From: Crestez Dan Leonard When using devicetree spi_device.modalias is set to the compatible string with the vendor prefix removed. For SPI devices described via ACPI the spi_device.modalias string is initialized by acpi_device_hid. When using ACPI and DT ids this string ends up something like "PRP0001". [...] Content analysis details: (-1.0 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -1.0 ALL_TRUSTED Passed through trusted hosts only via SMTP 0.0 KHOP_BIG_TO_CC Sent to 10+ recipients instaed of Bcc or a list Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Crestez Dan Leonard When using devicetree spi_device.modalias is set to the compatible string with the vendor prefix removed. For SPI devices described via ACPI the spi_device.modalias string is initialized by acpi_device_hid. When using ACPI and DT ids this string ends up something like "PRP0001". Change acpi_register_spi_device to use the of_compatible property if present. This makes it easier to instantiate spi drivers through ACPI with DT ids. Signed-off-by: Crestez Dan Leonard Signed-off-by: Dan O'Donovan Reviewed-by: Andy Shevchenko Reviewed-by: Jarkko Nikula Tested-by: Jarkko Nikula --- drivers/spi/spi.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/drivers/spi/spi.c b/drivers/spi/spi.c index 656dd3e..9a8c880 100644 --- a/drivers/spi/spi.c +++ b/drivers/spi/spi.c @@ -1722,13 +1722,20 @@ static acpi_status acpi_register_spi_device(struct spi_master *master, return AE_OK; } + /* + * Populate modalias from compatible property if available, + * otherwise use native ACPI information + */ + if (acpi_of_modalias(adev, spi->modalias, sizeof(spi->modalias))) + strlcpy(spi->modalias, acpi_device_hid(adev), + sizeof(spi->modalias)); + if (spi->irq < 0) spi->irq = acpi_dev_gpio_irq_get(adev, 0); acpi_device_set_enumerated(adev); adev->power.flags.ignore_parent = true; - strlcpy(spi->modalias, acpi_device_hid(adev), sizeof(spi->modalias)); if (spi_add_device(spi)) { adev->power.flags.ignore_parent = false; dev_err(&master->dev, "failed to add SPI device %s from ACPI\n", -- 2.7.4