[Qemu-devel] I want to add the ARMv6 instructions, who can give some advices?

2006-06-07 Thread wang lianwei
Hi all,

I want to add the ARMv6 instructions support to the QEMU, andnow I am analysing the QEMU architecture. I think maybe someone has done it or doing it now.

Can you give me some guide about this work or give your suggestions?

Please talk about it.
___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


Re: [Qemu-devel] Ask for debugging linux kernel with Qemu 0.8.1 on Msys

2006-06-07 Thread Tieu Ma Dau
I recently try the patch you recommend but I got the same result. In  fact, after make this patch into Qemu source code 0.8.1, I compiled it  with these commands:  ./configure --prefix=/travail/install/qemu-8.1  make install  And I run Qemu to simulate ARM on debugging mode:  ./qemu-system-arm -kernel myKernel-with-kgdb -initrd arm_root.img -s  And I tried to connect to Qemu by default port 1234: (gdb) target remote localhost:1234  But I got the error: connection refused  So I test the current openned port in localhost by the command: netstat
 -ao  And the result I got is below:   [code]  Connexions actives Proto  Adresse locale Adresse  distante EtatTCP  vinh-phu:epmap  vinh-phu:0  LISTENING 1056TCP vinh-phu:microsoft-ds  vinh-phu:0  LISTENING 4TCP  vinh-phu:1025  vinh-phu:0  LISTENING 1216TCP  vinh-phu:1027  vinh-phu:0  LISTENING 4TCP  vinh-phu:2869  vinh-phu:0  LISTENING 1416TCP  vinh-phu:3016  vinh-phu:0  LISTENING 2036TCP  vinh-phu:3019  vinh-phu:0 
 LISTENING 2012TCP  vinh-phu:3026  vinh-phu:0  LISTENING 2012TCP  vinh-phu:5000  vinh-phu:0  LISTENING 1416TCP  vinh-phu:5101 
 vinh-phu:0  LISTENING 2012TCP  vinh-phu:3001  vinh-phu:0  LISTENING 1800TCP  vinh-phu:3002  vinh-phu:0  LISTENING 1216TCP 
 vinh-phu:3003  vinh-phu:0  LISTENING 1216TCP  vinh-phu:3015  vinh-phu:0  LISTENING 2036TCP  vinh-phu:3015  localhost:3016  ESTABLISHED 2036   
 TCP  vinh-phu:3016  localhost:3015  ESTABLISHED 2036TCP  vinh-phu:3019  cs8.msg.dcn.yahoo.com:5050 ESTABLISHED  2012TCP  vinh-phu:3026  sip7.voice.re2.yahoo.com:5061 ESTABLISHED  2012TCP  vinh-phu:15871 
 vinh-phu:0  LISTENING 1988UDP  vinh-phu:epmap  *:*  1056UDP vinh-phu:microsoft-ds  *:*  4UDP  vinh-phu:isakmp  *:*  896UDP  vinh-phu:1026  *:*  1216UDP 
 vinh-phu:3004  *:*  1216UDP  vinh-phu:3011  *:*  1988UDP  vinh-phu:3012 
 *:*  1384UDP  vinh-phu:3025  *:*  1384UDP  vinh-phu:3068 
 *:*  1384UDP  vinh-phu:3069  *:*  1384UDP  vinh-phu:3071 
 *:*  1384UDP  vinh-phu:3072  *:*  1384UDP  vinh-phu:3073 
 *:*  1384UDP  vinh-phu:3074  *:*  1384UDP  vinh-phu:ntp 
 *:*  1216UDP  vinh-phu:1900  *:*  1416UDP  vinh-phu:3005 
 *:*  1216UDP  vinh-phu:3009  *:*  1216UDP  vinh-phu:3022 
 *:*  2012UDP  vinh-phu:3441  *:*  2036UDP  vinh-phu:3997 
 *:*  1540UDP  vinh-phu:ntp  *:*  1216UDP  vinh-phu:1900 
 *:*  1416UDP  vinh-phu:3030  *:*  2012UDP  vinh-phu:3031 
 *:*  2012UDP  vinh-phu:8257  *:*  1988UDP  vinh-phu:57073 
 *:*  1988  [/code]  Do you know any suggestion for this problem?  Thanks so much  Best regards.  Thanh  Lonnie Mendez [EMAIL PROTECTED] wrote:  On Tue, 2006-06-06 at 05:35 -0700, Tieu Ma Dau wrote: Hi All,  I've compiled Linux kernel 2.6.16 with kgdb on Linux. And after that, I've tried to debug this kernel with Qemu 0.8.1 on Msys to simulate ARM Processor. In fact, I've run the command below:
  qemu-system-arm -kernel myKernel -initrd arm_root.img -s  But I can't make the connection from arm-toolchain-gdb to the port 1234 (by default, this port must be openned by Qemu when using the option -s for debugging)  Furthermore, I've confirmed if the port 1234 is openned or not with the command: netstat -ao and there is not port 1234 openned. I've also try the option -p 123456 to change the default port for debugging of Qemu but I've got the same result.  Do you know where the problem arrive? Have you seen this?http://lists.gnu.org/archive/html/qemu-devel/2006-05/msg00457.htmlhttp://lists.gnu.org/archive/html/qemu-devel/___Qemu-devel mailing
 listQemu-devel@nongnu.orghttp://lists.nongnu.org/mailman/listinfo/qemu-devel __Do You Yahoo!?Tired of spam?  Yahoo! Mail has the best spam protection around http://mail.yahoo.com ___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


