|
|
1.1 root 1: ddmmaaoonn() -- Accessible Kernel Routine
2:
3: #iinncclluuddee <ssyyss/ttyyppeess.hh>
4: iinntt
5: ddmmaaoonn(_c_h_a_n, _p_a_d_d_r, _c_o_u_n_t, _w_f_l_a_g)
6: iinntt _c_h_a_n;
7: ppaaddddrr_tt _p_a_d_d_r;
8: uunnssiiggnneedd _c_o_u_n_t;
9: iinntt _w_f_l_a_g;
10:
11: ddmmaaoonn() programs DMA channel _c_h_a_n to transfer _c_o_u_n_t bytes to or from
12: physical-memory address _p_a_d_d_r. If _w_f_l_a_g is zero, the data are read from
13: the device and written to memory.
14:
15: If the operation is successfully programmed, ddmmaaoonn() returns one. A DMA
16: straddle arises when an operation would cross a 64-kilobyte physical memory
17: boundary. As the DMA controller cannot handle a straddle condition, the
18: operation is not programmed and ddmmaaoonn() returns zero.
19:
20: _S_e_e _A_l_s_o
21: aacccceessssiibbllee kkeerrnneell rroouuttiinneess
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.