* add disk device to PowerPC sim
@ 2002-03-28 15:11 David O'Brien
2002-03-28 15:17 ` Andrew Cagney
0 siblings, 1 reply; 4+ messages in thread
From: David O'Brien @ 2002-03-28 15:11 UTC (permalink / raw)
To: gdb-patches
I make this commit needed by the FreeBSD/powerpc porting effort.
2002-03-24 David O'Brien <obrien@FreeBSD.org>
* ppc/hw_disk.c: Export a disk device property.
Index: hw_disk.c
===================================================================
RCS file: /cvs/src/src/sim/ppc/hw_disk.c,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- hw_disk.c 1999/04/16 01:35:09 1.1
+++ hw_disk.c 2002/03/25 04:39:20 1.2
@@ -232,6 +232,9 @@
space, address, 0/*size*/, access_read_write_exec,
me);
+ /* Tell the world we are a disk. */
+ device_add_string_property(me, "device_type", "disk");
+
/* get the name of the file specifying the disk image */
disk->name_index = 0;
disk->nr_names = device_find_string_array_property(me, "file",
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: add disk device to PowerPC sim
2002-03-28 15:11 add disk device to PowerPC sim David O'Brien
@ 2002-03-28 15:17 ` Andrew Cagney
2002-03-28 17:42 ` Andrew Cagney
0 siblings, 1 reply; 4+ messages in thread
From: Andrew Cagney @ 2002-03-28 15:17 UTC (permalink / raw)
To: obrien; +Cc: gdb-patches
> I make this commit needed by the FreeBSD/powerpc porting effort.
>
> 2002-03-24 David O'Brien <obrien@FreeBSD.org>
> * ppc/hw_disk.c: Export a disk device property.
>
> Index: hw_disk.c
> ===================================================================
> RCS file: /cvs/src/src/sim/ppc/hw_disk.c,v
> retrieving revision 1.1
> retrieving revision 1.2
> diff -u -r1.1 -r1.2
> --- hw_disk.c 1999/04/16 01:35:09 1.1
> +++ hw_disk.c 2002/03/25 04:39:20 1.2
> @@ -232,6 +232,9 @@
> space, address, 0/*size*/, access_read_write_exec,
> me);
>
> + /* Tell the world we are a disk. */
> + device_add_string_property(me, "device_type", "disk");
> +
> /* get the name of the file specifying the disk image */
> disk->name_index = 0;
> disk->nr_names = device_find_string_array_property(me, "file",
I'm going to need to dig up my 1275 manual to check this one out.
Andrew
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: add disk device to PowerPC sim
2002-03-28 15:17 ` Andrew Cagney
@ 2002-03-28 17:42 ` Andrew Cagney
2002-09-27 14:03 ` [patch/5.3] ppc "disk" -> "block"; Was: " Andrew Cagney
0 siblings, 1 reply; 4+ messages in thread
From: Andrew Cagney @ 2002-03-28 17:42 UTC (permalink / raw)
To: obrien; +Cc: gdb-patches
[-- Attachment #1: Type: text/plain, Size: 1835 bytes --]
> I make this commit needed by the FreeBSD/powerpc porting effort.
>
> 2002-03-24 David O'Brien <obrien@FreeBSD.org>
> * ppc/hw_disk.c: Export a disk device property.
>
> Index: hw_disk.c
> ===================================================================
> RCS file: /cvs/src/src/sim/ppc/hw_disk.c,v
> retrieving revision 1.1
> retrieving revision 1.2
> diff -u -r1.1 -r1.2
> --- hw_disk.c 1999/04/16 01:35:09 1.1
> +++ hw_disk.c 2002/03/25 04:39:20 1.2
> @@ -232,6 +232,9 @@
> space, address, 0/*size*/, access_read_write_exec,
> me);
>
> + /* Tell the world we are a disk. */
> + device_add_string_property(me, "device_type", "disk");
> +
> /* get the name of the file specifying the disk image */
> disk->name_index = 0;
> disk->nr_names = device_find_string_array_property(me, "file",
>
> I'm going to need to dig up my 1275 manual to check this one out.
David,
A disk drive has a "device_type" of "block" not "disk". See 1276
section 3.7 (Standard device types) and 3.7.2 ("block" devices). Could
you please fix this, trunk and branch (given it has already been checked
into the branch :-( ).
At present none of other hw_*.c files are doing like the above. Instead
they use a device tree (see attached) so your two line patch introduces
a very fundamental change in the simulator's behavour. However, yes,
the current need to specify all the properties in a file is a pain and
the code to start doing this is long overdue.
Looking at the actual change, ..._init_address() appears to get the job
done. However, if you trace the code, the second and further init calls
try to re-add the property to the tree (see how permenant_object is
used) - fortunatly these are ignored. Can you please create a
bug-report documenting this problem.
enjoy,
Andrew
[-- Attachment #2: tree --]
[-- Type: text/plain, Size: 1184 bytes --]
/#address-cells 1
/openprom/options
./os-emul "chrp
./oea-memory-size 0x400000
./use-stdio? false
/openprom/trace
# ./events 1
# ./interrupts 1
/aliases
./ofdisk0 "/phb/ide/cdrom@0
/phb@0x80000000
./device_type "pci
./name "pci
./#address-cells 3
./#size-cells 2
./ranges ni0,0,0,0 0xc0000000 0x10000
/phb/ide@1
./device_type "ide
./name "ide
./assigned-addresses \
ni0,0,10,1f0 8 \
ni0,0,14,3f0 8 \
ni0,0,18,170 8 \
ni0,0,1c,370 8 \
ni0,0,20,200 8
./reg \
1 0 \
i0,0,10,0 8 \
i0,0,18,0 8 \
i0,0,14,6 1 \
i0,0,1c,6 1 \
i0,0,20,0 8
./ready-delay 1000
/phb/ide@1/cdrom@0
./device_type "block
./name "cdrom
./file "/dev/wd0a"
/phb/com@2
./device_type "serial"
./name "com"
./assigned-addresses \
ni0,0,10,3f8 8
./reg \
2 0 \
i0,0,10,0 8
# TMP for NetBSD
/cpus
./device_type "cpus
./name "cpus
./timebase-frequency 1000000
/cpus/cpu@0
./device_type "cpu
./name "cpu
./timebase-frequency 1000000
#/options/real-mode? true
#/chosen/netbsd-args "/phb/ide/cdrom@0/netbsd
/chosen/netbsd-args "ofdisk0/netbsd -sd
/chosen/bootpath "ofdisk0:\boot.ppc"
/chosen/bootargs "-s"
/chosen/stdin */phb/com
/chosen/stdout !/chosen/stdin
^ permalink raw reply [flat|nested] 4+ messages in thread
* [patch/5.3] ppc "disk" -> "block"; Was: add disk device to PowerPC sim
2002-03-28 17:42 ` Andrew Cagney
@ 2002-09-27 14:03 ` Andrew Cagney
0 siblings, 0 replies; 4+ messages in thread
From: Andrew Cagney @ 2002-09-27 14:03 UTC (permalink / raw)
To: Andrew Cagney; +Cc: obrien, gdb-patches
[-- Attachment #1: Type: text/plain, Size: 1891 bytes --]
> I make this commit needed by the FreeBSD/powerpc porting effort.
>
> 2002-03-24 David O'Brien <obrien@FreeBSD.org>
> * ppc/hw_disk.c: Export a disk device property.
>
> Index: hw_disk.c
> ===================================================================
> RCS file: /cvs/src/src/sim/ppc/hw_disk.c,v
> retrieving revision 1.1
> retrieving revision 1.2
> diff -u -r1.1 -r1.2
> --- hw_disk.c 1999/04/16 01:35:09 1.1
> +++ hw_disk.c 2002/03/25 04:39:20 1.2
> @@ -232,6 +232,9 @@
> space, address, 0/*size*/, access_read_write_exec,
> me);
>
> + /* Tell the world we are a disk. */
> + device_add_string_property(me, "device_type", "disk");
> +
> /* get the name of the file specifying the disk image */
> disk->name_index = 0;
> disk->nr_names = device_find_string_array_property(me, "file",
>
> I'm going to need to dig up my 1275 manual to check this one out.
>
> David,
>
> A disk drive has a "device_type" of "block" not "disk". See 1276 section 3.7 (Standard device types) and 3.7.2 ("block" devices). Could you please fix this, trunk and branch (given it has already been checked into the branch :-( ).
>
> At present none of other hw_*.c files are doing like the above. Instead they use a device tree (see attached) so your two line patch introduces a very fundamental change in the simulator's behavour. However, yes, the current need to specify all the properties in a file is a pain and the code to start doing this is long overdue.
>
> Looking at the actual change, ..._init_address() appears to get the job done. However, if you trace the code, the second and further init calls try to re-add the property to the tree (see how permenant_object is used) - fortunatly these are ignored. Can you please create a bug-report documenting this problem.
I've checked in the attached.
HEAD and gdb_5_3-branch.
Andrew
[-- Attachment #2: diffs --]
[-- Type: text/plain, Size: 666 bytes --]
2002-09-27 Andrew Cagney <ac131313@redhat.com>
* hw_disk.c (hw_disk_init_address): Set device type to "block",
not "disk".
Index: hw_disk.c
===================================================================
RCS file: /cvs/src/src/sim/ppc/hw_disk.c,v
retrieving revision 1.2
diff -u -r1.2 hw_disk.c
--- hw_disk.c 25 Mar 2002 04:39:20 -0000 1.2
+++ hw_disk.c 27 Sep 2002 21:00:45 -0000
@@ -233,7 +233,7 @@
me);
/* Tell the world we are a disk. */
- device_add_string_property(me, "device_type", "disk");
+ device_add_string_property(me, "device_type", "block");
/* get the name of the file specifying the disk image */
disk->name_index = 0;
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2002-09-27 21:03 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2002-03-28 15:11 add disk device to PowerPC sim David O'Brien
2002-03-28 15:17 ` Andrew Cagney
2002-03-28 17:42 ` Andrew Cagney
2002-09-27 14:03 ` [patch/5.3] ppc "disk" -> "block"; Was: " Andrew Cagney
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox