All of lore.kernel.org
 help / color / mirror / Atom feed
* [Fwd: Re: [Ilugc] help regarding powerpc and vga card]
@ 2006-07-14 10:39 sudheer
  2006-07-14 19:20 ` Benjamin Herrenschmidt
  0 siblings, 1 reply; 3+ messages in thread
From: sudheer @ 2006-07-14 10:39 UTC (permalink / raw)
  To: linuxppc-embedded

[-- Attachment #1: Type: text/plain, Size: 1 bytes --]



[-- Attachment #2: Re: [Ilugc] help regarding powerpc and vga card --]
[-- Type: message/rfc822, Size: 6523 bytes --]

From: sudheer <urwithsudheer@gmail.com>
To: Sivasankar Chander <siva.ilugc@gmail.com>
Cc: ilugc@ae.iitm.ac.in
Subject: Re: [Ilugc] help regarding powerpc and vga card
Date: Fri, 14 Jul 2006 15:30:08 +0530
Message-ID: <44B76B28.8080200@gmail.com>

Hello Sivasankar,

sudheer wrote:

> Hello Sivasankar,
>
> Sivasankar Chander wrote:
>
>>
>>
>> On 7/13/06, *sudheer* <urwithsudheer@gmail.com 
>> <mailto:urwithsudheer@gmail.com>> wrote:
>>
>>
>>
>>     Anyone please help me if i am missing anything.
>>
>>     All PCI VGA cards for use on x86 PCs have a ROMscan BIOS
>> extension on them. This initializes the card after POST - basically,
>> the motherboard BIOS transfers control to the BIOS on the
>> PCI VGA card, which then initializes itself. If control is not
>> transfered to the VGA BIOS on the card, the VGA controller
>> stays isolated and will not respond to PCI device enumeration,
>> etc. 
>
I have a doubt here. How does the processor know that the card  sitting 
here is a vga card
and control should be transfered to initialize it.  I think it can know 
that it is a vga card only by reading the config space .
And bios is necesary for vga card to work in its normal way. Is it 
necesary for bios to be initialised to get detected.
Please correct me if i am wrong.

>> This is actually part of the PC-98 spec., which allows
>> multiple VGA controllers to co-exist on the PCI and/or AGP
>> bus.
>>
>>    On a PowerPC system, the ROMscan BIOS cannot execute
>> (because it has x86 instructions in it), so there will be an alternate
>> way to initialize the VGA controller so that it can respond to the
>> PCI enumeration, etc. However, that method will be card/controller
>> specific - neither the card manufacturer nor ATI may ever have
>> released the specs for how this is done. Usually, it will be through
>> hidden memory-mapped IO (MMIO) registers on the VGA controller
>> chip, but there are numerous proprietary ways to implement this,
>> most of it being undocumented or controller-specific.
>
>
> Thanks for your information.
> Could anyone please suggest me which  vga card i need to buy so that 
> it can be supported
> with powerpc boards and available in the market. Or can i have any 
> other alternative solution .
>
> Thanks  & Regards
> Sudheer
>
>>
>> (Lots of things are taken for granted in the x86 PC world, which
>> are actually very complex and difficult-to-implement protocols.
>> That's one of the reasons why all the alternative PC processor
>> architectures have failed over the last 20 years).
>>
>> -Siva
>
Thanks & Regards
Sudheer
_______________________________________________
To unsubscribe, email ilugc-request@ae.iitm.ac.in with 
"unsubscribe <password> <address>"
in the subject or body of the message.  
http://www.ae.iitm.ac.in/mailman/listinfo/ilugc


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [Fwd: Re: [Ilugc] help regarding powerpc and vga card]
  2006-07-14 10:39 [Fwd: Re: [Ilugc] help regarding powerpc and vga card] sudheer
@ 2006-07-14 19:20 ` Benjamin Herrenschmidt
  0 siblings, 0 replies; 3+ messages in thread
From: Benjamin Herrenschmidt @ 2006-07-14 19:20 UTC (permalink / raw)
  To: sudheer; +Cc: Sivasankar Chander, linuxppc-embedded


