#2900 assigned project

Improve PC386 BSP

Reported by: Tanu Hari Dixit Owned by: Joel Sherrill
Priority: normal Milestone: Indefinite
Component: bsps Version:
Severity: normal Keywords: SoC, BSP, medium
Cc: Blocked By:
Blocking:

Description (last modified by Gedare Bloom)

Improve PC386 BSP

Status:

Uninitiated.

Introduction:

This project involves addressing a few deficiencies in the existing pc386 BSP as well as improving it so it supports non-legacy hardware configurations.

Goal:

To have a functioning pc386 BSP that can operate on PCs without legacy BIOS or peripherals. It needs to support all features of RTEMS including SMP and Thread Local Storage.

Requirements:

  • Knowledge of x86 ASM, C Programming language.
  • Run on non-legacy hardware configurations.
  • Share code as possible with new x86_64 BSP (when exists).
  • Add Thread Local Storage support to x86 (#2468)
  • Thread migration is broken on SMP on x86 (#2183)
  • See also #2901 Emulate i386 (x86) BIOS for VESA Support

There are at least the following tasks identified related to support of non-legacy PC configurations. A non-legacy PC appears to be one in which at least EFI is used instead of BIOS.

  • Support video on non-legacy systems. Probe for video is known to fail on non-legacy systems.
  • Support PCI on non-legacy systems. Probe for PCI BIOS is known to fail on non-legacy systems. It is expected that PCI bus access routines will need to be provided for non-legacy configurations.
  • Support for APIC rather than legacy PIC.

It is a requirement for code to be shared with x86_64 when that is supported. It is also a requirement for the pc386 BSP to support both legacy and non-legacy and decide what to do at run-time.

Resources:

  • Current RTEMS developers.
  • Do not reinvent the wheel and use existing code instead, e.g. from FreeBSD.

Change History (8)

comment:1 Changed on 02/06/17 at 04:02:32 by Chris Johns

Type: enhancementproject

comment:2 Changed on 03/02/17 at 20:21:35 by Gedare Bloom

Keywords: BSP added

comment:3 Changed on 08/14/17 at 00:17:26 by Chris Johns

Version: 4.11

comment:4 Changed on 01/14/20 at 20:56:57 by Gedare Bloom

Description: modified (diff)
Owner: set to Joel Sherrill
Status: newassigned

comment:5 Changed on 02/03/22 at 19:27:43 by Gedare Bloom

Keywords: large small added

comment:6 Changed on 02/16/24 at 00:06:00 by Gedare Bloom

Keywords: medium added; small removed

comment:7 Changed on 02/17/24 at 02:12:16 by Gedare Bloom

Description: modified (diff)

comment:8 Changed on 02/17/24 at 02:12:45 by Gedare Bloom

Keywords: large removed
Note: See TracTickets for help on using tickets.