Difference between revisions of "Grand Unified Kernel"

From LinuxMIPS
Jump to: navigation, search
(Tasks)
(Tasks: Use colored background for readability. colored letters on the usual background color can be virtually unreadable.)
Line 14: Line 14:
 
|-
 
|-
 
| rowspan="7" | Convert SEAD3 to DT
 
| rowspan="7" | Convert SEAD3 to DT
| rowspan="7" style="color: greenyellow;" | Submitted ([[User:Paul|Paul]])
+
| rowspan="7" bgcolor=greenyellow | Submitted ([[User:Paul|Paul]])
| style="color: greenyellow;" | UARTs
+
| bgcolor=greenyellow | UARTs
 
|-
 
|-
| style="color: greenyellow;" | Parallel Flash
+
| bgcolor=greenyellow | Parallel Flash
 
|-
 
|-
| style="color: greenyellow;" | LEDs
+
| bgcolor=greenyellow | LEDs
 
|-
 
|-
| style="color: greenyellow;" | LCD Display
+
| bgcolor=greenyellow | LCD Display
 
|-
 
|-
| style="color: greenyellow;" | USB
+
| bgcolor=greenyellow | USB
 
|-
 
|-
| style="color: greenyellow;" | Ethernet
+
| bgcolor=greenyellow | Ethernet
 
|-
 
|-
| style="color: greenyellow;" | Interrupt Controllers
+
| bgcolor=greenyellow | Interrupt Controllers
 
|-
 
|-
 
| rowspan="5" | Genericise memory layout
 
| rowspan="5" | Genericise memory layout
| rowspan="5" style="color: orange;" | In Progress ([[User:Paul|Paul]])
+
| rowspan="5" bgcolor=orange | In Progress ([[User:Paul|Paul]])
| style="color: orange;" | Genericise PAGE_OFFSET, PHYS_OFFSET, HIGHMEM_START
+
| bgcolor=orange | Genericise PAGE_OFFSET, PHYS_OFFSET, HIGHMEM_START
 
|-
 
|-
| style="color: orange;" | Genericise MIPS64 xkphys/CAC_BASE CCA
+
| bgcolor=orange | Genericise MIPS64 xkphys/CAC_BASE CCA
 
|-
 
|-
| style="color: red;" | Genericise EVA segment mapping
+
| bgcolor=coral | Genericise EVA segment mapping
 
|-
 
|-
| style="color: red;" | Allow EVA kernels to run on non-EVA systems
+
| bgcolor=coral | Allow EVA kernels to run on non-EVA systems
 
|-
 
|-
| style="color: red;" | Allow XPA kernels to run on non-XPA systems
+
| bgcolor=coral | Allow XPA kernels to run on non-XPA systems
 
|-
 
|-
 
| rowspan="2" | Add generic platform
 
| rowspan="2" | Add generic platform
| rowspan="2" style="color: orange;" | In Progress ([[User:Paul|Paul]])
+
| rowspan="2" bgcolor=orange | In Progress ([[User:Paul|Paul]])
| style="color: orange;" | Optional board callbacks based on DT compatible string
+
| bgcolor=orange | Optional board callbacks based on DT compatible string
 
|-
 
|-
| style="color: red;" | Remove board callbacks piecemeal
+
| bgcolor=coral | Remove board callbacks piecemeal
 
|-
 
|-
 
| rowspan="1" | Add Boston board
 
| rowspan="1" | Add Boston board
| rowspan="1" style="color: orange;" | In Progress ([[User:Paul|Paul]])
+
| rowspan="1" bgcolor=orange | In Progress ([[User:Paul|Paul]])
 
|
 
|
 
|-
 
|-
 
| rowspan="5" | Convert Malta to DT
 
| rowspan="5" | Convert Malta to DT
| rowspan="5" style="color: orange;" | In Progress ([[User:Paul|Paul]])
+
| rowspan="5" bgcolor=orange | In Progress ([[User:Paul|Paul]])
| style="color: orange;" | UARTs
+
| bgcolor=orange | UARTs
 
|-
 
|-
| style="color: orange;" | Parallel Flash
+
| bgcolor=orange | Parallel Flash
 
|-
 
|-
| style="color: orange;" | RTC
+
| bgcolor=orange | RTC
 
