~pmdj/ubuntu/trusty/qemu/2.9+applesmc+fadtv3

« back to all changes in this revision

Viewing changes to hw/arm/exynos4210.c

  • Committer: Phil Dennis-Jordan
  • Date: 2017-07-21 08:03:43 UTC
  • mfrom: (1.1.1)
  • Revision ID: phil@philjordan.eu-20170721080343-2yr2vdj7713czahv
New upstream release 2.9.0.

Show diffs side-by-side

added added

removed removed

Lines of Context:
24
24
#include "qemu/osdep.h"
25
25
#include "qapi/error.h"
26
26
#include "qemu-common.h"
 
27
#include "qemu/log.h"
27
28
#include "cpu.h"
28
29
#include "hw/boards.h"
29
30
#include "sysemu/sysemu.h"
74
75
/* PMU SFR base address */
75
76
#define EXYNOS4210_PMU_BASE_ADDR            0x10020000
76
77
 
 
78
/* Clock controller SFR base address */
 
79
#define EXYNOS4210_CLK_BASE_ADDR            0x10030000
 
80
 
77
81
/* Display controllers (FIMD) */
78
82
#define EXYNOS4210_FIMD0_BASE_ADDR          0x11C00000
79
83
 
138
142
                       info->smp_loader_start);
139
143
}
140
144
 
 
145
static uint64_t exynos4210_calc_affinity(int cpu)
 
146
{
 
147
    uint64_t mp_affinity;
 
148
 
 
149
    /* Exynos4210 has 0x9 as cluster ID */
 
150
    mp_affinity = (0x9 << ARM_AFF1_SHIFT) | cpu;
 
151
 
 
152
    return mp_affinity;
 
153
}
 
154
 
141
155
Exynos4210State *exynos4210_init(MemoryRegion *system_mem,
142
156
        unsigned long ram_size)
143
157
{
163
177
        }
164
178
 
165
179
        s->cpu[n] = ARM_CPU(cpuobj);
 
180
        object_property_set_int(cpuobj, exynos4210_calc_affinity(n),
 
181
                                "mp-affinity", &error_abort);
166
182
        object_property_set_int(cpuobj, EXYNOS4210_SMP_PRIVATE_BASE_ADDR,
167
183
                                "reset-cbar", &error_abort);
168
184
        object_property_set_bool(cpuobj, true, "realized", &error_fatal);
297
313
    */
298
314
    sysbus_create_simple("exynos4210.pmu", EXYNOS4210_PMU_BASE_ADDR, NULL);
299
315
 
 
316
    sysbus_create_simple("exynos4210.clk", EXYNOS4210_CLK_BASE_ADDR, NULL);
 
317
 
300
318
    /* PWM */
301
319
    sysbus_create_varargs("exynos4210.pwm", EXYNOS4210_PWM_BASE_ADDR,
302
320
                          s->irq_table[exynos4210_get_irq(22, 0)],