|
|
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.