Re: [Qemu-devel] Ask for debugging linux kernel with Qemu 0.8.1 onMsys

2006-06-07 Thread Kazu

Sent: Wednesday, June 07, 2006 4:56 PM Tieu Ma Dau wrote:


I recently try the patch you recommend but I got the same result. In fact,
after make this patch into Qemu source code 0.8.1, I compiled it with these
commands:
./configure --prefix=/travail/install/qemu-8.1
make install
And I run Qemu to simulate ARM on debugging mode:
./qemu-system-arm -kernel myKernel-with-kgdb -initrd arm_root.img -s
And I tried to connect to Qemu by default port 1234: (gdb) target remote
localhost:1234
But I got the error: connection refused

MinGW's gdb doesn't support network debugging. You need to use Cygwin's gdb
for remote debugging with network.

So I test the current openned port in localhost by the command: netstat -ao
And the result I got is below:
[code]
Connexions actives

  Proto  Adresse locale Adresse distante   Etat
  TCPvinh-phu:epmap vinh-phu:0 LISTENING   1056
  TCPvinh-phu:microsoft-ds  vinh-phu:0 LISTENING   4
  TCPvinh-phu:1025  vinh-phu:0 LISTENING   1216
  TCPvinh-phu:1027  vinh-phu:0 LISTENING   4
  TCPvinh-phu:2869  vinh-phu:0 LISTENING   1416
  TCPvinh-phu:3016  vinh-phu:0 LISTENING   2036
  TCPvinh-phu:3019  vinh-phu:0 LISTENING   2012
  TCPvinh-phu:3026  vinh-phu:0 LISTENING   2012
  TCPvinh-phu:5000  vinh-phu:0 LISTENING   1416
  TCPvinh-phu:5101  vinh-phu:0 LISTENING   2012
  TCPvinh-phu:3001  vinh-phu:0 LISTENING   1800
  TCPvinh-phu:3002  vinh-phu:0 LISTENING   1216
  TCPvinh-phu:3003  vinh-phu:0 LISTENING   1216
  TCPvinh-phu:3015  vinh-phu:0 LISTENING   2036
  TCPvinh-phu:3015  localhost:3016 ESTABLISHED 2036
  TCPvinh-phu:3016  localhost:3015 ESTABLISHED 2036
  TCPvinh-phu:3019  cs8.msg.dcn.yahoo.com:5050  ESTABLISHED
2012
  TCPvinh-phu:3026  sip7.voice.re2.yahoo.com:5061  ESTABLISHED
2012
  TCPvinh-phu:15871 vinh-phu:0 LISTENING   1988
  UDPvinh-phu:epmap *:*1056
  UDPvinh-phu:microsoft-ds  *:*4
  UDPvinh-phu:isakmp*:*896
  UDPvinh-phu:1026  *:*1216
  UDPvinh-phu:3004  *:*1216
  UDPvinh-phu:3011  *:*1988
  UDPvinh-phu:3012  *:*1384
  UDPvinh-phu:3025  *:*1384
  UDPvinh-phu:3068  *:*1384
  UDPvinh-phu:3069  *:*1384
  UDPvinh-phu:3071  *:*1384
  UDPvinh-phu:3072  *:*1384
  UDPvinh-phu:3073  *:*1384
  UDPvinh-phu:3074  *:*1384
  UDPvinh-phu:ntp   *:*1216
  UDPvinh-phu:1900  *:*1416
  UDPvinh-phu:3005  *:*1216
  UDPvinh-phu:3009  *:*1216
  UDPvinh-phu:3022  *:*2012
  UDPvinh-phu:3441  *:*2036
  UDPvinh-phu:3997  *:*1540
  UDPvinh-phu:ntp   *:*1216
  UDPvinh-phu:1900  *:*1416
  UDPvinh-phu:3030  *:*2012
  UDPvinh-phu:3031  *:*2012
  UDPvinh-phu:8257  *:*1988
  UDPvinh-phu:57073 *:*1988
[/code]
Do you know any suggestion for this problem?

Port 1234 doesn't open. The program doesn't work well. If you use the patch
, TCP 1234 port will be used. Did you see this message?

Waiting gdb connection on port 1234

Regards,
Kazu



___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


Re: [Qemu-devel] getting the 5446 in 1152x864 mode

2006-06-07 Thread Julian Seward
 On Wednesday 07 June 2006 02:31, Ben Taylor wrote:
 I've been able to get 1152x864 out of the Solaris Xorg gdm5446 driver
 so there must be something else that's causing you problems.  I think I've
 gotten win98se to do it as well.

Thanks for the confirmation.  So, I re-tried (extensively) to get
1152x864.  That resolution is listed by Windows as possible at 70Hz
and 75Hz (monitor), so I set the monitor refresh rates to those values
in the Windows display settings, but still no success.  Even with
rebooting after changing the settings.

I still also have sometimes an 'invisible wall' problem for the mouse 
pointer problem that was discussed on this list a few weeks ago.

J


___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


Re: [Qemu-devel] Ask for debugging linux kernel with Qemu 0.8.1 onMsys

