devs.h 4.4 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;
L
Linus Torvalds 已提交
49 50 51
extern struct platform_device s3c_device_rtc;
extern struct platform_device s3c_device_adc;
extern struct platform_device s3c_device_sdi;
52
extern struct platform_device s3c_device_iis;
53
extern struct platform_device s3c_device_hwmon;
54 55 56
extern struct platform_device s3c_device_hsmmc0;
extern struct platform_device s3c_device_hsmmc1;
extern struct platform_device s3c_device_hsmmc2;
57
extern struct platform_device s3c_device_cfcon;
L
Linus Torvalds 已提交
58 59 60 61

extern struct platform_device s3c_device_spi0;
extern struct platform_device s3c_device_spi1;

62 63 64
extern struct platform_device s5pc100_device_spi0;
extern struct platform_device s5pc100_device_spi1;
extern struct platform_device s5pc100_device_spi2;
65 66
extern struct platform_device s5pv210_device_spi0;
extern struct platform_device s5pv210_device_spi1;
67 68
extern struct platform_device s5p6440_device_spi0;
extern struct platform_device s5p6440_device_spi1;
69

70 71
extern struct platform_device s3c_device_hwmon;

L
Linus Torvalds 已提交
72
extern struct platform_device s3c_device_nand;
73 74 75
extern struct platform_device s3c_device_onenand;
extern struct platform_device s3c64xx_device_onenand1;
extern struct platform_device s5pc110_device_onenand;
L
Linus Torvalds 已提交
76 77

extern struct platform_device s3c_device_usbgadget;
78
extern struct platform_device s3c_device_usb_hsotg;
L
Linus Torvalds 已提交
79

80 81 82 83 84 85 86 87
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;

88 89 90 91
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;
92
extern struct platform_device s5p6442_device_spi;
93

94 95 96
extern struct platform_device s5p6440_device_pcm;
extern struct platform_device s5p6440_device_iis;

97 98 99 100 101 102 103
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;

L
Linus Torvalds 已提交
104 105 106 107 108
/* s3c2440 specific devices */

#ifdef CONFIG_CPU_S3C2440

extern struct platform_device s3c_device_camif;
109
extern struct platform_device s3c_device_ac97;
L
Linus Torvalds 已提交
110 111

#endif
112 113 114 115 116 117 118 119 120 121 122 123

/**
 * 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);