61c6850232
In order to make this patch compile, even if the flexcan driver with it's header defining the platform data isn't merged yet, two ifdefs have been added. They effect that the "imx_add_flexcan" function results in a no-op function if the driver hasn't been activated. These ifdefs can be removed after the flexcan driver has been merged. Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
61 lines
2.2 KiB
C
61 lines
2.2 KiB
C
/*
|
|
* Copyright (C) 2009-2010 Pengutronix
|
|
* Uwe Kleine-Koenig <u.kleine-koenig@pengutronix.de>
|
|
*
|
|
* This program is free software; you can redistribute it and/or modify it under
|
|
* the terms of the GNU General Public License version 2 as published by the
|
|
* Free Software Foundation.
|
|
*/
|
|
#include <linux/kernel.h>
|
|
#include <linux/platform_device.h>
|
|
#include <linux/init.h>
|
|
|
|
struct platform_device *imx_add_platform_device(const char *name, int id,
|
|
const struct resource *res, unsigned int num_resources,
|
|
const void *data, size_t size_data);
|
|
|
|
#if defined (CONFIG_CAN_FLEXCAN) || defined (CONFIG_CAN_FLEXCAN_MODULE)
|
|
#include <linux/can/platform/flexcan.h>
|
|
struct platform_device *__init imx_add_flexcan(int id,
|
|
resource_size_t iobase, resource_size_t iosize,
|
|
resource_size_t irq,
|
|
const struct flexcan_platform_data *pdata);
|
|
#else
|
|
/* the ifdef can be removed once the flexcan driver has been merged */
|
|
struct flexcan_platform_data;
|
|
static inline struct platform_device *__init imx_add_flexcan(int id,
|
|
resource_size_t iobase, resource_size_t iosize,
|
|
resource_size_t irq,
|
|
const struct flexcan_platform_data *pdata)
|
|
{
|
|
return NULL;
|
|
}
|
|
#endif
|
|
|
|
#include <mach/i2c.h>
|
|
struct platform_device *__init imx_add_imx_i2c(int id,
|
|
resource_size_t iobase, resource_size_t iosize, int irq,
|
|
const struct imxi2c_platform_data *pdata);
|
|
|
|
#include <mach/imx-uart.h>
|
|
struct platform_device *__init imx_add_imx_uart_3irq(int id,
|
|
resource_size_t iobase, resource_size_t iosize,
|
|
resource_size_t irqrx, resource_size_t irqtx,
|
|
resource_size_t irqrts,
|
|
const struct imxuart_platform_data *pdata);
|
|
struct platform_device *__init imx_add_imx_uart_1irq(int id,
|
|
resource_size_t iobase, resource_size_t iosize,
|
|
resource_size_t irq,
|
|
const struct imxuart_platform_data *pdata);
|
|
|
|
#include <mach/mxc_nand.h>
|
|
struct platform_device *__init imx_add_mxc_nand_v1(resource_size_t iobase,
|
|
int irq, const struct mxc_nand_platform_data *pdata);
|
|
struct platform_device *__init imx_add_mxc_nand_v21(resource_size_t iobase,
|
|
int irq, const struct mxc_nand_platform_data *pdata);
|
|
|
|
#include <mach/spi.h>
|
|
struct platform_device *__init imx_add_spi_imx(int id,
|
|
resource_size_t iobase, resource_size_t iosize, int irq,
|
|
const struct spi_imx_master *pdata);
|