2006-06-07 Thread Tieu Ma Dau
 MinGW's gdb doesn't support network debugging. You need to use Cygwin's gdb for remote debugging with network.  I installed gcc-4.0 toolchain (so it also include gdb) from http://www.gnuarm.com/ to debug the code generated for ARM Linux.   And I did not install Cygwin because when I had installed this gcc-4.0  toolchain, the installer had asked me if I want to install the files  .dll used by Cygwin in case of I had not installed Cygwin as well.  Finally, it means I did not installed Cygwin but installed gcc-4.0  toolchain and I can run well the command (used for debug ARM Linux  code): arm-elf-gdbPort 1234 doesn't open. The program doesn't work well. If you use the patch 
 , TCP 1234 port will be used. Did you see this message?Waiting gdb connection on port 1234  I said that I've applied this patch to source code and recompiled this source code but I got the same problem.  For the msg: "Waiting gdb connection on port 1234", I did not see this  message in the screen of Msys (because I think that Qemu must use stdio to print the message on the console of Msys but there is not stdio in Msys/Windows) but I don't know if it can be printed on the screen (the new window for Qemu when running Qemu from Msys) of Qemu or not; because this screen scroll very fast and I could not see all the messages on the screen.   So do you have any suggestions to see  all of which printed on
 the screen of Qemu? And any solutions to test  if the port 1234 is already openned or not? Or any another patches?  Thanks so much and best regards.  Thanh  Kazu [EMAIL PROTECTED] wrote:  Sent: Wednesday, June 07, 2006 4:56 PM Tieu Ma Dau wrote:I recently try the patch you recommend but I got the same result. In fact,after make this patch into Qemu source code 0.8.1, I compiled it with thesecommands:./configure --prefix=/travail/install/qemu-8.1make installAnd I run Qemu to simulate ARM on debugging mode:./qemu-system-arm -kernel myKernel-with-kgdb -initrd arm_root.img -sAnd I tried to connect to Qemu by default port 1234: (gdb) target remotelocalhost:1234But I got the error: connection refusedMinGW's gdb doesn't support
 network debugging. You need to use Cygwin's gdbfor remote debugging with network.So I test the current openned port in localhost by the command: netstat -aoAnd the result I got is below:[code]Connexions actives  Proto  Adresse locale Adresse distante   Etat  TCPvinh-phu:epmap vinh-phu:0 LISTENING   1056  TCPvinh-phu:microsoft-ds  vinh-phu:0 LISTENING   4  TCPvinh-phu:1025  vinh-phu:0 LISTENING   1216  TCPvinh-phu:1027  vinh-phu:0 LISTENING   4  TCPvinh-phu:2869  vinh-phu:0 LISTENING   1416  TCPvinh-phu:3016  vinh-phu:0 LISTENING   2036  TCPvinh-phu:3019  vinh-phu:0 LISTENING   2012  TCPvinh-phu:3026  vinh-phu:0 LISTENING   2012  TCPvinh-phu:5000 
 vinh-phu:0 LISTENING   1416  TCPvinh-phu:5101  vinh-phu:0 LISTENING   2012  TCPvinh-phu:3001  vinh-phu:0 LISTENING   1800  TCPvinh-phu:3002  vinh-phu:0 LISTENING   1216  TCPvinh-phu:3003  vinh-phu:0 LISTENING   1216  TCPvinh-phu:3015  vinh-phu:0 LISTENING   2036  TCPvinh-phu:3015  localhost:3016 ESTABLISHED 2036  TCPvinh-phu:3016  localhost:3015 ESTABLISHED 2036  TCPvinh-phu:3019  cs8.msg.dcn.yahoo.com:5050  ESTABLISHED2012  TCPvinh-phu:3026  sip7.voice.re2.yahoo.com:5061  ESTABLISHED2012  TCPvinh-phu:15871 vinh-phu:0 LISTENING   1988  UDPvinh-phu:epmap *:*1056  UDPvinh-phu:microsoft-ds  *:* 
   4  UDPvinh-phu:isakmp*:*896  UDPvinh-phu:1026  *:*1216  UDPvinh-phu:3004  *:*1216  UDPvinh-phu:3011  *:*1988  UDPvinh-phu:3012  *:*1384  UDPvinh-phu:3025  *:*1384  UDPvinh-phu:3068  *:*1384  UDPvinh-phu:3069  *:*1384  UDPvinh-phu:3071  *:*1384  UDPvinh-phu:3072  *:*1384  UDPvinh-phu:3073  *:*1384  UDPvinh-phu:3074  *:*1384  UDPvinh-phu:ntp
   *:*1216  UDPvinh-phu:1900  *:* 

[Qemu-devel] Intel OSX build

2006-06-07 Thread Joe Batt
Does anyone have a reliable way to build qemu on Intel OSX from CVS?

Yes, I've seen Q.  It isn't very stable, nor do I have the command line
I'm used to and it hasn't been updated since mid April.

Joe Batt



___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


Re: [Qemu-devel] Intel OSX build

2006-06-07 Thread René Korthaus


Am 07.06.2006 um 14:02 schrieb Joe Batt:


Does anyone have a reliable way to build qemu on Intel OSX from CVS?

Yes, I've seen Q.  It isn't very stable, nor do I have the command  
line

I'm used to and it hasn't been updated since mid April.


You'll find all sources and patches of Qemu for Intel OS X and Q at  
our new server: http://www.kju-app.org/proj/wiki/CompilingQ


The sources are up-to-date, we only havent managed to fully move to  
the new server yet.


Greetings, cordney*
project Q



Joe Batt



___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel





___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


Re: [Qemu-devel] I want to add the ARMv6 instructions, who can give some advices?

2006-06-07 Thread Paul Brook
On Wednesday 07 June 2006 08:11, wang lianwei wrote:
 Hi all,

 I want to add the ARMv6 instructions support to the QEMU, and now I am
 analysing the QEMU architecture. I think maybe someone has done it or doing
 it now.

 Can you give me some guide about this work or give your suggestions?

