| Age | Commit message (Collapse) | Author | 
|---|
|  | Signed-off-by: Ian Moffett <ian@osmora.org> | 
|  | Signed-off-by: Ian Moffett <ian@osmora.org> | 
|  | Add a current processor field to the processor core descriptor in order
to keep track of which process is currently running.
Signed-off-by: Ian Moffett <ian@osmora.org> | 
|  | Store a trapframe in the process control block so that state may be
saved and restored between contexts
Signed-off-by: Ian Moffett <ian@osmora.org> | 
|  | Condence the page table write into a single line and point the next
table as a virtual address
Signed-off-by: Ian Moffett <ian@osmora.org> | 
|  | Introduce lazy allocation in the vm_map() function. When passing a zero
value to any of the base address fields of the map spec, allocate our
own memory.
Signed-off-by: Ian Moffett <ian@osmora.org> | 
|  | Signed-off-by: Ian Moffett <ian@osmora.org> | 
|  | This commit introduces a new mmu_write_vas() function to allow the
caller to change the virtual address space used by the current
processor.
Signed-off-by: Ian Moffett <ian@osmora.org> | 
|  | Signed-off-by: Ian Moffett <ian@osmora.org> | 
|  | Signed-off-by: Ian Moffett <ian@osmora.org> | 
|  | Signed-off-by: Ian Moffett <ian@osmora.org> | 
|  | This commit introduces the initial logic for putting process descriptors
in an initialized state. This commit also introduces the process control
block definition.
Signed-off-by: Ian Moffett <ian@osmora.org> | 
|  | This commit introduces the ability to create new virtual address spaces
for user programs and a zeroed lower half.
Signed-off-by: Ian Moffett <ian@osmora.org> | 
|  | Signed-off-by: Ian Moffett <ian@osmora.org> | 
|  | Signed-off-by: Ian Moffett <ian@osmora.org> | 
|  | Signed-off-by: Ian Moffett <ian@osmora.org> | 
|  | Place a guard page at the end of every mapping to catch overflows before
they start corrupting the system.
Signed-off-by: Ian Moffett <ian@osmora.org> | 
|  | Introduce a machine independent mechanism to map multiple pages through
the new vm_map() function
Signed-off-by: Ian Moffett <ian@osmora.org> | 
|  | Verify the edge case where firmware may want to move/remap the Local APIC
MMIO base as we are making an assumption that the base starts at
0xFEE00000.
Signed-off-by: Ian Moffett <ian@osmora.org> | 
|  | Signed-off-by: Ian Moffett <ian@osmora.org> | 
|  | Signed-off-by: Ian Moffett <ian@osmora.org> | 
|  | Signed-off-by: Ian Moffett <ian@osmora.org> | 
|  | Signed-off-by: Ian Moffett <ian@osmora.org> | 
|  | These are chipset specific and independent of the processor, therefore
they must only be initialized once.
Signed-off-by: Ian Moffett <ian@osmora.org> | 
|  | If we update the GDTR after setting GS_BASE, we wont be referencing any
valid data anymore. Switch out the GDTR early on.
Signed-off-by: Ian Moffett <ian@osmora.org> | 
|  | Signed-off-by: Ian Moffett <ian@osmora.org> | 
|  | Signed-off-by: Ian Moffett <ian@osmora.org> | 
|  | Signed-off-by: Ian Moffett <ian@osmora.org> | 
|  | The redirection entry count within the IOAPICVER register is zero-based,
therefore one must be added to make it absolute.
Signed-off-by: Ian Moffett <ian@osmora.org> | 
|  | This commit implements the task state segment and splits up processor
initialization into two seperate stages. The cpu_conf() function is
apart of the first stage and sets up things that should be going by the
time the kernel is started / early init. The cpu_init() function runs
later functions that initialize further platform specific subsystems.
Signed-off-by: Ian Moffett <ian@osmora.org> | 
|  | Signed-off-by: Ian Moffett <ian@osmora.org> | 
|  | Signed-off-by: Ian Moffett <ian@osmora.org> | 
|  | Signed-off-by: Ian Moffett <ian@osmora.org> | 
|  | Signed-off-by: Ian Moffett <ian@osmora.org> | 
|  | Signed-off-by: Ian Moffett <ian@osmora.org> | 
|  | Signed-off-by: Ian Moffett <ian@osmora.org> | 
|  | This commit improves the scalability of ioapic_read_madt() while
retaining as much simplicity as possible.
- Add callback argument
- Add optional argument to callback
ioapic_read_madt() now returns the value given back by a callback.
Signed-off-by: Ian Moffett <ian@osmora.org> | 
|  | Signed-off-by: Ian Moffett <ian@osmora.org> | 
|  | This commit introduces the initial I/O APIC driver code that does basic
initialization i.e., grabbing base address from MADT, masking each pin,
etc.
Signed-off-by: Ian Moffett <ian@osmora.org> | 
|  | Signed-off-by: Ian Moffett <ian@osmora.org> | 
|  | Signed-off-by: Ian Moffett <ian@osmora.org> | 
|  | Signed-off-by: Ian Moffett <ian@osmora.org> | 
|  | Signed-off-by: Ian Moffett <ian@osmora.org> | 
|  | To avoid interrupt conflicts on some machines with the I/O APIC, disable
the legacy i8259 chip by default
Signed-off-by: Ian Moffett <ian@osmora.org> | 
|  | Signed-off-by: Ian Moffett <ian@osmora.org> | 
|  | Signed-off-by: Ian Moffett <ian@osmora.org> | 
|  | Signed-off-by: Ian Moffett <ian@osmora.org> | 
|  | Signed-off-by: Ian Moffett <ian@osmora.org> | 
|  | Signed-off-by: Ian Moffett <ian@osmora.org> | 
|  | Signed-off-by: Ian Moffett <ian@osmora.org> |