[PATCHv2/RFC 0/8] i386 VESA framebuffer support
Gedare Bloom
gedare at rtems.org
Thu Nov 20 14:54:59 UTC 2014
Committed, please verify. There were 3 whitespace errrors (newline at
EOF) if you care to find and fix them.
-Gedare
On Thu, Nov 20, 2014 at 9:00 AM, Jan Dolezal <dolezj21 at fel.cvut.cz> wrote:
> Framebuffer driver for i386 PC686BSP utilizing VESA BIOS EXTENSIONS
> to initialize graphics mode during startup of RTEMS executive.
> Temporary switch to realmode is used for Video BIOS invocation.
>
> The implementation has been tested with microwindows from RTEMS Graphics
> Toolkit using QEMU {cirrus, std} and on real hardware - Intel Crestline
> integrated graphic, NVidia GeForce 6600GT, AMD Radeon HD 7770 and some
> other cards.
>
> changes since v1:
> - header namespace: <bsptblsizes.h> -> <bsp/tblsizes.h> [PATCH 1/8]
> - names and implementation of converting functions between realmode
> pointer and physical address and back [PATCH 2/8]
> - GDTR manipulation functions parameters changed to use explicit
> width types [PATCH 3/8]
> - using macro RTEMS_INLINE_ROUTINE where applicable
> - defined macro RTEMS_COMPILER_PACKED_ATTRIBUTE [PATCH 4/8]
> - i386_raw_gdt_entry() present bit used as protection from using
> entry if it is not completely written [PATCH 5/8]
> - renamed realmode interface related files from int16* to realmode_int*
> [PATCH 6/8]
> - renamed and merged functions for obtaining realmode buffer
> from *primary_buffer* to *default_buffer* [PATCH 6/8]
> - edid.h - more portable - removed bitfields, using only byte size types
> - dropped support for EDID v2 since it is deprecated
> by v1.3 (2/2000) and may appear only as an extension
> according to E-EDID (7/2006)
> [PATCH 7/8]
> - struct modeParams typedefed [PATCH 8/8]
>
> changes proposed by and applied thanks to Gedare Bloom and Pavel Pisa
>
> Jan Dolezal (8):
> i386/pc386: configurable size of descriptor tables
> score: i386: functions converting real mode pointer to physical
> address and back
> i386: GDTR manipulation functions parameters changed to use explicit
> width types
> cpukit: basedefs: macro for packed attribute
> i386: global descriptor table manipulation functions
> i386/shared/realmode_int: real mode interrupt interface
> i386/pc386/include: header files for VESA BIOS EXTENSIONS and VESA
> Extended Display Identification Data
> i386/pc386: VESA based frame buffer utilizing real mode interrupt 10h
>
> c/src/lib/libbsp/i386/pc386/Makefile.am | 10 +
> c/src/lib/libbsp/i386/pc386/configure.ac | 18 +
> c/src/lib/libbsp/i386/pc386/console/fb_vesa_rm.c | 858 +++++++++++++++++++++
> c/src/lib/libbsp/i386/pc386/include/bsp.h | 6 +-
> c/src/lib/libbsp/i386/pc386/include/edid.h | 513 ++++++++++++
> c/src/lib/libbsp/i386/pc386/include/fb_vesa.h | 131 ++++
> c/src/lib/libbsp/i386/pc386/include/tblsizes.h | 25 +
> c/src/lib/libbsp/i386/pc386/include/vbe3.h | 463 +++++++++++
> c/src/lib/libbsp/i386/pc386/preinstall.am | 22 +
> c/src/lib/libbsp/i386/pc386/start/start.S | 8 +
> c/src/lib/libbsp/i386/pc386/startup/ldsegs.S | 18 +-
> c/src/lib/libbsp/i386/shared/irq/idt.c | 156 +++-
> .../libbsp/i386/shared/realmode_int/realmode_int.c | 406 ++++++++++
> .../libbsp/i386/shared/realmode_int/realmode_int.h | 85 ++
> c/src/lib/libcpu/i386/cpu.h | 95 ++-
> c/src/lib/libcpu/i386/idtr.S | 6 +-
> cpukit/score/cpu/i386/cpu_asm.S | 43 ++
> cpukit/score/cpu/i386/rtems/score/i386.h | 32 +
> cpukit/score/include/rtems/score/basedefs.h | 10 +
> 19 files changed, 2853 insertions(+), 52 deletions(-)
> create mode 100644 c/src/lib/libbsp/i386/pc386/console/fb_vesa_rm.c
> create mode 100644 c/src/lib/libbsp/i386/pc386/include/edid.h
> create mode 100644 c/src/lib/libbsp/i386/pc386/include/fb_vesa.h
> create mode 100644 c/src/lib/libbsp/i386/pc386/include/tblsizes.h
> create mode 100644 c/src/lib/libbsp/i386/pc386/include/vbe3.h
> create mode 100644 c/src/lib/libbsp/i386/shared/realmode_int/realmode_int.c
> create mode 100644 c/src/lib/libbsp/i386/shared/realmode_int/realmode_int.h
>
> --
> 1.9.1
>
> _______________________________________________
> devel mailing list
> devel at rtems.org
> http://lists.rtems.org/mailman/listinfo/devel
More information about the devel
mailing list