I have already implemented armv6 and armv7 support in qemu, but am unable to 
distribute it for legal reasons.

See the previous thread on this topic:
http://lists.gnu.org/archive/html/qemu-devel/2006-03/msg00199.html

If you want armv6 support in qemu your best bet is to contact ARM and persuade 
them to lift this restriction.

Paul


___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


[Qemu-devel] [NEWBYE] Adding a hardware module

2006-06-07 Thread Alessandro Corradi
Hi to everybody,
I'm starting to study qemu for degree's thesis. I need to implement a
simple hardware module such as serial or parallel port. Can you tell me
where I can get documentation about it or source code to start? Now I'm
looking at serial.c and parallel.c but I don't know if it's the right
place to start.
Thanks

Ale
___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


Re: [Qemu-devel] I want to add the ARMv6 instructions, who can give some advices?

2006-06-07 Thread John R.

Or, someone who hasn't agreed to the contract could implement armv6
and 7 support.

-- John.


___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


Re: [Qemu-devel] I want to add the ARMv6 instructions, who can give some advices?

2006-06-07 Thread Paul Brook
On Wednesday 07 June 2006 15:38, John R. wrote:
 Or, someone who hasn't agreed to the contract could implement armv6
 and 7 support.

That implies implementing it without looking at the architecture 
documentation, since the only way to get that documentation is to agree to 
the licence.

I do have access to the architecture documentation, so I probably wouldn't be 
able to touch that code. ie. I'd be unable to continue working on qemu.

Paul


___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


Re: [Qemu-devel] I want to add the ARMv6 instructions, who can give some advices?

2006-06-07 Thread Jamie Lokier
Paul Brook wrote:
 On Wednesday 07 June 2006 08:11, wang lianwei wrote:
  I want to add the ARMv6 instructions support to the QEMU, and now I am
  analysing the QEMU architecture. I think maybe someone has done it
  or doing it now.
 
  Can you give me some guide about this work or give your suggestions?
 
 I have already implemented armv6 and armv7 support in qemu, but am unable to 
 distribute it for legal reasons.
 
 See the previous thread on this topic:
 http://lists.gnu.org/archive/html/qemu-devel/2006-03/msg00199.html
 
 If you want armv6 support in qemu your best bet is to contact ARM
 and persuade them to lift this restriction.

There were three suggestions in that thread, and persuading ARM Ltd to
lift the restriction was one of them.

The other two suggestions were:

   1. For someone who is not bound by an ARM documentation license
  to do it, for example by working out the instruction set from
  reading Binutils, GCC and Linux code, and from reading books
  like the ARM System Developer's Guide, by Sloss, Symes, and
  Wright, Elsevier 2004.

  The objection was raised that although that would be possible,
  it would prevent some people (who are bound by an ARM license)
  from contributing to the new Qemu.

  I think that would not be a problem if the ARMv6 support were in
  the form of a contributed patch, which those people could avoid
  looking at.

   2. To add an explanation of why ARMv6 isn't supported to Qemu's FAQ.

Anyone in a position to add to the FAQ?

-- Jamie


___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


Re: [Qemu-devel] I want to add the ARMv6 instructions, who can give some advices?

2006-06-07 Thread Jamie Lokier
Paul Brook wrote:
 I do have access to the architecture documentation, so I probably
 wouldn't be able to touch that code. ie. I'd be unable to continue
 working on qemu.

Is there a time limit on that part of your documentation license?

Can you reveal to us what exactly your license prohibits, for example
by pasting that part of the license here?

Thanks,
-- Jamie


___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


Re: [Qemu-devel] I want to add the ARMv6 instructions, who can give some advices?

2006-06-07 Thread Laurent DESNOGUES
 Can you reveal to us what exactly your license prohibits, for example
 by pasting that part of the license here?

Though probably different from the license CodeSourcery had to sign,
you can try to download ARMv7-M architecture pdf from ARM site to see
the kind of restriction on has to agree on.

Laurent


___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


Re: [Qemu-devel] I want to add the ARMv6 instructions, who can give some advices?

2006-06-07 Thread Paul Brook
On Wednesday 07 June 2006 15:53, Jamie Lokier wrote:
 Paul Brook wrote:
  I do have access to the architecture documentation, so I probably
  wouldn't be able to touch that code. ie. I'd be unable to continue
  working on qemu.

 Is there a time limit on that part of your documentation license?

No.

 Can you reveal to us what exactly your license prohibits, for example
 by pasting that part of the license here?

http://www.arm.com/products/CPUs/ARM_Cortex-M3_v7.html

Specifically clause 2(i):
No right is granted to [...] use the ARM Architecture Reference Manual for 
the purposes of developing or having developed microprocessor cores or models 
thereof which are compatible in whole or part with either or both the 
instructions or programmer's models described in this ARM Architecture 
Reference Manual

You may argue whether qemu constitutes a microprocessor model. However the 
ARM licencing/legal department have stated that in their opinion it does, and 
is covered by this clause.

Also note clause 2(iii) that prohibits redistribution of the document.

Paul


___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


Re: [Qemu-devel] I want to add the ARMv6 instructions, who can give some advices?

