Subject: Re: X server on NetBSD/shark 4.0
To: Izumi Tsutsui <tsutsui@ceres.dti.ne.jp>
From: Michael Lorenz <macallan@NetBSD.org>
List: port-arm
Date: 12/27/2007 11:50:10
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hello,

On Dec 27, 2007, at 10:27, Izumi Tsutsui wrote:

> macallan@NetBSD.org wrote:
>
>> If someone would send me a Rev. 4 or
>> older Shark I'd also make chipsfb ( and probably XFree's chips
>> driver ) work - shouldn't be hard, just add the same kind of
>> attachment code as I did for igsfb and fixup chipsfb to work on non-
>> PCI buses.
>
> I have some piece of code to split sys/dev/pci/chipsfb.c
> into MI dev/ic/chipsfb.c and dev/pci/chipsfb_pci.c, but
> current pci/chipsfb.c has PCI specific ioctls.
> How should they be handled in the MI driver?

Split the chipsfb_ioctl() as well? Personally I don't like those ioctl 
()s at all since they allow the Xserver to shuffle BAR mappings around.

> The rest problem is to investigate how we can get
> chipsfb memory address for registers and framebuffers.

Do you have the ct65550 datasheet? If not I can mail it to you or I  
think you can still download it from intel.com. You can get the  
aperture address from the extended VGA registers if the chip runs in  
VLB mode. The aperture only contains the framebuffer and blitter  
registers, each in big- and little endian format. All flat panel,  
video IO and so on registers are accessible through  VGA registers.  
In VLB mode the aperture might be little endian only IIRC. One  
problem I ran into with igsfb was that I couldn't get the shark to  
map the whole aperture into kernel address space, look at the igsfb  
attachment code and you'll see what I mean - chipsfb will likely need  
similar trickery.

have fun
Michael
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.7 (Darwin)

iQEVAwUBR3PXwspnzkX8Yg2nAQL3AAgAiHDQCcYyiYP+S7u/Vl2wJoDfUicuLs/F
LhP2SApPda1RCnRFtlia9s9//7jsirJ+wRiQeM5sW0PNGpFC2Aw2gRKESC33WT8l
kPu5lykAAt9baCMPksq+r9Xv8KxaGJC7xNXKm/SWjL01CadVxUgN7WIfxjXLT/6f
f7MXLP7sCu+aKEwsMT7Jd/BQv3UdZmvgjUFn+MthE3GoW/EwGhi+Ro2bRPOLCGxD
IoAjx2ettES+32baYYzBfCqa+E4QhOIDFFx806xnHXWhLXNcKM8rQu+MovjtA/c+
iJdW3X+pgON8BXKgUmsvIrcKYcmEAJnfpCqa6rW/AqLWkEF3AqcNKQ==
=G1lx
-----END PGP SIGNATURE-----