[PATCH v2 0/7] Raspberry Pi VideoCore support for console on HDMI output
ppisa4lists at pikron.com
ppisa4lists at pikron.com
Sun May 22 00:13:03 UTC 2016
From: Pavel Pisa <ppisa at pikron.com>
The series updates and cleans YANG Qiao GSoC 2015 work for actual
RTEMS 4.12 development version.
The changes require that VideoCore firmware is running even
if video output is not used because mailbox based communication
with VideoCore is used to obtain SD command line parameters
passed to the RTEMS application image and to limit RTEMS RAM
workarea to not go beyond VideoCore assigned memory start.
The two options configurable by "cmdline.txt" file read
and made accessible by VideoCore firmware are present
--video=
possible values
auto - select mode automatically according to the connected monitor
off (or none) - disable video support
width x height with optional bpp - for example 800x600 or 800x600-32
--console=
fbcons - redirect RTEMS console output to the connected monitor
if --video= is not specified/enabled or monitor is not detected
then output stays to be connected to the UART
Typical "cmdline.txt" content for testing
--video=auto --console=fbcons
WARNING: the used VideoCore service for command line arguments retrieval
returns only these arguments setup in "cmdline.txt".
Arguments provided to U-boot or other loader are ignored.
Code has been tested or Raspberry Pi 1 with U-boot + TFTP and with direct
boot from SD card with and without monitor connected. Code tested to
not break standard serial console output for Raspberry Pi 2 on QEMU.
Graphic output under QEMU results write abort because QEMU reported
framebuffer size is not completely accessible, only 400 rows from 640x480
reported screen works for the given mode.
[PATCH v2] Updates to v2 version
- formatting of newly introduced files normalized by rtems.uncrustify
- incorrect clean after release spot by Gedare Bloom corrected
- HDMI monitor presence test commented (solution is not ideal but works
and if some more straightforward solution is found in future,
then it can be replaced)
- atomic flag used to ensure framebuffer single open only
is left in a place
- more cleanups and adjustment of compatibility with RPi2
Pavel Pisa (4):
arm/raspberrypi: cmdline enhancement and early access workaround.
arm/raspberrypi: ensure that correct RPI_PERIPHERAL_BASE is provided
by raspberrypi.h
arm/raspberrypi: Raspberry Pi v2 ALLOCATE_BUFFER VC4 operation returns
direct address.
arm/raspberrypi: move MMU in front of application image to respect
variable memory size.
YANG Qiao (3):
arm/raspberrypi: add VideoCore framebuffer without initialization
arm/raspberrypi: add video outchar support for rpi bsp
arm/raspberrypi: add fbcons support for rpi bsp
c/src/lib/libbsp/arm/raspberrypi/Makefile.am | 13 +-
.../arm/raspberrypi/console/console-config.c | 12 +-
.../arm/raspberrypi/console/console_select.c | 113 +
c/src/lib/libbsp/arm/raspberrypi/console/fb.c | 409 ++
c/src/lib/libbsp/arm/raspberrypi/console/fbcons.c | 177 +
c/src/lib/libbsp/arm/raspberrypi/console/fbcons.h | 47 +
.../lib/libbsp/arm/raspberrypi/console/font_data.h | 4639 ++++++++++++++++++++
c/src/lib/libbsp/arm/raspberrypi/console/outch.c | 463 ++
c/src/lib/libbsp/arm/raspberrypi/gpio/rpi-gpio.c | 1 +
c/src/lib/libbsp/arm/raspberrypi/include/bsp.h | 9 +
.../libbsp/arm/raspberrypi/include/raspberrypi.h | 1 +
c/src/lib/libbsp/arm/raspberrypi/include/rpi-fb.h | 54 +
c/src/lib/libbsp/arm/raspberrypi/misc/mailbox.c | 1 +
c/src/lib/libbsp/arm/raspberrypi/misc/timer.c | 1 +
c/src/lib/libbsp/arm/raspberrypi/misc/vc.c | 4 +
c/src/lib/libbsp/arm/raspberrypi/preinstall.am | 8 +
.../arm/raspberrypi/startup/bspgetworkarea.c | 77 +
.../libbsp/arm/raspberrypi/startup/bspstarthooks.c | 4 +
c/src/lib/libbsp/arm/raspberrypi/startup/cmdline.c | 12 +-
c/src/lib/libbsp/arm/raspberrypi/startup/linkcmds | 6 +-
c/src/lib/libbsp/arm/raspberrypi/startup/mminit.c | 31 +
21 files changed, 6071 insertions(+), 11 deletions(-)
create mode 100644 c/src/lib/libbsp/arm/raspberrypi/console/console_select.c
create mode 100644 c/src/lib/libbsp/arm/raspberrypi/console/fb.c
create mode 100644 c/src/lib/libbsp/arm/raspberrypi/console/fbcons.c
create mode 100644 c/src/lib/libbsp/arm/raspberrypi/console/fbcons.h
create mode 100644 c/src/lib/libbsp/arm/raspberrypi/console/font_data.h
create mode 100644 c/src/lib/libbsp/arm/raspberrypi/console/outch.c
create mode 100644 c/src/lib/libbsp/arm/raspberrypi/include/rpi-fb.h
create mode 100644 c/src/lib/libbsp/arm/raspberrypi/startup/bspgetworkarea.c
create mode 100644 c/src/lib/libbsp/arm/raspberrypi/startup/mminit.c
--
1.9.1
More information about the devel
mailing list