of/spi: Fix SPI module loading by using proper "spi:" modalias prefixes.
authorDavid Daney <david.daney@cavium.com>
Tue, 22 May 2012 22:47:19 +0000 (15:47 -0700)
committerGrant Likely <grant.likely@secretlab.ca>
Sat, 15 Dec 2012 00:49:35 +0000 (00:49 +0000)
To get modprobe to automatically load the proper modules, we need to
prefix things with "spi:".  Partially based on Grant Likely's suggestions.

Signed-off-by: David Daney <david.daney@cavium.com>
[grant.likely: reworked because drivers/of/of_spi.c has been removed]
Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
drivers/spi/spi.c

index ab095acdb2a8c17e1945652a3dd647ef7cef468a..19ee901577da8d1649b975e9873b7a6c1e40029f 100644 (file)
@@ -824,6 +824,7 @@ static void of_register_spi_devices(struct spi_master *master)
        struct spi_device *spi;
        struct device_node *nc;
        const __be32 *prop;
+       char modalias[SPI_NAME_SIZE + 4];
        int rc;
        int len;
 
@@ -887,7 +888,9 @@ static void of_register_spi_devices(struct spi_master *master)
                spi->dev.of_node = nc;
 
                /* Register the new device */
-               request_module(spi->modalias);
+               snprintf(modalias, sizeof(modalias), "%s%s", SPI_MODULE_PREFIX,
+                        spi->modalias);
+               request_module(modalias);
                rc = spi_add_device(spi);
                if (rc) {
                        dev_err(&master->dev, "spi_device register error %s\n",