xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
* Little help with Seabios PV-Drivers for XEN
@ 2012-03-08 23:35 Daniel Castro
  2012-03-08 23:59 ` James Harper
  2012-04-06 20:34 ` Konrad Rzeszutek Wilk
  0 siblings, 2 replies; 7+ messages in thread
From: Daniel Castro @ 2012-03-08 23:35 UTC (permalink / raw)
  To: xen-devel

Hello All,

I have a little setback with the development of PV Drivers for Xen in SeaBIOS.
The initialization code that runs in 32 Bit is working properly.
But, when the system tries to read on the disk I use the ring macros
to get a request. The macro usage looks like this:
struct blkif_ring * shared = memalign_low(4096,4096); //return
0x000fd630 this above 16bit address space
SHARED_RING_INIT(shared);
So far I have a pointer located at 0x0009a000
Under 32bit the struct is correct and all is working according to plan.

But on 16bit operation read on disk I have
struct blkfront_info * shared_ring =
container_of(op->drive_g.info->shared)); // I get d630 I should get it
from the correct segment, but how?
RING_GET_REQUEST(shared_ring); //this returns 0xffff and should be
something 0xa010 segment SS or something like that

SeaBios has some macros that convert a pointer in 32Bit to 16Bit by
changing the segment register, yet I do not know in what segment the
ring is located, and the macros are not applied inside the procedure
of the macro, for example:
MAKE_FLATPTR(GET_SEG(SS),RING_GET_REQUEST(shared_ring));
But this will change a 16Bit pointer of segment SS to a 32 bit
segment. There is also the reverse but, again I do not know the
segment in which I should look for. Lastly the process inside the
macro does not get this benefin, and I do not know if the macro will
work with a pointer of size 16bits.

Any help will be GREATLY appreciated, I am almost done.

Thanks,

Daniel
-- 
+-=====---------------------------+
| +---------------------------------+ | This space intentionally blank
for notetaking.
| |   | Daniel Castro,                |
| |   | Consultant/Programmer.|
| |   | U Andes                         |
+-------------------------------------+

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

end of thread, other threads:[~2012-05-10 15:57 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-03-08 23:35 Little help with Seabios PV-Drivers for XEN Daniel Castro
2012-03-08 23:59 ` James Harper
2012-03-09  4:47   ` Daniel Castro
2012-04-07 11:01   ` Daniel Castro
2012-05-10 15:57     ` Konrad Rzeszutek Wilk
2012-04-06 20:34 ` Konrad Rzeszutek Wilk
2012-04-07 10:57   ` Daniel Castro

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).