2006-06-07 Thread Jamie Lokier
Paul Brook wrote:
  Can you reveal to us what exactly your license prohibits, for example
  by pasting that part of the license here?
 
 http://www.arm.com/products/CPUs/ARM_Cortex-M3_v7.html
 
 Specifically clause 2(i):
 No right is granted to [...] use the ARM Architecture Reference
 Manual for the purposes of developing or having developed
 microprocessor cores or models thereof which are compatible in whole
 
 or part with either or both the instructions or programmer's models
 
 described in this ARM Architecture Reference Manual

Qemu is already compatible in part with the the instructions and
models described in the manual, isn't it?

So by the language of clause 2(i), aren't you _already_ prohibited from
working on Qemu's ARM code?

I suppose you could argue that you're not using those particular
manuals to work on Qemu's ARM code at the moment.

Even though you've read and understood those manuals... that somehow,
the knowledge you've gained from them (even in part) isn't being
used to write the existing Qemu code.

That seems dubious to me.  Isn't it much the same as arguing that
you're not using those particular manuals to develop ARMv6 support, if
you can refer to other resources (books etc.) which provide the
necessary information?

-- Jamie


___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


[Qemu-devel] Switch to OpenBIOS for Sparc32/64?

2006-06-07 Thread Blue Swirl
I'd like to replace Proll with OpenBIOS as the Qemu/Sparc32 boot prom and 
then develop a Sparc64 port that would finally make the Sparc64 system 
emulator usable.


OpenBIOS/Sparc32 has reached or exceeded the level of functionality that 
Proll provides:
* boot from HDD and CD (several Linux distro installers work, NetBSD and 
Solaris in progress)

* preloaded kernel, initrd and command line support
* Forth support, which is needed for Sparc64, maybe also for other OSes than 
Linux on Sparc32

* graphical console and -nographic support
* SMP support

One big advantage is that OpenBIOS is actively being developed at the 
moment. OpenBIOS is very portable, currently x86, ppc, sparc32, and amd64 
are supported. The only missing feature is TFTP boot ability, but that is in 
my opinion not very useful for Qemu, as you can preload the kernel.


What do you think, is the switch okay, and if so, when can this happen?

_
Express yourself instantly with MSN Messenger! Download today it's FREE! 
http://messenger.msn.click-url.com/go/onm00200471ave/direct/01/




___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


Re: [Qemu-devel] I want to add the ARMv6 instructions, who can give some advices?

2006-06-07 Thread Paul Brook
  Specifically clause 2(i):
  No right is granted to [...] use the ARM Architecture Reference
  Manual for the purposes of developing or having developed
  microprocessor cores or models thereof which are compatible in whole
  
  or part with either or both the instructions or programmer's models
  
  described in this ARM Architecture Reference Manual

 Qemu is already compatible in part with the the instructions and
 models described in the manual, isn't it?

 So by the language of clause 2(i), aren't you _already_ prohibited from
 working on Qemu's ARM code?

All the information used to implement the current qemu Arm support is 
available from other sources not covered by this licence. I'm confident I 
could prove this if necessary.

Paul


___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


Re: [Qemu-devel] Switch to OpenBIOS for Sparc32/64?

2006-06-07 Thread Paul Brook
On Wednesday 07 June 2006 16:56, Blue Swirl wrote:
 I'd like to replace Proll with OpenBIOS as the Qemu/Sparc32 boot prom and
 then develop a Sparc64 port that would finally make the Sparc64 system
 emulator usable.
...
 What do you think, is the switch okay, and if so, when can this happen? 

Sounds like a good idea to me, and the sooner the better.
Even if we find some things that work with proll but not openbios I guess 
there's a good chance of getting openbios fixed.

Paul


___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


Re: [Qemu-devel] I want to add the ARMv6 instructions, who can give some advices?

2006-06-07 Thread Jamie Lokier
Paul Brook wrote:
  Qemu is already compatible in part with the the instructions and
  models described in the manual, isn't it?
 
  So by the language of clause 2(i), aren't you _already_ prohibited from
  working on Qemu's ARM code?
 
 All the information used to implement the current qemu Arm support is 
 available from other sources not covered by this licence. I'm confident I 
 could prove this if necessary.

Of course, I'm sure you're right.

In the thread you cited earlier, Wolfgang Schildbach refers to ARM
System Developer's Guide, by Sloss, Symes, and Wright, Elsevier 2004
as documentation that may be sufficient for Qemu ARMv6 support, and
which is not covered by the license.

If ARMv6 support were developed by someone else, using only that book,
and maybe looking at other code (GCC, Linux etc.), that would prove
that all the information used is from other sources not covered by the
license, wouldn't it?

The support might be missing a few features, if the other information
sources are incomplete, but even incomplete support that can be
deduced from those sources would be good enough for most purposes.

If that were done, you could prove that the resulting feature in Qemu
was written using sources not covered by the license.

So would you have any problem contributing to Qemu after ARMv6 support
was integrated, if the person who contributes ARMv6 support states
that they have never seen the ARM document and refers to the sources
they have used instead?

-- Jamie


___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


Re: [Qemu-devel] I want to add the ARMv6 instructions, who can give some advices?

2006-06-07 Thread Laurent DESNOGUES
  All the information used to implement the current qemu Arm support is 
  available from other sources not covered by this licence. I'm confident I 
  could prove this if necessary.

True for ARMv6, probably not for ARMv7, be it -A, -R or -M.

 In the thread you cited earlier, Wolfgang Schildbach refers to ARM
 System Developer's Guide, by Sloss, Symes, and Wright, Elsevier 2004
 as documentation that may be sufficient for Qemu ARMv6 support, and
 which is not covered by the license.

