source: soft/giet_vm/giet_drivers/bdv_driver.h @ 289

Last change on this file since 289 was 289, checked in by cfuguet, 11 years ago

Modifications on GIET-VM IOC driver:

  • Introducing new layer on the IOC driver. Every call to ioc_read, ioc_write, ioc_get_block_size or ioc_init

functions will call the specific driver of the used IOC
controller. Supported IOC controllers are (for now) :

  1. BDV (Soclib Block Device)
  2. HBA
  3. SPI (SDCARD - SPI controller)
  • All functions of IOC controllers drivers respect the same interface.
  • To specify the used IOC controller of the platform, a subtype field has been introduced on the map.xml file. This subtype field must be declared on the IOC periph instantiation. Available subtypes (for now) : BDV, HBA or SPI.
File size: 1.5 KB
Line 
1///////////////////////////////////////////////////////////////////////////////////
2// File      : bdv_driver.h
3// Date      : 01/11/2013
4// Author    : alain greiner
5// Maintainer: cesar fuguet
6// Copyright (c) UPMC-LIP6
7///////////////////////////////////////////////////////////////////////////////////
8
9#ifndef _GIET_BDV_DRIVERS_H_
10#define _GIET_BDV_DRIVERS_H_
11
12#include <mapping_info.h>
13
14///////////////////////////////////////////////////////////////////////////////////
15// BDV access functions and variables (vci_block_device)
16///////////////////////////////////////////////////////////////////////////////////
17
18extern unsigned int _bdv_init( unsigned int channel );
19
20extern unsigned int _bdv_write( unsigned int mode,
21                                unsigned int lba, 
22                                paddr_t      buffer, 
23                                unsigned int count );
24
25extern unsigned int _bdv_read(  unsigned int mode,
26                                unsigned int lba, 
27                                paddr_t      buffer,
28                                unsigned int count );
29
30extern unsigned int _bdv_get_status( unsigned int  channel,
31                                     unsigned int* status );
32
33extern unsigned int _bdv_get_block_size();
34
35///////////////////////////////////////////////////////////////////////////////////
36
37#endif
38
39// Local Variables:
40// tab-width: 4
41// c-basic-offset: 4
42// c-file-offsets:((innamespace . 0)(inline-open . 0))
43// indent-tabs-mode: nil
44// End:
45// vim: filetype=c:expandtab:shiftwidth=4:tabstop=4:softtabstop=4
46
Note: See TracBrowser for help on using the repository browser.