aboutsummaryrefslogtreecommitdiffstats
path: root/package/linux/kernel-source/include/sflash.h
diff options
context:
space:
mode:
Diffstat (limited to 'package/linux/kernel-source/include/sflash.h')
-rw-r--r--package/linux/kernel-source/include/sflash.h36
1 files changed, 36 insertions, 0 deletions
diff --git a/package/linux/kernel-source/include/sflash.h b/package/linux/kernel-source/include/sflash.h
new file mode 100644
index 0000000000..4691b5c344
--- /dev/null
+++ b/package/linux/kernel-source/include/sflash.h
@@ -0,0 +1,36 @@
+/*
+ * Broadcom SiliconBackplane chipcommon serial flash interface
+ *
+ * Copyright 2004, Broadcom Corporation
+ * All Rights Reserved.
+ *
+ * THIS SOFTWARE IS OFFERED "AS IS", AND BROADCOM GRANTS NO WARRANTIES OF ANY
+ * KIND, EXPRESS OR IMPLIED, BY STATUTE, COMMUNICATION OR OTHERWISE. BROADCOM
+ * SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+ * FOR A SPECIFIC PURPOSE OR NONINFRINGEMENT CONCERNING THIS SOFTWARE.
+ *
+ * $Id$
+ */
+
+#ifndef _sflash_h_
+#define _sflash_h_
+
+#include <typedefs.h>
+#include <sbchipc.h>
+
+struct sflash {
+ uint blocksize; /* Block size */
+ uint numblocks; /* Number of blocks */
+ uint32 type; /* Type */
+ uint size; /* Total size in bytes */
+};
+
+/* Utility functions */
+extern int sflash_poll(chipcregs_t *cc, uint offset);
+extern int sflash_read(chipcregs_t *cc, uint offset, uint len, uchar *buf);
+extern int sflash_write(chipcregs_t *cc, uint offset, uint len, const uchar *buf);
+extern int sflash_erase(chipcregs_t *cc, uint offset);
+extern int sflash_commit(chipcregs_t *cc, uint offset, uint len, const uchar *buf);
+extern struct sflash * sflash_init(chipcregs_t *cc);
+
+#endif /* _sflash_h_ */