>         >>     All PCI VGA cards for use on x86 PCs have a ROMscan
>         BIOS
>         >> extension on them. This initializes the card after POST -
>         basically,
>         >> the motherboard BIOS transfers control to the BIOS on the
>         >> PCI VGA card, which then initializes itself. If control is
>         not
>         >> transfered to the VGA BIOS on the card, the VGA controller
>         >> stays isolated and will not respond to PCI device
>         enumeration,
>         >> etc. 
>         >
>         I have a doubt here. How does the processor know that the card
>         sitting 
>         here is a vga card
>         and control should be transfered to initialize it.  I think it
>         can know 
>         that it is a vga card only by reading the config space .
>         And bios is necesary for vga card to work in its normal way.
>         Is it 
>         necesary for bios to be initialised to get detected.
>         Please correct me if i am wrong.

You are not wrong (though your mailer sucks). The initial poster seems
to be a bit confused.

All PCI video cards (VGA or not) shall respond to PCI config spaces
normally. They can be enumerated, and if they carry a BIOS image (or any
other firmware support like an Open Firmware F-Code driver), it should
be accessible via the standard PCI expansion ROM BAR.

There is no such thing as "the VGA controller stays isolated" or
whatever sort of crap. However, it is true that the video card needs to
be initialized to be able to actually output anything useful, and
depending on the chip, it's generically a complex procedure involving
setting up all sorts of PLLs, initializing the card's memory controller
and performing the appropriate SDRAM init sequence, initializing the
various external chips like TMDS transmitters on the card etc etc... 

That is normally done by the card's firmware which generally sits in the
card's PCI expansion ROM (not always though, it's getting common
nowadays on x86 laptops for example to have the video card's BIOS mixes
with the main BIOS to save a flash chip). The most common type of
firmware is indeed an x86 video BIOS, which can run on non-x86 platforms
through an emulator like x86emu (a common practice, works fairly well
afaik).

Note that what that BIOS does it to poke the card's registers, which are
accessible via the card's normal PCI BARs :) At least most of the time.
Some cards do indeed require some use of the legacy VGA registers for
initialization, which means issuing IO cycles on the bus to fixed VGA
addresses, but that's pretty much irrelevant.

^ permalink raw reply	[flat|nested] 3+ messages in thread

* [Fwd: Re: [Ilugc] help regarding powerpc and vga card]
@ 2006-07-14 10:38 sudheer
  0 siblings, 0 replies; 3+ messages in thread
From: sudheer @ 2006-07-14 10:38 UTC (permalink / raw)
  To: linuxppc-embedded

[-- Attachment #1: Type: text/plain, Size: 1 bytes --]



[-- Attachment #2: Re: [Ilugc] help regarding powerpc and vga card --]
[-- Type: message/rfc822, Size: 4481 bytes --]

[-- Attachment #2.1.1: Type: text/plain, Size: 1437 bytes --]

On 7/13/06, sudheer <urwithsudheer@gmail.com> wrote:
>
>
>
> Anyone please help me if i am missing anything.
>
>     All PCI VGA cards for use on x86 PCs have a ROMscan BIOS
extension on them. This initializes the card after POST - basically,
the motherboard BIOS transfers control to the BIOS on the
PCI VGA card, which then initializes itself. If control is not
transfered to the VGA BIOS on the card, the VGA controller
stays isolated and will not respond to PCI device enumeration,
etc. This is actually part of the PC-98 spec., which allows
multiple VGA controllers to co-exist on the PCI and/or AGP
bus.

   On a PowerPC system, the ROMscan BIOS cannot execute
(because it has x86 instructions in it), so there will be an alternate
way to initialize the VGA controller so that it can respond to the
PCI enumeration, etc. However, that method will be card/controller
specific - neither the card manufacturer nor ATI may ever have
released the specs for how this is done. Usually, it will be through
hidden memory-mapped IO (MMIO) registers on the VGA controller
chip, but there are numerous proprietary ways to implement this,
most of it being undocumented or controller-specific.

(Lots of things are taken for granted in the x86 PC world, which
are actually very complex and difficult-to-implement protocols.
That's one of the reasons why all the alternative PC processor
architectures have failed over the last 20 years).

-Siva

[-- Attachment #2.1.2: Type: text/html, Size: 1846 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2006-07-14 19:20 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2006-07-14 10:39 [Fwd: Re: [Ilugc] help regarding powerpc and vga card] sudheer
2006-07-14 19:20 ` Benjamin Herrenschmidt
  -- strict thread matches above, loose matches on Subject: below --
2006-07-14 10:38 sudheer

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.