|-
 
|-
| style="color: orange;" | Interrupt Controllers
+
| bgcolor=orange | Interrupt Controllers
 
|-
 
|-
| style="color: orange;" | System controllers & PCI (gt64120, bonito & MSC)
+
| bgcolor=orange | System controllers & PCI (gt64120, bonito & MSC)
 
|-
 
|-
 
| rowspan="1" | Convert Malta to generic platform
 
| rowspan="1" | Convert Malta to generic platform
| rowspan="1" style="color: red;" | TODO
+
| rowspan="1" bgcolor=coral | TODO
 
|
 
|
 
|-
 
|-
 
| rowspan="1" | Convert pistachio to generic platform
 
| rowspan="1" | Convert pistachio to generic platform
| rowspan="1" style="color: red;" | TODO
+
| rowspan="1" bgcolor=coral | TODO
 
|
 
|
 
|-
 
|-
 
| rowspan="1" | Convert xilfpga/MIPSfpga to generic platform
 
| rowspan="1" | Convert xilfpga/MIPSfpga to generic platform
| rowspan="1" style="color: red;" | TODO
+
| rowspan="1" bgcolor=coral | TODO
 
|
 
|
 
|-
 
|-
 
| rowspan="1" | Genericise cpu_has_* macros (allow kernels to build for specific platforms or multiple platforms)
 
| rowspan="1" | Genericise cpu_has_* macros (allow kernels to build for specific platforms or multiple platforms)
| rowspan="1" style="color: orangered;" | Thinking about it ([[User:Paul|Paul]])
+
| rowspan="1" bgcolor=orangered | Thinking about it ([[User:Paul|Paul]])
 
|
 
|
 
|-
 
|-
 
| rowspan="1" | Convert ingenic (jz4740,jz4780) to generic platform
 
| rowspan="1" | Convert ingenic (jz4740,jz4780) to generic platform
| rowspan="1" style="color: red;" | TODO
+
| rowspan="1" bgcolor=coral | TODO
 
|
 
|
 
|-
 
|-
 
| rowspan="1" | Run (conservatively) on unrecognised MIPSr6 CPUs
 
| rowspan="1" | Run (conservatively) on unrecognised MIPSr6 CPUs
| rowspan="1" style="color: orangered;" | Thinking about it ([[User:Paul|Paul]])
+
| rowspan="1" bgcolor=orangered | Thinking about it ([[User:Paul|Paul]])
 
|
 
|
 
|}
 
|}

Revision as of 22:02, 9 August 2016

Aim

The aim of this project is to produce a single kernel binary that can run on multiple machines. There are multiple benefits to doing this:

  • Adding new platforms should become easier as no board/platform level code should be required.
  • The amount of board/platform level code we need to maintain will be reduced significantly.
  • The number of kernel binaries that need to be built & tested can be reduced significantly.
  • Distributions will be able to include a kernel binary built for a given architecture revision that will run on any board with a CPU implementing that architecture revision.

Tasks

Essential tasks
Convert SEAD3 to DT Submitted (Paul) UARTs
Parallel Flash
LEDs
LCD Display
USB
Ethernet
Interrupt Controllers
Genericise memory layout In Progress (Paul) Genericise PAGE_OFFSET, PHYS_OFFSET, HIGHMEM_START
Genericise MIPS64 xkphys/CAC_BASE CCA
Genericise EVA segment mapping
Allow EVA kernels to run on non-EVA systems
Allow XPA kernels to run on non-XPA systems
Add generic platform In Progress (Paul) Optional board callbacks based on DT compatible string
Remove board callbacks piecemeal
Add Boston board In Progress (Paul)
Convert Malta to DT In Progress (Paul) UARTs
Parallel Flash
RTC
Interrupt Controllers
System controllers & PCI (gt64120, bonito & MSC)
Convert Malta to generic platform TODO
Convert pistachio to generic platform TODO
Convert xilfpga/MIPSfpga to generic platform TODO
Genericise cpu_has_* macros (allow kernels to build for specific platforms or multiple platforms) Thinking about it (Paul)
Convert ingenic (jz4740,jz4780) to generic platform TODO
Run (conservatively) on unrecognised MIPSr6 CPUs Thinking about it (Paul)