~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/arch/sh/boards/mach-lboxre2/setup.c

Version: ~ [ linux-5.10-rc5 ] ~ [ linux-5.9.10 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.79 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.159 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.208 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.245 ] ~ [ linux-4.8.17 ] ~ [ linux-4.7.10 ] ~ [ linux-4.6.7 ] ~ [ linux-4.5.7 ] ~ [ linux-4.4.245 ] ~ [ linux-4.3.6 ] ~ [ linux-4.2.8 ] ~ [ linux-4.1.52 ] ~ [ linux-4.0.9 ] ~ [ linux-3.19.8 ] ~ [ linux-3.18.140 ] ~ [ linux-3.17.8 ] ~ [ linux-3.16.85 ] ~ [ linux-3.15.10 ] ~ [ linux-3.14.79 ] ~ [ linux-3.13.11 ] ~ [ linux-3.12.74 ] ~ [ linux-3.11.10 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.5 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 /*
  2  * linux/arch/sh/boards/lbox/setup.c
  3  *
  4  * Copyright (C) 2007 Nobuhiro Iwamatsu
  5  *
  6  * NTT COMWARE L-BOX RE2 Support
  7  *
  8  * This file is subject to the terms and conditions of the GNU General Public
  9  * License.  See the file "COPYING" in the main directory of this archive
 10  * for more details.
 11  *
 12  */
 13 
 14 #include <linux/init.h>
 15 #include <linux/platform_device.h>
 16 #include <linux/ata_platform.h>
 17 #include <asm/machvec.h>
 18 #include <asm/addrspace.h>
 19 #include <mach/lboxre2.h>
 20 #include <asm/io.h>
 21 
 22 static struct resource cf_ide_resources[] = {
 23         [0] = {
 24                 .start  = 0x1f0,
 25                 .end    = 0x1f0 + 8 ,
 26                 .flags  = IORESOURCE_IO,
 27         },
 28         [1] = {
 29                 .start  = 0x1f0 + 0x206,
 30                 .end    = 0x1f0 +8 + 0x206 + 8,
 31                 .flags  = IORESOURCE_IO,
 32         },
 33         [2] = {
 34                 .start  = IRQ_CF0,
 35                 .flags  = IORESOURCE_IRQ,
 36         },
 37 };
 38 
 39 static struct platform_device cf_ide_device  = {
 40         .name           = "pata_platform",
 41         .id             = -1,
 42         .num_resources  = ARRAY_SIZE(cf_ide_resources),
 43         .resource       = cf_ide_resources,
 44 };
 45 
 46 static struct platform_device *lboxre2_devices[] __initdata = {
 47        &cf_ide_device,
 48 };
 49 
 50 static int __init lboxre2_devices_setup(void)
 51 {
 52         u32 cf0_io_base;        /* Boot CF base address */
 53         pgprot_t prot;
 54         unsigned long paddrbase, psize;
 55 
 56         /* open I/O area window */
 57         paddrbase = virt_to_phys((void*)PA_AREA5_IO);
 58         psize = PAGE_SIZE;
 59         prot = PAGE_KERNEL_PCC(1, _PAGE_PCC_IO16);
 60         cf0_io_base = (u32)ioremap_prot(paddrbase, psize, pgprot_val(prot));
 61         if (!cf0_io_base) {
 62                 printk(KERN_ERR "%s : can't open CF I/O window!\n" , __func__ );
 63                 return -ENOMEM;
 64         }
 65 
 66         cf_ide_resources[0].start += cf0_io_base ;
 67         cf_ide_resources[0].end   += cf0_io_base ;
 68         cf_ide_resources[1].start += cf0_io_base ;
 69         cf_ide_resources[1].end   += cf0_io_base ;
 70 
 71         return platform_add_devices(lboxre2_devices,
 72                         ARRAY_SIZE(lboxre2_devices));
 73 
 74 }
 75 device_initcall(lboxre2_devices_setup);
 76 
 77 /*
 78  * The Machine Vector
 79  */
 80 static struct sh_machine_vector mv_lboxre2 __initmv = {
 81         .mv_name                = "L-BOX RE2",
 82         .mv_init_irq            = init_lboxre2_IRQ,
 83 };
 84 

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | Wiki (Japanese) | Wiki (English) | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

osdn.jp