]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/blob - queue-4.14/spi-micrel-eth-switch-declare-missing-of-table.patch
autosel fixes for 4.14
[thirdparty/kernel/stable-queue.git] / queue-4.14 / spi-micrel-eth-switch-declare-missing-of-table.patch
1 From 0083301210512d97307ef5d0f4f05352ec3b9653 Mon Sep 17 00:00:00 2001
2 From: Daniel Gomez <dagmcr@gmail.com>
3 Date: Mon, 22 Apr 2019 21:08:03 +0200
4 Subject: spi: Micrel eth switch: declare missing of table
5
6 [ Upstream commit 2f23a2a768bee7ad2ff1e9527c3f7e279e794a46 ]
7
8 Add missing <of_device_id> table for SPI driver relying on SPI
9 device match since compatible is in a DT binding or in a DTS.
10
11 Before this patch:
12 modinfo drivers/net/phy/spi_ks8995.ko | grep alias
13 alias: spi:ksz8795
14 alias: spi:ksz8864
15 alias: spi:ks8995
16
17 After this patch:
18 modinfo drivers/net/phy/spi_ks8995.ko | grep alias
19 alias: spi:ksz8795
20 alias: spi:ksz8864
21 alias: spi:ks8995
22 alias: of:N*T*Cmicrel,ksz8795C*
23 alias: of:N*T*Cmicrel,ksz8795
24 alias: of:N*T*Cmicrel,ksz8864C*
25 alias: of:N*T*Cmicrel,ksz8864
26 alias: of:N*T*Cmicrel,ks8995C*
27 alias: of:N*T*Cmicrel,ks8995
28
29 Reported-by: Javier Martinez Canillas <javier@dowhile0.org>
30 Signed-off-by: Daniel Gomez <dagmcr@gmail.com>
31 Signed-off-by: David S. Miller <davem@davemloft.net>
32 Signed-off-by: Sasha Levin <sashal@kernel.org>
33 ---
34 drivers/net/phy/spi_ks8995.c | 9 +++++++++
35 1 file changed, 9 insertions(+)
36
37 diff --git a/drivers/net/phy/spi_ks8995.c b/drivers/net/phy/spi_ks8995.c
38 index 1e2d4f1179da3..45df03673e010 100644
39 --- a/drivers/net/phy/spi_ks8995.c
40 +++ b/drivers/net/phy/spi_ks8995.c
41 @@ -162,6 +162,14 @@ static const struct spi_device_id ks8995_id[] = {
42 };
43 MODULE_DEVICE_TABLE(spi, ks8995_id);
44
45 +static const struct of_device_id ks8895_spi_of_match[] = {
46 + { .compatible = "micrel,ks8995" },
47 + { .compatible = "micrel,ksz8864" },
48 + { .compatible = "micrel,ksz8795" },
49 + { },
50 + };
51 +MODULE_DEVICE_TABLE(of, ks8895_spi_of_match);
52 +
53 static inline u8 get_chip_id(u8 val)
54 {
55 return (val >> ID1_CHIPID_S) & ID1_CHIPID_M;
56 @@ -529,6 +537,7 @@ static int ks8995_remove(struct spi_device *spi)
57 static struct spi_driver ks8995_driver = {
58 .driver = {
59 .name = "spi-ks8995",
60 + .of_match_table = of_match_ptr(ks8895_spi_of_match),
61 },
62 .probe = ks8995_probe,
63 .remove = ks8995_remove,
64 --
65 2.20.1
66