|
Made keypad detection function by fixing page table entries and pin definitions. |
default tip |
|
Introduced a separate GPIO module with its operations each employing a base |
|
|
Fixed function declaration. |
|
|
Made the clock/timer test more specific. |
|
|
Introduced a separate clock and power management module, simplifying the LCD |
|
|
Continued the parameterisation of the LCD configuration activity. |
|
|
Removed superfluous definitions. |
|
|
Moved initialisation details to the generic LCD module, changing the address |
|
|
Fixed erroneous clock and power management operations. |
|
|
Make LCD register access relative to a supplied base parameter. |
|
|
Parameterised LCD controller initialisation, allowing addresses to be passed in |
|
|
Parameterise LCD register operations using the display information structure, |
|
|
Initialise framebuffer structure reference members but correct them later. |
|
|
Eliminate redundant members in vidinfo_t, adding a member referencing the |
|
|
Fixed GPIO region sizes. |
|
|
Introduced separate abstractions for GPIO keymap details and moved |
|
|
Use the physical base address of the GPIO registers. |
|
|
Replaced u8, u16 and u32 with uint8_t, uint16_t and uint32_t respectively. |
|
|
Employ structure member names to make initialisation clearer. |
|
|
Adjusted GPIO usage and added a form of visual feedback. Unfortunately, it |
|
|
Reduced the page table size to avoid potential conflicts. |
|
|
Removed redundant code. |
|
|
Added buzzer configuration for potential future use. |
|
|
Changed the GPIO mapping to use uncached memory. |
|
|
Attempt to properly use the GPIO set and clear registers. |
|
|
Tidied and renamed some memory definitions, attempting to make sure that GPIO |
|
|
Fixed GPIO set and clear pin functions. |
|
|
Added a keyboard scanning task. |
|
|
Increased the number of tasks, cycling over initialised tasks only. |
|
|
Added initial support for task-based GPIO access. |
|
|
Changed the task stack virtual address, introducing also a GPIO address base. |
|
|
Employ timer-based task switching again. |
|
|
Introduced a separate initial tasks manifest. |
|
|
Moved example tasks into a separate directory. |
|
|
Introduced convenience functions handling page pairs. |
|
|
Permit keyboard row GPIO interrupt requests, although they are not handled. |
|
|
Added copyright and licensing documentation. |
|
|
Added missing support for the MiniPC (untested at present), and moved common |
|
|
Let the power button switch between tasks, using an IRQ that occurs when the |
|
|
Removed superfluous void argument type declarations. |
|
|
Introduced memory layout headers and consolidated memory-related definitions. |
|
|
Mapped task stacks from 0x01c0000 downwards, moved kernel stacks to 0x8000 and |
|
|
Permit entry into user mode by avoiding calling udelay which needs access to a |
|
|
Allow the TLB random mapping threshold to be specified. |
|
|
Added and tidied status register definitions. |
|
|
Made an inline function for address space conversion. |
|
|
Added definitions for register fields. |
|
|
Reordered function definitions. |
|
|
Moved almost all assembly language fragments into a separate file. |
|
|
Replaced assembly language section with plain storage operations. |
|
|
Introduced MIPS register definition symbols. |
|
|
Use the exception return mechanism to invoke a task. |
|
|
Removed superfluous and limited user mode entry function. |
|
|
Presumably nothing special needs doing after TLB exception handling, so a direct |
|
|
Removed the separate reference for the task entry routine. It shouldn't be |
|
|
Attempted to map the relocated object table into each task, using explicit |
|
|
Moved the object tables above the program and data. |
|
|
Put the global object tables in separate page pairs. |
|
|
Relocated the global object table regions to reside on page boundaries. |
|
|
Attempted to simplify region allocation by putting the object table copy in a |
|