forked from Minki/linux
ARM: davinci: create new common platform header for davinci
Remove individual platform header files for dm365, dm355, dm644x and dm646x and consolidate it into a single and common header file davinci.h placed in arch/arm/mach-davinci. This reduces the pollution in the include/mach and is consistent with Russell's suggestions as part of his "pet peaves" mail. (See #4 in: http://lists.infradead.org/pipermail/linux-arm-kernel/2011-November/071516.html) While at it, fix the forward declaration of spi_board_info, and include the right header file instead. The further patches in the series take advantage of this consolidation for easy implementation of IO_ADDRESS elimination. Signed-off-by: Manjunath Hadli <manjunath.hadli@ti.com> [nsekhar@ti.com: make davinci.h the first local include file, fix forward declaration of spi_board_info and add back Deep Root Systems, LLC copyright] Signed-off-by: Sekhar Nori <nsekhar@ti.com>
This commit is contained in:
parent
3d0914061f
commit
39c6d2d1d7
@ -26,13 +26,14 @@
|
||||
#include <asm/mach-types.h>
|
||||
#include <asm/mach/arch.h>
|
||||
|
||||
#include <mach/dm355.h>
|
||||
#include <mach/i2c.h>
|
||||
#include <mach/serial.h>
|
||||
#include <mach/nand.h>
|
||||
#include <mach/mmc.h>
|
||||
#include <mach/usb.h>
|
||||
|
||||
#include "davinci.h"
|
||||
|
||||
/* NOTE: this is geared for the standard config, with a socketed
|
||||
* 2 GByte Micron NAND (MT29F16G08FAA) using 128KB sectors. If you
|
||||
* swap chips, maybe with a different block size, partitioning may
|
||||
|
@ -23,13 +23,14 @@
|
||||
#include <asm/mach-types.h>
|
||||
#include <asm/mach/arch.h>
|
||||
|
||||
#include <mach/dm355.h>
|
||||
#include <mach/i2c.h>
|
||||
#include <mach/serial.h>
|
||||
#include <mach/nand.h>
|
||||
#include <mach/mmc.h>
|
||||
#include <mach/usb.h>
|
||||
|
||||
#include "davinci.h"
|
||||
|
||||
/* NOTE: this is geared for the standard config, with a socketed
|
||||
* 2 GByte Micron NAND (MT29F16G08FAA) using 128KB sectors. If you
|
||||
* swap chips, maybe with a different block size, partitioning may
|
||||
|
@ -32,7 +32,6 @@
|
||||
#include <asm/mach/arch.h>
|
||||
|
||||
#include <mach/mux.h>
|
||||
#include <mach/dm365.h>
|
||||
#include <mach/common.h>
|
||||
#include <mach/i2c.h>
|
||||
#include <mach/serial.h>
|
||||
@ -42,6 +41,8 @@
|
||||
|
||||
#include <media/tvp514x.h>
|
||||
|
||||
#include "davinci.h"
|
||||
|
||||
static inline int have_imager(void)
|
||||
{
|
||||
/* REVISIT when it's supported, trigger via Kconfig */
|
||||
|
@ -30,7 +30,6 @@
|
||||
#include <asm/mach-types.h>
|
||||
#include <asm/mach/arch.h>
|
||||
|
||||
#include <mach/dm644x.h>
|
||||
#include <mach/common.h>
|
||||
#include <mach/i2c.h>
|
||||
#include <mach/serial.h>
|
||||
@ -40,6 +39,8 @@
|
||||
#include <mach/usb.h>
|
||||
#include <mach/aemif.h>
|
||||
|
||||
#include "davinci.h"
|
||||
|
||||
#define DM644X_EVM_PHY_ID "0:01"
|
||||
#define LXT971_PHY_ID (0x001378e2)
|
||||
#define LXT971_PHY_MASK (0xfffffff0)
|
||||
|
@ -36,7 +36,6 @@
|
||||
#include <asm/mach-types.h>
|
||||
#include <asm/mach/arch.h>
|
||||
|
||||
#include <mach/dm646x.h>
|
||||
#include <mach/common.h>
|
||||
#include <mach/serial.h>
|
||||
#include <mach/i2c.h>
|
||||
@ -45,6 +44,7 @@
|
||||
#include <mach/cdce949.h>
|
||||
#include <mach/aemif.h>
|
||||
|
||||
#include "davinci.h"
|
||||
#include "clock.h"
|
||||
|
||||
#define NAND_BLOCK_SIZE SZ_128K
|
||||
|
@ -30,7 +30,6 @@
|
||||
#include <asm/mach-types.h>
|
||||
#include <asm/mach/arch.h>
|
||||
|
||||
#include <mach/dm644x.h>
|
||||
#include <mach/common.h>
|
||||
#include <mach/i2c.h>
|
||||
#include <mach/serial.h>
|
||||
@ -39,6 +38,8 @@
|
||||
#include <mach/mmc.h>
|
||||
#include <mach/usb.h>
|
||||
|
||||
#include "davinci.h"
|
||||
|
||||
#define NEUROS_OSD2_PHY_ID "0:01"
|
||||
#define LXT971_PHY_ID 0x001378e2
|
||||
#define LXT971_PHY_MASK 0xfffffff0
|
||||
|
@ -35,13 +35,14 @@
|
||||
#include <asm/mach/arch.h>
|
||||
#include <asm/mach/flash.h>
|
||||
|
||||
#include <mach/dm644x.h>
|
||||
#include <mach/common.h>
|
||||
#include <mach/i2c.h>
|
||||
#include <mach/serial.h>
|
||||
#include <mach/mux.h>
|
||||
#include <mach/usb.h>
|
||||
|
||||
#include "davinci.h"
|
||||
|
||||
#define SFFSDR_PHY_ID "0:01"
|
||||
static struct mtd_partition davinci_sffsdr_nandflash_partition[] = {
|
||||
/* U-Boot Environment: Block 0
|
||||
|
85
arch/arm/mach-davinci/davinci.h
Normal file
85
arch/arm/mach-davinci/davinci.h
Normal file
@ -0,0 +1,85 @@
|
||||
/*
|
||||
* This file contains the processor specific definitions
|
||||
* of the TI DM644x, DM355, DM365, and DM646x.
|
||||
*
|
||||
* Copyright (C) 2011 Texas Instruments Incorporated
|
||||
* Copyright (c) 2007 Deep Root Systems, LLC
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation version 2.
|
||||
*
|
||||
* This program is distributed "as is" WITHOUT ANY WARRANTY of any
|
||||
* kind, whether express or implied; without even the implied warranty
|
||||
* of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*/
|
||||
#ifndef __DAVINCI_H
|
||||
#define __DAVINCI_H
|
||||
|
||||
#include <linux/clk.h>
|
||||
#include <linux/videodev2.h>
|
||||
#include <linux/davinci_emac.h>
|
||||
#include <linux/platform_device.h>
|
||||
#include <linux/spi/spi.h>
|
||||
|
||||
#include <mach/asp.h>
|
||||
#include <mach/keyscan.h>
|
||||
|
||||
#include <media/davinci/vpfe_capture.h>
|
||||
#include <media/davinci/vpif_types.h>
|
||||
|
||||
/* DM355 base addresses */
|
||||
#define DM355_ASYNC_EMIF_CONTROL_BASE 0x01e10000
|
||||
#define DM355_ASYNC_EMIF_DATA_CE0_BASE 0x02000000
|
||||
|
||||
#define ASP1_TX_EVT_EN 1
|
||||
#define ASP1_RX_EVT_EN 2
|
||||
|
||||
/* DM365 base addresses */
|
||||
#define DM365_ASYNC_EMIF_CONTROL_BASE 0x01d10000
|
||||
#define DM365_ASYNC_EMIF_DATA_CE0_BASE 0x02000000
|
||||
#define DM365_ASYNC_EMIF_DATA_CE1_BASE 0x04000000
|
||||
|
||||
/* DM644x base addresses */
|
||||
#define DM644X_ASYNC_EMIF_CONTROL_BASE 0x01e00000
|
||||
#define DM644X_ASYNC_EMIF_DATA_CE0_BASE 0x02000000
|
||||
#define DM644X_ASYNC_EMIF_DATA_CE1_BASE 0x04000000
|
||||
#define DM644X_ASYNC_EMIF_DATA_CE2_BASE 0x06000000
|
||||
#define DM644X_ASYNC_EMIF_DATA_CE3_BASE 0x08000000
|
||||
|
||||
/* DM646x base addresses */
|
||||
#define DM646X_ASYNC_EMIF_CONTROL_BASE 0x20008000
|
||||
#define DM646X_ASYNC_EMIF_CS2_SPACE_BASE 0x42000000
|
||||
|
||||
/* DM355 function declarations */
|
||||
void __init dm355_init(void);
|
||||
void dm355_init_spi0(unsigned chipselect_mask,
|
||||
struct spi_board_info *info, unsigned len);
|
||||
void __init dm355_init_asp1(u32 evt_enable, struct snd_platform_data *pdata);
|
||||
void dm355_set_vpfe_config(struct vpfe_config *cfg);
|
||||
|
||||
/* DM365 function declarations */
|
||||
void __init dm365_init(void);
|
||||
void __init dm365_init_asp(struct snd_platform_data *pdata);
|
||||
void __init dm365_init_vc(struct snd_platform_data *pdata);
|
||||
void __init dm365_init_ks(struct davinci_ks_platform_data *pdata);
|
||||
void __init dm365_init_rtc(void);
|
||||
void dm365_init_spi0(unsigned chipselect_mask,
|
||||
struct spi_board_info *info, unsigned len);
|
||||
void dm365_set_vpfe_config(struct vpfe_config *cfg);
|
||||
|
||||
/* DM644x function declarations */
|
||||
void __init dm644x_init(void);
|
||||
void __init dm644x_init_asp(struct snd_platform_data *pdata);
|
||||
void dm644x_set_vpfe_config(struct vpfe_config *cfg);
|
||||
|
||||
/* DM646x function declarations */
|
||||
void __init dm646x_init(void);
|
||||
void __init dm646x_init_mcasp0(struct snd_platform_data *pdata);
|
||||
void __init dm646x_init_mcasp1(struct snd_platform_data *pdata);
|
||||
int __init dm646x_init_edma(struct edma_rsv_info *rsv);
|
||||
void dm646x_video_init(void);
|
||||
void dm646x_setup_vpif(struct vpif_display_config *,
|
||||
struct vpif_capture_config *);
|
||||
#endif /*__DAVINCI_H */
|
@ -18,7 +18,6 @@
|
||||
|
||||
#include <asm/mach/map.h>
|
||||
|
||||
#include <mach/dm355.h>
|
||||
#include <mach/cputype.h>
|
||||
#include <mach/edma.h>
|
||||
#include <mach/psc.h>
|
||||
@ -31,6 +30,7 @@
|
||||
#include <mach/spi.h>
|
||||
#include <mach/gpio-davinci.h>
|
||||
|
||||
#include "davinci.h"
|
||||
#include "clock.h"
|
||||
#include "mux.h"
|
||||
|
||||
|
@ -21,7 +21,6 @@
|
||||
|
||||
#include <asm/mach/map.h>
|
||||
|
||||
#include <mach/dm365.h>
|
||||
#include <mach/cputype.h>
|
||||
#include <mach/edma.h>
|
||||
#include <mach/psc.h>
|
||||
@ -35,6 +34,7 @@
|
||||
#include <mach/spi.h>
|
||||
#include <mach/gpio-davinci.h>
|
||||
|
||||
#include "davinci.h"
|
||||
#include "clock.h"
|
||||
#include "mux.h"
|
||||
|
||||
|
@ -15,7 +15,6 @@
|
||||
|
||||
#include <asm/mach/map.h>
|
||||
|
||||
#include <mach/dm644x.h>
|
||||
#include <mach/cputype.h>
|
||||
#include <mach/edma.h>
|
||||
#include <mach/irqs.h>
|
||||
@ -27,6 +26,7 @@
|
||||
#include <mach/asp.h>
|
||||
#include <mach/gpio-davinci.h>
|
||||
|
||||
#include "davinci.h"
|
||||
#include "clock.h"
|
||||
#include "mux.h"
|
||||
|
||||
|
@ -16,7 +16,6 @@
|
||||
|
||||
#include <asm/mach/map.h>
|
||||
|
||||
#include <mach/dm646x.h>
|
||||
#include <mach/cputype.h>
|
||||
#include <mach/edma.h>
|
||||
#include <mach/irqs.h>
|
||||
@ -28,6 +27,7 @@
|
||||
#include <mach/asp.h>
|
||||
#include <mach/gpio-davinci.h>
|
||||
|
||||
#include "davinci.h"
|
||||
#include "clock.h"
|
||||
#include "mux.h"
|
||||
|
||||
|
@ -1,32 +0,0 @@
|
||||
/*
|
||||
* Chip specific defines for DM355 SoC
|
||||
*
|
||||
* Author: Kevin Hilman, Deep Root Systems, LLC
|
||||
*
|
||||
* 2007 (c) Deep Root Systems, LLC. This file is licensed under
|
||||
* the terms of the GNU General Public License version 2. This program
|
||||
* is licensed "as is" without any warranty of any kind, whether express
|
||||
* or implied.
|
||||
*/
|
||||
#ifndef __ASM_ARCH_DM355_H
|
||||
#define __ASM_ARCH_DM355_H
|
||||
|
||||
#include <mach/hardware.h>
|
||||
#include <mach/asp.h>
|
||||
#include <media/davinci/vpfe_capture.h>
|
||||
|
||||
#define DM355_ASYNC_EMIF_CONTROL_BASE 0x01E10000
|
||||
#define DM355_ASYNC_EMIF_DATA_CE0_BASE 0x02000000
|
||||
|
||||
#define ASP1_TX_EVT_EN 1
|
||||
#define ASP1_RX_EVT_EN 2
|
||||
|
||||
struct spi_board_info;
|
||||
|
||||
void __init dm355_init(void);
|
||||
void dm355_init_spi0(unsigned chipselect_mask,
|
||||
struct spi_board_info *info, unsigned len);
|
||||
void __init dm355_init_asp1(u32 evt_enable, struct snd_platform_data *pdata);
|
||||
void dm355_set_vpfe_config(struct vpfe_config *cfg);
|
||||
|
||||
#endif /* __ASM_ARCH_DM355_H */
|
@ -1,36 +0,0 @@
|
||||
/*
|
||||
* Copyright (C) 2009 Texas Instruments Incorporated
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation version 2.
|
||||
*
|
||||
* This program is distributed "as is" WITHOUT ANY WARRANTY of any
|
||||
* kind, whether express or implied; without even the implied warranty
|
||||
* of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*/
|
||||
#ifndef __ASM_ARCH_DM365_H
|
||||
#define __ASM_ARCH_DM665_H
|
||||
|
||||
#include <linux/platform_device.h>
|
||||
#include <linux/davinci_emac.h>
|
||||
#include <mach/hardware.h>
|
||||
#include <mach/asp.h>
|
||||
#include <mach/keyscan.h>
|
||||
#include <media/davinci/vpfe_capture.h>
|
||||
|
||||
#define DM365_ASYNC_EMIF_CONTROL_BASE 0x01D10000
|
||||
#define DM365_ASYNC_EMIF_DATA_CE0_BASE 0x02000000
|
||||
#define DM365_ASYNC_EMIF_DATA_CE1_BASE 0x04000000
|
||||
|
||||
void __init dm365_init(void);
|
||||
void __init dm365_init_asp(struct snd_platform_data *pdata);
|
||||
void __init dm365_init_vc(struct snd_platform_data *pdata);
|
||||
void __init dm365_init_ks(struct davinci_ks_platform_data *pdata);
|
||||
void __init dm365_init_rtc(void);
|
||||
void dm365_init_spi0(unsigned chipselect_mask,
|
||||
struct spi_board_info *info, unsigned len);
|
||||
|
||||
void dm365_set_vpfe_config(struct vpfe_config *cfg);
|
||||
#endif /* __ASM_ARCH_DM365_H */
|
@ -1,40 +0,0 @@
|
||||
/*
|
||||
* This file contains the processor specific definitions
|
||||
* of the TI DM644x.
|
||||
*
|
||||
* Copyright (C) 2008 Texas Instruments.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
*
|
||||
*/
|
||||
#ifndef __ASM_ARCH_DM644X_H
|
||||
#define __ASM_ARCH_DM644X_H
|
||||
|
||||
#include <linux/davinci_emac.h>
|
||||
#include <mach/hardware.h>
|
||||
#include <mach/asp.h>
|
||||
#include <media/davinci/vpfe_capture.h>
|
||||
|
||||
#define DM644X_ASYNC_EMIF_CONTROL_BASE 0x01E00000
|
||||
#define DM644X_ASYNC_EMIF_DATA_CE0_BASE 0x02000000
|
||||
#define DM644X_ASYNC_EMIF_DATA_CE1_BASE 0x04000000
|
||||
#define DM644X_ASYNC_EMIF_DATA_CE2_BASE 0x06000000
|
||||
#define DM644X_ASYNC_EMIF_DATA_CE3_BASE 0x08000000
|
||||
|
||||
void __init dm644x_init(void);
|
||||
void __init dm644x_init_asp(struct snd_platform_data *pdata);
|
||||
void dm644x_set_vpfe_config(struct vpfe_config *cfg);
|
||||
|
||||
#endif /* __ASM_ARCH_DM644X_H */
|
@ -1,34 +0,0 @@
|
||||
/*
|
||||
* Chip specific defines for DM646x SoC
|
||||
*
|
||||
* Author: Kevin Hilman, Deep Root Systems, LLC
|
||||
*
|
||||
* 2007 (c) Deep Root Systems, LLC. This file is licensed under
|
||||
* the terms of the GNU General Public License version 2. This program
|
||||
* is licensed "as is" without any warranty of any kind, whether express
|
||||
* or implied.
|
||||
*/
|
||||
#ifndef __ASM_ARCH_DM646X_H
|
||||
#define __ASM_ARCH_DM646X_H
|
||||
|
||||
#include <mach/hardware.h>
|
||||
#include <mach/asp.h>
|
||||
#include <linux/i2c.h>
|
||||
#include <linux/videodev2.h>
|
||||
#include <linux/davinci_emac.h>
|
||||
#include <media/davinci/vpif_types.h>
|
||||
|
||||
#define DM646X_ASYNC_EMIF_CONTROL_BASE 0x20008000
|
||||
#define DM646X_ASYNC_EMIF_CS2_SPACE_BASE 0x42000000
|
||||
|
||||
void __init dm646x_init(void);
|
||||
void __init dm646x_init_mcasp0(struct snd_platform_data *pdata);
|
||||
void __init dm646x_init_mcasp1(struct snd_platform_data *pdata);
|
||||
int __init dm646x_init_edma(struct edma_rsv_info *rsv);
|
||||
|
||||
void dm646x_video_init(void);
|
||||
|
||||
void dm646x_setup_vpif(struct vpif_display_config *,
|
||||
struct vpif_capture_config *);
|
||||
|
||||
#endif /* __ASM_ARCH_DM646X_H */
|
Loading…
Reference in New Issue
Block a user