linux/arch/arm/plat-samsung/include/plat/devs.h
<<
>>
Prefs
   1/* arch/arm/plat-samsung/include/plat/devs.h
   2 *
   3 * Copyright (c) 2011 Samsung Electronics Co., Ltd.
   4 *              http://www.samsung.com
   5 *
   6 * Copyright (c) 2004 Simtec Electronics
   7 * Ben Dooks <ben@simtec.co.uk>
   8 *
   9 * Header file for s3c2410 standard platform devices
  10 *
  11 * This program is free software; you can redistribute it and/or modify
  12 * it under the terms of the GNU General Public License version 2 as
  13 * published by the Free Software Foundation.
  14*/
  15
  16#ifndef __PLAT_DEVS_H
  17#define __PLAT_DEVS_H __FILE__
  18
  19#include <linux/platform_device.h>
  20
  21struct s3c24xx_uart_resources {
  22        struct resource         *resources;
  23        unsigned long            nr_resources;
  24};
  25
  26extern struct s3c24xx_uart_resources s3c2410_uart_resources[];
  27extern struct s3c24xx_uart_resources s3c64xx_uart_resources[];
  28extern struct s3c24xx_uart_resources s5p_uart_resources[];
  29
  30extern struct platform_device *s3c24xx_uart_devs[];
  31extern struct platform_device *s3c24xx_uart_src[];
  32
  33extern struct platform_device s3c64xx_device_ac97;
  34extern struct platform_device s3c64xx_device_iis0;
  35extern struct platform_device s3c64xx_device_iis1;
  36extern struct platform_device s3c64xx_device_iisv4;
  37extern struct platform_device s3c64xx_device_onenand1;
  38extern struct platform_device s3c64xx_device_pcm0;
  39extern struct platform_device s3c64xx_device_pcm1;
  40extern struct platform_device s3c64xx_device_spi0;
  41extern struct platform_device s3c64xx_device_spi1;
  42extern struct platform_device s3c64xx_device_spi2;
  43
  44extern struct platform_device s3c_device_adc;
  45extern struct platform_device s3c_device_cfcon;
  46extern struct platform_device s3c_device_fb;
  47extern struct platform_device s3c_device_hwmon;
  48extern struct platform_device s3c_device_hsmmc0;
  49extern struct platform_device s3c_device_hsmmc1;
  50extern struct platform_device s3c_device_hsmmc2;
  51extern struct platform_device s3c_device_hsmmc3;
  52extern struct platform_device s3c_device_i2c0;
  53extern struct platform_device s3c_device_i2c1;
  54extern struct platform_device s3c_device_i2c2;
  55extern struct platform_device s3c_device_i2c3;
  56extern struct platform_device s3c_device_i2c4;
  57extern struct platform_device s3c_device_i2c5;
  58extern struct platform_device s3c_device_i2c6;
  59extern struct platform_device s3c_device_i2c7;
  60extern struct platform_device s3c_device_iis;
  61extern struct platform_device s3c_device_lcd;
  62extern struct platform_device s3c_device_nand;
  63extern struct platform_device s3c_device_ohci;
  64extern struct platform_device s3c_device_onenand;
  65extern struct platform_device s3c_device_rtc;
  66extern struct platform_device s3c_device_sdi;
  67extern struct platform_device s3c_device_spi0;
  68extern struct platform_device s3c_device_spi1;
  69extern struct platform_device s3c_device_ts;
  70extern struct platform_device s3c_device_timer[];
  71extern struct platform_device s3c_device_usbgadget;
  72extern struct platform_device s3c_device_usb_hsotg;
  73extern struct platform_device s3c_device_usb_hsudc;
  74extern struct platform_device s3c_device_wdt;
  75
  76extern struct platform_device s5p_device_ehci;
  77extern struct platform_device s5p_device_fimc0;
  78extern struct platform_device s5p_device_fimc1;
  79extern struct platform_device s5p_device_fimc2;
  80extern struct platform_device s5p_device_fimc3;
  81extern struct platform_device s5p_device_fimc_md;
  82extern struct platform_device s5p_device_fimd0;
  83extern struct platform_device s5p_device_hdmi;
  84extern struct platform_device s5p_device_i2c_hdmiphy;
  85extern struct platform_device s5p_device_mfc;
  86extern struct platform_device s5p_device_mfc_l;
  87extern struct platform_device s5p_device_mfc_r;
  88extern struct platform_device s5p_device_mipi_csis0;
  89extern struct platform_device s5p_device_mipi_csis1;
  90extern struct platform_device s5p_device_mixer;
  91extern struct platform_device s5p_device_onenand;
  92extern struct platform_device s5p_device_sdo;
  93
  94extern struct platform_device s5p6440_device_iis;
  95extern struct platform_device s5p6440_device_pcm;
  96
  97extern struct platform_device s5p6450_device_iis0;
  98extern struct platform_device s5p6450_device_iis1;
  99extern struct platform_device s5p6450_device_iis2;
 100extern struct platform_device s5p6450_device_pcm0;
 101
 102
 103extern struct platform_device s5pc100_device_ac97;
 104extern struct platform_device s5pc100_device_iis0;
 105extern struct platform_device s5pc100_device_iis1;
 106extern struct platform_device s5pc100_device_iis2;
 107extern struct platform_device s5pc100_device_pcm0;
 108extern struct platform_device s5pc100_device_pcm1;
 109extern struct platform_device s5pc100_device_spdif;
 110
 111extern struct platform_device s5pv210_device_ac97;
 112extern struct platform_device s5pv210_device_iis0;
 113extern struct platform_device s5pv210_device_iis1;
 114extern struct platform_device s5pv210_device_iis2;
 115extern struct platform_device s5pv210_device_pcm0;
 116extern struct platform_device s5pv210_device_pcm1;
 117extern struct platform_device s5pv210_device_pcm2;
 118extern struct platform_device s5pv210_device_spdif;
 119
 120extern struct platform_device exynos4_device_ac97;
 121extern struct platform_device exynos4_device_ahci;
 122extern struct platform_device exynos4_device_dwmci;
 123extern struct platform_device exynos4_device_i2s0;
 124extern struct platform_device exynos4_device_i2s1;
 125extern struct platform_device exynos4_device_i2s2;
 126extern struct platform_device exynos4_device_ohci;
 127extern struct platform_device exynos4_device_pcm0;
 128extern struct platform_device exynos4_device_pcm1;
 129extern struct platform_device exynos4_device_pcm2;
 130extern struct platform_device exynos4_device_pd[];
 131extern struct platform_device exynos4_device_spdif;
 132extern struct platform_device exynos4_device_sysmmu;
 133
 134extern struct platform_device samsung_asoc_dma;
 135extern struct platform_device samsung_asoc_idma;
 136extern struct platform_device samsung_device_keypad;
 137
 138/* s3c2440 specific devices */
 139
 140#ifdef CONFIG_CPU_S3C2440
 141
 142extern struct platform_device s3c_device_camif;
 143extern struct platform_device s3c_device_ac97;
 144
 145#endif
 146
 147/**
 148 * s3c_set_platdata() - helper for setting platform data
 149 * @pd: The default platform data for this device.
 150 * @pdsize: The size of the platform data.
 151 * @pdev: Pointer to the device to fill in.
 152 *
 153 * This helper replaces a number of calls that copy and then set the
 154 * platform data of the device.
 155 */
 156extern void *s3c_set_platdata(void *pd, size_t pdsize,
 157                              struct platform_device *pdev);
 158
 159#endif /* __PLAT_DEVS_H */
 160