source: trunk/softs/tsar_boot/block_device.h @ 276

Last change on this file since 276 was 276, checked in by bouyer, 11 years ago

A boot loader to be stored in ROM of a TSAR platform.
Based on Cesar FUGUET's work.
Platform-specific files are in a subdirectory, e.g. platform_fpga_de2-115,
so the same code can be targetted to different platforms.
The platform is selected with the PLATFORM_DIR environnement variable.
The supported variant are soclib and fpga, the later being the default
and the former selected by defining the SOCLIB environnement variable.
The boot loader embeds a binary device tree describing the platform,
to be used by the loaded software.

File size: 1.7 KB
Line 
1/*
2 * SOCLIB_LGPL_HEADER_BEGIN
3 *
4 * This file is part of SoCLib, GNU LGPLv2.1.
5 *
6 * SoCLib is free software; you can redistribute it and/or modify it
7 * under the terms of the GNU Lesser General Public License as published
8 * by the Free Software Foundation; version 2.1 of the License.
9 *
10 * SoCLib is distributed in the hope that it will be useful, but
11 * WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
13 * Lesser General Public License for more details.
14 *
15 * You should have received a copy of the GNU Lesser General Public
16 * License along with SoCLib; if not, write to the Free Software
17 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
18 * 02110-1301 USA
19 *
20 * SOCLIB_LGPL_HEADER_END
21 *
22 * Copyright (c) UPMC, Lip6, Asim
23 *         Nicolas Pouillon <nipo@ssji.net>, 2007
24 *
25 * Maintainers: nipo
26 */
27#ifndef BLOCK_DEVICE_REGS_H
28#define BLOCK_DEVICE_REGS_H
29
30enum SoclibBlockDeviceRegisters {
31    BLOCK_DEVICE_BUFFER,
32    BLOCK_DEVICE_LBA,
33    BLOCK_DEVICE_COUNT,
34    BLOCK_DEVICE_OP,
35    BLOCK_DEVICE_STATUS,
36    BLOCK_DEVICE_IRQ_ENABLE,
37    BLOCK_DEVICE_SIZE,
38    BLOCK_DEVICE_BLOCK_SIZE,
39};
40
41enum SoclibBlockDeviceOp {
42    BLOCK_DEVICE_NOOP,
43    BLOCK_DEVICE_READ,
44    BLOCK_DEVICE_WRITE,
45};
46
47enum SoclibBlockDeviceStatus {
48    BLOCK_DEVICE_IDLE,
49    BLOCK_DEVICE_BUSY,
50    BLOCK_DEVICE_READ_SUCCESS,
51    BLOCK_DEVICE_WRITE_SUCCESS,
52    BLOCK_DEVICE_READ_ERROR,
53    BLOCK_DEVICE_WRITE_ERROR,
54    BLOCK_DEVICE_ERROR,
55};
56
57#endif /* BLOCK_DEVICE_REGS_H */
58
59// Local Variables:
60// tab-width: 4
61// c-basic-offset: 4
62// c-file-offsets:((innamespace . 0)(inline-open . 0))
63// indent-tabs-mode: nil
64// End:
65
66// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=4:softtabstop=4
67
Note: See TracBrowser for help on using the repository browser.