hurd: Fix use of deprecated iopl device
Fix Xserver on GNU/Hurd into using the "mem" device instead of the deprecated "iopl" device. Reviewed-by: Olaf Buddenhagen <antrik@users.sf.net> Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
This commit is contained in:
parent
1a0d9324b3
commit
f72aadd38b
|
@ -39,8 +39,8 @@
|
||||||
int
|
int
|
||||||
xf86ReadBIOS(unsigned long Base,unsigned long Offset,unsigned char *Buf,int Len)
|
xf86ReadBIOS(unsigned long Base,unsigned long Offset,unsigned char *Buf,int Len)
|
||||||
{
|
{
|
||||||
mach_port_t device,iopl_dev;
|
mach_port_t device,mem_dev;
|
||||||
memory_object_t iopl_mem;
|
memory_object_t mem_obj;
|
||||||
vm_address_t addr = (vm_address_t)0; /* serach starting address */
|
vm_address_t addr = (vm_address_t)0; /* serach starting address */
|
||||||
kern_return_t err;
|
kern_return_t err;
|
||||||
|
|
||||||
|
@ -51,14 +51,14 @@ xf86ReadBIOS(unsigned long Base,unsigned long Offset,unsigned char *Buf,int Len)
|
||||||
errno = err;
|
errno = err;
|
||||||
FatalError("xf86ReadBIOS() can't get_privileged_ports. (%s)\n",strerror(errno));
|
FatalError("xf86ReadBIOS() can't get_privileged_ports. (%s)\n",strerror(errno));
|
||||||
}
|
}
|
||||||
err = device_open(device,D_READ|D_WRITE,"iopl",&iopl_dev);
|
err = device_open(device,D_READ|D_WRITE,"mem",&mem_dev);
|
||||||
mach_port_deallocate (mach_task_self (), device);
|
mach_port_deallocate (mach_task_self (), device);
|
||||||
if( err )
|
if( err )
|
||||||
{
|
{
|
||||||
errno = err;
|
errno = err;
|
||||||
FatalError("xf86ReadBIOS() can't device_open. (%s)\n",strerror(errno));
|
FatalError("xf86ReadBIOS() can't device_open. (%s)\n",strerror(errno));
|
||||||
}
|
}
|
||||||
err = device_map(iopl_dev,VM_PROT_READ|VM_PROT_WRITE, Base , BIOS_SIZE ,&iopl_mem,0);
|
err = device_map(mem_dev,VM_PROT_READ|VM_PROT_WRITE, Base , BIOS_SIZE ,&mem_obj,0);
|
||||||
if( err )
|
if( err )
|
||||||
{
|
{
|
||||||
errno = err;
|
errno = err;
|
||||||
|
@ -69,13 +69,13 @@ xf86ReadBIOS(unsigned long Base,unsigned long Offset,unsigned char *Buf,int Len)
|
||||||
BIOS_SIZE,
|
BIOS_SIZE,
|
||||||
0,
|
0,
|
||||||
TRUE,
|
TRUE,
|
||||||
iopl_mem,
|
mem_obj,
|
||||||
Base,
|
Base,
|
||||||
FALSE,
|
FALSE,
|
||||||
VM_PROT_READ|VM_PROT_WRITE,
|
VM_PROT_READ|VM_PROT_WRITE,
|
||||||
VM_PROT_READ|VM_PROT_WRITE,
|
VM_PROT_READ|VM_PROT_WRITE,
|
||||||
VM_INHERIT_SHARE);
|
VM_INHERIT_SHARE);
|
||||||
mach_port_deallocate(mach_task_self(),iopl_mem);
|
mach_port_deallocate(mach_task_self(),mem_obj);
|
||||||
if( err )
|
if( err )
|
||||||
{
|
{
|
||||||
errno = err;
|
errno = err;
|
||||||
|
|
|
@ -44,8 +44,8 @@
|
||||||
static pointer
|
static pointer
|
||||||
mapVidMem(int ScreenNum, unsigned long Base, unsigned long Size, int Flags)
|
mapVidMem(int ScreenNum, unsigned long Base, unsigned long Size, int Flags)
|
||||||
{
|
{
|
||||||
mach_port_t device,iopl_dev;
|
mach_port_t device,mem_dev;
|
||||||
memory_object_t iopl_mem;
|
memory_object_t mem_obj;
|
||||||
kern_return_t err;
|
kern_return_t err;
|
||||||
vm_address_t addr=(vm_address_t)0;
|
vm_address_t addr=(vm_address_t)0;
|
||||||
|
|
||||||
|
@ -55,7 +55,7 @@ mapVidMem(int ScreenNum, unsigned long Base, unsigned long Size, int Flags)
|
||||||
errno = err;
|
errno = err;
|
||||||
FatalError("xf86MapVidMem() can't get_privileged_ports. (%s)\n",strerror(errno));
|
FatalError("xf86MapVidMem() can't get_privileged_ports. (%s)\n",strerror(errno));
|
||||||
}
|
}
|
||||||
err = device_open(device,D_READ|D_WRITE,"iopl",&iopl_dev);
|
err = device_open(device,D_READ|D_WRITE,"mem",&mem_dev);
|
||||||
mach_port_deallocate (mach_task_self(), device);
|
mach_port_deallocate (mach_task_self(), device);
|
||||||
if( err )
|
if( err )
|
||||||
{
|
{
|
||||||
|
@ -63,7 +63,7 @@ mapVidMem(int ScreenNum, unsigned long Base, unsigned long Size, int Flags)
|
||||||
FatalError("xf86MapVidMem() can't device_open. (%s)\n",strerror(errno));
|
FatalError("xf86MapVidMem() can't device_open. (%s)\n",strerror(errno));
|
||||||
}
|
}
|
||||||
|
|
||||||
err = device_map(iopl_dev,VM_PROT_READ|VM_PROT_WRITE, Base , Size ,&iopl_mem,0);
|
err = device_map(mem_dev,VM_PROT_READ|VM_PROT_WRITE, Base , Size ,&mem_obj,0);
|
||||||
if( err )
|
if( err )
|
||||||
{
|
{
|
||||||
errno = err;
|
errno = err;
|
||||||
|
@ -74,23 +74,23 @@ mapVidMem(int ScreenNum, unsigned long Base, unsigned long Size, int Flags)
|
||||||
Size,
|
Size,
|
||||||
0, /* mask */
|
0, /* mask */
|
||||||
TRUE, /* anywhere */
|
TRUE, /* anywhere */
|
||||||
iopl_mem,
|
mem_obj,
|
||||||
(vm_offset_t)Base,
|
(vm_offset_t)Base,
|
||||||
FALSE, /* copy on write */
|
FALSE, /* copy on write */
|
||||||
VM_PROT_READ|VM_PROT_WRITE,
|
VM_PROT_READ|VM_PROT_WRITE,
|
||||||
VM_PROT_READ|VM_PROT_WRITE,
|
VM_PROT_READ|VM_PROT_WRITE,
|
||||||
VM_INHERIT_SHARE);
|
VM_INHERIT_SHARE);
|
||||||
mach_port_deallocate(mach_task_self(),iopl_mem);
|
mach_port_deallocate(mach_task_self(),mem_obj);
|
||||||
if( err )
|
if( err )
|
||||||
{
|
{
|
||||||
errno = err;
|
errno = err;
|
||||||
FatalError("xf86MapVidMem() can't vm_map.(iopl_mem) (%s)\n",strerror(errno));
|
FatalError("xf86MapVidMem() can't vm_map.(mem_obj) (%s)\n",strerror(errno));
|
||||||
}
|
}
|
||||||
mach_port_deallocate(mach_task_self(),iopl_dev);
|
mach_port_deallocate(mach_task_self(),mem_dev);
|
||||||
if( err )
|
if( err )
|
||||||
{
|
{
|
||||||
errno = err;
|
errno = err;
|
||||||
FatalError("xf86MapVidMem() can't mach_port_deallocate.(iopl_dev) (%s)\n",strerror(errno));
|
FatalError("xf86MapVidMem() can't mach_port_deallocate.(mem_dev) (%s)\n",strerror(errno));
|
||||||
}
|
}
|
||||||
return (pointer)addr;
|
return (pointer)addr;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue