1 // SPDX-License-Identifier: GPL-2.0-or-later 2 /* 3 * linux/arch/arm/mach-omap2/devices.c 4 * 5 * OMAP2 platform device setup/initialization 6 */ 7 8 #include <linux/kernel.h> 9 #include <linux/init.h> 10 #include <linux/platform_device.h> 11 #include <linux/io.h> 12 #include <linux/clk.h> 13 #include <linux/dma-mapping.h> 14 #include <linux/err.h> 15 #include <linux/slab.h> 16 #include <linux/of.h> 17 18 #include <asm/mach-types.h> 19 #include <asm/mach/map.h> 20 21 #include <linux/omap-dma.h> 22 23 #include "iomap.h" 24 #include "omap_hwmod.h" 25 #include "omap_device.h" 26 27 #include "soc.h" 28 #include "common.h" 29 #include "control.h" 30 #include "display.h" 31 32 #define L3_MODULES_MAX_LEN 12 33 #define L3_MODULES 3 34 35 /*-------------------------------------------------------------------------*/ 36 37 #if IS_ENABLED(CONFIG_VIDEO_OMAP2_VOUT) 38 #if IS_ENABLED(CONFIG_FB_OMAP2) 39 static struct resource omap_vout_resource[3 - CONFIG_FB_OMAP2_NUM_FBS] = { 40 }; 41 #else 42 static struct resource omap_vout_resource[2] = { 43 }; 44 #endif 45 46 static u64 omap_vout_dma_mask = DMA_BIT_MASK(32); 47 48 static struct platform_device omap_vout_device = { 49 .name = "omap_vout", 50 .num_resources = ARRAY_SIZE(omap_vout_resource), 51 .resource = &omap_vout_resource[0], 52 .id = -1, 53 .dev = { 54 .dma_mask = &omap_vout_dma_mask, 55 .coherent_dma_mask = DMA_BIT_MASK(32), 56 }, 57 }; 58 omap_init_vout(void)59int __init omap_init_vout(void) 60 { 61 return platform_device_register(&omap_vout_device); 62 } 63 #else omap_init_vout(void)64int __init omap_init_vout(void) { return 0; } 65 #endif 66