qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] GSoC projects about AHCI and S3 Trio
@ 2010-03-29 23:52 Roland Elek
  2010-03-30  0:55 ` Alexander Graf
  0 siblings, 1 reply; 6+ messages in thread
From: Roland Elek @ 2010-03-29 23:52 UTC (permalink / raw)
  To: qemu-devel

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

Dear Qemu developers,

I am a university student from Hungary interested in contributing to Qemu
through Google Summer of Code.
I am interested in emulation, and two projects from the ideas page in
particular. One of them is AHCI emulation.
Can I kindly ask you what were the hardest points that made the project get
a high difficulty rating, so that I
could determine whether to apply for it or not? At a first glance, I think
that AHCI code from VirtualBox OSE
would be a good place to start. What do you think?

A quick search through the mailing list archives showed that the other
topic, the S3 Trio, has been around for
some time now. DOSBox has support for it, and is open source, so I think we
could build upon that.

Best regards,
Roland Elek

[-- Attachment #2: Type: text/html, Size: 1155 bytes --]

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

* Re: [Qemu-devel] GSoC projects about AHCI and S3 Trio
  2010-03-29 23:52 [Qemu-devel] GSoC projects about AHCI and S3 Trio Roland Elek
@ 2010-03-30  0:55 ` Alexander Graf
  2010-03-30  4:56   ` Natalia Portillo
  2010-03-30 12:14   ` Paul Brook
  0 siblings, 2 replies; 6+ messages in thread
From: Alexander Graf @ 2010-03-30  0:55 UTC (permalink / raw)
  To: Roland Elek; +Cc: qemu-devel

Hi Roland,


On 30.03.2010, at 01:52, Roland Elek wrote:

> Dear Qemu developers,
> 
> I am a university student from Hungary interested in contributing to Qemu through Google Summer of Code.
> I am interested in emulation, and two projects from the ideas page in particular. One of them is AHCI emulation.
> Can I kindly ask you what were the hardest points that made the project get a high difficulty rating, so that I
> could determine whether to apply for it or not? At a first glance, I think that AHCI code from VirtualBox OSE
> would be a good place to start. What do you think?

I looked at the AHCI code from vbox some time ago and deemed it unreadable. It's probably easier to go with the spec and implement it from there.

Nevertheless, if you're good at reading C++ that code might come in handy. Just don't expect to be able to take any of it over to Qemu :-). Coding styles between the two projects differ a lot.

The hard part is that it's a reasonably complex piece of hardware that needs to be emulated. The "high" ranking was basically to show people that we need someone with serious skills and eagerness to work on it :-). If you're a quick learner the skills part shouldn't be too hard. The eagerness and ambition part is the really important one.

> A quick search through the mailing list archives showed that the other topic, the S3 Trio, has been around for
> some time now. DOSBox has support for it, and is open source, so I think we could build upon that.

Yep. On IRC there's also someone called "jai" who wanted to look into that as well. Mind to coordinate with him?


Alex

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

* Re: [Qemu-devel] GSoC projects about AHCI and S3 Trio
  2010-03-30  0:55 ` Alexander Graf
@ 2010-03-30  4:56   ` Natalia Portillo
  2010-03-30 12:14   ` Paul Brook
  1 sibling, 0 replies; 6+ messages in thread
From: Natalia Portillo @ 2010-03-30  4:56 UTC (permalink / raw)
  To: Alexander Graf; +Cc: qemu-devel, Roland Elek

Hi,

El 30/03/2010, a las 01:55, Alexander Graf escribió:

> Hi Roland,
>
>
> On 30.03.2010, at 01:52, Roland Elek wrote:
>
>> Dear Qemu developers,
>>
>> I am a university student from Hungary interested in contributing  
>> to Qemu through Google Summer of Code.
>> I am interested in emulation, and two projects from the ideas page  
>> in particular. One of them is AHCI emulation.
>> Can I kindly ask you what were the hardest points that made the  
>> project get a high difficulty rating, so that I
>> could determine whether to apply for it or not? At a first glance,  
>> I think that AHCI code from VirtualBox OSE
>> would be a good place to start. What do you think?
>
> I looked at the AHCI code from vbox some time ago and deemed it  
> unreadable. It's probably easier to go with the spec and implement  
> it from there.
>
> Nevertheless, if you're good at reading C++ that code might come in  
> handy. Just don't expect to be able to take any of it over to  
> Qemu :-). Coding styles between the two projects differ a lot.
>
> The hard part is that it's a reasonably complex piece of hardware  
> that needs to be emulated. The "high" ranking was basically to show  
> people that we need someone with serious skills and eagerness to  
> work on it :-). If you're a quick learner the skills part shouldn't  
> be too hard. The eagerness and ambition part is the really important  
> one.
>
>> A quick search through the mailing list archives showed that the  
>> other topic, the S3 Trio, has been around for
>> some time now. DOSBox has support for it, and is open source, so I  
>> think we could build upon that.
>
> Yep. On IRC there's also someone called "jai" who wanted to look  
> into that as well. Mind to coordinate with him?
>

I'm the one that proposed the S3 Trio/Virge idea.
The greatest thing about this card is that almost every operating  
system has or had a driver for it, and has also been used in non-x86  
machines extensively.

If you need testing or getting information from a real working card (I  
have a couple of them, all for x86 unfortuneately) just mail me.

Regards,
Natalia Portillo

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

* Re: [Qemu-devel] GSoC projects about AHCI and S3 Trio
  2010-03-30  0:55 ` Alexander Graf
  2010-03-30  4:56   ` Natalia Portillo
@ 2010-03-30 12:14   ` Paul Brook
  2010-03-30 18:52     ` Roland Elek
  1 sibling, 1 reply; 6+ messages in thread
From: Paul Brook @ 2010-03-30 12:14 UTC (permalink / raw)
  To: qemu-devel; +Cc: Alexander Graf, Roland Elek

> Hi Roland,
> 
> On 30.03.2010, at 01:52, Roland Elek wrote:
> > Dear Qemu developers,
> >
> > I am a university student from Hungary interested in contributing to Qemu
> > through Google Summer of Code. I am interested in emulation, and two
> > projects from the ideas page in particular. One of them is AHCI
> > emulation. Can I kindly ask you what were the hardest points that made
> > the project get a high difficulty rating, so that I could determine
> > whether to apply for it or not? At a first glance, I think that AHCI code
> > from VirtualBox OSE would be a good place to start. What do you think?
> 
> I looked at the AHCI code from vbox some time ago and deemed it unreadable.
>  It's probably easier to go with the spec and implement it from there.

I agree. IIRC the AHCI documentation is pretty good.
The main reason I implemented the LSI SCSI HBA rather than AHCI was because at 
the time the SCSI HBA had much wider OS support.

Paul

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

* Re: [Qemu-devel] GSoC projects about AHCI and S3 Trio
  2010-03-30 12:14   ` Paul Brook