Yes.  But you would need instruction encoding that are not in the
book.  You will find them in binutils (opcode directory).

 If ARMv6 support were developed by someone else, using only that book,
 and maybe looking at other code (GCC, Linux etc.), that would prove
 that all the information used is from other sources not covered by the
 license, wouldn't it?

Linux uses a small subset of the System Coprocessor.  If you want
information about ARMv6 cp15, look in ARM TRM (arm11), I don't think
they have any restriction such as ARMv7-M.

 The support might be missing a few features, if the other information
 sources are incomplete, but even incomplete support that can be
 deduced from those sources would be good enough for most purposes.

Certainly yes.  But that's not a small effort :)

But bear in mind a few things:  for instance supersection,
that are ARMv6 specific, were added to Linux kernel in 2.6.13
which is kind of recent;  so if you omit some features, you
might have to add them in one day.

 If that were done, you could prove that the resulting feature in Qemu
 was written using sources not covered by the license.
 
 So would you have any problem contributing to Qemu after ARMv6 support
 was integrated, if the person who contributes ARMv6 support states
 that they have never seen the ARM document and refers to the sources
 they have used instead?

I think that it could be very difficult to prove you did not
use any official NDA document.  I am doing simulator development
at ARM and would certainly never approach anything v6 or v7
related until information is publically available with no
restriction.

Anyway I am not speaking for ARM :)


Laurent


___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


Re: [Qemu-devel] Switch to OpenBIOS for Sparc32/64?

2006-06-07 Thread Natalia Portillo

I propose the same for QEMU/PowerPC.

However I was not able to test OpenBIOS over it as I did not find an  
OpenBIOS/PPC binary and cannot create it.


Does anyone can/has ?

Regards,
Natalia Portillo

El 07/06/2006, a las 17:17, Paul Brook escribió:


On Wednesday 07 June 2006 16:56, Blue Swirl wrote:
I'd like to replace Proll with OpenBIOS as the Qemu/Sparc32 boot  
prom and
then develop a Sparc64 port that would finally make the Sparc64  
system

emulator usable.
...
What do you think, is the switch okay, and if so, when can this  
happen?


Sounds like a good idea to me, and the sooner the better.
Even if we find some things that work with proll but not openbios I  
guess

there's a good chance of getting openbios fixed.

Paul


___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel





___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


Re: [Qemu-devel] Switch to OpenBIOS for Sparc32/64?

2006-06-07 Thread Joshua Root
Natalia Portillo wrote:
 I propose the same for QEMU/PowerPC.

It would be nice to some day be able to use QEMU to run classic Mac OS,
now that Apple has discontinued the classic environment in OS X. Would
switching to OpenBIOS negatively affect efforts in this direction?

- Josh


___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


Re: [Qemu-devel] Switch to OpenBIOS for Sparc32/64?

2006-06-07 Thread Natalia Portillo

Au contraire,

It will positively.

Currently OHW is unable to load anything, and when it was able, Mac  
OS complained about the firmware not being able.
However the Apple implementation of OF was very simple and incomplete  
until BW G3, just enough to interpret the CHRP script in /System  
Folder/Mac OS ROM file, and load the binary data on it (the Mac OS  
nanokernel that emulates the toolbox, contains the 68 emulator, and  
links/loads the System and Finder.).


OpenBIOS is a far more complete OF implementation than Apple ones  
used to load Mac OS = 9.
Just it need to be able to read HFS partition, handle CUDA, ADB,  
other devices, and, it will be able to run a Mac OS.


If I'm wrong, Gwenole please correct me :p.

Regards
El 07/06/2006, a las 17:54, Joshua Root escribió:


Natalia Portillo wrote:

I propose the same for QEMU/PowerPC.


It would be nice to some day be able to use QEMU to run classic Mac  
OS,

now that Apple has discontinued the classic environment in OS X. Would
switching to OpenBIOS negatively affect efforts in this direction?

- Josh


___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel





___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


Re: [Qemu-devel] I want to add the ARMv6 instructions, who can give some advices?

2006-06-07 Thread Jamie Lokier
Paul Brook wrote:
  So would you have any problem contributing to Qemu after ARMv6 support
  was integrated, if the person who contributes ARMv6 support states
  that they have never seen the ARM document and refers to the sources
  they have used instead?
 
 As I mentioned before I have significant local patches implementing
 unreleased Arm features. The only way to avoid cross contamination
 between that and a third party qemu implementation two would be for
 me to stop contributing anything (or at minimum anything ARM
 related) back to qemu.

The idea is for someone else, working completely independently of you,
and without ever seeing those patches of yours, to provide the later
ARM support.

I know it doesn't feel good to think about someone else duplicating
the work you have done, but that's not a reason to not do it, if it's
the only legal solution to a useful feature.

So why anything ARM related and not anything ARMv6 or later related?

Isn't it sufficient for you to avoid contributing anything related to
the versions/features the restrictive license covers, so that you
could continue to contribute ARM related things for the older,
publically documented features?

That may feel uncomfortable, but it is no different than your present
situation.  And for other people, it would provide a useful feature.

 Basing work on the gcc/binutils code doesn't help me either because I wrote 
 most of that code in the first place :-)

Since the idea is for someone else do it, that doesn't matter.

I'm wondering why, if it were done, it would be a problem for you to
contribute in future in the areas which you contribute to now.

-- Jamie


___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


Re: [Qemu-devel] I want to add the ARMv6 instructions, who can give some advices?

