ACC SHELL
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html>
<head>
<title>
Configuration of IDE DMA mode
</title>
<style type="text/css">body { background-color: #c8c8c8 }
h1 { color: #e00000 }
table { width: 100%/ border: none }
img { border: 0px }
.sigbox { background-color: #ffc080; border: solid thin #f96500 }
.sig { font: larger monospace }
.padtbl { background-color: #ffc080; padding: 10px; margin: 10px }
/* arrow */
.a { color: #606060 }
/* type, parameter */
.t, .p { color: #c05000 }
.pbox { width: 20% }
.descbox { }
.right { align: right }
.header {}
.footer { clear: both}
.menu { width: 10%; float: left }
.main { width: 90%; float: left }
</style>
</head>
<body>
<div class="header">
<i>YaST2 Developers Documentation:</i>
<a href="index.html">
<b>
Configuration of IDE DMA mode
</b>
</a>
<img class="right" alt="" src="/usr/share/doc/packages/yast2-devtools/images/yast2-mini.png" />
<hr />
</div>
<div class="menu">
<img alt="YaST" src="/usr/share/doc/packages/yast2-devtools/images/yast2-half.png" />
<br />
<br />
<a href="index.html">functions</a>
<br />
<a href="files.html">files</a>
<br />
<a href="intro.html">intro</a>
</div>
<div class="main">
<div class="sigbox">
<table class="padtbl">
<tr>
<td>
<h1>
Configuration of IDE DMA mode
</h1>
</td>
<td class="filecell">
modules/Idedma.ycp
</td>
</tr>
<tr>
<td>
Data for configuration of IDE DMA mode, input and output functions.
</td>
</tr>
<tr>
<td>
<ul>
<li> Ladislav Slezak <lslezak@suse.cz></li>
</ul>
</td>
</tr>
<tr>
<td>
<p>This module has an unstable interface.</p>
</td>
</tr>
</table>
<table class="padtbl">
<tr>
<td>
Representation of the configuration of IDE DMA mode.
Input and output routines.
<h1>Imports</h1>
<ul>
<li>Report</li>
<li>Service</li>
</ul>
<h1>Includes</h1>
<ul>
<li>hwinfo/classnames.ycp</li>
</ul>
<h1>Global Variables</h1>
<ul>
<li>
<a href="#dma_default_string">dma_default_string</a>
</li>
<li>
<a href="#dma_off_string">dma_off_string</a>
</li>
<li>
<a href="#dma_on_string">dma_on_string</a>
</li>
</ul>
<h1>Global Functions</h1>
<ul>
<li>
<a href="#Export">Export ()</a>
</li>
<li>
<a href="#Import">Import (list<map<string,any> > settings)</a>
</li>
<li>
<a href="#Read">Read ()</a>
</li>
<li>
<a href="#Set">Set (list<map<string,any> > settings)</a>
</li>
<li>
<a href="#Summary">Summary (boolean all, boolean richtext)</a>
</li>
<li>
<a href="#Write">Write ()</a>
</li>
<li>
<a href="#get_device_dma_status">get_device_dma_status (string device)</a>
</li>
<li>
<a href="#get_ide_devices">get_ide_devices ()</a>
</li>
<li>
<a href="#selected_mode">selected_mode (string device)</a>
</li>
<li>
<a href="#set_dma">set_dma (string device, string dma_setting)</a>
</li>
<li>
<a href="#set_test_data">set_test_data ()</a>
</li>
<li>
<a href="#supported_dma_modes">supported_dma_modes (string device)</a>
</li>
</ul>
<h1>Local Variables</h1>
<ul>
<li>
<a href="#hdparm_bin">hdparm_bin</a>
</li>
<li>
<a href="#ide_devices">ide_devices</a>
</li>
<li>
<a href="#udev_script">udev_script</a>
</li>
</ul>
<h1>Local Functions</h1>
<ul>
<li>
<a href="#get_current_dma_mode">get_current_dma_mode (string dma_info)</a>
</li>
<li>
<a href="#get_dma_info">get_dma_info (string device)</a>
</li>
<li>
<a href="#get_supported_dma_modes">get_supported_dma_modes (string dma_info)</a>
</li>
</ul>
</td>
</tr>
</table>
</div>
<p />
<div class="sigbox">
<span class="sig" id="ide_devices">local
<b>ide_devices
<span class="a"> -> </span>
<span class="t">list<map<string,any> ></span>
</b>
</span>
</div>
<p>
List of all IDE devices with descriptions and DMA settings</p>
<div class="sigbox">
<span class="sig" id="hdparm_bin">local
<b>hdparm_bin
<span class="a"> -> </span>
<span class="t">string</span>
</b>
</span>
</div>
<p>
Full path to hdparm binary</p>
<div class="sigbox">
<span class="sig" id="udev_script">local
<b>udev_script
<span class="a"> -> </span>
<span class="t">string</span>
</b>
</span>
</div>
<p>
Full path to udev script which sets the DMA mode</p>
<div class="sigbox">
<span class="sig" id="dma_on_string">global
<b>dma_on_string
<span class="a"> -> </span>
<span class="t">string</span>
</b>
</span>
</div>
<p>
String with DMA on status text
(For translators: translation can be long - text is used in the table
in column "Required DMA mode" and "Current DMA mode")</p>
<div class="sigbox">
<span class="sig" id="dma_off_string">global
<b>dma_off_string
<span class="a"> -> </span>
<span class="t">string</span>
</b>
</span>
</div>
<p>
String with DMA off status text
(For translators: translation can be long - text is used in the table
in column "Required DMA mode" and "Current DMA mode")</p>
<div class="sigbox">
<span class="sig" id="dma_default_string">global
<b>dma_default_string
<span class="a"> -> </span>
<span class="t">string</span>
</b>
</span>
</div>
<p>
String with no change of DMA status text
(For translators: translation can be long - text is used in the table
in column "Required DMA mode" and "Current DMA mode")</p>
<div class="sigbox">
<span class="sig" id="get_device_dma_status">global
<b>get_device_dma_status (string device)
<span class="a"> -> </span>
<span class="t">string</span>
</b>
</span>
</div>
<p>
Return actual DMA status of IDE device</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">device</span>
</td>
<td class="descbox">Identification of ide device, e.g. "/dev/hdc"</td>
</tr>
</table>
</dd>
</dl>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">true if DMA is on, false if DMA is off or nil on error</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="get_dma_info">local
<b>get_dma_info (string device)
<span class="a"> -> </span>
<span class="t">string</span>
</b>
</span>
</div>
<p>
Get DMA information status for device</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">device</span>
</td>
<td class="descbox">device name (e.g. "/dev/hdc")</td>
</tr>
</table>
</dd>
</dl>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">DMA information from hdparm ("mdma2 udma0 udma1 *udma2")</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="get_current_dma_mode">local
<b>get_current_dma_mode (string dma_info)
<span class="a"> -> </span>
<span class="t">string</span>
</b>
</span>
</div>
<p>
Parse DMA info string from hdparm output - return current DMA mode (has mark '*')</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">dma_info</span>
</td>
<td class="descbox">DMA support string (e.g. "mdma2 udma0 udma1 *udma2")</td>
</tr>
</table>
</dd>
</dl>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">current DMA mode or "" if unknown</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="get_supported_dma_modes">local
<b>get_supported_dma_modes (string dma_info)
<span class="a"> -> </span>
<span class="t">list<string></span>
</b>
</span>
</div>
<p>
Parse DMA info string from hdparm output - return list of supported DMA modes</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">dma_info</span>
</td>
<td class="descbox">DMA support string (e.g. "mdma2 udma0 udma1 *udma2")</td>
</tr>
</table>
</dd>
</dl>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">list of supported DMA modes</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="Read">global
<b>Read ()
<span class="a"> -> </span>
<span class="t">boolean</span>
</b>
</span>
</div>
<p>
Read all DMA settings from the SCR</p>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">true on success</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="get_ide_devices">global
<b>get_ide_devices ()
<span class="a"> -> </span>
<span class="t">list<map></span>
</b>
</span>
</div>
<p>
Return information about all IDE devices</p>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">List of maps with information about all IDE devices</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="supported_dma_modes">global
<b>supported_dma_modes (string device)
<span class="a"> -> </span>
<span class="t">list</span>
</b>
</span>
</div>
<p>
Get list of supported DMA modes for selected device</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">device</span>
</td>
<td class="descbox">device name ("/dev/hda")</td>
</tr>
</table>
</dd>
</dl>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">supported DMA modes (["mdma2", "udma0", "udma1", "udma2"])</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="selected_mode">global
<b>selected_mode (string device)
<span class="a"> -> </span>
<span class="t">string</span>
</b>
</span>
</div>
<p>
Get selected DMA mode, which will be saved and set in Write</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">device</span>
</td>
<td class="descbox">device name ("/dev/hda")</td>
</tr>
</table>
</dd>
</dl>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">selected DMA mode ("on", "off", "nochange", or mode supported by hdparm - "udma5",...)</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="set_dma">global
<b>set_dma (string device, string dma_setting)
<span class="a"> -> </span>
<span class="t">boolean</span>
</b>
</span>
</div>
<p>
Set DMA of device</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">device</span>
</td>
<td class="descbox">Identification of IDE device, e.g. "/dev/hda"</td>
</tr>
<tr>
<td class="pbox">
<span class="p">dma_setting</span>
</td>
<td class="descbox">DMA mode (e.g. "mdma2", "udma5", "off",...)</td>
</tr>
</table>
</dd>
</dl>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">true on success</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="Write">global
<b>Write ()
<span class="a"> -> </span>
<span class="t">boolean</span>
</b>
</span>
</div>
<p>
Update the SCR according to DMA settings</p>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">true on success</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="Set">global
<b>Set (list<map<string,any> > settings)
<span class="a"> -> </span>
<span class="t">void</span>
</b>
</span>
</div>
<p>
Set module data</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">settings</span>
</td>
<td class="descbox">set data from YCP</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="Import">global
<b>Import (list<map<string,any> > settings)
<span class="a"> -> </span>
<span class="t">boolean</span>
</b>
</span>
</div>
<p>
Get all IDE DMA settings from the first parameter
(For use by autoinstallation.)</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">settings</span>
</td>
<td class="descbox">The YCP structure to be imported.</td>
</tr>
</table>
</dd>
</dl>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">True</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="Export">global
<b>Export ()
<span class="a"> -> </span>
<span class="t">list</span>
</b>
</span>
</div>
<p>
Dump the IDE DMA settings to a single map
(For use by autoinstallation.)</p>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">Dumped settings (later acceptable by Import ())</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="set_test_data">global
<b>set_test_data ()
<span class="a"> -> </span>
<span class="t">void</span>
</b>
</span>
</div>
<p>
Set system configuration without reading values from
system - for testing and screenshot mode</p>
<div class="sigbox">
<span class="sig" id="Summary">global
<b>Summary (boolean all, boolean richtext)
<span class="a"> -> </span>
<span class="t">string</span>
</b>
</span>
</div>
<p>
Create rich text description of the current configuration</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">all</span>
</td>
<td class="descbox">when true all IDE devices are contained in the summary text
(even unconfigured devices with default DMA mode)</td>
</tr>
<tr>
<td class="pbox">
<span class="p">richtext</span>
</td>
<td class="descbox">select rich/plain text output</td>
</tr>
</table>
</dd>
</dl>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">summary text</td>
</tr>
</table>
</dd>
</dl>
</div>
<div class="footer">
<hr />
<i>YaST2 Developers Documentation</i>
<img class="right" alt="" src="/usr/share/doc/packages/yast2-devtools/images/yast2-mini.png" />
</div>
</body>
</html>
ACC SHELL 2018