Merge tag 'armsoc-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
Pull ARM SoC platform updates from Arnd Bergmann: "Newly added support for additional SoCs: - Axis Artpec-6 SoC family - Allwinner A83T SoC - Mediatek MT7623 - NXP i.MX6QP SoC - ST Microelectronics stm32f469 microcontroller New features: - SMP support for Mediatek mt2701 - Big-endian support for NXP i.MX - DaVinci now uses the new DMA engine dma_slave_map - OMAP now uses the new DMA engine dma_slave_map - earlyprintk support for palmchip uart on mach-tango - delay timer support for orion Other: - Exynos PMU driver moved out to drivers/soc/ - Various smaller updates for Renesas, Xilinx, PXA, AT91, OMAP, uniphier" * tag 'armsoc-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (83 commits) ARM: uniphier: rework SMP code to support new System Bus binding ARM: uniphier: add missing of_node_put() ARM: at91: avoid defining CONFIG_* symbols in source code ARM: DRA7: hwmod: Add data for eDMA tpcc, tptc0, tptc1 ARM: imx: Make reset_control_ops const ARM: imx: Do L2 errata only if the L2 cache isn't enabled ARM: imx: select ARM_CPU_SUSPEND only for imx6 dmaengine: pxa_dma: fix the maximum requestor line ARM: alpine: select the Alpine MSI controller driver ARM: pxa: add the number of DMA requestor lines dmaengine: mmp-pdma: add number of requestors dma: mmp_pdma: Add the #dma-requests DT property documentation ARM: OMAP2+: Add rtc hwmod configuration for ti81xx ARM: s3c24xx: Avoid warning for inb/outb ARM: zynq: Move early printk virtual address to vmalloc area ARM: DRA7: hwmod: Add custom reset handler for PCIeSS ARM: SAMSUNG: Remove unused register offset definition ARM: EXYNOS: Cleanup header files inclusion drivers: soc: samsung: Enable COMPILE_TEST MAINTAINERS: Add maintainers entry for drivers/soc/samsung ...
This commit is contained in:
@@ -17,6 +17,7 @@
|
||||
#include <linux/ahci_platform.h>
|
||||
#include <linux/clk.h>
|
||||
#include <linux/reboot.h>
|
||||
#include <linux/dmaengine.h>
|
||||
|
||||
#include <mach/cputype.h>
|
||||
#include <mach/common.h>
|
||||
@@ -233,16 +234,54 @@ static const struct platform_device_info da850_edma1_device __initconst = {
|
||||
.size_data = sizeof(da850_edma1_pdata),
|
||||
};
|
||||
|
||||
static const struct dma_slave_map da830_edma_map[] = {
|
||||
{ "davinci-mcasp.0", "rx", EDMA_FILTER_PARAM(0, 0) },
|
||||
{ "davinci-mcasp.0", "tx", EDMA_FILTER_PARAM(0, 1) },
|
||||
{ "davinci-mcasp.1", "rx", EDMA_FILTER_PARAM(0, 2) },
|
||||
{ "davinci-mcasp.1", "tx", EDMA_FILTER_PARAM(0, 3) },
|
||||
{ "davinci-mcasp.2", "rx", EDMA_FILTER_PARAM(0, 4) },
|
||||
{ "davinci-mcasp.2", "tx", EDMA_FILTER_PARAM(0, 5) },
|
||||
{ "spi_davinci.0", "rx", EDMA_FILTER_PARAM(0, 14) },
|
||||
{ "spi_davinci.0", "tx", EDMA_FILTER_PARAM(0, 15) },
|
||||
{ "da830-mmc.0", "rx", EDMA_FILTER_PARAM(0, 16) },
|
||||
{ "da830-mmc.0", "tx", EDMA_FILTER_PARAM(0, 17) },
|
||||
{ "spi_davinci.1", "rx", EDMA_FILTER_PARAM(0, 18) },
|
||||
{ "spi_davinci.1", "tx", EDMA_FILTER_PARAM(0, 19) },
|
||||
};
|
||||
|
||||
int __init da830_register_edma(struct edma_rsv_info *rsv)
|
||||
{
|
||||
struct platform_device *edma_pdev;
|
||||
|
||||
da8xx_edma0_pdata.rsv = rsv;
|
||||
|
||||
da8xx_edma0_pdata.slave_map = da830_edma_map;
|
||||
da8xx_edma0_pdata.slavecnt = ARRAY_SIZE(da830_edma_map);
|
||||
|
||||
edma_pdev = platform_device_register_full(&da8xx_edma0_device);
|
||||
return IS_ERR(edma_pdev) ? PTR_ERR(edma_pdev) : 0;
|
||||
}
|
||||
|
||||
static const struct dma_slave_map da850_edma0_map[] = {
|
||||
{ "davinci-mcasp.0", "rx", EDMA_FILTER_PARAM(0, 0) },
|
||||
{ "davinci-mcasp.0", "tx", EDMA_FILTER_PARAM(0, 1) },
|
||||
{ "davinci-mcbsp.0", "rx", EDMA_FILTER_PARAM(0, 2) },
|
||||
{ "davinci-mcbsp.0", "tx", EDMA_FILTER_PARAM(0, 3) },
|
||||
{ "davinci-mcbsp.1", "rx", EDMA_FILTER_PARAM(0, 4) },
|
||||
{ "davinci-mcbsp.1", "tx", EDMA_FILTER_PARAM(0, 5) },
|
||||
{ "spi_davinci.0", "rx", EDMA_FILTER_PARAM(0, 14) },
|
||||
{ "spi_davinci.0", "tx", EDMA_FILTER_PARAM(0, 15) },
|
||||
{ "da830-mmc.0", "rx", EDMA_FILTER_PARAM(0, 16) },
|
||||
{ "da830-mmc.0", "tx", EDMA_FILTER_PARAM(0, 17) },
|
||||
{ "spi_davinci.1", "rx", EDMA_FILTER_PARAM(0, 18) },
|
||||
{ "spi_davinci.1", "tx", EDMA_FILTER_PARAM(0, 19) },
|
||||
};
|
||||
|
||||
static const struct dma_slave_map da850_edma1_map[] = {
|
||||
{ "da830-mmc.1", "rx", EDMA_FILTER_PARAM(1, 28) },
|
||||
{ "da830-mmc.1", "tx", EDMA_FILTER_PARAM(1, 29) },
|
||||
};
|
||||
|
||||
int __init da850_register_edma(struct edma_rsv_info *rsv[2])
|
||||
{
|
||||
struct platform_device *edma_pdev;
|
||||
@@ -252,11 +291,18 @@ int __init da850_register_edma(struct edma_rsv_info *rsv[2])
|
||||
da850_edma1_pdata.rsv = rsv[1];
|
||||
}
|
||||
|
||||
da8xx_edma0_pdata.slave_map = da850_edma0_map;
|
||||
da8xx_edma0_pdata.slavecnt = ARRAY_SIZE(da850_edma0_map);
|
||||
|
||||
edma_pdev = platform_device_register_full(&da8xx_edma0_device);
|
||||
if (IS_ERR(edma_pdev)) {
|
||||
pr_warn("%s: Failed to register eDMA0\n", __func__);
|
||||
return PTR_ERR(edma_pdev);
|
||||
}
|
||||
|
||||
da850_edma1_pdata.slave_map = da850_edma1_map;
|
||||
da850_edma1_pdata.slavecnt = ARRAY_SIZE(da850_edma1_map);
|
||||
|
||||
edma_pdev = platform_device_register_full(&da850_edma1_device);
|
||||
return IS_ERR(edma_pdev) ? PTR_ERR(edma_pdev) : 0;
|
||||
}
|
||||
|
@@ -13,6 +13,7 @@
|
||||
#include <linux/serial_8250.h>
|
||||
#include <linux/platform_device.h>
|
||||
#include <linux/dma-mapping.h>
|
||||
#include <linux/dmaengine.h>
|
||||
#include <linux/spi/spi.h>
|
||||
#include <linux/platform_data/edma.h>
|
||||
#include <linux/platform_data/gpio-davinci.h>
|
||||
@@ -576,9 +577,28 @@ static s8 queue_priority_mapping[][2] = {
|
||||
{-1, -1},
|
||||
};
|
||||
|
||||
static const struct dma_slave_map dm355_edma_map[] = {
|
||||
{ "davinci-mcbsp.0", "tx", EDMA_FILTER_PARAM(0, 2) },
|
||||
{ "davinci-mcbsp.0", "rx", EDMA_FILTER_PARAM(0, 3) },
|
||||
{ "davinci-mcbsp.1", "tx", EDMA_FILTER_PARAM(0, 8) },
|
||||
{ "davinci-mcbsp.1", "rx", EDMA_FILTER_PARAM(0, 9) },
|
||||
{ "spi_davinci.2", "tx", EDMA_FILTER_PARAM(0, 10) },
|
||||
{ "spi_davinci.2", "rx", EDMA_FILTER_PARAM(0, 11) },
|
||||
{ "spi_davinci.1", "tx", EDMA_FILTER_PARAM(0, 14) },
|
||||
{ "spi_davinci.1", "rx", EDMA_FILTER_PARAM(0, 15) },
|
||||
{ "spi_davinci.0", "tx", EDMA_FILTER_PARAM(0, 16) },
|
||||
{ "spi_davinci.0", "rx", EDMA_FILTER_PARAM(0, 17) },
|
||||
{ "dm6441-mmc.0", "rx", EDMA_FILTER_PARAM(0, 26) },
|
||||
{ "dm6441-mmc.0", "tx", EDMA_FILTER_PARAM(0, 27) },
|
||||
{ "dm6441-mmc.1", "rx", EDMA_FILTER_PARAM(0, 30) },
|
||||
{ "dm6441-mmc.1", "tx", EDMA_FILTER_PARAM(0, 31) },
|
||||
};
|
||||
|
||||
static struct edma_soc_info dm355_edma_pdata = {
|
||||
.queue_priority_mapping = queue_priority_mapping,
|
||||
.default_queue = EVENTQ_1,
|
||||
.slave_map = dm355_edma_map,
|
||||
.slavecnt = ARRAY_SIZE(dm355_edma_map),
|
||||
};
|
||||
|
||||
static struct resource edma_resources[] = {
|
||||
|
@@ -17,6 +17,7 @@
|
||||
#include <linux/serial_8250.h>
|
||||
#include <linux/platform_device.h>
|
||||
#include <linux/dma-mapping.h>
|
||||
#include <linux/dmaengine.h>
|
||||
#include <linux/spi/spi.h>
|
||||
#include <linux/platform_data/edma.h>
|
||||
#include <linux/platform_data/gpio-davinci.h>
|
||||
@@ -862,9 +863,30 @@ static s8 dm365_queue_priority_mapping[][2] = {
|
||||
{-1, -1},
|
||||
};
|
||||
|
||||
static const struct dma_slave_map dm365_edma_map[] = {
|
||||
{ "davinci-mcbsp.0", "tx", EDMA_FILTER_PARAM(0, 2) },
|
||||
{ "davinci-mcbsp.0", "rx", EDMA_FILTER_PARAM(0, 3) },
|
||||
{ "davinci_voicecodec", "tx", EDMA_FILTER_PARAM(0, 2) },
|
||||
{ "davinci_voicecodec", "rx", EDMA_FILTER_PARAM(0, 3) },
|
||||
{ "spi_davinci.2", "tx", EDMA_FILTER_PARAM(0, 10) },
|
||||
{ "spi_davinci.2", "rx", EDMA_FILTER_PARAM(0, 11) },
|
||||
{ "spi_davinci.1", "tx", EDMA_FILTER_PARAM(0, 14) },
|
||||
{ "spi_davinci.1", "rx", EDMA_FILTER_PARAM(0, 15) },
|
||||
{ "spi_davinci.0", "tx", EDMA_FILTER_PARAM(0, 16) },
|
||||
{ "spi_davinci.0", "rx", EDMA_FILTER_PARAM(0, 17) },
|
||||
{ "spi_davinci.3", "tx", EDMA_FILTER_PARAM(0, 18) },
|
||||
{ "spi_davinci.3", "rx", EDMA_FILTER_PARAM(0, 19) },
|
||||
{ "dm6441-mmc.0", "rx", EDMA_FILTER_PARAM(0, 26) },
|
||||
{ "dm6441-mmc.0", "tx", EDMA_FILTER_PARAM(0, 27) },
|
||||
{ "dm6441-mmc.1", "rx", EDMA_FILTER_PARAM(0, 30) },
|
||||
{ "dm6441-mmc.1", "tx", EDMA_FILTER_PARAM(0, 31) },
|
||||
};
|
||||
|
||||
static struct edma_soc_info dm365_edma_pdata = {
|
||||
.queue_priority_mapping = dm365_queue_priority_mapping,
|
||||
.default_queue = EVENTQ_3,
|
||||
.slave_map = dm365_edma_map,
|
||||
.slavecnt = ARRAY_SIZE(dm365_edma_map),
|
||||
};
|
||||
|
||||
static struct resource edma_resources[] = {
|
||||
|
@@ -11,6 +11,7 @@
|
||||
#include <linux/init.h>
|
||||
#include <linux/clk.h>
|
||||
#include <linux/serial_8250.h>
|
||||
#include <linux/dmaengine.h>
|
||||
#include <linux/platform_device.h>
|
||||
#include <linux/platform_data/edma.h>
|
||||
#include <linux/platform_data/gpio-davinci.h>
|
||||
@@ -505,9 +506,20 @@ static s8 queue_priority_mapping[][2] = {
|
||||
{-1, -1},
|
||||
};
|
||||
|
||||
static const struct dma_slave_map dm644x_edma_map[] = {
|
||||
{ "davinci-mcbsp", "tx", EDMA_FILTER_PARAM(0, 2) },
|
||||
{ "davinci-mcbsp", "rx", EDMA_FILTER_PARAM(0, 3) },
|
||||
{ "spi_davinci", "tx", EDMA_FILTER_PARAM(0, 16) },
|
||||
{ "spi_davinci", "rx", EDMA_FILTER_PARAM(0, 17) },
|
||||
{ "dm6441-mmc.0", "rx", EDMA_FILTER_PARAM(0, 26) },
|
||||
{ "dm6441-mmc.0", "tx", EDMA_FILTER_PARAM(0, 27) },
|
||||
};
|
||||
|
||||
static struct edma_soc_info dm644x_edma_pdata = {
|
||||
.queue_priority_mapping = queue_priority_mapping,
|
||||
.default_queue = EVENTQ_1,
|
||||
.slave_map = dm644x_edma_map,
|
||||
.slavecnt = ARRAY_SIZE(dm644x_edma_map),
|
||||
};
|
||||
|
||||
static struct resource edma_resources[] = {
|
||||
|
@@ -9,6 +9,7 @@
|
||||
* or implied.
|
||||
*/
|
||||
#include <linux/dma-mapping.h>
|
||||
#include <linux/dmaengine.h>
|
||||
#include <linux/init.h>
|
||||
#include <linux/clk.h>
|
||||
#include <linux/serial_8250.h>
|
||||
@@ -540,9 +541,19 @@ static s8 dm646x_queue_priority_mapping[][2] = {
|
||||
{-1, -1},
|
||||
};
|
||||
|
||||
static const struct dma_slave_map dm646x_edma_map[] = {
|
||||
{ "davinci-mcasp.0", "tx", EDMA_FILTER_PARAM(0, 6) },
|
||||
{ "davinci-mcasp.0", "rx", EDMA_FILTER_PARAM(0, 9) },
|
||||
{ "davinci-mcasp.1", "tx", EDMA_FILTER_PARAM(0, 12) },
|
||||
{ "spi_davinci", "tx", EDMA_FILTER_PARAM(0, 16) },
|
||||
{ "spi_davinci", "rx", EDMA_FILTER_PARAM(0, 17) },
|
||||
};
|
||||
|
||||
static struct edma_soc_info dm646x_edma_pdata = {
|
||||
.queue_priority_mapping = dm646x_queue_priority_mapping,
|
||||
.default_queue = EVENTQ_1,
|
||||
.slave_map = dm646x_edma_map,
|
||||
.slavecnt = ARRAY_SIZE(dm646x_edma_map),
|
||||
};
|
||||
|
||||
static struct resource edma_resources[] = {
|
||||
|
Reference in New Issue
Block a user