2006-06-07 Thread Paul Brook
  Basing work on the gcc/binutils code doesn't help me either because I
  wrote most of that code in the first place :-)

 Since the idea is for someone else do it, that doesn't matter.

 I'm wondering why, if it were done, it would be a problem for you to
 contribute in future in the areas which you contribute to now.

Because a large proportion of my contributions, and most of my interest is in 
this area.

Paul


___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


Re: [Qemu-devel] Switch to OpenBIOS for PowerPC? (was: Switch to OpenBIOS for Sparc32/64?)

2006-06-07 Thread Joshua Root
Natalia Portillo wrote:
 OpenBIOS is a far more complete OF implementation than Apple ones used
 to load Mac OS = 9.
 Just it need to be able to read HFS partition, handle CUDA, ADB, other
 devices, and, it will be able to run a Mac OS.

OK, great. One small correction though: Mac OS since at least version
8.1 is perfectly happy without ADB as long as it has USB. I guess if we
want to run older versions we still need ADB though. :)

- Josh


___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


Re: [Qemu-devel] I want to add the ARMv6 instructions, who can give some advices?

2006-06-07 Thread John R.

On 6/7/06, Paul Brook [EMAIL PROTECTED] wrote:

  Basing work on the gcc/binutils code doesn't help me either because I
  wrote most of that code in the first place :-)

 Since the idea is for someone else do it, that doesn't matter.

 I'm wondering why, if it were done, it would be a problem for you to
 contribute in future in the areas which you contribute to now.

Because a large proportion of my contributions, and most of my interest is in
this area.

Paul


No one wants to lose your effort on the ARM port. For the most part
you are the ARM port. Have you talked to an IP or contract lawyer
about the issue? There's your liability and another issue is liability
for the project or copyright issues. It is interesting to know how far
both go and how they relate.  To my mind this just seems pretty
murkey. Yes the best solution would be a pass from ARM but everyone
knows that isn't going to happen.

-- John.


___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


Re: [Qemu-devel] Switch to OpenBIOS for PowerPC? (was: Switch to OpenBIOS for Sparc32/64?)

2006-06-07 Thread Natalia Portillo

I personally am not happy with partial emulations.

So, having ADB, is a must for a G3 beige or previous macintosh  
emulation.


El 07/06/2006, a las 18:39, Joshua Root escribió:


Natalia Portillo wrote:
OpenBIOS is a far more complete OF implementation than Apple ones  
used

to load Mac OS = 9.
Just it need to be able to read HFS partition, handle CUDA, ADB,  
other

devices, and, it will be able to run a Mac OS.


OK, great. One small correction though: Mac OS since at least version
8.1 is perfectly happy without ADB as long as it has USB. I guess  
if we

want to run older versions we still need ADB though. :)

- Josh


___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel





___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


Re: [Qemu-devel] Switch to OpenBIOS for Sparc32/64?

2006-06-07 Thread Blue Swirl

Sounds like a good idea to me, and the sooner the better.
Even if we find some things that work with proll but not openbios I guess
there's a good chance of getting openbios fixed.


So I'll send you a patch that changes the name 'proll.elf' to 
'openbios-builtin.elf' (or maybe it's better to use something like 
'openbios-sparc32', simplifies the code) and a sample OpenBIOS file and 
that's it?


_
Express yourself instantly with MSN Messenger! Download today it's FREE! 
http://messenger.msn.click-url.com/go/onm00200471ave/direct/01/




___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


Re: [Qemu-devel] Switch to OpenBIOS for Sparc32/64?

2006-06-07 Thread Paul Brook
On Wednesday 07 June 2006 20:24, Blue Swirl wrote:
 Sounds like a good idea to me, and the sooner the better.
 Even if we find some things that work with proll but not openbios I guess
 there's a good chance of getting openbios fixed.

 So I'll send you a patch that changes the name 'proll.elf' to
 'openbios-builtin.elf' (or maybe it's better to use something like
 'openbios-sparc32', simplifies the code) and a sample OpenBIOS file and
 that's it?

Yes. Plus documentation bits.

Bonus points if you include a README describing where the bios comes from and 
basic description of how to reproduce it, even if this is just download the 
openbios sources and they should just work.

Paul


___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


Re: [Qemu-devel] [Patch] Kqemu patch for 2.6.17-rc2

2006-06-07 Thread Nigel J. Terry




Leonardo E. Reiter wrote:
Hi,
  
  
I'm attaching a small update to Thomas's patch which conditionally
enables this based on kernel version. As far as I can tell (from very
brief research), module_param became available very late in 2.4. Also,
the old version (MODULE_PARM) is supported in most 2.6 kernels as well.
I picked arbitrarily 2.6.10 as the break-off point - it's really easy
to change that to be something else. In any case, Fabrice, can you
think about applying this, or something very similar, as it looks like
MODULE_PARM has been finally abandoned in the latest kernels.
  
  
Regards,
  
  
Leo Reiter
  
  
Thomas Petazzoni wrote:
  
  Hi,


On 2.6.17-rc2, the MODULE_PARM() way of declaring module parameters

seems to have disappeared (it is anyway deprecated since the beginning

of the 2.6 series). As such, kqemu-1.3.0pre7 doesn't compile.

  
  
  

--- kqemu-linux.c.orig	2006-06-06 10:06:03.0 -0400
+++ kqemu-linux.c	2006-06-06 10:09:41.0 -0400
@@ -49,7 +49,11 @@
 /* if 0 is used, then devfs/udev is used to automatically create the
device */
 int major = 250;
+#if LINUX_VERSION_CODE  KERNEL_VERSION(2,6,10)
 MODULE_PARM(major,"i");
