From: Michael <macallan1888@gmail.com>
To: <linux-parisc@vger.kernel.org>
Subject: Graphics support
Date: Mon, 16 Dec 2024 06:41:56 -0500 [thread overview]
Message-ID: <20241216064156.6bbe1330@bushmills> (raw)
Hello,
is anyone still interested in graphics support on HP hardware? If so, I
made some progress on Visualize EG, HCRX and Visualize FX.
Full disclosure - I'm a NetBSD developer, I used some docs found on
parisc.docs.kernel.org, this is my attempt at giving back / comparing notes.
Recently I wrote native drivers for Visualize EG, HCRX and Visualize FX
4, they all support framebuffer access, basic acceleration, cursor
sprite, and on the HCRX, 24bit colour. I also wrote an Xorg driver that
supports whatever acceleration I could figure out, which is copy, fill
and hardware cursor, on all of the above, except ROPs on Visualize FX.
EG, HCRX etc. register functions are here:
http://cvsweb.netbsd.org/bsdweb.cgi/src/sys/dev/ic/stireg.h
PCI Visualize EG / Graffiti driver:
http://cvsweb.netbsd.org/bsdweb.cgi/src/sys/arch/hppa/dev/gftfb.c
HCRX / hyperdrive:
http://cvsweb.netbsd.org/bsdweb.cgi/src/sys/arch/hppa/dev/hyperfb.c
Visualize FX stuff, mostly found by disassembling the STI ROM on my FX4,
comparing notes with docs and hints found on parisc.docs.kernel.org,
and a lot of experimentation:
http://cvsweb.netbsd.org/bsdweb.cgi/src/sys/dev/ic/summitreg.h
http://cvsweb.netbsd.org/bsdweb.cgi/src/sys/arch/hppa/dev/summitfb.c
The Xorg driver lives here:
http://cvsweb.netbsd.org/bsdweb.cgi/xsrc/external/mit/xf86-video-ngle/dist/src/
What I haven't been able to figure out so far:
- how to do ROPs on Visualize FX. I can do colour expansion, STI colour
change and plain fills and copies
- access off-screen memory on HCRX. All we can mess with is 1280x1024
in both 24bit and the 8bit overlay. I'm sure the thing has more
memory than that, but blitter ops wrap at those boundaries and FB
reads return garbage.
- off-screen memory on Visualize FX. STI reports 2048x2048 but what's
actually accessible is screen width rounded up to the next multiple
of 512 by screen height. There is a clipping register which STI sets
to match the video mode but setting it to 2048x2048 does not allow
access to anything else, blitter ops wrap like on HCRX. I *know* this
thing has more memory than that. On the PCI EG we get full 2048x2048
no matter what mode we're in.
- 24bit colour on the FX. I can switch the FB wndow to 32bit mode but
that doesn't result in 24bit pixels being displayed.
hope this helps
Michael
next reply other threads:[~2024-12-16 11:42 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-12-16 11:41 Michael [this message]
2024-12-17 20:28 ` Graphics support (HP VisEG/VisFX/HCRX...) Helge Deller
2024-12-18 2:54 ` Michael
2024-12-18 3:58 ` Michael
2025-03-11 6:57 ` Michael
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20241216064156.6bbe1330@bushmills \
--to=macallan1888@gmail.com \
--cc=linux-parisc@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox