devs.h 5.1 KB
Newer Older
1
/* arch/arm/plat-samsung/include/plat/devs.h
L
Linus Torvalds 已提交
2 3 4 5 6 7 8 9 10 11
 *
 * Copyright (c) 2004 Simtec Electronics
 * Ben Dooks <ben@simtec.co.uk>
 *
 * Header file for s3c2410 standard platform devices
 *
 * 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.
*/
12
#include <linux/platform_device.h>
L
Linus Torvalds 已提交
13

14 15 16 17 18 19
struct s3c24xx_uart_resources {
	struct resource		*resources;
	unsigned long		 nr_resources;
};

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[];
22

L
Linus Torvalds 已提交
23
extern struct platform_device *s3c24xx_uart_devs[];
24
extern struct platform_device *s3c24xx_uart_src[];
L
Linus Torvalds 已提交
25

B
Ben Dooks 已提交
26 27
extern struct platform_device s3c_device_timer[];

28 29
extern struct platform_device s3c64xx_device_iis0;
extern struct platform_device s3c64xx_device_iis1;
30
extern struct platform_device s3c64xx_device_iisv4;
31

32 33 34
extern struct platform_device s3c64xx_device_spi0;
extern struct platform_device s3c64xx_device_spi1;

35 36 37
extern struct platform_device s3c64xx_device_pcm0;
extern struct platform_device s3c64xx_device_pcm1;

38 39
extern struct platform_device s3c64xx_device_ac97;

40
extern struct platform_device s3c_device_ts;
41

42
extern struct platform_device s3c_device_fb;
43
extern struct platform_device s3c_device_ohci;
L
Linus Torvalds 已提交
44 45
extern struct platform_device s3c_device_lcd;
extern struct platform_device s3c_device_wdt;
46
extern struct platform_device s3c_device_i2c0;
B
Ben Dooks 已提交
47
extern struct platform_device s3c_device_i2c1;
48
extern struct platform_device s3c_device_i2c2;
49 50 51 52 53
extern struct platform_device s3c_device_i2c3;
extern struct platform_device s3c_device_i2c4;
extern struct platform_device s3c_device_i2c5;
extern struct platform_device s3c_device_i2c6;
extern struct platform_device s3c_device_i2c7;
L
Linus Torvalds 已提交
54 55 56
extern struct platform_device s3c_device_rtc;
extern struct platform_device s3c_device_adc;
extern struct platform_device s3c_device_sdi;
57
extern struct platform_device s3c_device_iis;
58
extern struct platform_device s3c_device_hwmon;
59 60 61
extern struct platform_device s3c_device_hsmmc0;
extern struct platform_device s3c_device_hsmmc1;
extern struct platform_device s3c_device_hsmmc2;
62
extern struct platform_device s3c_device_hsmmc3;
63
extern struct platform_device s3c_device_cfcon;
L
Linus Torvalds 已提交
64 65 66 67

extern struct platform_device s3c_device_spi0;
extern struct platform_device s3c_device_spi1;

68 69 70
extern struct platform_device s5pc100_device_spi0;
extern struct platform_device s5pc100_device_spi1;
extern struct platform_device s5pc100_device_spi2;
71 72
extern struct platform_device s5pv210_device_spi0;
extern struct platform_device s5pv210_device_spi1;
73 74
extern struct platform_device s5p6440_device_spi0;
extern struct platform_device s5p6440_device_spi1;
K
Kukjin Kim 已提交
75 76
extern struct platform_device s5p6450_device_spi0;
extern struct platform_device s5p6450_device_spi1;
77

78 79
extern struct platform_device s3c_device_hwmon;

L
Linus Torvalds 已提交
80
extern struct platform_device s3c_device_nand;
81 82
extern struct platform_device s3c_device_onenand;
extern struct platform_device s3c64xx_device_onenand1;
83
extern struct platform_device s5p_device_onenand;
L
Linus Torvalds 已提交
84 85

extern struct platform_device s3c_device_usbgadget;
86
extern struct platform_device s3c_device_usb_hsotg;
L
Linus Torvalds 已提交
87

88 89 90 91 92 93 94
extern struct platform_device s5pv210_device_ac97;
extern struct platform_device s5pv210_device_pcm0;
extern struct platform_device s5pv210_device_pcm1;
extern struct platform_device s5pv210_device_pcm2;
extern struct platform_device s5pv210_device_iis0;
extern struct platform_device s5pv210_device_iis1;
extern struct platform_device s5pv210_device_iis2;
95
extern struct platform_device s5pv210_device_spdif;
96

97 98 99 100
extern struct platform_device s5p6442_device_pcm0;
extern struct platform_device s5p6442_device_pcm1;
extern struct platform_device s5p6442_device_iis0;
extern struct platform_device s5p6442_device_iis1;
101
extern struct platform_device s5p6442_device_spi;
102

103 104 105
extern struct platform_device s5p6440_device_pcm;
extern struct platform_device s5p6440_device_iis;

K
Kukjin Kim 已提交
106 107 108
extern struct platform_device s5p6450_device_iis0;
extern struct platform_device s5p6450_device_pcm0;

109 110 111 112 113 114
extern struct platform_device s5pc100_device_ac97;
extern struct platform_device s5pc100_device_pcm0;
extern struct platform_device s5pc100_device_pcm1;
extern struct platform_device s5pc100_device_iis0;
extern struct platform_device s5pc100_device_iis1;
extern struct platform_device s5pc100_device_iis2;
115
extern struct platform_device s5pc100_device_spdif;
116

117 118
extern struct platform_device samsung_device_keypad;

119 120 121 122
extern struct platform_device s5p_device_fimc0;
extern struct platform_device s5p_device_fimc1;
extern struct platform_device s5p_device_fimc2;

L
Linus Torvalds 已提交
123 124 125 126 127
/* s3c2440 specific devices */

#ifdef CONFIG_CPU_S3C2440

extern struct platform_device s3c_device_camif;
128
extern struct platform_device s3c_device_ac97;
L
Linus Torvalds 已提交
129 130

#endif
131 132 133 134 135 136 137 138 139 140 141 142

/**
 * s3c_set_platdata() - helper for setting platform data
 * @pd: The default platform data for this device.
 * @pdsize: The size of the platform data.
 * @pdev: Pointer to the device to fill in.
 *
 * This helper replaces a number of calls that copy and then set the
 * platform data of the device.
 */
extern void *s3c_set_platdata(void *pd, size_t pdsize,
			      struct platform_device *pdev);