1 // SPDX-License-Identifier: GPL-2.0 2 /* 3 * linux/arch/sh/boards/se/7751/setup.c 4 * 5 * Copyright (C) 2000 Kazumoto Kojima 6 * 7 * Hitachi SolutionEngine Support. 8 * 9 * Modified for 7751 Solution Engine by 10 * Ian da Silva and Jeremy Siegel, 2001. 11 */ 12 #include <linux/init.h> 13 #include <linux/platform_device.h> 14 #include <asm/machvec.h> 15 #include <mach-se/mach/se7751.h> 16 #include <asm/io.h> 17 #include <asm/heartbeat.h> 18 19 static unsigned char heartbeat_bit_pos[] = { 8, 9, 10, 11, 12, 13, 14, 15 }; 20 21 static struct heartbeat_data heartbeat_data = { 22 .bit_pos = heartbeat_bit_pos, 23 .nr_bits = ARRAY_SIZE(heartbeat_bit_pos), 24 }; 25 26 static struct resource heartbeat_resources[] = { 27 [0] = { 28 .start = PA_LED, 29 .end = PA_LED, 30 .flags = IORESOURCE_MEM, 31 }, 32 }; 33 34 static struct platform_device heartbeat_device = { 35 .name = "heartbeat", 36 .id = -1, 37 .dev = { 38 .platform_data = &heartbeat_data, 39 }, 40 .num_resources = ARRAY_SIZE(heartbeat_resources), 41 .resource = heartbeat_resources, 42 }; 43 44 static struct platform_device *se7751_devices[] __initdata = { 45 &heartbeat_device, 46 }; 47 48 static int __init se7751_devices_setup(void) 49 { 50 return platform_add_devices(se7751_devices, ARRAY_SIZE(se7751_devices)); 51 } 52 device_initcall(se7751_devices_setup); 53 54 /* 55 * The Machine Vector 56 */ 57 static struct sh_machine_vector mv_7751se __initmv = { 58 .mv_name = "7751 SolutionEngine", 59 .mv_init_irq = init_7751se_IRQ, 60 }; 61