spi-pxa2xx.c (07c337927e0618faf22ea98475c7162e6b7d2b35) | spi-pxa2xx.c (0e1f0b1ca79fdcc03c3e6b4277a994ca894c9fcc) |
---|---|
1// SPDX-License-Identifier: GPL-2.0-or-later 2/* 3 * Copyright (C) 2005 Stephen Street / StreetFire Sound Labs 4 * Copyright (C) 2013, 2021 Intel Corporation 5 */ 6 7#include <linux/acpi.h> 8#include <linux/bitops.h> --- 1307 unchanged lines hidden (view full) --- 1316 1317static void cleanup(struct spi_device *spi) 1318{ 1319 struct chip_data *chip = spi_get_ctldata(spi); 1320 1321 kfree(chip); 1322} 1323 | 1// SPDX-License-Identifier: GPL-2.0-or-later 2/* 3 * Copyright (C) 2005 Stephen Street / StreetFire Sound Labs 4 * Copyright (C) 2013, 2021 Intel Corporation 5 */ 6 7#include <linux/acpi.h> 8#include <linux/bitops.h> --- 1307 unchanged lines hidden (view full) --- 1316 1317static void cleanup(struct spi_device *spi) 1318{ 1319 struct chip_data *chip = spi_get_ctldata(spi); 1320 1321 kfree(chip); 1322} 1323 |
1324#ifdef CONFIG_ACPI 1325static const struct acpi_device_id pxa2xx_spi_acpi_match[] = { 1326 { "INT33C0", LPSS_LPT_SSP }, 1327 { "INT33C1", LPSS_LPT_SSP }, 1328 { "INT3430", LPSS_LPT_SSP }, 1329 { "INT3431", LPSS_LPT_SSP }, 1330 { "80860F0E", LPSS_BYT_SSP }, 1331 { "8086228E", LPSS_BSW_SSP }, 1332 { }, 1333}; 1334MODULE_DEVICE_TABLE(acpi, pxa2xx_spi_acpi_match); 1335#endif 1336 1337static const struct of_device_id pxa2xx_spi_of_match[] = { 1338 { .compatible = "marvell,mmp2-ssp", .data = (void *)MMP2_SSP }, 1339 {}, 1340}; 1341MODULE_DEVICE_TABLE(of, pxa2xx_spi_of_match); 1342 | |
1343static bool pxa2xx_spi_idma_filter(struct dma_chan *chan, void *param) 1344{ 1345 return param == chan->device->dev; 1346} 1347 1348static struct pxa2xx_spi_controller * 1349pxa2xx_spi_init_pdata(struct platform_device *pdev) 1350{ --- 406 unchanged lines hidden (view full) --- 1757 return clk_prepare_enable(drv_data->ssp->clk); 1758} 1759 1760static const struct dev_pm_ops pxa2xx_spi_pm_ops = { 1761 SYSTEM_SLEEP_PM_OPS(pxa2xx_spi_suspend, pxa2xx_spi_resume) 1762 RUNTIME_PM_OPS(pxa2xx_spi_runtime_suspend, pxa2xx_spi_runtime_resume, NULL) 1763}; 1764 | 1324static bool pxa2xx_spi_idma_filter(struct dma_chan *chan, void *param) 1325{ 1326 return param == chan->device->dev; 1327} 1328 1329static struct pxa2xx_spi_controller * 1330pxa2xx_spi_init_pdata(struct platform_device *pdev) 1331{ --- 406 unchanged lines hidden (view full) --- 1738 return clk_prepare_enable(drv_data->ssp->clk); 1739} 1740 1741static const struct dev_pm_ops pxa2xx_spi_pm_ops = { 1742 SYSTEM_SLEEP_PM_OPS(pxa2xx_spi_suspend, pxa2xx_spi_resume) 1743 RUNTIME_PM_OPS(pxa2xx_spi_runtime_suspend, pxa2xx_spi_runtime_resume, NULL) 1744}; 1745 |
1746#ifdef CONFIG_ACPI 1747static const struct acpi_device_id pxa2xx_spi_acpi_match[] = { 1748 { "80860F0E", LPSS_BYT_SSP }, 1749 { "8086228E", LPSS_BSW_SSP }, 1750 { "INT33C0", LPSS_LPT_SSP }, 1751 { "INT33C1", LPSS_LPT_SSP }, 1752 { "INT3430", LPSS_LPT_SSP }, 1753 { "INT3431", LPSS_LPT_SSP }, 1754 {} 1755}; 1756MODULE_DEVICE_TABLE(acpi, pxa2xx_spi_acpi_match); 1757#endif 1758 1759static const struct of_device_id pxa2xx_spi_of_match[] = { 1760 { .compatible = "marvell,mmp2-ssp", .data = (void *)MMP2_SSP }, 1761 {} 1762}; 1763MODULE_DEVICE_TABLE(of, pxa2xx_spi_of_match); 1764 |
|
1765static struct platform_driver driver = { 1766 .driver = { 1767 .name = "pxa2xx-spi", 1768 .pm = pm_ptr(&pxa2xx_spi_pm_ops), 1769 .acpi_match_table = ACPI_PTR(pxa2xx_spi_acpi_match), 1770 .of_match_table = of_match_ptr(pxa2xx_spi_of_match), 1771 }, 1772 .probe = pxa2xx_spi_probe, --- 16 unchanged lines hidden --- | 1765static struct platform_driver driver = { 1766 .driver = { 1767 .name = "pxa2xx-spi", 1768 .pm = pm_ptr(&pxa2xx_spi_pm_ops), 1769 .acpi_match_table = ACPI_PTR(pxa2xx_spi_acpi_match), 1770 .of_match_table = of_match_ptr(pxa2xx_spi_of_match), 1771 }, 1772 .probe = pxa2xx_spi_probe, --- 16 unchanged lines hidden --- |