add stubs for the ata trim/smart commands. make sysexplorer's ata and ahci modules...
[AROS.git] / rom / devs / ata / timer.h
blob691246852c007672ee845224f91266696b2150fa
1 /*
2 Copyright © 2009-2013, The AROS Development Team. All rights reserved
3 $Id$
5 Desc:
6 Lang: English
7 */
9 struct ataBase;
12 * ata_OpenTimer
13 * create timerequest to manage timed operations
14 * result
15 * timerequest to be used with any of the calls below
16 * note
17 * only one task can use given timerequest
19 struct IORequest *ata_OpenTimer(struct ataBase *base);
22 * ata_CloseTimer
23 * dispose timerequest; most likely never used ;)
24 * params
25 * tmr - obtained via ata_OpenTimer()
26 * result
27 * none
29 void ata_CloseTimer(struct IORequest *tmr);
32 * ata_Wait
33 * wait for a period of time or a signal
34 * params
35 * tmr - obtained via ata_OpenTimer()
36 * secs - number of seconds to wait
37 * micro - number of microseconds to wait
38 * sigs - additionally - signal to wait for
39 * result
40 * ULONG signals - if caught before timeout
42 ULONG ata_WaitTO(struct IORequest* tmr, ULONG secs, ULONG micro, ULONG sigs);
44 BOOL ata_Calibrate(struct IORequest* tmr, struct ataBase *base);
47 * ata_WaitNano
48 * waits for (pretty much) specified amount of time. benchmarked.
49 * params
50 * ns - amount of nanoseconds;
51 * result
52 * none
53 * note
54 * rounds up ns to nearest multiple of 100
56 void ata_WaitNano(ULONG ns, struct ataBase *base);