OpenCores
URL https://opencores.org/ocsvn/c0or1k/c0or1k/trunk

Subversion Repositories c0or1k

[/] [c0or1k/] [trunk/] [conts/] [posix/] [mm0/] [fs/] [romfs/] [romfs.h] - Blame information for rev 7

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 2 drasko
#ifndef __ROMFS_H__
2
#define __ROMFS_H__
3
 
4
#define ROMFS_MAGIC     0x7275
5
 
6
#define ROMFS_FTYPE_MSK         0xF     /* File mask */
7
#define ROMFS_FTYPE_HRD         0        /* Hard link */
8
#define ROMFS_FTYPE_DIR         1       /* Directory */
9
#define ROMFS_FTYPE_REG         2       /* Regular file */
10
#define ROMFS_FTYPE_SYM         3       /* Symbolic link */
11
#define ROMFS_FTYPE_BLK         4       /* Block device */
12
#define ROMFS_FTYPE_CHR         5       /* Char device */
13
#define ROMFS_FTYPE_SCK         6       /* Socket */
14
#define ROMFS_FTYPE_FIF         7       /* FIFO */
15
#define ROMFS_FTYPE_EXE         8       /* Executable */
16
 
17
#define ROMFS_NAME_ALIGN        16      /* Alignment size of names */
18
 
19
#define ROMFS_SB_WORD0  "-rom"
20
#define ROMFS_SB_WORD1  "1fs-"
21
 
22
/*
23
 * Romfs superblock descriptor:
24
 *
25
 * All words are Big-Endian.
26
 *
27
 * Word 0: | - | r | o | m |
28
 * Word 1: | 1 | f | s | - |
29
 * Word 2: |      Size     | The number of bytes in this fs.
30
 * Word 3: |    Checksum   | The checksum of first 512 bytes.
31
 * Word 4: |  Volume Name  | The name of volume, padded to 16-byte boundary.
32
 * Rest:   |  File Headers | The rest of the data.
33
 */
34
struct romfs_superblock {
35
        u32 word0;
36
        u32 word1;
37
        u32 size;
38
        u32 checksum;
39
        char name[0];
40
};
41
 
42
 
43
#endif /* __ROMFS_H__ */

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.