The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/arm/versatile/versatile_machdep.c

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 /*-
    2  * Copyright (c) 2012 Oleksandr Tymoshenko.
    3  * All rights reserved.
    4  *
    5  * This code is derived from software written for Brini by Mark Brinicombe
    6  *
    7  * Redistribution and use in source and binary forms, with or without
    8  * modification, are permitted provided that the following conditions
    9  * are met:
   10  * 1. Redistributions of source code must retain the above copyright
   11  *    notice, this list of conditions and the following disclaimer.
   12  * 2. Redistributions in binary form must reproduce the above copyright
   13  *    notice, this list of conditions and the following disclaimer in the
   14  *    documentation and/or other materials provided with the distribution.
   15  * 3. All advertising materials mentioning features or use of this software
   16  *    must display the following acknowledgement:
   17  *      This product includes software developed by Brini.
   18  * 4. The name of the company nor the name of the author may be used to
   19  *    endorse or promote products derived from this software without specific
   20  *    prior written permission.
   21  *
   22  * THIS SOFTWARE IS PROVIDED BY BRINI ``AS IS'' AND ANY EXPRESS OR IMPLIED
   23  * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
   24  * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
   25  * IN NO EVENT SHALL BRINI OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
   26  * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
   27  * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
   28  * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   29  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   30  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   31  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   32  * SUCH DAMAGE.
   33  *
   34  */
   35 
   36 #include "opt_ddb.h"
   37 #include "opt_platform.h"
   38 #include "opt_global.h"
   39 
   40 #include <sys/cdefs.h>
   41 __FBSDID("$FreeBSD: releng/10.0/sys/arm/versatile/versatile_machdep.c 244197 2012-12-13 23:19:13Z gonzo $");
   42 
   43 #define _ARM32_BUS_DMA_PRIVATE
   44 #include <sys/param.h>
   45 #include <sys/systm.h>
   46 #include <sys/bus.h>
   47 
   48 #include <vm/vm.h>
   49 #include <vm/pmap.h>
   50 
   51 #include <machine/bus.h>
   52 #include <machine/frame.h> /* For trapframe_t, used in <machine/machdep.h> */
   53 #include <machine/machdep.h>
   54 #include <machine/pmap.h>
   55 
   56 #include <dev/fdt/fdt_common.h>
   57 
   58 /* Start of address space used for bootstrap map */
   59 #define DEVMAP_BOOTSTRAP_MAP_START      0xE0000000
   60 
   61 vm_offset_t
   62 initarm_lastaddr(void)
   63 {
   64 
   65         return (DEVMAP_BOOTSTRAP_MAP_START - ARM_NOCACHE_KVA_SIZE);
   66 }
   67 
   68 void
   69 initarm_gpio_init(void)
   70 {
   71 }
   72 
   73 void
   74 initarm_late_init(void)
   75 {
   76 }
   77 
   78 #define FDT_DEVMAP_MAX  (2)             /* FIXME */
   79 static struct pmap_devmap fdt_devmap[FDT_DEVMAP_MAX] = {
   80         { 0, 0, 0, 0, 0, },
   81         { 0, 0, 0, 0, 0, }
   82 };
   83 
   84 
   85 /*
   86  * Construct pmap_devmap[] with DT-derived config data.
   87  */
   88 int
   89 platform_devmap_init(void)
   90 {
   91         int i = 0;
   92         fdt_devmap[i].pd_va = 0xf0100000;
   93         fdt_devmap[i].pd_pa = 0x10100000;
   94         fdt_devmap[i].pd_size = 0x01000000;       /* 1 MB */
   95         fdt_devmap[i].pd_prot = VM_PROT_READ | VM_PROT_WRITE;
   96         fdt_devmap[i].pd_cache = PTE_DEVICE;
   97 
   98         pmap_devmap_bootstrap_table = &fdt_devmap[0];
   99         return (0);
  100 }
  101 
  102 struct arm32_dma_range *
  103 bus_dma_get_range(void)
  104 {
  105 
  106         return (NULL);
  107 }
  108 
  109 int
  110 bus_dma_get_range_nb(void)
  111 {
  112 
  113         return (0);
  114 }
  115 
  116 void
  117 cpu_reset()
  118 {
  119         printf("cpu_reset\n");
  120         while (1);
  121 }
  122 

Cache object: adf472302fdc4f3fca198a967a813af5


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.