+#else
+module_param(major, int, 0);
+#endif
 
 /* Lock the page at virtual address 'user_addr' and return its
physical address (page index). Return a host OS private user page
  
  

  

I have just had to apply this fix to get kqemu to work with the latest
FC6 Development kernel 2.6.16-1.2252_FC6. ALl working fine now.

Nigel




___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


[Qemu-devel] Good news for Gentoo Linux users

2006-06-07 Thread Natalia Portillo

Hi all,

I just made an ebuild for Gentoo Linux that directly takes QEMU from CVS

You can find it out here at http://www.claunia.com/qemu/ in the QEMU  
Official OS Support List

It is just after the OS list.

It does support emerging KQEMU and QEMU system emulators, but not  
QVM86 nor QEMU user emulators.

Any comment, suggest, so on, here, or on the IRC channel

Regards,
Natalia Portillo


___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


[Qemu-devel] [PATCH] Remove abuse of kernel headers.

2006-06-07 Thread David Woodhouse
The _syscallX() macros in the kernel's private headers are not suitable
for use in userspace. This patch switches from abusing those to using
the syscall() function which glibc provides.

--- qemu-0.8.1/linux-user/syscall.c~2006-05-03 21:32:58.0 +0100
+++ qemu-0.8.1/linux-user/syscall.c 2006-06-07 22:11:48.0 +0100
@@ -79,127 +79,59 @@
 #defineVFAT_IOCTL_READDIR_SHORT_IOR('r', 2, struct dirent [2])
 
 
-#if defined(__powerpc__)
-#undef __syscall_nr
-#undef __sc_loadargs_0
-#undef __sc_loadargs_1
-#undef __sc_loadargs_2
-#undef __sc_loadargs_3
-#undef __sc_loadargs_4
-#undef __sc_loadargs_5
-#undef __sc_asm_input_0
-#undef __sc_asm_input_1
-#undef __sc_asm_input_2
-#undef __sc_asm_input_3
-#undef __sc_asm_input_4
-#undef __sc_asm_input_5
 #undef _syscall0
 #undef _syscall1
 #undef _syscall2
 #undef _syscall3
 #undef _syscall4
 #undef _syscall5
+#undef _syscall6
 
-/* need to redefine syscalls as Linux kernel defines are incorrect for
-   the clobber list */
-/* On powerpc a system call basically clobbers the same registers like a
- * function call, with the exception of LR (which is needed for the
- * sc; bnslr sequence) and CR (where only CR0.SO is clobbered to signal
- * an error return status).
- */
-
-#define __syscall_nr(nr, type, name, args...)  \
-   unsigned long __sc_ret, __sc_err;   \
-   {   \
-   register unsigned long __sc_0  __asm__ (r0);  \
-   register unsigned long __sc_3  __asm__ (r3);  \
-   register unsigned long __sc_4  __asm__ (r4);  \
-   register unsigned long __sc_5  __asm__ (r5);  \
-   register unsigned long __sc_6  __asm__ (r6);  \
-   register unsigned long __sc_7  __asm__ (r7);  \
-   \
-   __sc_loadargs_##nr(name, args); \
-   __asm__ __volatile__\
-   (sc   \n\t\
-mfcr %0  \
-   : =r (__sc_0),   \
- =r (__sc_3),  =r (__sc_4),  \
- =r (__sc_5),  =r (__sc_6),  \
- =r (__sc_7)\
-   : __sc_asm_input_##nr   \
-   : cr0, ctr, memory,   \
- r8, r9, r10,r11, r12);  \
-   __sc_ret = __sc_3;  \
-   __sc_err = __sc_0;  \
-   }   \
-   if (__sc_err  0x1000)  \
-   {   \
-   errno = __sc_ret;   \
-   __sc_ret = -1;  \
-   }   \
-   return (type) __sc_ret
-
-#define __sc_loadargs_0(name, dummy...)
\
-   __sc_0 = __NR_##name
-#define __sc_loadargs_1(name, arg1)\
-   __sc_loadargs_0(name);  \
-   __sc_3 = (unsigned long) (arg1)
-#define __sc_loadargs_2(name, arg1, arg2)  \
-   __sc_loadargs_1(name, arg1);\
-   __sc_4 = (unsigned long) (arg2)
-#define __sc_loadargs_3(name, arg1, arg2, arg3)
\
-   __sc_loadargs_2(name, arg1, arg2);  \
-   __sc_5 = (unsigned long) (arg3)
-#define __sc_loadargs_4(name, arg1, arg2, arg3, arg4)  \
-   __sc_loadargs_3(name, arg1, arg2, arg3);\
-   __sc_6 = (unsigned long) (arg4)
-#define __sc_loadargs_5(name, arg1, arg2, arg3, arg4, arg5)\
-   __sc_loadargs_4(name, arg1, arg2, arg3, arg4);  \
-   __sc_7 = (unsigned long) (arg5)
-
-#define __sc_asm_input_0 0 (__sc_0)
-#define __sc_asm_input_1 __sc_asm_input_0, 1 (__sc_3)
-#define __sc_asm_input_2 __sc_asm_input_1, 2 (__sc_4)
-#define __sc_asm_input_3 __sc_asm_input_2, 3 (__sc_5)
-#define __sc_asm_input_4 __sc_asm_input_3, 4 (__sc_6)
-#define __sc_asm_input_5 __sc_asm_input_4, 5 (__sc_7)
-
-#define _syscall0(type,name)   \
-type name(void)
\
-{  \