__  __    __   __  _____      _            _          _____ _          _ _ 
 |  \/  |   \ \ / / |  __ \    (_)          | |        / ____| |        | | |
 | \  / |_ __\ V /  | |__) | __ ___   ____ _| |_ ___  | (___ | |__   ___| | |
 | |\/| | '__|> <   |  ___/ '__| \ \ / / _` | __/ _ \  \___ \| '_ \ / _ \ | |
 | |  | | |_ / . \  | |   | |  | |\ V / (_| | ||  __/  ____) | | | |  __/ | |
 |_|  |_|_(_)_/ \_\ |_|   |_|  |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1
 if you need WebShell for Seo everyday contact me on Telegram
 Telegram Address : @jackleet
        
        
For_More_Tools: Telegram: @jackleet | Bulk Smtp support mail sender | Business Mail Collector | Mail Bouncer All Mail | Bulk Office Mail Validator | Html Letter private



Upload:

Command:

www-data@216.73.217.121: ~ $
<!DOCTYPE html>

<html lang="en" data-content_root="../../">
  <head>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />

    <title>SuperH Interfaces Guide &#8212; The Linux Kernel  documentation</title>
    <link rel="stylesheet" type="text/css" href="../../_static/pygments.css?v=fa44fd50" />
    <link rel="stylesheet" type="text/css" href="../../_static/alabaster.css?v=3918102e" />
    <script src="../../_static/documentation_options.js?v=5929fcd5"></script>
    <script src="../../_static/doctools.js?v=9bcbadda"></script>
    <script src="../../_static/sphinx_highlight.js?v=dc90522c"></script>
    <link rel="index" title="Index" href="../../genindex.html" />
    <link rel="search" title="Search" href="../../search.html" />
    <link rel="next" title="DeviceTree Booting" href="booting.html" />
    <link rel="prev" title="Feature status on s390 architecture" href="../s390/features.html" />
   
  <link rel="stylesheet" href="../../_static/custom.css" type="text/css" />
  

  
  

  </head><body>
  <div class="document">
    
      <div class="sphinxsidebar" role="navigation" aria-label="Main">
        <div class="sphinxsidebarwrapper">
            <p class="logo"><a href="../../index.html">
              <img class="logo" src="../../_static/logo.svg" alt="Logo of The Linux Kernel"/>
            </a></p>
<h1 class="logo"><a href="../../index.html">The Linux Kernel</a></h1>



<p class="blurb">6.18.50</p>







<search id="searchbox" style="display: none" role="search">
  <h3 id="searchlabel">Quick search</h3>
    <div class="searchformwrapper">
    <form class="search" action="../../search.html" method="get">
      <input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
      <input type="submit" value="Go" />
    </form>
    </div>
</search>
<script>document.getElementById('searchbox').style.display = "block"</script>


<p>
<h3 class="kernel-toc-contents">Contents</h3>
<input type="checkbox" class="kernel-toc-toggle" id = "kernel-toc-toggle" checked>
<label class="kernel-toc-title" for="kernel-toc-toggle"></label>

<div class="kerneltoc" id="kerneltoc">
<ul>
<li class="toctree-l1"><a class="reference internal" href="../../process/development-process.html">Development process</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../process/submitting-patches.html">Submitting patches</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../process/code-of-conduct.html">Code of conduct</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../maintainer/index.html">Maintainer handbook</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../process/index.html">All development-process docs</a></li>
</ul>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../../core-api/index.html">Core API</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../driver-api/index.html">Driver APIs</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../subsystem-apis.html">Subsystems</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../locking/index.html">Locking</a></li>
</ul>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../../process/license-rules.html">Licensing rules</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../doc-guide/index.html">Writing documentation</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../dev-tools/index.html">Development tools</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../dev-tools/testing-overview.html">Testing guide</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../kernel-hacking/index.html">Hacking guide</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../trace/index.html">Tracing</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../fault-injection/index.html">Fault injection</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../livepatch/index.html">Livepatching</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../rust/index.html">Rust</a></li>
</ul>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../../admin-guide/index.html">Administration</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../kbuild/index.html">Build system</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../admin-guide/reporting-issues.html">Reporting issues</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../tools/index.html">Userspace tools</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../userspace-api/index.html">Userspace API</a></li>
</ul>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../../firmware-guide/index.html">Firmware</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../devicetree/index.html">Firmware and Devicetree</a></li>
</ul>
<ul class="current">
<li class="toctree-l1 current"><a class="reference internal" href="../index.html">CPU architectures</a><ul class="current">
<li class="toctree-l2"><a class="reference internal" href="../arc/index.html">ARC architecture</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arm/index.html">ARM Architecture</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arm64/index.html">ARM64 Architecture</a></li>
<li class="toctree-l2"><a class="reference internal" href="../loongarch/index.html">LoongArch Architecture</a></li>
<li class="toctree-l2"><a class="reference internal" href="../m68k/index.html">m68k Architecture</a></li>
<li class="toctree-l2"><a class="reference internal" href="../mips/index.html">MIPS-specific Documentation</a></li>
<li class="toctree-l2"><a class="reference internal" href="../nios2/index.html">Nios II Specific Documentation</a></li>
<li class="toctree-l2"><a class="reference internal" href="../openrisc/index.html">OpenRISC Architecture</a></li>
<li class="toctree-l2"><a class="reference internal" href="../parisc/index.html">PA-RISC Architecture</a></li>
<li class="toctree-l2"><a class="reference internal" href="../powerpc/index.html">powerpc</a></li>
<li class="toctree-l2"><a class="reference internal" href="../riscv/index.html">RISC-V architecture</a></li>
<li class="toctree-l2"><a class="reference internal" href="../s390/index.html">s390 Architecture</a></li>
<li class="toctree-l2 current"><a class="current reference internal" href="#">SuperH Interfaces Guide</a><ul>
<li class="toctree-l3"><a class="reference internal" href="booting.html">DeviceTree Booting</a></li>
<li class="toctree-l3"><a class="reference internal" href="new-machine.html">Adding a new board to LinuxSH</a></li>
<li class="toctree-l3"><a class="reference internal" href="register-banks.html">Notes on register bank usage in the kernel</a></li>
<li class="toctree-l3"><a class="reference internal" href="features.html">Feature status on sh architecture</a></li>
<li class="toctree-l3"><a class="reference internal" href="#memory-management">Memory Management</a></li>
<li class="toctree-l3"><a class="reference internal" href="#machine-specific-interfaces">Machine Specific Interfaces</a></li>
<li class="toctree-l3"><a class="reference internal" href="#busses">Busses</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../sparc/index.html">Sparc Architecture</a></li>
<li class="toctree-l2"><a class="reference internal" href="../x86/index.html">x86-specific Documentation</a></li>
<li class="toctree-l2"><a class="reference internal" href="../xtensa/index.html">Xtensa Architecture</a></li>
</ul>
</li>
</ul>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../../staging/index.html">Unsorted documentation</a></li>
</ul>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../../translations/index.html">Translations</a></li>
</ul>

</div>

<script type="text/javascript"> <!--
  var sbar = document.getElementsByClassName("sphinxsidebar")[0];
  let currents = document.getElementsByClassName("current")
  if (currents.length) {
    sbar.scrollTop = currents[currents.length - 1].offsetTop;
  }
  --> </script>
  <div role="note" aria-label="source link">
    <h3>This Page</h3>
    <ul class="this-page-menu">
      <li><a href="../../_sources/arch/sh/index.rst.txt"
            rel="nofollow">Show Source</a></li>
    </ul>
   </div>
        </div>
      </div>
      <div class="documentwrapper">
        <div class="bodywrapper">
          

          <div class="body" role="main">
            
  



<section id="superh-interfaces-guide">
<h1>SuperH Interfaces Guide<a class="headerlink" href="#superh-interfaces-guide" title="Link to this heading">¶</a></h1>
<dl class="field-list simple">
<dt class="field-odd">Author<span class="colon">:</span></dt>
<dd class="field-odd"><p>Paul Mundt</p>
</dd>
</dl>
<div class="toctree-wrapper compound">
<ul>
<li class="toctree-l1"><a class="reference internal" href="booting.html">DeviceTree Booting</a></li>
<li class="toctree-l1"><a class="reference internal" href="new-machine.html">Adding a new board to LinuxSH</a></li>
<li class="toctree-l1"><a class="reference internal" href="register-banks.html">Notes on register bank usage in the kernel</a></li>
<li class="toctree-l1"><a class="reference internal" href="features.html">Feature status on sh architecture</a></li>
</ul>
</div>
<section id="memory-management">
<h2>Memory Management<a class="headerlink" href="#memory-management" title="Link to this heading">¶</a></h2>
<section id="sh-4">
<h3>SH-4<a class="headerlink" href="#sh-4" title="Link to this heading">¶</a></h3>
<section id="store-queue-api">
<h4>Store Queue API<a class="headerlink" href="#store-queue-api" title="Link to this heading">¶</a></h4>
<dl class="c function">
<dt class="sig sig-object c" id="c.sq_flush_range">
<span class="kt"><span class="pre">void</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">sq_flush_range</span></span></span><span class="sig-paren">(</span><span class="kt"><span class="pre">unsigned</span></span><span class="w"> </span><span class="kt"><span class="pre">long</span></span><span class="w"> </span><span class="n"><span class="pre">start</span></span>, <span class="kt"><span class="pre">unsigned</span></span><span class="w"> </span><span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">len</span></span><span class="sig-paren">)</span><a class="headerlink" href="#c.sq_flush_range" title="Link to this definition">¶</a><br /></dt>
<dd><p>Flush (prefetch) a specific SQ range</p>
</dd></dl>

<div class="kernelindent docutils container">
<p><strong>Parameters</strong></p>
<dl class="simple">
<dt><code class="docutils literal notranslate"><span class="pre">unsigned</span> <span class="pre">long</span> <span class="pre">start</span></code></dt><dd><p>the store queue address to start flushing from</p>
</dd>
<dt><code class="docutils literal notranslate"><span class="pre">unsigned</span> <span class="pre">int</span> <span class="pre">len</span></code></dt><dd><p>the length to flush</p>
</dd>
</dl>
<p><strong>Description</strong></p>
<p>Flushes the store queue cache from <strong>start</strong> to <strong>start</strong> + <strong>len</strong> in a
linear fashion.</p>
</div>
<dl class="c function">
<dt class="sig sig-object c" id="c.sq_remap">
<span class="kt"><span class="pre">unsigned</span></span><span class="w"> </span><span class="kt"><span class="pre">long</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">sq_remap</span></span></span><span class="sig-paren">(</span><span class="kt"><span class="pre">unsigned</span></span><span class="w"> </span><span class="kt"><span class="pre">long</span></span><span class="w"> </span><span class="n"><span class="pre">phys</span></span>, <span class="kt"><span class="pre">unsigned</span></span><span class="w"> </span><span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">size</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="kt"><span class="pre">char</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">name</span></span>, <span class="n"><span class="pre">pgprot_t</span></span><span class="w"> </span><span class="n"><span class="pre">prot</span></span><span class="sig-paren">)</span><a class="headerlink" href="#c.sq_remap" title="Link to this definition">¶</a><br /></dt>
<dd><p>Map a physical address through the Store Queues</p>
</dd></dl>

<div class="kernelindent docutils container">
<p><strong>Parameters</strong></p>
<dl class="simple">
<dt><code class="docutils literal notranslate"><span class="pre">unsigned</span> <span class="pre">long</span> <span class="pre">phys</span></code></dt><dd><p>Physical address of mapping.</p>
</dd>
<dt><code class="docutils literal notranslate"><span class="pre">unsigned</span> <span class="pre">int</span> <span class="pre">size</span></code></dt><dd><p>Length of mapping.</p>
</dd>
<dt><code class="docutils literal notranslate"><span class="pre">const</span> <span class="pre">char</span> <span class="pre">*name</span></code></dt><dd><p>User invoking mapping.</p>
</dd>
<dt><code class="docutils literal notranslate"><span class="pre">pgprot_t</span> <span class="pre">prot</span></code></dt><dd><p>Protection bits.</p>
</dd>
</dl>
<p><strong>Description</strong></p>
<p>Remaps the physical address <strong>phys</strong> through the next available store queue
address of <strong>size</strong> length. <strong>name</strong> is logged at boot time as well as through
the sysfs interface.</p>
</div>
<dl class="c function">
<dt class="sig sig-object c" id="c.sq_unmap">
<span class="kt"><span class="pre">void</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">sq_unmap</span></span></span><span class="sig-paren">(</span><span class="kt"><span class="pre">unsigned</span></span><span class="w"> </span><span class="kt"><span class="pre">long</span></span><span class="w"> </span><span class="n"><span class="pre">vaddr</span></span><span class="sig-paren">)</span><a class="headerlink" href="#c.sq_unmap" title="Link to this definition">¶</a><br /></dt>
<dd><p>Unmap a Store Queue allocation</p>
</dd></dl>

<div class="kernelindent docutils container">
<p><strong>Parameters</strong></p>
<dl class="simple">
<dt><code class="docutils literal notranslate"><span class="pre">unsigned</span> <span class="pre">long</span> <span class="pre">vaddr</span></code></dt><dd><p>Pre-allocated Store Queue mapping.</p>
</dd>
</dl>
<p><strong>Description</strong></p>
<p>Unmaps the store queue allocation <strong>map</strong> that was previously created by
<a class="reference internal" href="#c.sq_remap" title="sq_remap"><code class="xref c c-func docutils literal notranslate"><span class="pre">sq_remap()</span></code></a>. Also frees up the pte that was previously inserted into
the kernel page table and discards the UTLB translation.</p>
</div>
</section>
</section>
</section>
<section id="machine-specific-interfaces">
<h2>Machine Specific Interfaces<a class="headerlink" href="#machine-specific-interfaces" title="Link to this heading">¶</a></h2>
<section id="mach-dreamcast">
<h3>mach-dreamcast<a class="headerlink" href="#mach-dreamcast" title="Link to this heading">¶</a></h3>
<dl class="c function">
<dt class="sig sig-object c" id="c.aica_rtc_gettimeofday">
<span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">aica_rtc_gettimeofday</span></span></span><span class="sig-paren">(</span><span class="k"><span class="pre">struct</span></span><span class="w"> </span><a class="reference internal" href="../../driver-api/infrastructure.html#c.device" title="device"><span class="n"><span class="pre">device</span></span></a><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">dev</span></span>, <span class="k"><span class="pre">struct</span></span><span class="w"> </span><span class="n"><span class="pre">rtc_time</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">tm</span></span><span class="sig-paren">)</span><a class="headerlink" href="#c.aica_rtc_gettimeofday" title="Link to this definition">¶</a><br /></dt>
<dd><p>Get the time from the AICA RTC</p>
</dd></dl>

<div class="kernelindent docutils container">
<p><strong>Parameters</strong></p>
<dl class="simple">
<dt><code class="docutils literal notranslate"><span class="pre">struct</span> <span class="pre">device</span> <span class="pre">*dev</span></code></dt><dd><p>the RTC device (ignored)</p>
</dd>
<dt><code class="docutils literal notranslate"><span class="pre">struct</span> <span class="pre">rtc_time</span> <span class="pre">*tm</span></code></dt><dd><p>pointer to resulting RTC time structure</p>
</dd>
</dl>
<p><strong>Description</strong></p>
<p>Grabs the current RTC seconds counter and adjusts it to the Unix Epoch.</p>
</div>
<dl class="c function">
<dt class="sig sig-object c" id="c.aica_rtc_settimeofday">
<span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">aica_rtc_settimeofday</span></span></span><span class="sig-paren">(</span><span class="k"><span class="pre">struct</span></span><span class="w"> </span><a class="reference internal" href="../../driver-api/infrastructure.html#c.device" title="device"><span class="n"><span class="pre">device</span></span></a><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">dev</span></span>, <span class="k"><span class="pre">struct</span></span><span class="w"> </span><span class="n"><span class="pre">rtc_time</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">tm</span></span><span class="sig-paren">)</span><a class="headerlink" href="#c.aica_rtc_settimeofday" title="Link to this definition">¶</a><br /></dt>
<dd><p>Set the AICA RTC to the current time</p>
</dd></dl>

<div class="kernelindent docutils container">
<p><strong>Parameters</strong></p>
<dl class="simple">
<dt><code class="docutils literal notranslate"><span class="pre">struct</span> <span class="pre">device</span> <span class="pre">*dev</span></code></dt><dd><p>the RTC device (ignored)</p>
</dd>
<dt><code class="docutils literal notranslate"><span class="pre">struct</span> <span class="pre">rtc_time</span> <span class="pre">*tm</span></code></dt><dd><p>pointer to new RTC time structure</p>
</dd>
</dl>
<p><strong>Description</strong></p>
<p>Adjusts the given <strong>tv</strong> to the AICA Epoch and sets the RTC seconds counter.</p>
</div>
</section>
<section id="mach-x3proto">
<h3>mach-x3proto<a class="headerlink" href="#mach-x3proto" title="Link to this heading">¶</a></h3>
<dl class="c function">
<dt class="sig sig-object c" id="c.ilsel_enable">
<span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">ilsel_enable</span></span></span><span class="sig-paren">(</span><span class="n"><span class="pre">ilsel_source_t</span></span><span class="w"> </span><span class="n"><span class="pre">set</span></span><span class="sig-paren">)</span><a class="headerlink" href="#c.ilsel_enable" title="Link to this definition">¶</a><br /></dt>
<dd><p>Enable an ILSEL set.</p>
</dd></dl>

<div class="kernelindent docutils container">
<p><strong>Parameters</strong></p>
<dl class="simple">
<dt><code class="docutils literal notranslate"><span class="pre">ilsel_source_t</span> <span class="pre">set</span></code></dt><dd><p>ILSEL source (see ilsel_source_t <code class="xref c c-enum broken_xref docutils literal notranslate"><span class="pre">enum</span> <span class="pre">in</span></code> include/asm-sh/ilsel.h).</p>
</dd>
</dl>
<p><strong>Description</strong></p>
<p>Enables a given non-aliased ILSEL source (&lt;= ILSEL_KEY) at the highest
available interrupt level. Callers should take care to order callsites
noting descending interrupt levels. Aliasing FPGA and external board
IRQs need to use <a class="reference internal" href="#c.ilsel_enable_fixed" title="ilsel_enable_fixed"><code class="xref c c-func docutils literal notranslate"><span class="pre">ilsel_enable_fixed()</span></code></a>.</p>
<p>The return value is an IRQ number that can later be taken down with
<a class="reference internal" href="#c.ilsel_disable" title="ilsel_disable"><code class="xref c c-func docutils literal notranslate"><span class="pre">ilsel_disable()</span></code></a>.</p>
</div>
<dl class="c function">
<dt class="sig sig-object c" id="c.ilsel_enable_fixed">
<span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">ilsel_enable_fixed</span></span></span><span class="sig-paren">(</span><span class="n"><span class="pre">ilsel_source_t</span></span><span class="w"> </span><span class="n"><span class="pre">set</span></span>, <span class="kt"><span class="pre">unsigned</span></span><span class="w"> </span><span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">level</span></span><span class="sig-paren">)</span><a class="headerlink" href="#c.ilsel_enable_fixed" title="Link to this definition">¶</a><br /></dt>
<dd><p>Enable an ILSEL set at a fixed interrupt level</p>
</dd></dl>

<div class="kernelindent docutils container">
<p><strong>Parameters</strong></p>
<dl class="simple">
<dt><code class="docutils literal notranslate"><span class="pre">ilsel_source_t</span> <span class="pre">set</span></code></dt><dd><p>ILSEL source (see ilsel_source_t <code class="xref c c-enum broken_xref docutils literal notranslate"><span class="pre">enum</span> <span class="pre">in</span></code> include/asm-sh/ilsel.h).</p>
</dd>
<dt><code class="docutils literal notranslate"><span class="pre">unsigned</span> <span class="pre">int</span> <span class="pre">level</span></code></dt><dd><p>Interrupt level (1 - 15)</p>
</dd>
</dl>
<p><strong>Description</strong></p>
<p>Enables a given ILSEL source at a fixed interrupt level. Necessary
both for level reservation as well as for aliased sources that only
exist on special ILSEL#s.</p>
<p>Returns an IRQ number (as <a class="reference internal" href="#c.ilsel_enable" title="ilsel_enable"><code class="xref c c-func docutils literal notranslate"><span class="pre">ilsel_enable()</span></code></a>).</p>
</div>
<dl class="c function">
<dt class="sig sig-object c" id="c.ilsel_disable">
<span class="kt"><span class="pre">void</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">ilsel_disable</span></span></span><span class="sig-paren">(</span><span class="kt"><span class="pre">unsigned</span></span><span class="w"> </span><span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">irq</span></span><span class="sig-paren">)</span><a class="headerlink" href="#c.ilsel_disable" title="Link to this definition">¶</a><br /></dt>
<dd><p>Disable an ILSEL set</p>
</dd></dl>

<div class="kernelindent docutils container">
<p><strong>Parameters</strong></p>
<dl class="simple">
<dt><code class="docutils literal notranslate"><span class="pre">unsigned</span> <span class="pre">int</span> <span class="pre">irq</span></code></dt><dd><p>Bit position for ILSEL set value (retval from enable routines)</p>
</dd>
</dl>
<p><strong>Description</strong></p>
<p>Disable a previously enabled ILSEL set.</p>
</div>
</section>
</section>
<section id="busses">
<h2>Busses<a class="headerlink" href="#busses" title="Link to this heading">¶</a></h2>
<section id="maple">
<h3>Maple<a class="headerlink" href="#maple" title="Link to this heading">¶</a></h3>
<dl class="c function">
<dt class="sig sig-object c" id="c.maple_driver_register">
<span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">maple_driver_register</span></span></span><span class="sig-paren">(</span><span class="k"><span class="pre">struct</span></span><span class="w"> </span><span class="n"><span class="pre">maple_driver</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">drv</span></span><span class="sig-paren">)</span><a class="headerlink" href="#c.maple_driver_register" title="Link to this definition">¶</a><br /></dt>
<dd><p>register a maple driver</p>
</dd></dl>

<div class="kernelindent docutils container">
<p><strong>Parameters</strong></p>
<dl class="simple">
<dt><code class="docutils literal notranslate"><span class="pre">struct</span> <span class="pre">maple_driver</span> <span class="pre">*drv</span></code></dt><dd><p>maple driver to be registered.</p>
</dd>
</dl>
<p><strong>Description</strong></p>
<p>Registers the passed in <strong>drv</strong>, while updating the bus type.
Devices with matching function IDs will be automatically probed.</p>
</div>
<dl class="c function">
<dt class="sig sig-object c" id="c.maple_driver_unregister">
<span class="kt"><span class="pre">void</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">maple_driver_unregister</span></span></span><span class="sig-paren">(</span><span class="k"><span class="pre">struct</span></span><span class="w"> </span><span class="n"><span class="pre">maple_driver</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">drv</span></span><span class="sig-paren">)</span><a class="headerlink" href="#c.maple_driver_unregister" title="Link to this definition">¶</a><br /></dt>
<dd><p>unregister a maple driver.</p>
</dd></dl>

<div class="kernelindent docutils container">
<p><strong>Parameters</strong></p>
<dl class="simple">
<dt><code class="docutils literal notranslate"><span class="pre">struct</span> <span class="pre">maple_driver</span> <span class="pre">*drv</span></code></dt><dd><p>maple driver to unregister.</p>
</dd>
</dl>
<p><strong>Description</strong></p>
<p>Cleans up after <a class="reference internal" href="#c.maple_driver_register" title="maple_driver_register"><code class="xref c c-func docutils literal notranslate"><span class="pre">maple_driver_register()</span></code></a>. To be invoked in the exit
path of any module drivers.</p>
</div>
<dl class="c function">
<dt class="sig sig-object c" id="c.maple_getcond_callback">
<span class="kt"><span class="pre">void</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">maple_getcond_callback</span></span></span><span class="sig-paren">(</span><span class="k"><span class="pre">struct</span></span><span class="w"> </span><span class="n"><span class="pre">maple_device</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">dev</span></span>, <span class="kt"><span class="pre">void</span></span><span class="w"> </span><span class="p"><span class="pre">(</span></span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">callback</span></span><span class="p"><span class="pre">)</span></span><span class="p"><span class="pre">(</span></span><span class="k"><span class="pre">struct</span></span><span class="w"> </span><span class="n"><span class="pre">mapleq</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">mq</span></span><span class="p"><span class="pre">)</span></span>, <span class="kt"><span class="pre">unsigned</span></span><span class="w"> </span><span class="kt"><span class="pre">long</span></span><span class="w"> </span><span class="n"><span class="pre">interval</span></span>, <span class="kt"><span class="pre">unsigned</span></span><span class="w"> </span><span class="kt"><span class="pre">long</span></span><span class="w"> </span><span class="n"><span class="pre">function</span></span><span class="sig-paren">)</span><a class="headerlink" href="#c.maple_getcond_callback" title="Link to this definition">¶</a><br /></dt>
<dd><p>setup handling MAPLE_COMMAND_GETCOND</p>
</dd></dl>

<div class="kernelindent docutils container">
<p><strong>Parameters</strong></p>
<dl class="simple">
<dt><code class="docutils literal notranslate"><span class="pre">struct</span> <span class="pre">maple_device</span> <span class="pre">*dev</span></code></dt><dd><p>device responding</p>
</dd>
<dt><code class="docutils literal notranslate"><span class="pre">void</span> <span class="pre">(*callback)</span> <span class="pre">(struct</span> <span class="pre">mapleq</span> <span class="pre">*mq)</span></code></dt><dd><p>handler callback</p>
</dd>
<dt><code class="docutils literal notranslate"><span class="pre">unsigned</span> <span class="pre">long</span> <span class="pre">interval</span></code></dt><dd><p>interval in jiffies between callbacks</p>
</dd>
<dt><code class="docutils literal notranslate"><span class="pre">unsigned</span> <span class="pre">long</span> <span class="pre">function</span></code></dt><dd><p>the function code for the device</p>
</dd>
</dl>
</div>
<dl class="c function">
<dt class="sig sig-object c" id="c.maple_add_packet">
<span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">maple_add_packet</span></span></span><span class="sig-paren">(</span><span class="k"><span class="pre">struct</span></span><span class="w"> </span><span class="n"><span class="pre">maple_device</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">mdev</span></span>, <span class="n"><span class="pre">u32</span></span><span class="w"> </span><span class="n"><span class="pre">function</span></span>, <span class="n"><span class="pre">u32</span></span><span class="w"> </span><span class="n"><span class="pre">command</span></span>, <span class="n"><span class="pre">size_t</span></span><span class="w"> </span><span class="n"><span class="pre">length</span></span>, <span class="kt"><span class="pre">void</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">data</span></span><span class="sig-paren">)</span><a class="headerlink" href="#c.maple_add_packet" title="Link to this definition">¶</a><br /></dt>
<dd><p>add a single instruction to the maple bus queue</p>
</dd></dl>

<div class="kernelindent docutils container">
<p><strong>Parameters</strong></p>
<dl class="simple">
<dt><code class="docutils literal notranslate"><span class="pre">struct</span> <span class="pre">maple_device</span> <span class="pre">*mdev</span></code></dt><dd><p>maple device</p>
</dd>
<dt><code class="docutils literal notranslate"><span class="pre">u32</span> <span class="pre">function</span></code></dt><dd><p>function on device being queried</p>
</dd>
<dt><code class="docutils literal notranslate"><span class="pre">u32</span> <span class="pre">command</span></code></dt><dd><p>maple command to add</p>
</dd>
<dt><code class="docutils literal notranslate"><span class="pre">size_t</span> <span class="pre">length</span></code></dt><dd><p>length of command string (in 32 bit words)</p>
</dd>
<dt><code class="docutils literal notranslate"><span class="pre">void</span> <span class="pre">*data</span></code></dt><dd><p>remainder of command string</p>
</dd>
</dl>
</div>
</section>
</section>
</section>


          </div>
          
        </div>
      </div>
    <div class="clearer"></div>
  </div>
    <div class="footer">
      &#169;The kernel development community.
      
      |
      Powered by <a href="https://www.sphinx-doc.org/">Sphinx 8.1.3</a>
      &amp; <a href="https://alabaster.readthedocs.io">Alabaster 0.7.16</a>
      
      |
      <a href="../../_sources/arch/sh/index.rst.txt"
          rel="nofollow">Page source</a>
    </div>

    

    
  </body>
</html>

Filemanager

Name Type Size Permission Actions
booting.html File 9.78 KB 0644
features.html File 18.49 KB 0644
index.html File 31.98 KB 0644
new-machine.html File 21.68 KB 0644
register-banks.html File 11.37 KB 0644
Filemanager