diff options
Diffstat (limited to 'arch/arm/plat-samsung/devs.c')
-rw-r--r-- | arch/arm/plat-samsung/devs.c | 68 |
1 files changed, 64 insertions, 4 deletions
diff --git a/arch/arm/plat-samsung/devs.c b/arch/arm/plat-samsung/devs.c index 98b864777a31..cd5aac08a265 100644 --- a/arch/arm/plat-samsung/devs.c +++ b/arch/arm/plat-samsung/devs.c | |||
@@ -57,6 +57,7 @@ | |||
57 | #include <plat/sdhci.h> | 57 | #include <plat/sdhci.h> |
58 | #include <plat/ts.h> | 58 | #include <plat/ts.h> |
59 | #include <plat/udc.h> | 59 | #include <plat/udc.h> |
60 | #include <plat/udc-hs.h> | ||
60 | #include <plat/usb-control.h> | 61 | #include <plat/usb-control.h> |
61 | #include <plat/usb-phy.h> | 62 | #include <plat/usb-phy.h> |
62 | #include <plat/regs-iic.h> | 63 | #include <plat/regs-iic.h> |
@@ -267,6 +268,52 @@ struct platform_device s5p_device_fimc3 = { | |||
267 | }; | 268 | }; |
268 | #endif /* CONFIG_S5P_DEV_FIMC3 */ | 269 | #endif /* CONFIG_S5P_DEV_FIMC3 */ |
269 | 270 | ||
271 | /* G2D */ | ||
272 | |||
273 | #ifdef CONFIG_S5P_DEV_G2D | ||
274 | static struct resource s5p_g2d_resource[] = { | ||
275 | [0] = { | ||
276 | .start = S5P_PA_G2D, | ||
277 | .end = S5P_PA_G2D + SZ_4K - 1, | ||
278 | .flags = IORESOURCE_MEM, | ||
279 | }, | ||
280 | [1] = { | ||
281 | .start = IRQ_2D, | ||
282 | .end = IRQ_2D, | ||
283 | .flags = IORESOURCE_IRQ, | ||
284 | }, | ||
285 | }; | ||
286 | |||
287 | struct platform_device s5p_device_g2d = { | ||
288 | .name = "s5p-g2d", | ||
289 | .id = 0, | ||
290 | .num_resources = ARRAY_SIZE(s5p_g2d_resource), | ||
291 | .resource = s5p_g2d_resource, | ||
292 | .dev = { | ||
293 | .dma_mask = &samsung_device_dma_mask, | ||
294 | .coherent_dma_mask = DMA_BIT_MASK(32), | ||
295 | }, | ||
296 | }; | ||
297 | #endif /* CONFIG_S5P_DEV_G2D */ | ||
298 | |||
299 | #ifdef CONFIG_S5P_DEV_JPEG | ||
300 | static struct resource s5p_jpeg_resource[] = { | ||
301 | [0] = DEFINE_RES_MEM(S5P_PA_JPEG, SZ_4K), | ||
302 | [1] = DEFINE_RES_IRQ(IRQ_JPEG), | ||
303 | }; | ||
304 | |||
305 | struct platform_device s5p_device_jpeg = { | ||
306 | .name = "s5p-jpeg", | ||
307 | .id = 0, | ||
308 | .num_resources = ARRAY_SIZE(s5p_jpeg_resource), | ||
309 | .resource = s5p_jpeg_resource, | ||
310 | .dev = { | ||
311 | .dma_mask = &samsung_device_dma_mask, | ||
312 | .coherent_dma_mask = DMA_BIT_MASK(32), | ||
313 | }, | ||
314 | }; | ||
315 | #endif /* CONFIG_S5P_DEV_JPEG */ | ||
316 | |||
270 | /* FIMD0 */ | 317 | /* FIMD0 */ |
271 | 318 | ||
272 | #ifdef CONFIG_S5P_DEV_FIMD0 | 319 | #ifdef CONFIG_S5P_DEV_FIMD0 |
@@ -758,7 +805,7 @@ struct platform_device s3c_device_cfcon = { | |||
758 | .resource = s3c_cfcon_resource, | 805 | .resource = s3c_cfcon_resource, |
759 | }; | 806 | }; |
760 | 807 | ||
761 | void s3c_ide_set_platdata(struct s3c_ide_platdata *pdata) | 808 | void __init s3c_ide_set_platdata(struct s3c_ide_platdata *pdata) |
762 | { | 809 | { |
763 | s3c_set_platdata(pdata, sizeof(struct s3c_ide_platdata), | 810 | s3c_set_platdata(pdata, sizeof(struct s3c_ide_platdata), |
764 | &s3c_device_cfcon); | 811 | &s3c_device_cfcon); |
@@ -876,7 +923,7 @@ struct platform_device s5p_device_mfc_r = { | |||
876 | 923 | ||
877 | #ifdef CONFIG_S5P_DEV_CSIS0 | 924 | #ifdef CONFIG_S5P_DEV_CSIS0 |
878 | static struct resource s5p_mipi_csis0_resource[] = { | 925 | static struct resource s5p_mipi_csis0_resource[] = { |
879 | [0] = DEFINE_RES_MEM(S5P_PA_MIPI_CSIS0, SZ_4K), | 926 | [0] = DEFINE_RES_MEM(S5P_PA_MIPI_CSIS0, SZ_16K), |
880 | [1] = DEFINE_RES_IRQ(IRQ_MIPI_CSIS0), | 927 | [1] = DEFINE_RES_IRQ(IRQ_MIPI_CSIS0), |
881 | }; | 928 | }; |
882 | 929 | ||
@@ -890,7 +937,7 @@ struct platform_device s5p_device_mipi_csis0 = { | |||
890 | 937 | ||
891 | #ifdef CONFIG_S5P_DEV_CSIS1 | 938 | #ifdef CONFIG_S5P_DEV_CSIS1 |
892 | static struct resource s5p_mipi_csis1_resource[] = { | 939 | static struct resource s5p_mipi_csis1_resource[] = { |
893 | [0] = DEFINE_RES_MEM(S5P_PA_MIPI_CSIS1, SZ_4K), | 940 | [0] = DEFINE_RES_MEM(S5P_PA_MIPI_CSIS1, SZ_16K), |
894 | [1] = DEFINE_RES_IRQ(IRQ_MIPI_CSIS1), | 941 | [1] = DEFINE_RES_IRQ(IRQ_MIPI_CSIS1), |
895 | }; | 942 | }; |
896 | 943 | ||
@@ -1038,7 +1085,7 @@ struct platform_device s3c64xx_device_onenand1 = { | |||
1038 | .resource = s3c64xx_onenand1_resources, | 1085 | .resource = s3c64xx_onenand1_resources, |
1039 | }; | 1086 | }; |
1040 | 1087 | ||
1041 | void s3c64xx_onenand1_set_platdata(struct onenand_platform_data *pdata) | 1088 | void __init s3c64xx_onenand1_set_platdata(struct onenand_platform_data *pdata) |
1042 | { | 1089 | { |
1043 | s3c_set_platdata(pdata, sizeof(struct onenand_platform_data), | 1090 | s3c_set_platdata(pdata, sizeof(struct onenand_platform_data), |
1044 | &s3c64xx_device_onenand1); | 1091 | &s3c64xx_device_onenand1); |
@@ -1412,6 +1459,19 @@ struct platform_device s3c_device_usb_hsotg = { | |||
1412 | .coherent_dma_mask = DMA_BIT_MASK(32), | 1459 | .coherent_dma_mask = DMA_BIT_MASK(32), |
1413 | }, | 1460 | }, |
1414 | }; | 1461 | }; |
1462 | |||
1463 | void __init s3c_hsotg_set_platdata(struct s3c_hsotg_plat *pd) | ||
1464 | { | ||
1465 | struct s3c_hsotg_plat *npd; | ||
1466 | |||
1467 | npd = s3c_set_platdata(pd, sizeof(struct s3c_hsotg_plat), | ||
1468 | &s3c_device_usb_hsotg); | ||
1469 | |||
1470 | if (!npd->phy_init) | ||
1471 | npd->phy_init = s5p_usb_phy_init; | ||
1472 | if (!npd->phy_exit) | ||
1473 | npd->phy_exit = s5p_usb_phy_exit; | ||
1474 | } | ||
1415 | #endif /* CONFIG_S3C_DEV_USB_HSOTG */ | 1475 | #endif /* CONFIG_S3C_DEV_USB_HSOTG */ |
1416 | 1476 | ||
1417 | /* USB High Spped 2.0 Device (Gadget) */ | 1477 | /* USB High Spped 2.0 Device (Gadget) */ |