1 /* SPDX-License-Identifier: GPL-2.0 */
3 * Copyright (c) 2011 Samsung Electronics Co., Ltd.
4 * http://www.samsung.com
6 * Copyright (c) 2004 Simtec Electronics
7 * Ben Dooks <ben@simtec.co.uk>
9 * Header file for s3c2410 standard platform devices
13 #define __PLAT_DEVS_H __FILE__
15 #include <linux/platform_device.h>
17 struct s3c24xx_uart_resources
{
18 struct resource
*resources
;
19 unsigned long nr_resources
;
22 extern struct s3c24xx_uart_resources s3c2410_uart_resources
[];
23 extern struct s3c24xx_uart_resources s3c64xx_uart_resources
[];
25 extern struct platform_device
*s3c24xx_uart_devs
[];
26 extern struct platform_device
*s3c24xx_uart_src
[];
28 extern struct platform_device s3c64xx_device_ac97
;
29 extern struct platform_device s3c64xx_device_iis0
;
30 extern struct platform_device s3c64xx_device_iis1
;
31 extern struct platform_device s3c64xx_device_iisv4
;
32 extern struct platform_device s3c64xx_device_onenand1
;
33 extern struct platform_device s3c64xx_device_pcm0
;
34 extern struct platform_device s3c64xx_device_pcm1
;
35 extern struct platform_device s3c64xx_device_spi0
;
36 extern struct platform_device s3c64xx_device_spi1
;
37 extern struct platform_device s3c64xx_device_spi2
;
39 extern struct platform_device s3c_device_adc
;
40 extern struct platform_device s3c_device_cfcon
;
41 extern struct platform_device s3c_device_fb
;
42 extern struct platform_device s3c_device_hwmon
;
43 extern struct platform_device s3c_device_hsmmc0
;
44 extern struct platform_device s3c_device_hsmmc1
;
45 extern struct platform_device s3c_device_hsmmc2
;
46 extern struct platform_device s3c_device_hsmmc3
;
47 extern struct platform_device s3c_device_i2c0
;
48 extern struct platform_device s3c_device_i2c1
;
49 extern struct platform_device s3c_device_i2c2
;
50 extern struct platform_device s3c_device_i2c3
;
51 extern struct platform_device s3c_device_i2c4
;
52 extern struct platform_device s3c_device_i2c5
;
53 extern struct platform_device s3c_device_i2c6
;
54 extern struct platform_device s3c_device_i2c7
;
55 extern struct platform_device s3c_device_iis
;
56 extern struct platform_device s3c_device_lcd
;
57 extern struct platform_device s3c_device_nand
;
58 extern struct platform_device s3c_device_ohci
;
59 extern struct platform_device s3c_device_onenand
;
60 extern struct platform_device s3c_device_rtc
;
61 extern struct platform_device s3c_device_sdi
;
62 extern struct platform_device s3c_device_spi0
;
63 extern struct platform_device s3c_device_spi1
;
64 extern struct platform_device s3c_device_ts
;
65 extern struct platform_device s3c_device_timer
[];
66 extern struct platform_device s3c_device_usbgadget
;
67 extern struct platform_device s3c_device_usb_hsotg
;
68 extern struct platform_device s3c_device_usb_hsudc
;
69 extern struct platform_device s3c_device_wdt
;
71 extern struct platform_device samsung_asoc_idma
;
72 extern struct platform_device samsung_device_keypad
;
73 extern struct platform_device samsung_device_pwm
;
75 /* s3c2440 specific devices */
77 #ifdef CONFIG_CPU_S3C2440
79 extern struct platform_device s3c_device_camif
;
80 extern struct platform_device s3c_device_ac97
;
85 * s3c_set_platdata() - helper for setting platform data
86 * @pd: The default platform data for this device.
87 * @pdsize: The size of the platform data.
88 * @pdev: Pointer to the device to fill in.
90 * This helper replaces a number of calls that copy and then set the
91 * platform data of the device.
93 extern void *s3c_set_platdata(void *pd
, size_t pdsize
,
94 struct platform_device
*pdev
);
96 #endif /* __PLAT_DEVS_H */