| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 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 |  | 
| Aurelien Jarno | 2f56cfd | 2007-09-05 08:59:34 +0200 | [diff] [blame] | 13 | #include <asm/fw/arc/types.h> | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 14 | #include <asm/sgialib.h> | 
|  | 15 |  | 
| Ralf Baechle | 3266c6a | 2007-07-28 07:44:08 +0100 | [diff] [blame] | 16 | LONG | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 17 | ArcGetDirectoryEntry(ULONG FileID, struct linux_vdirent *Buffer, | 
|  | 18 | ULONG N, ULONG *Count) | 
|  | 19 | { | 
|  | 20 | return ARC_CALL4(get_vdirent, FileID, Buffer, N, Count); | 
|  | 21 | } | 
|  | 22 |  | 
| Ralf Baechle | 3266c6a | 2007-07-28 07:44:08 +0100 | [diff] [blame] | 23 | LONG | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 24 | ArcOpen(CHAR *Path, enum linux_omode OpenMode, ULONG *FileID) | 
|  | 25 | { | 
|  | 26 | return ARC_CALL3(open, Path, OpenMode, FileID); | 
|  | 27 | } | 
|  | 28 |  | 
| Ralf Baechle | 3266c6a | 2007-07-28 07:44:08 +0100 | [diff] [blame] | 29 | LONG | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 30 | ArcClose(ULONG FileID) | 
|  | 31 | { | 
|  | 32 | return ARC_CALL1(close, FileID); | 
|  | 33 | } | 
|  | 34 |  | 
| Ralf Baechle | 3266c6a | 2007-07-28 07:44:08 +0100 | [diff] [blame] | 35 | LONG | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 36 | ArcRead(ULONG FileID, VOID *Buffer, ULONG N, ULONG *Count) | 
|  | 37 | { | 
|  | 38 | return ARC_CALL4(read, FileID, Buffer, N, Count); | 
|  | 39 | } | 
|  | 40 |  | 
| Ralf Baechle | 3266c6a | 2007-07-28 07:44:08 +0100 | [diff] [blame] | 41 | LONG | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 42 | ArcGetReadStatus(ULONG FileID) | 
|  | 43 | { | 
|  | 44 | return ARC_CALL1(get_rstatus, FileID); | 
|  | 45 | } | 
|  | 46 |  | 
| Ralf Baechle | 3266c6a | 2007-07-28 07:44:08 +0100 | [diff] [blame] | 47 | LONG | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 48 | ArcWrite(ULONG FileID, PVOID Buffer, ULONG N, PULONG Count) | 
|  | 49 | { | 
|  | 50 | return ARC_CALL4(write, FileID, Buffer, N, Count); | 
|  | 51 | } | 
|  | 52 |  | 
| Ralf Baechle | 3266c6a | 2007-07-28 07:44:08 +0100 | [diff] [blame] | 53 | LONG | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 54 | ArcSeek(ULONG FileID, struct linux_bigint *Position, enum linux_seekmode SeekMode) | 
|  | 55 | { | 
|  | 56 | return ARC_CALL3(seek, FileID, Position, SeekMode); | 
|  | 57 | } | 
|  | 58 |  | 
| Ralf Baechle | 3266c6a | 2007-07-28 07:44:08 +0100 | [diff] [blame] | 59 | LONG | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 60 | ArcMount(char *name, enum linux_mountops op) | 
|  | 61 | { | 
|  | 62 | return ARC_CALL2(mount, name, op); | 
|  | 63 | } | 
|  | 64 |  | 
| Ralf Baechle | 3266c6a | 2007-07-28 07:44:08 +0100 | [diff] [blame] | 65 | LONG | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 66 | ArcGetFileInformation(ULONG FileID, struct linux_finfo *Information) | 
|  | 67 | { | 
|  | 68 | return ARC_CALL2(get_finfo, FileID, Information); | 
|  | 69 | } | 
|  | 70 |  | 
| Ralf Baechle | 3266c6a | 2007-07-28 07:44:08 +0100 | [diff] [blame] | 71 | LONG ArcSetFileInformation(ULONG FileID, ULONG AttributeFlags, | 
|  | 72 | ULONG AttributeMask) | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 73 | { | 
|  | 74 | return ARC_CALL3(set_finfo, FileID, AttributeFlags, AttributeMask); | 
|  | 75 | } |