2005-04-17 06:20:36 +08:00
|
|
|
/*
|
|
|
|
* This file is subject to the terms and conditions of the GNU General Public
|
|
|
|
* License. See the file "COPYING" in the main directory of this archive
|
|
|
|
* for more details.
|
|
|
|
*
|
|
|
|
* ARC firmware interface.
|
|
|
|
*
|
|
|
|
* Copyright (C) 1994, 1995, 1996, 1999 Ralf Baechle
|
|
|
|
* Copyright (C) 1999 Silicon Graphics, Inc.
|
|
|
|
*/
|
|
|
|
#include <linux/init.h>
|
|
|
|
|
2007-09-05 14:59:34 +08:00
|
|
|
#include <asm/fw/arc/types.h>
|
2005-04-17 06:20:36 +08:00
|
|
|
#include <asm/sgialib.h>
|
|
|
|
|
2007-07-28 14:44:08 +08:00
|
|
|
LONG
|
2005-04-17 06:20:36 +08:00
|
|
|
ArcGetDirectoryEntry(ULONG FileID, struct linux_vdirent *Buffer,
|
|
|
|
ULONG N, ULONG *Count)
|
|
|
|
{
|
|
|
|
return ARC_CALL4(get_vdirent, FileID, Buffer, N, Count);
|
|
|
|
}
|
|
|
|
|
2007-07-28 14:44:08 +08:00
|
|
|
LONG
|
2005-04-17 06:20:36 +08:00
|
|
|
ArcOpen(CHAR *Path, enum linux_omode OpenMode, ULONG *FileID)
|
|
|
|
{
|
|
|
|
return ARC_CALL3(open, Path, OpenMode, FileID);
|
|
|
|
}
|
|
|
|
|
2007-07-28 14:44:08 +08:00
|
|
|
LONG
|
2005-04-17 06:20:36 +08:00
|
|
|
ArcClose(ULONG FileID)
|
|
|
|
{
|
|
|
|
return ARC_CALL1(close, FileID);
|
|
|
|
}
|
|
|
|
|
2007-07-28 14:44:08 +08:00
|
|
|
LONG
|
2005-04-17 06:20:36 +08:00
|
|
|
ArcRead(ULONG FileID, VOID *Buffer, ULONG N, ULONG *Count)
|
|
|
|
{
|
|
|
|
return ARC_CALL4(read, FileID, Buffer, N, Count);
|
|
|
|
}
|
|
|
|
|
2007-07-28 14:44:08 +08:00
|
|
|
LONG
|
2005-04-17 06:20:36 +08:00
|
|
|
ArcGetReadStatus(ULONG FileID)
|
|
|
|
{
|
|
|
|
return ARC_CALL1(get_rstatus, FileID);
|
|
|
|
}
|
|
|
|
|
2007-07-28 14:44:08 +08:00
|
|
|
LONG
|
2005-04-17 06:20:36 +08:00
|
|
|
ArcWrite(ULONG FileID, PVOID Buffer, ULONG N, PULONG Count)
|
|
|
|
{
|
|
|
|
return ARC_CALL4(write, FileID, Buffer, N, Count);
|
|
|
|
}
|
|
|
|
|
2007-07-28 14:44:08 +08:00
|
|
|
LONG
|
2005-04-17 06:20:36 +08:00
|
|
|
ArcSeek(ULONG FileID, struct linux_bigint *Position, enum linux_seekmode SeekMode)
|
|
|
|
{
|
|
|
|
return ARC_CALL3(seek, FileID, Position, SeekMode);
|
|
|
|
}
|
|
|
|
|
2007-07-28 14:44:08 +08:00
|
|
|
LONG
|
2005-04-17 06:20:36 +08:00
|
|
|
ArcMount(char *name, enum linux_mountops op)
|
|
|
|
{
|
|
|
|
return ARC_CALL2(mount, name, op);
|
|
|
|
}
|
|
|
|
|
2007-07-28 14:44:08 +08:00
|
|
|
LONG
|
2005-04-17 06:20:36 +08:00
|
|
|
ArcGetFileInformation(ULONG FileID, struct linux_finfo *Information)
|
|
|
|
{
|
|
|
|
return ARC_CALL2(get_finfo, FileID, Information);
|
|
|
|
}
|
|
|
|
|
2007-07-28 14:44:08 +08:00
|
|
|
LONG ArcSetFileInformation(ULONG FileID, ULONG AttributeFlags,
|
|
|
|
ULONG AttributeMask)
|
2005-04-17 06:20:36 +08:00
|
|
|
{
|
|
|
|
return ARC_CALL3(set_finfo, FileID, AttributeFlags, AttributeMask);
|
|
|
|
}
|