summaryrefslogtreecommitdiff
path: root/static/freebsd/man4/man4.arm/devcfg.4 3.html
blob: c3a218c632739ac18355c6d291921844e51a615a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
<table class="head">
  <tr>
    <td class="head-ltitle">DEVCFG(4)</td>
    <td class="head-vol">Device Drivers Manual (arm)</td>
    <td class="head-rtitle">DEVCFG(4)</td>
  </tr>
</table>
<div class="manual-text">
<section class="Sh">
<h1 class="Sh" id="NAME"><a class="permalink" href="#NAME">NAME</a></h1>
<p class="Pp"><code class="Nm">devcfg</code> &#x2014; <span class="Nd">Zynq PL
    device config interface</span></p>
</section>
<section class="Sh">
<h1 class="Sh" id="SYNOPSIS"><a class="permalink" href="#SYNOPSIS">SYNOPSIS</a></h1>
<p class="Pp"><code class="Cd">device devcfg</code></p>
</section>
<section class="Sh">
<h1 class="Sh" id="DESCRIPTION"><a class="permalink" href="#DESCRIPTION">DESCRIPTION</a></h1>
<p class="Pp">The special file <span class="Pa">/dev/devcfg</span> can be used
    to configure the PL (FPGA) section of the Xilinx Zynq-7000.</p>
<p class="Pp">On the first write to the character device at file offset 0, the
    <code class="Nm">devcfg</code> driver asserts the top-level PL reset
    signals, disables the PS-PL level shifters, and clears the PL configuration.
    Write data is sent to the PCAP (processor configuration access port). When
    the PL asserts the DONE signal, the devcfg driver will enable the level
    shifters and release the top-level PL reset signals.</p>
<p class="Pp">The PL (FPGA) can be configured by writing the bitstream to the
    character device like this:</p>
<div class="Bd Pp Bd-indent Li">
<pre>cat design.bit.bin &gt; /dev/devcfg</pre>
</div>
<p class="Pp">The file should not be confused with the .bit file output by the
    FPGA design tools. It is the binary form of the configuration bitstream. The
    Xilinx <code class="Ic">promgen</code> tool can do the conversion:</p>
<div class="Bd Pp Bd-indent Li">
<pre>promgen -b -w -p bin -data_width 32 -u 0 design.bit -o design.bit.bin</pre>
</div>
</section>
<section class="Sh">
<h1 class="Sh" id="SYSCTL_VARIABLES"><a class="permalink" href="#SYSCTL_VARIABLES">SYSCTL
  VARIABLES</a></h1>
<p class="Pp">The <code class="Nm">devcfg</code> driver provides the following
    <a class="Xr">sysctl(8)</a> variables:</p>
<dl class="Bl-tag">
  <dt id="hw.fpga.pl_done"><var class="Va">hw.fpga.pl_done</var></dt>
  <dd>
    <p class="Pp">This variable always reflects the status of the PL's DONE
        signal. A 1 means the PL section has been properly programmed.</p>
  </dd>
  <dt id="hw.fpga.en_level_shifters"><var class="Va">hw.fpga.en_level_shifters</var></dt>
  <dd>
    <p class="Pp">This variable controls if the PS-PL level shifters are enabled
        after the PL section has been reconfigured. This variable is 1 by
        default but setting it to 0 allows the PL section to be programmed with
        configurations that do not interface to the PS section of the part.
        Changing this value has no effect on the level shifters until the next
        device reconfiguration.</p>
  </dd>
</dl>
</section>
<section class="Sh">
<h1 class="Sh" id="FILES"><a class="permalink" href="#FILES">FILES</a></h1>
<dl class="Bl-tag">
  <dt><span class="Pa">/dev/devcfg</span></dt>
  <dd>Character device for the <code class="Nm">devcfg</code> driver.</dd>
</dl>
</section>
<section class="Sh">
<h1 class="Sh" id="SEE_ALSO"><a class="permalink" href="#SEE_ALSO">SEE
  ALSO</a></h1>
<p class="Pp">Zynq-7000 SoC Technical Reference Manual (Xilinx doc UG585)</p>
</section>
<section class="Sh">
<h1 class="Sh" id="AUTHORS"><a class="permalink" href="#AUTHORS">AUTHORS</a></h1>
<p class="Pp"><span class="An">Thomas Skibo</span></p>
</section>
</div>
<table class="foot">
  <tr>
    <td class="foot-date">February 28, 2013</td>
    <td class="foot-os">FreeBSD 15.0</td>
  </tr>
</table>