Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • kernel/arch/arm32/src/mach/testarm/testarm.c

    rc0699467 r0e56575d  
    3737#include <arch/mach/testarm/testarm.h>
    3838#include <mm/page.h>
     39#include <mm/km.h>
    3940#include <genarch/fb/fb.h>
    4041#include <abi/fb/visuals.h>
     
    7172void gxemul_init(void)
    7273{
    73         gxemul_kbd = (void *) hw_map(GXEMUL_KBD_ADDRESS, PAGE_SIZE);
    74         gxemul_rtc = (void *) hw_map(GXEMUL_RTC_ADDRESS, PAGE_SIZE);
    75         gxemul_irqc = (void *) hw_map(GXEMUL_IRQC_ADDRESS, PAGE_SIZE);
     74        gxemul_kbd = (void *) km_map(GXEMUL_KBD_ADDRESS, PAGE_SIZE,
     75            PAGE_WRITE | PAGE_NOT_CACHEABLE);
     76        gxemul_rtc = (void *) km_map(GXEMUL_RTC_ADDRESS, PAGE_SIZE,
     77            PAGE_WRITE | PAGE_NOT_CACHEABLE);
     78        gxemul_irqc = (void *) km_map(GXEMUL_IRQC_ADDRESS, PAGE_SIZE,
     79            PAGE_WRITE | PAGE_NOT_CACHEABLE);
    7680}
    7781
     
    117121                }
    118122        }
    119 
     123       
    120124        /*
    121125         * This is the necessary evil until the userspace driver is entirely
     
    124128        sysinfo_set_item_val("kbd", NULL, true);
    125129        sysinfo_set_item_val("kbd.inr", NULL, GXEMUL_KBD_IRQ);
    126         sysinfo_set_item_val("kbd.address.virtual", NULL, (sysarg_t) gxemul_kbd);
     130        sysinfo_set_item_val("kbd.address.physical", NULL,
     131            GXEMUL_KBD_ADDRESS);
    127132#endif
    128133}
     
    167172        clock();
    168173        spinlock_lock(&irq->lock);
    169 
     174       
    170175        /* acknowledge tick */
    171176        *((uint32_t *) (gxemul_rtc + GXEMUL_RTC_ACK_OFFSET))
     
    176181static void gxemul_timer_irq_init(void)
    177182{
    178         irq_initialize(&gxemul_timer_irq);
    179         gxemul_timer_irq.devno = device_assign_devno();
    180         gxemul_timer_irq.inr = GXEMUL_TIMER_IRQ;
    181         gxemul_timer_irq.claim = gxemul_timer_claim;
    182         gxemul_timer_irq.handler = gxemul_timer_irq_handler;
    183 
    184         irq_register(&gxemul_timer_irq);
     183        irq_initialize(&gxemul_timer_irq);
     184        gxemul_timer_irq.devno = device_assign_devno();
     185        gxemul_timer_irq.inr = GXEMUL_TIMER_IRQ;
     186        gxemul_timer_irq.claim = gxemul_timer_claim;
     187        gxemul_timer_irq.handler = gxemul_timer_irq_handler;
     188       
     189        irq_register(&gxemul_timer_irq);
    185190}
    186191
     
    193198void gxemul_timer_irq_start(void)
    194199{
    195         gxemul_timer_irq_init();
    196         gxemul_timer_start(GXEMUL_TIMER_FREQ);
     200        gxemul_timer_irq_init();
     201        gxemul_timer_start(GXEMUL_TIMER_FREQ);
    197202}
    198203
     
    202207 * @param size          Place to store memory size.
    203208 */
    204 void gxemul_get_memory_extents(uintptr_t *start, uintptr_t *size)
     209void gxemul_get_memory_extents(uintptr_t *start, size_t *size)
    205210{
    206211        *start = 0;
    207         *size = *((uintptr_t *) (GXEMUL_MP_ADDRESS + GXEMUL_MP_MEMSIZE_OFFSET));
     212        *size = *((uintptr_t *) (GXEMUL_MP_ADDRESS + GXEMUL_MP_MEMSIZE_OFFSET));
    208213}
    209214
     
    222227        uint32_t sources = gxemul_irqc_get_sources();
    223228        unsigned int i;
    224 
     229       
    225230        for (i = 0; i < GXEMUL_IRQ_COUNT; i++) {
    226231                if (sources & (1 << i)) {
Note: See TracChangeset for help on using the changeset viewer.