Deleted Added
full compact
bcm2835_machdep.c (260371) bcm2835_machdep.c (266301)
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: head/sys/arm/broadcom/bcm2835/bcm2835_machdep.c 260371 2014-01-06 15:48:16Z ian $");
44__FBSDID("$FreeBSD: head/sys/arm/broadcom/bcm2835/bcm2835_machdep.c 266301 2014-05-17 11:27:36Z andrew $");
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>
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#include <machine/platform.h>
58#include <machine/platformvar.h>
57
58#include <dev/fdt/fdt_common.h>
59
60#include <arm/broadcom/bcm2835/bcm2835_wdog.h>
61
59
60#include <dev/fdt/fdt_common.h>
61
62#include <arm/broadcom/bcm2835/bcm2835_wdog.h>
63
62vm_offset_t
63initarm_lastaddr(void)
64#include "platform_if.h"
65
66static vm_offset_t
67bcm2835_lastaddr(platform_t plat)
64{
65
66 return (arm_devmap_lastaddr());
67}
68
68{
69
70 return (arm_devmap_lastaddr());
71}
72
69void
70initarm_early_init(void)
73static void
74bcm2835_late_init(platform_t plat)
71{
75{
72
73}
74
75void
76initarm_gpio_init(void)
77{
78}
79
80void
81initarm_late_init(void)
82{
83 phandle_t system;
84 pcell_t cells[2];
85 int len;
86
87 system = OF_finddevice("/system");
88 if (system != 0) {
89 len = OF_getprop(system, "linux,serial", &cells, sizeof(cells));
90 if (len > 0)

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

96 }
97}
98
99/*
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.
103 */
76 phandle_t system;
77 pcell_t cells[2];
78 int len;
79
80 system = OF_finddevice("/system");
81 if (system != 0) {
82 len = OF_getprop(system, "linux,serial", &cells, sizeof(cells));
83 if (len > 0)

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

89 }
90}
91
92/*
93 * Set up static device mappings.
94 * All on-chip peripherals exist in a 16MB range starting at 0x20000000.
95 * Map the entire range using 1MB section mappings.
96 */
104int
105initarm_devmap_init(void)
97static int
98bcm2835_devmap_init(platform_t plat)
106{
107
108 arm_devmap_add_entry(0x20000000, 0x01000000);
109 return (0);
110}
111
112struct arm32_dma_range *
113bus_dma_get_range(void)

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

124}
125
126void
127cpu_reset()
128{
129 bcmwd_watchdog_reset();
130 while (1);
131}
99{
100
101 arm_devmap_add_entry(0x20000000, 0x01000000);
102 return (0);
103}
104
105struct arm32_dma_range *
106bus_dma_get_range(void)

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

117}
118
119void
120cpu_reset()
121{
122 bcmwd_watchdog_reset();
123 while (1);
124}
125static platform_method_t bcm2835_methods[] = {
126 PLATFORMMETHOD(platform_devmap_init, bcm2835_devmap_init),
127 PLATFORMMETHOD(platform_lastaddr, bcm2835_lastaddr),
128 PLATFORMMETHOD(platform_late_init, bcm2835_late_init),
132
129
130 PLATFORMMETHOD_END,
131};
132
133FDT_PLATFORM_DEF(bcm2835, "bcm2835", 0, "raspberrypi,model-b");
134