1 // SPDX-License-Identifier: GPL-2.0-only
2 /*
3  * Copyright 2016 Broadcom
4  */
5 
6 #include <linux/device.h>
7 #include <linux/module.h>
8 #include <linux/platform_device.h>
9 #include <linux/of.h>
10 #include "spi-bcm-qspi.h"
11 
12 static const struct of_device_id brcmstb_qspi_of_match[] = {
13 	{ .compatible = "brcm,spi-brcmstb-qspi" },
14 	{ .compatible = "brcm,spi-brcmstb-mspi" },
15 	{},
16 };
17 MODULE_DEVICE_TABLE(of, brcmstb_qspi_of_match);
18 
19 static int brcmstb_qspi_probe(struct platform_device *pdev)
20 {
21 	return bcm_qspi_probe(pdev, NULL);
22 }
23 
24 static int brcmstb_qspi_remove(struct platform_device *pdev)
25 {
26 	bcm_qspi_remove(pdev);
27 
28 	return 0;
29 }
30 
31 static struct platform_driver brcmstb_qspi_driver = {
32 	.probe			= brcmstb_qspi_probe,
33 	.remove			= brcmstb_qspi_remove,
34 	.driver = {
35 		.name		= "brcmstb_qspi",
36 		.pm		= &bcm_qspi_pm_ops,
37 		.of_match_table = brcmstb_qspi_of_match,
38 	}
39 };
40 module_platform_driver(brcmstb_qspi_driver);
41 
42 MODULE_LICENSE("GPL v2");
43 MODULE_AUTHOR("Kamal Dasu");
44 MODULE_DESCRIPTION("Broadcom SPI driver for settop SoC");
45