1 /* arch/arm/plat-samsung/include/plat/devs.h
3 * Copyright (c) 2004 Simtec Electronics
4 * Ben Dooks <ben@simtec.co.uk>
6 * Header file for s3c2410 standard platform devices
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License version 2 as
10 * published by the Free Software Foundation.
12 #include <linux/platform_device.h>
14 struct s3c24xx_uart_resources
{
15 struct resource
*resources
;
16 unsigned long nr_resources
;
19 extern struct s3c24xx_uart_resources s3c2410_uart_resources
[];
20 extern struct s3c24xx_uart_resources s3c64xx_uart_resources
[];
21 extern struct s3c24xx_uart_resources s5p_uart_resources
[];
23 extern struct platform_device
*s3c24xx_uart_devs
[];
24 extern struct platform_device
*s3c24xx_uart_src
[];
26 extern struct platform_device s3c_device_timer
[];
28 extern struct platform_device s3c64xx_device_iis0
;
29 extern struct platform_device s3c64xx_device_iis1
;
30 extern struct platform_device s3c64xx_device_iisv4
;
32 extern struct platform_device s3c64xx_device_spi0
;
33 extern struct platform_device s3c64xx_device_spi1
;
35 extern struct platform_device samsung_asoc_dma
;
37 extern struct platform_device s3c64xx_device_pcm0
;
38 extern struct platform_device s3c64xx_device_pcm1
;
40 extern struct platform_device s3c64xx_device_ac97
;
42 extern struct platform_device s3c_device_ts
;
44 extern struct platform_device s3c_device_fb
;
45 extern struct platform_device s3c_device_ohci
;
46 extern struct platform_device s3c_device_lcd
;
47 extern struct platform_device s3c_device_wdt
;
48 extern struct platform_device s3c_device_i2c0
;
49 extern struct platform_device s3c_device_i2c1
;
50 extern struct platform_device s3c_device_i2c2
;
51 extern struct platform_device s3c_device_i2c3
;
52 extern struct platform_device s3c_device_i2c4
;
53 extern struct platform_device s3c_device_i2c5
;
54 extern struct platform_device s3c_device_i2c6
;
55 extern struct platform_device s3c_device_i2c7
;
56 extern struct platform_device s3c_device_rtc
;
57 extern struct platform_device s3c_device_adc
;
58 extern struct platform_device s3c_device_sdi
;
59 extern struct platform_device s3c_device_iis
;
60 extern struct platform_device s3c_device_hwmon
;
61 extern struct platform_device s3c_device_hsmmc0
;
62 extern struct platform_device s3c_device_hsmmc1
;
63 extern struct platform_device s3c_device_hsmmc2
;
64 extern struct platform_device s3c_device_hsmmc3
;
65 extern struct platform_device s3c_device_cfcon
;
67 extern struct platform_device s3c_device_spi0
;
68 extern struct platform_device s3c_device_spi1
;
70 extern struct platform_device s5pc100_device_spi0
;
71 extern struct platform_device s5pc100_device_spi1
;
72 extern struct platform_device s5pc100_device_spi2
;
73 extern struct platform_device s5pv210_device_spi0
;
74 extern struct platform_device s5pv210_device_spi1
;
75 extern struct platform_device s5p6440_device_spi0
;
76 extern struct platform_device s5p6440_device_spi1
;
77 extern struct platform_device s5p6450_device_spi0
;
78 extern struct platform_device s5p6450_device_spi1
;
80 extern struct platform_device s3c_device_hwmon
;
82 extern struct platform_device s3c_device_nand
;
83 extern struct platform_device s3c_device_onenand
;
84 extern struct platform_device s3c64xx_device_onenand1
;
85 extern struct platform_device s5p_device_onenand
;
87 extern struct platform_device s3c_device_usbgadget
;
88 extern struct platform_device s3c_device_usb_hsotg
;
90 extern struct platform_device s5pv210_device_ac97
;
91 extern struct platform_device s5pv210_device_pcm0
;
92 extern struct platform_device s5pv210_device_pcm1
;
93 extern struct platform_device s5pv210_device_pcm2
;
94 extern struct platform_device s5pv210_device_iis0
;
95 extern struct platform_device s5pv210_device_iis1
;
96 extern struct platform_device s5pv210_device_iis2
;
97 extern struct platform_device s5pv210_device_spdif
;
99 extern struct platform_device s5pv310_device_ac97
;
100 extern struct platform_device s5pv310_device_pcm0
;
101 extern struct platform_device s5pv310_device_pcm1
;
102 extern struct platform_device s5pv310_device_pcm2
;
103 extern struct platform_device s5pv310_device_i2s0
;
104 extern struct platform_device s5pv310_device_i2s1
;
105 extern struct platform_device s5pv310_device_i2s2
;
106 extern struct platform_device s5pv310_device_spdif
;
107 extern struct platform_device s5pv310_device_pd
[];
109 extern struct platform_device s5p6442_device_pcm0
;
110 extern struct platform_device s5p6442_device_pcm1
;
111 extern struct platform_device s5p6442_device_iis0
;
112 extern struct platform_device s5p6442_device_iis1
;
113 extern struct platform_device s5p6442_device_spi
;
115 extern struct platform_device s5p6440_device_pcm
;
116 extern struct platform_device s5p6440_device_iis
;
118 extern struct platform_device s5p6450_device_iis0
;
119 extern struct platform_device s5p6450_device_iis1
;
120 extern struct platform_device s5p6450_device_iis2
;
121 extern struct platform_device s5p6450_device_pcm0
;
123 extern struct platform_device s5pc100_device_ac97
;
124 extern struct platform_device s5pc100_device_pcm0
;
125 extern struct platform_device s5pc100_device_pcm1
;
126 extern struct platform_device s5pc100_device_iis0
;
127 extern struct platform_device s5pc100_device_iis1
;
128 extern struct platform_device s5pc100_device_iis2
;
129 extern struct platform_device s5pc100_device_spdif
;
131 extern struct platform_device samsung_device_keypad
;
133 extern struct platform_device s5p_device_fimc0
;
134 extern struct platform_device s5p_device_fimc1
;
135 extern struct platform_device s5p_device_fimc2
;
137 extern struct platform_device s5p_device_mipi_csis0
;
138 extern struct platform_device s5p_device_mipi_csis1
;
140 extern struct platform_device s5pv310_device_sysmmu
;
142 /* s3c2440 specific devices */
144 #ifdef CONFIG_CPU_S3C2440
146 extern struct platform_device s3c_device_camif
;
147 extern struct platform_device s3c_device_ac97
;
152 * s3c_set_platdata() - helper for setting platform data
153 * @pd: The default platform data for this device.
154 * @pdsize: The size of the platform data.
155 * @pdev: Pointer to the device to fill in.
157 * This helper replaces a number of calls that copy and then set the
158 * platform data of the device.
160 extern void *s3c_set_platdata(void *pd
, size_t pdsize
,
161 struct platform_device
*pdev
);