1 #ifndef _SDCARDBCM2835_INTERN_H
2 #define _SDCARDBCM2835_INTERN_H
4 Copyright © 2013, The AROS Development Team. All rights reserved.
8 #include <exec/execbase.h>
9 #include <exec/libraries.h>
10 #include <exec/ports.h>
11 #include <utility/utility.h>
13 #include <exec/errors.h>
15 #include <devices/timer.h>
17 #include <asm/bcm2835.h>
19 #include "sdcard_base.h"
21 #define FNAME_BCMSDC(x) BCM2835SD__Device__ ## x
22 #define FNAME_BCMSDCBUS(x) BCM2835SD__SDBus__ ## x
26 #define BCM2835SDUNIT_MAX 1
27 #define BCM2835SDCLOCK_MIN 400000
29 #define VCMB_PROPCHAN 8
31 #define VCPOWER_SDHCI 0
32 #define VCPOWER_STATE_ON (1 << 0)
33 #define VCPOWER_STATE_WAIT (1 << 1)
34 #define VCCLOCK_SDHCI 1
36 void FNAME_BCMSDCBUS(BCMLEDCtrl
)(int lvl
);
38 UBYTE
FNAME_BCMSDCBUS(BCMMMIOReadByte
)(ULONG
, struct sdcard_Bus
*);
39 UWORD
FNAME_BCMSDCBUS(BCMMMIOReadWord
)(ULONG
, struct sdcard_Bus
*);
40 ULONG
FNAME_BCMSDCBUS(BCMMMIOReadLong
)(ULONG
, struct sdcard_Bus
*);
42 void FNAME_BCMSDCBUS(BCMMMIOWriteByte
)(ULONG
, UBYTE
, struct sdcard_Bus
*);
43 void FNAME_BCMSDCBUS(BCMMMIOWriteWord
)(ULONG
, UWORD
, struct sdcard_Bus
*);
44 void FNAME_BCMSDCBUS(BCMMMIOWriteLong
)(ULONG
, ULONG
, struct sdcard_Bus
*);
46 #endif // _SDCARDBCM2835_INTERN_H