Subversion Repositories HelenOS

Compare Revisions

Ignore whitespace Rev 2410 → Rev 2411

/branches/arm/kernel/arch/arm32/src/exception.c
153,6 → 153,7
);
}
 
 
/** Switch CPU to mode in which interrupts are serviced (currently it
* is Undefined mode).
*
186,6 → 187,7
);
}
 
 
/** Calls exception dispatch routine. */
#define CALL_EXC_DISPATCH(exception) \
asm("mov r0, %0" : : "i" (exception)); \
/branches/arm/kernel/arch/arm32/src/ddi/ddi.c
37,7 → 37,7
#include <proc/task.h>
#include <arch/types.h>
 
/** Enable I/O space range for task. Not used on ARM.
/** Enable I/O space range for task (not used on ARM).
*
* Interrupts are disabled and task is locked.
*
/branches/arm/kernel/arch/arm32/src/arm32.c
68,6 → 68,7
}
 
 
/** Performs arm32 specific initialization before mm is initialized. */
void arch_pre_mm_init(void)
{
75,6 → 76,7
interrupts_disable();
}
 
 
/** Performs arm32 specific initialization afterr mm is initialized. */
void arch_post_mm_init(void)
{
92,6 → 94,7
#endif
}
 
 
/** Performs arm32 specific tasks needed after cpu is initialized.
*
* Currently the function is empty.
100,6 → 103,7
{
}
 
 
/** Performs arm32 specific tasks needed before the multiprocessing is
* initialized.
*
109,6 → 113,7
{
}
 
 
/** Performs arm32 specific tasks needed after the multiprocessing is
* initialized.
*
125,6 → 130,7
tlb_invalidate_all();
}
 
 
/** Performs arm32 specific tasks needed before the new thread is scheduled.
*
* It sets supervisor_sp.
134,6 → 140,7
supervisor_sp = (uintptr_t) &THREAD->kstack[THREAD_STACK_SIZE-SP_DELTA];
}
 
 
/** Performs arm32 specific tasks before a thread stops running.
*
* Currently the function is empty.
142,6 → 149,7
{
}
 
 
/** Halts CPU. */
void cpu_halt(void)
{
/branches/arm/kernel/arch/arm32/src/mm/tlb.c
50,6 → 50,7
);
}
 
 
/** Invalidate all entries in TLB that belong to specified address space.
*
* @param asid This parameter is ignored as the ARM architecture doesn't support it.
59,6 → 60,7
tlb_invalidate_all();
}
 
 
/** Invalidate single entry in TLB
*
* @param page Virtual adress of the page
73,6 → 75,7
);
}
 
 
/** Invalidate TLB entries for specified page range belonging to specified address space.
*
* @param asid This parameter is ignored as the ARM architecture doesn't support it.
/branches/arm/kernel/arch/arm32/src/mm/page.c
87,6 → 87,7
*
* @param physaddr Physical addres where device is connected
* @param size Length of area where device is present
*
* @return Virtual address where device will be accessable
*/
uintptr_t hw_map(uintptr_t physaddr, size_t size)
/branches/arm/kernel/arch/arm32/src/userspace.c
55,6 → 55,7
uint32_t pc;
} ustate_t;
 
 
/** Changes processor mode and jumps to the address specified in the first parameter.
*
* @param kernel_uarg Userspace settings (entry point, stack, ...).
/branches/arm/kernel/arch/arm32/src/interrupt.c
56,6 → 56,7
return ipl;
}
 
 
/** Enable interrupts.
*
* @return Old interrupt priority level.
69,6 → 70,7
return ipl;
}
 
 
/** Restore interrupt priority level.
*
* @param ipl Saved interrupt priority level.
81,6 → 83,7
);
}
 
 
/** Read interrupt priority level.
*
* @return Current interrupt priority level.
90,6 → 93,7
return current_status_reg_read();
}
 
 
/** Initialize basic tables for exception dispatching
* and starts the timer.
*/