Deleted Added
full compact
bcm2835_machdep.c (259365) bcm2835_machdep.c (266084)
1/*-
2 * Copyright (c) 2012 Oleksandr Tymoshenko.
3 * Copyright (c) 1994-1998 Mark Brinicombe.
4 * Copyright (c) 1994 Brini.
5 * All rights reserved.
6 *
7 * This code is derived from software written for Brini by Mark Brinicombe
8 *

--- 27 unchanged lines hidden (view full) ---

36 * from: FreeBSD: //depot/projects/arm/src/sys/arm/at91/kb920x_machdep.c, rev 45
37 */
38
39#include "opt_ddb.h"
40#include "opt_platform.h"
41#include "opt_global.h"
42
43#include <sys/cdefs.h>
1/*-
2 * Copyright (c) 2012 Oleksandr Tymoshenko.
3 * Copyright (c) 1994-1998 Mark Brinicombe.
4 * Copyright (c) 1994 Brini.
5 * All rights reserved.
6 *
7 * This code is derived from software written for Brini by Mark Brinicombe
8 *

--- 27 unchanged lines hidden (view full) ---

36 * from: FreeBSD: //depot/projects/arm/src/sys/arm/at91/kb920x_machdep.c, rev 45
37 */
38
39#include "opt_ddb.h"
40#include "opt_platform.h"
41#include "opt_global.h"
42
43#include <sys/cdefs.h>
44__FBSDID("$FreeBSD: stable/10/sys/arm/broadcom/bcm2835/bcm2835_machdep.c 259365 2013-12-14 00:16:08Z ian $");
44__FBSDID("$FreeBSD: stable/10/sys/arm/broadcom/bcm2835/bcm2835_machdep.c 266084 2014-05-14 19:18:58Z ian $");
45
46#define _ARM32_BUS_DMA_PRIVATE
47#include <sys/param.h>
48#include <sys/systm.h>
49#include <sys/bus.h>
50
51#include <vm/vm.h>
52#include <vm/pmap.h>
53
54#include <machine/bus.h>
55#include <machine/devmap.h>
56#include <machine/machdep.h>
57
58#include <dev/fdt/fdt_common.h>
59
60#include <arm/broadcom/bcm2835/bcm2835_wdog.h>
61
45
46#define _ARM32_BUS_DMA_PRIVATE
47#include <sys/param.h>
48#include <sys/systm.h>
49#include <sys/bus.h>
50
51#include <vm/vm.h>
52#include <vm/pmap.h>
53
54#include <machine/bus.h>
55#include <machine/devmap.h>
56#include <machine/machdep.h>
57
58#include <dev/fdt/fdt_common.h>
59
60#include <arm/broadcom/bcm2835/bcm2835_wdog.h>
61
62/* Start of address space used for bootstrap map */
63#define DEVMAP_BOOTSTRAP_MAP_START 0xE0000000
64
65vm_offset_t
66initarm_lastaddr(void)
67{
68
62vm_offset_t
63initarm_lastaddr(void)
64{
65
69 return (DEVMAP_BOOTSTRAP_MAP_START);
66 return (arm_devmap_lastaddr());
70}
71
72void
73initarm_early_init(void)
74{
75
76}
77

--- 16 unchanged lines hidden (view full) ---

94 board_set_serial(fdt64_to_cpu(*((uint64_t *)cells)));
95
96 len = OF_getprop(system, "linux,revision", &cells, sizeof(cells));
97 if (len > 0)
98 board_set_revision(fdt32_to_cpu(*((uint32_t *)cells)));
99 }
100}
101
67}
68
69void
70initarm_early_init(void)
71{
72
73}
74

--- 16 unchanged lines hidden (view full) ---

91 board_set_serial(fdt64_to_cpu(*((uint64_t *)cells)));
92
93 len = OF_getprop(system, "linux,revision", &cells, sizeof(cells));
94 if (len > 0)
95 board_set_revision(fdt32_to_cpu(*((uint32_t *)cells)));
96 }
97}
98
102#define FDT_DEVMAP_MAX (2) // FIXME
103static struct arm_devmap_entry fdt_devmap[FDT_DEVMAP_MAX] = {
104 { 0, 0, 0, 0, 0, }
105};
106
107
108/*
99/*
109 * Construct pmap_devmap[] with DT-derived config data.
100 * Set up static device mappings.
101 * All on-chip peripherals exist in a 16MB range starting at 0x20000000.
102 * Map the entire range using 1MB section mappings.
110 */
111int
112initarm_devmap_init(void)
113{
103 */
104int
105initarm_devmap_init(void)
106{
114 int i = 0;
115
107
116 fdt_devmap[i].pd_va = 0xf2000000;
117 fdt_devmap[i].pd_pa = 0x20000000;
118 fdt_devmap[i].pd_size = 0x01000000; /* 1 MB */
119 fdt_devmap[i].pd_prot = VM_PROT_READ | VM_PROT_WRITE;
120 fdt_devmap[i].pd_cache = PTE_DEVICE;
121 i++;
122
123 arm_devmap_register_table(&fdt_devmap[0]);
108 arm_devmap_add_entry(0x20000000, 0x01000000);
124 return (0);
125}
126
127struct arm32_dma_range *
128bus_dma_get_range(void)
129{
130
131 return (NULL);

--- 16 unchanged lines hidden ---
109 return (0);
110}
111
112struct arm32_dma_range *
113bus_dma_get_range(void)
114{
115
116 return (NULL);

--- 16 unchanged lines hidden ---