1/* 2 * This file is subject to the terms and conditions of the GNU General Public 3 * License. See the file "COPYING" in the main directory of this archive 4 * for more details. 5 * 6 * ARC firmware interface. 7 * 8 * Copyright (C) 1994, 1995, 1996, 1999 Ralf Baechle 9 * Copyright (C) 1999 Silicon Graphics, Inc. 10 */ 11#include <linux/init.h> 12 13#include <asm/fw/arc/types.h> 14#include <asm/sgialib.h> 15 16LONG 17ArcGetDirectoryEntry(ULONG FileID, struct linux_vdirent *Buffer, 18 ULONG N, ULONG *Count) 19{ 20 return ARC_CALL4(get_vdirent, FileID, Buffer, N, Count); 21} 22 23LONG 24ArcOpen(CHAR *Path, enum linux_omode OpenMode, ULONG *FileID) 25{ 26 return ARC_CALL3(open, Path, OpenMode, FileID); 27} 28 29LONG 30ArcClose(ULONG FileID) 31{ 32 return ARC_CALL1(close, FileID); 33} 34 35LONG 36ArcRead(ULONG FileID, VOID *Buffer, ULONG N, ULONG *Count) 37{ 38 return ARC_CALL4(read, FileID, Buffer, N, Count); 39} 40 41LONG 42ArcGetReadStatus(ULONG FileID) 43{ 44 return ARC_CALL1(get_rstatus, FileID); 45} 46 47LONG 48ArcWrite(ULONG FileID, PVOID Buffer, ULONG N, PULONG Count) 49{ 50 return ARC_CALL4(write, FileID, Buffer, N, Count); 51} 52 53LONG 54ArcSeek(ULONG FileID, struct linux_bigint *Position, enum linux_seekmode SeekMode) 55{ 56 return ARC_CALL3(seek, FileID, Position, SeekMode); 57} 58 59LONG 60ArcMount(char *name, enum linux_mountops op) 61{ 62 return ARC_CALL2(mount, name, op); 63} 64 65LONG 66ArcGetFileInformation(ULONG FileID, struct linux_finfo *Information) 67{ 68 return ARC_CALL2(get_finfo, FileID, Information); 69} 70 71LONG ArcSetFileInformation(ULONG FileID, ULONG AttributeFlags, 72 ULONG AttributeMask) 73{ 74 return ARC_CALL3(set_finfo, FileID, AttributeFlags, AttributeMask); 75} 76