@ 2010-03-30 18:52     ` Roland Elek
  2010-04-01 11:55       ` Paul Brook
  0 siblings, 1 reply; 6+ messages in thread
From: Roland Elek @ 2010-03-30 18:52 UTC (permalink / raw)
  To: qemu-devel

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

2010/3/30 Paul Brook <paul@codesourcery.com>

> > Hi Roland,
> >
> > On 30.03.2010, at 01:52, Roland Elek wrote:
> > > Dear Qemu developers,
> > >
> > > I am a university student from Hungary interested in contributing to
> Qemu
> > > through Google Summer of Code. I am interested in emulation, and two
> > > projects from the ideas page in particular. One of them is AHCI
> > > emulation. Can I kindly ask you what were the hardest points that made
> > > the project get a high difficulty rating, so that I could determine
> > > whether to apply for it or not? At a first glance, I think that AHCI
> code
> > > from VirtualBox OSE would be a good place to start. What do you think?
> >
> > I looked at the AHCI code from vbox some time ago and deemed it
> unreadable.
> >  It's probably easier to go with the spec and implement it from there.
>
> I agree. IIRC the AHCI documentation is pretty good.
> The main reason I implemented the LSI SCSI HBA rather than AHCI was because
> at
> the time the SCSI HBA had much wider OS support.
>
> Paul
>

I'm almost convinced to try my hand at the AHCI project, thank you. :-) I
will contact jai
soon about the S3 Trio. I'll also skim through the documentation so that I
can set
reasonable goals in my timeline.

[-- Attachment #2: Type: text/html, Size: 2066 bytes --]

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

* Re: [Qemu-devel] GSoC projects about AHCI and S3 Trio
  2010-03-30 18:52     ` Roland Elek
@ 2010-04-01 11:55       ` Paul Brook
  0 siblings, 0 replies; 6+ messages in thread
From: Paul Brook @ 2010-04-01 11:55 UTC (permalink / raw)
  To: qemu-devel; +Cc: Roland Elek

> I will contact jai  soon about the S3 Trio. I'll also skim through the
> documentation so that I can set reasonable goals in my timeline.

TBH I'm less convinced about the utility of emulating an S3 graphics card. 
You'd want to make sure you know what you're expecting from it.
While it may have a bit wider OS support that the Cirrus Logic cards, it's 
still an extremely old card that AFAIK ceased production many years ago.
In modern terms it also has extremely limited capabilities.

Even the 2D engine is likely to be tricky accelerate because. The framebuffer 
is exposed to the guest, so you have to accomodate the guest reading back the 
results.

Some models have rudimentary 3D acceleration, however in practice I doubt this 
is worth much. I did a bit of 3D graphics when these cards were common, and 
IIRC they're missing some common features (multitexturing, possibly even 
prespective correction) and [as real hardware] are generally slower than a 
good software renderer.

If you want useful 3D acceleration, then you pretty much have to go for a 
paravirtual interface.  The interface exposed by real hardware is closely tied 
to the implementation, which makes it hard (and slow) to emulate.  This has 
been discussed a few times before, and amounts to feeding OpenGL commands (or 
equivalents such as Gallium pipes) over a remote transport.

Paul

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

end of thread, other threads:[~2010-04-01 11:55 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-03-29 23:52 [Qemu-devel] GSoC projects about AHCI and S3 Trio Roland Elek
2010-03-30  0:55 ` Alexander Graf
2010-03-30  4:56   ` Natalia Portillo
2010-03-30 12:14   ` Paul Brook
2010-03-30 18:52     ` Roland Elek
2010-04-01 11:55       ` Paul Brook

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).