aboutsummaryrefslogtreecommitdiffstats
path: root/net/nfs.h
diff options
context:
space:
mode:
authorwdenk <wdenk>2004-02-24 02:00:03 +0000
committerwdenk <wdenk>2004-02-24 02:00:03 +0000
commitcbd8a35c6dbaaca35494cbec319960887ad02dcf (patch)
treef3a5f6817a203a6e3a0a0ab7fb9df5b3697c07e3 /net/nfs.h
parent074cff0d2863bab21b065cf283eccd728f4fecaa (diff)
downloadu-boot-midas-cbd8a35c6dbaaca35494cbec319960887ad02dcf.tar.gz
u-boot-midas-cbd8a35c6dbaaca35494cbec319960887ad02dcf.tar.bz2
u-boot-midas-cbd8a35c6dbaaca35494cbec319960887ad02dcf.zip
* Patch by Masami Komiy, 22 Feb 2004:
Add support for NFS for file download * Minor code cleanup
Diffstat (limited to 'net/nfs.h')
-rw-r--r--net/nfs.h74
1 files changed, 74 insertions, 0 deletions
diff --git a/net/nfs.h b/net/nfs.h
new file mode 100644
index 0000000000..ebd4266857
--- /dev/null
+++ b/net/nfs.h
@@ -0,0 +1,74 @@
+/*
+ * (C) Masami Komiya <mkomiya@sonare.it> 2004
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2, or (at
+ * your option) any later version.
+ */
+
+#ifndef __NFS_H__
+#define __NFS_H__
+
+#define SUNRPC_PORT 111
+
+#define PROG_PORTMAP 100000
+#define PROG_NFS 100003
+#define PROG_MOUNT 100005
+
+#define MSG_CALL 0
+#define MSG_REPLY 1
+
+#define PORTMAP_GETPORT 3
+
+#define MOUNT_ADDENTRY 1
+#define MOUNT_UMOUNTALL 4
+
+#define NFS_LOOKUP 4
+#define NFS_READLINK 5
+#define NFS_READ 6
+
+#define NFS_FHSIZE 32
+
+#define NFSERR_PERM 1
+#define NFSERR_NOENT 2
+#define NFSERR_ACCES 13
+#define NFSERR_ISDIR 21
+#define NFSERR_INVAL 22
+
+/* Block size used for NFS read accesses. A RPC reply packet (including all
+ * headers) must fit within a single Ethernet frame to avoid fragmentation.
+ * Chosen to be a power of two, as most NFS servers are optimized for this. */
+#define NFS_READ_SIZE 1024
+
+#define NFS_MAXLINKDEPTH 16
+
+struct rpc_t {
+ union {
+ uint8_t data[2048];
+ struct {
+ uint32_t id;
+ uint32_t type;
+ uint32_t rpcvers;
+ uint32_t prog;
+ uint32_t vers;
+ uint32_t proc;
+ uint32_t data[1];
+ } call;
+ struct {
+ uint32_t id;
+ uint32_t type;
+ uint32_t rstatus;
+ uint32_t verifier;
+ uint32_t v2;
+ uint32_t astatus;
+ uint32_t data[1];
+ } reply;
+ } u;
+};
+extern void NfsStart (void); /* Begin NFS */
+
+
+/**********************************************************************/
+
+#endif /* __NFS_H__ */