programs.xml 56 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958
  1. <section id='overview-programs'>
  2. <title>
  3. Toolkit Programs
  4. </title>
  5. <para>
  6. The Qualcomm Atheros <application>Open Powerline Toolkit</application> is a collection of small, command line programs. Each program deals with some aspect of powerline device management. Programs can be combined, in various ways, using shell scripts, to perform sophisticated and complex tasks. With these program, one can identify chipset and firmware version, reset devices, flash devices, identify other powerline network devices, validate <filename>*.pib</filename> and <filename>*.nvm</filename> files, sniff <trademark class='registered'>HomePlug</trademark> AV Ethernet frames, send generic Ethernet frames and so on.
  7. </para>
  8. <para>
  9. Program source code is designed to demonstrate device hardware and firmware features and to illustrate techniques for software developers and hardware engineers. The source code may be modified and distributed without obligation to Qualcomm Atheros; however Qualcomm Atheros would appreciate feedback concerning improvements to program useability, reliability or efficiency. Keep in mind that these tools, unlike some other tools, are intended to be simple and compact.
  10. </para>
  11. <para>
  12. Most programs in this toolkit start their life on Linux and are eventually ported to other environments. Consequently, not all programs are available in the Windows version of the toolkit but most of them are.
  13. </para>
  14. <para>
  15. Program descriptions appear below in alphabetical order. Alternately, you may browse the latest program descriptions and source code <ulink url='toolkit.html'>here</ulink>.
  16. </para>
  17. <section id='programs-6400-Management'>
  18. <title>
  19. INT6400 Device Management
  20. </title>
  21. <para>
  22. Programs in this group are older versions that communicate with INT6x00 chipsets. Many still work on AR7x00 chipsets. The main difference is due to the higher PHY data rates on AR7x00 chipsets. The higher data rates must be expressed using 16-bits instead of 8-bits. Consequently, some MME formats have changed.
  23. </para>
  24. <variablelist>
  25. <varlistentry id="program-int64host">
  26. <term>
  27. <application>
  28. int64host
  29. </application>
  30. </term>
  31. <listitem>
  32. <para>
  33. A command line utility that waits for and services VS_HST_ACTION messages from a flash-less device <productname>INT6300</productname> or <productname>INT6400</productname> device. It is similar to program <link linkend='program-int6khost'>int6khost</link> but does not use an <acronym>SDRAM</acronym> configuration files. This program is installed in folder <filename>/usr/local/bin</filename> with 4555 file permissions. See the discussion on security for more information about file permissions. The main source code is located in folder <filename>./plc</filename>. See the <ulink url='int64host.7.html'>int64host</ulink> man page for more information.
  34. </para>
  35. </listitem>
  36. </varlistentry>
  37. <varlistentry id="program-int6k">
  38. <term>
  39. <application>
  40. int6k
  41. </application>
  42. </term>
  43. <listitem>
  44. <para>
  45. A command line utility to inspect and control <trademark>INT6000</trademark> and <trademark>INT6300</trademark> devices connected to the local host. It performs several of the device maintenance functions available in the Atheros <application>Windows Device Manager</application> but is small enough to run on an embedded system. This program is installed in folder <filename>/usr/local/bin</filename> with 4555 file permissions. See the discussion on security for more information about file permissions. The main source code is located in folder <filename>.int6k</filename>. See the <ulink url='int6k.7.html'>int6k</ulink> man page for more information.
  46. </para>
  47. </listitem>
  48. </varlistentry>
  49. <varlistentry id="program-int6k2">
  50. <term>
  51. <application>
  52. int6k2
  53. </application>
  54. </term>
  55. <listitem>
  56. <para>
  57. A command line utility to inspect and control <trademark>INT6000</trademark> and <productname>int6300</productname> devices connected to the local host. It is similar to <application>int6k</application> but calls the Atheros <application>Embedded API</application>, described in the Atheros <citetitle><trademark class='registered'>HomePlug</trademark> AV API User's Guide</citetitle>, to perform device management tasks. This program is installed in folder <filename>/usr/local/bin</filename> with 4555 file permissions. See the discussion on security for more information about file permissions. The main source code is located in folder <filename>./plc</filename>. See the <ulink url='int6k2.7.html'>int6k2</ulink> man page for more information.
  58. </para>
  59. </listitem>
  60. </varlistentry>
  61. <varlistentry id="program-int6kboot">
  62. <term>
  63. <application>
  64. int6kboot
  65. </application>
  66. </term>
  67. <listitem>
  68. <para>
  69. A command line utility to start and optionally flash <trademark>INT6300</trademark> and <trademark>INT6400</trademark>' devices that have no NVRAM or have a blank or corrupted <acronym>NVRAM</acronym>. It communicates with the Atheros <application>Bootloader</application> to configure <acronym>SDRAM</acronym>, download runtime firmware and PIB and start firmware execution. Users can optionally request that the same PIB and firmware then be used to flash <acronym>NVRAM</acronym>. It is similar to program <ulink url='int6kf.7.html'>int6kf</ulink> but does not accept an <acronym>SDRAM</acronym> configuration file. Instead, it uses on the <ulink url='memctl.7a.html'>memctl</ulink> applet. This program is installed in folder <filename>/usr/local/bin</filename> with 4555 file permissions. See the discussion on security for more information about file permissions. The main source code is located in folder <filename>./plc</filename>. See the <ulink url='int6kboot.7.html'>int6kboot</ulink> man page for more information.
  70. </para>
  71. </listitem>
  72. </varlistentry>
  73. <varlistentry id="program-int6kf">
  74. <term>
  75. <application>
  76. int6kf
  77. </application>
  78. </term>
  79. <listitem>
  80. <para>
  81. A command line utility to start and optionally flash <trademark>INT6000</trademark> and <trademark>INT6300</trademark> devices having no <acronym>NVRAM</acronym> or having a blank or corrupted <acronym>NVRAM</acronym>. It communicates with the Atheros <application>Bootloader</application> to configure <acronym>SDRAM</acronym>, download runtime firmware and PIB and start firmwrae execution. It can also be used to force flash blank or corrupted <acronym>NVRAM</acronym>. It is similar to program <ulink url='int6kboot.7.html'>int6kboot</ulink> but requires an <acronym>SDRAM</acronym> parameter file. This program is installed in folder <filename>/usr/local/bin</filename> with 4555 file permissions. See the discussion on security for more information about file permissions. The main source code is located in folder <filename>./plc</filename>. See the <ulink url='int6kf.7.html'>int6kf</ulink> man page for more information.
  82. </para>
  83. </listitem>
  84. </varlistentry>
  85. <varlistentry id="program-int6khost">
  86. <term>
  87. <application>
  88. int6khost
  89. </application>
  90. </term>
  91. <listitem>
  92. <para>
  93. A command line utility that waits for and services VS_HST_ACTION messages from a flash-less <productname>INT6000</productname> or <productname>INT6300</productname> device. It is similar to program <link linkend='program-int64host'>in64host</link> but needs an <acronym>SDRAM</acronym> configuration file. This program is installed in folder <filename>/usr/local/bin</filename> with 4555 file permissions. See the discussion on security for more information about file permissions. The main source code is located in folder <filename>./plc</filename>. See the <ulink url='int6khost.7.html'>int6khost</ulink> man page for more information.
  94. </para>
  95. </listitem>
  96. </varlistentry>
  97. <varlistentry id="program-int6kid">
  98. <term>
  99. <application>
  100. int6kid
  101. </application>
  102. </term>
  103. <listitem>
  104. <para>
  105. A command line utility that prints the DAK or NMK strings read from one or more devices. It can be used in shell scripts to dynamically obtain device keys and insert them on program command lines as arguments. This program is installed in folder <filename>/usr/local/bin</filename> with 4555 file permissions. See the discussion on security for more information about file permissions. The main source code is located in folder <filename>./plc</filename>. See the <ulink url='int6kid.7.html'>int6kid</ulink> man page for more information.
  106. </para>
  107. </listitem>
  108. </varlistentry>
  109. <varlistentry id="program-int6klist">
  110. <term>
  111. <application>
  112. int6klist
  113. </application>
  114. </term>
  115. <listitem>
  116. <para>
  117. A command line utility that lists local devices, or remote devices associated with a specific device, on stdout in undecorated format. It can be used in shell scripts to dynamically determine, and then traverse, network topology. This program is installed in folder <filename>/usr/local/bin</filename> with 4555 file permissions. See the discussion on security for more information about file permissions. The main source code is located in folder <filename>./plc</filename>. See the <ulink url='int6klist.7.html'>int6klist</ulink> man page for more information.
  118. </para>
  119. </listitem>
  120. </varlistentry>
  121. <varlistentry id="program-int6kprobe">
  122. <term>
  123. <application>
  124. int6kprobe
  125. </application>
  126. </term>
  127. <listitem>
  128. <para>
  129. A command line utility that probes for neighboring networks. This program is installed in folder <filename>/usr/local/bin</filename> with 4555 file permissions. See the discussion on security for more information about file permissions. The main source code is located in folder <filename>./plc</filename>. See the <ulink url='int6kprobe.7.html'>int6kprobe</ulink> man page for more information.
  130. </para>
  131. </listitem>
  132. </varlistentry>
  133. <varlistentry id="program-int6krule">
  134. <term>
  135. <application>
  136. int6krule
  137. </application>
  138. </term>
  139. <listitem>
  140. <para>
  141. A command line utility to format and send classification rules to a device. Classification rules are specified using symbolic names for actions, options, conditions and frame fields. This program is installed in folder <filename>/usr/local/bin</filename> with 4555 file permissions. See the discussion on security for more information about file permissions. The main source code is located in folder <filename>./plc</filename>. See the <ulink url='int6krule.7.html'>int6krule</ulink> man page for more information.
  142. </para>
  143. </listitem>
  144. </varlistentry>
  145. <varlistentry id="program-int6ktest">
  146. <term>
  147. <application>
  148. int6ktest
  149. </application>
  150. </term>
  151. <listitem>
  152. <para>
  153. A command line utility that downloads and executes program images stored in an Atheros <filename>.nvm</filename> file. This program can be used to download and execute Atheros hardware diagnostic programs like those in the <filename>./applets</filename> folder. It is not intended to download and start runtime firmware, although it may be used for that. The program is installed in folder <filename>/usr/local/bin</filename> with 4555 file permissions. See the discussion on security for more information about file permissions. The main source code is located in folder <filename>./plc</filename>. See the <ulink url='int6ktest.7.html'>int6ktest</ulink> man page for more information.
  154. </para>
  155. </listitem>
  156. </varlistentry>
  157. <varlistentry id="program-int6kuart">
  158. <term>
  159. <application>
  160. int6kuart
  161. </application>
  162. </term>
  163. <listitem>
  164. <para>
  165. A command line utility used to manage a local powerline device over a host serial line interface. Program command line options are translated to AT-style serial commands and sent to the device. THe primary benefits of using this program, in place of a terminal emulator, is the ability to download parameter blocks and upload paameter blocks and firmware images. The program is installed in folder <filename>/usr/local/bin</filename> with 4555 file permissions. See the discussion on security for more information about file permissions. The main source code is located in folder <filename>./serial</filename>. See the <ulink url='int6kuart.7.html'>int6kuart</ulink> man page for more information.
  166. </para>
  167. </listitem>
  168. </varlistentry>
  169. <varlistentry id="program-int6kwait">
  170. <term>
  171. <application>
  172. int6kwait
  173. </application>
  174. </term>
  175. <listitem>
  176. <para>
  177. A command line utility that polls the local powerline device and waits for the bootloader or runtime firmware to either stop executing or start executing or wait for a device to associate with another device. It can be used to synchronize scripts with device or network events such as connection make or break, power on or off and firmware stop or start. This program is installed in folder <filename>/usr/local/bin</filename> with 4555 file permissions. See the discussion on security for more information about file permissions. The main source code is located in folder <filename>./plc</filename>. See the <ulink url='int6kwait.7.html'>int6kwait</ulink> man page for more information.
  178. </para>
  179. </listitem>
  180. </varlistentry>
  181. </variablelist>
  182. </section>
  183. <section id='programs-6400-Monitoring'>
  184. <title>
  185. INT6400 Device Monitoring
  186. </title>
  187. <variablelist>
  188. <varlistentry id="program-int6klog">
  189. <term>
  190. <application>
  191. int6klog
  192. </application>
  193. </term>
  194. <listitem>
  195. <para>
  196. A command line utility that exports the runtime watchdog report in binary or XML format. Output is suitable for input to the Atheros Windows Device Manager. This program is installed in folder <filename>/usr/local/bin</filename> with 4555 file permissions. See the discussion on security for more information about file permissions. The main source code is located in folder <filename>./plc</filename>. See the <ulink url='int6klog.7.html'>int6klog</ulink> man page for more information.
  197. </para>
  198. </listitem>
  199. </varlistentry>
  200. <varlistentry id="program-int6krate">
  201. <term>
  202. <application>
  203. int6krate
  204. </application>
  205. </term>
  206. <listitem>
  207. <para>
  208. A command line utility that polls a device and prints the average transmit and receive PHY rates between it and each of it's network neighbors. Program output is suitable for loading into a spreadsheet or other program that can process column-oriented information. This program is installed in folder <filename>/usr/local/bin</filename> with 4555 file permissions. See the discussion on security for more information about file permissions. The main source code is located in folder <filename>./plc</filename>. See the <ulink url='int6krate.7.html'>int6krate</ulink> man page for more information.
  209. </para>
  210. <para>
  211. This program is suitable for use with INT6x00 chipsets but not AR7x00 chipsets due to higher PHY rates. Use program <link linkend='program-amprate'>amprate</link> for AR7x00 chipsets and <link linkend='program-plcrate'>plcrate</link> for mixed chipset environments.
  212. </para>
  213. </listitem>
  214. </varlistentry>
  215. <varlistentry id="program-int6kstat">
  216. <term>
  217. <application>
  218. int6kstat
  219. </application>
  220. </term>
  221. <listitem>
  222. <para>
  223. A command line utility that polls a poserline device and prints various network and link statistics in a format suitable for processing by another program. It is a work in progress because we are investigating different ways to present the information. This program is installed in folder <filename>/usr/local/bin</filename> with 4555 file permissions. See the discussion on security for more information about file permissions. The main source code is located in folder <filename>./plc</filename>. See the <ulink url='int6kstat.7.html'>int6kstat</ulink> man page for more information.
  224. </para>
  225. </listitem>
  226. </varlistentry>
  227. </variablelist>
  228. </section>
  229. <section id='programs-7400-Management'>
  230. <title>
  231. AR7400 Device Management
  232. </title>
  233. <para>
  234. The programs in this group are essentially identical to those in the INT6x00 group but they support higher PHY data rates offered by the AR7x00 chipsets. Specifically, they handle the new <constant>VS_NW_INFO</constant> and <constant>VS_LNK_STATS</constant> message formats.
  235. </para>
  236. <variablelist>
  237. <varlistentry id="program-ampboot">
  238. <term>
  239. <application>
  240. ampboot
  241. </application>
  242. </term>
  243. <listitem>
  244. <para>
  245. This program is installed in folder <filename>/usr/local/bin</filename> with 4555 file permissions. See the discussion on security for more information about file permissions. The main source code is located in folder <filename>./plc</filename>. See the <ulink url='ampboot.7.html'>ampboot</ulink> man page for more information.
  246. </para>
  247. </listitem>
  248. </varlistentry>
  249. <varlistentry id="program-amphost">
  250. <term>
  251. <application>
  252. amphost
  253. </application>
  254. </term>
  255. <listitem>
  256. <para>
  257. This program is installed in folder <filename>/usr/local/bin</filename> with 4555 file permissions. See the discussion on security for more information about file permissions. The main source code is located in folder <filename>./plc</filename>. See the <ulink url='amphost.7.html'>amphost</ulink> man page for more information.
  258. </para>
  259. </listitem>
  260. </varlistentry>
  261. <varlistentry id="program-ampinit">
  262. <term>
  263. <application>
  264. ampinit
  265. </application>
  266. </term>
  267. <listitem>
  268. <para>
  269. This program is installed in folder <filename>/usr/local/bin</filename> with 4555 file permissions. See the discussion on security for more information about file permissions. The main source code is located in folder <filename>./plc</filename>. See the <ulink url='ampinit.7.html'>ampinit</ulink> man page for more information.
  270. </para>
  271. </listitem>
  272. </varlistentry>
  273. <varlistentry id="program-amplist">
  274. <term>
  275. <application>
  276. amplist
  277. </application>
  278. </term>
  279. <listitem>
  280. <para>
  281. This program is installed in folder <filename>/usr/local/bin</filename> with 4555 file permissions. See the discussion on security for more information about file permissions. The main source code is located in folder <filename>./plc</filename>. See the <ulink url='amplist.7.html'>amplist</ulink> man page for more information.
  282. </para>
  283. </listitem>
  284. </varlistentry>
  285. <varlistentry id="program-amptest">
  286. <term>
  287. <application>
  288. amptest
  289. </application>
  290. </term>
  291. <listitem>
  292. <para>
  293. A command line utility that downloads and executes program images stored in an Atheros <filename>.nvm</filename> file. It can be used to download and execute special Atheros hardware diagnostic programs. It is not intended to download and start runtime firmware. The program is installed in folder <filename>/usr/local/bin</filename> with 4555 file permissions. See the discussion on security for more information about file permissions. The main source code is located in folder <filename>./plc</filename>. See the <ulink url='amptest.7.html'>amptest</ulink> man page for more information.
  294. </para>
  295. </listitem>
  296. </varlistentry>
  297. <varlistentry id="program-amptool">
  298. <term>
  299. <application>
  300. amptool
  301. </application>
  302. </term>
  303. <listitem>
  304. <para>
  305. This program is installed in folder <filename>/usr/local/bin</filename> with 4555 file permissions. See the discussion on security for more information about file permissions. The main source code is located in folder <filename>./plc</filename>. See the <ulink url='amptool.7.html'>amptool</ulink> man page for more information.
  306. </para>
  307. </listitem>
  308. </varlistentry>
  309. <varlistentry id="program-ampwait">
  310. <term>
  311. <application>
  312. ampwait
  313. </application>
  314. </term>
  315. <listitem>
  316. <para>
  317. This program is installed in folder <filename>/usr/local/bin</filename> with 4555 file permissions. See the discussion on security for more information about file permissions. The main source code is located in folder <filename>./plc</filename>. See the <ulink url='ampwait.7.html'>ampwait</ulink> man page for more information.
  318. </para>
  319. </listitem>
  320. </varlistentry>
  321. </variablelist>
  322. </section>
  323. <section id='programs-7400-Monitoring'>
  324. <title>
  325. AR7400 Device Monitoring
  326. </title>
  327. <para>
  328. The programs in this group are essentially identical to those in the INT6x00 group but they support higher PHY data rates offered by the AR7x00 chipsets. Specifically, they handle the new <constant>VS_NW_INFO</constant> and <constant>VS_LNK_STATS</constant> message formats.
  329. </para>
  330. <variablelist>
  331. <varlistentry id="program-amprate">
  332. <term>
  333. <application>
  334. amprate
  335. </application>
  336. </term>
  337. <listitem>
  338. <para>
  339. A command line utility that polls a device and prints the average transmit and receive PHY rates between it and each of it's network neighbors. Program output is suitable for loading into a spreadsheet or other program that can process column-oriented information. This program is installed in folder <filename>/usr/local/bin</filename> with 4555 file permissions. See the discussion on security for more information about file permissions. The main source code is located in folder <filename>./plc</filename>. See the <ulink url='amprate.7.html'>amprate</ulink> man page for more information.
  340. </para>
  341. <para>
  342. This program is suitable for use with AR7x00 chipsets and later that have higher PHY rates and newer firmware. Use program <link linkend='program-int6krate'>int6krate</link> for AR6x00 running earlier runtime firmware that may not recognize newer message formats. Use program <link linkend='program-plcrate'>plcrate</link> for mixed chipset environments
  343. </para>
  344. </listitem>
  345. </varlistentry>
  346. <varlistentry id="program-ampsnif">
  347. <term>
  348. <application>
  349. ampsnif
  350. </application>
  351. </term>
  352. <listitem>
  353. <para>
  354. Enables or disables the powerline sniffer mode on the local powerline device using the VS_SNIFFER message. Use program <link linkend='program-ampsnot'>ampsnot</link> to display and/or record sniffer output. This program is installed in folder <filename>/usr/local/bin</filename> with 4555 file permissions. See the discussion on security for more information about file permissions. The main source code is located in folder <filename>./plc</filename>. See the <ulink url='ampsnif.7.html'>ampsnif</ulink> man page for more information.
  355. </para>
  356. </listitem>
  357. </varlistentry>
  358. <varlistentry id="program-ampsnot">
  359. <term>
  360. <application>
  361. ampsnot
  362. </application>
  363. </term>
  364. <listitem>
  365. <para>
  366. Listens for sniffer output from the local powerline device and display results on the console. Use program <link linkend='program-ampsnif'>ampsnif</link> to enable or disable sniffer output. This program is installed in folder <filename>/usr/local/bin</filename> with 4555 file permissions. See the discussion on security for more information about file permissions. The main source code is located in folder <filename>./plc</filename>. See the <ulink url='ampsnot.7.html'>ampsnot</ulink> man page for more information.
  367. </para>
  368. </listitem>
  369. </varlistentry>
  370. <varlistentry id="program-ampstat">
  371. <term>
  372. <application>
  373. ampstat
  374. </application>
  375. </term>
  376. <listitem>
  377. <para>
  378. This program is installed in folder <filename>/usr/local/bin</filename> with 4555 file permissions. See the discussion on security for more information about file permissions. The main source code is located in folder <filename>./plc</filename>. See the <ulink url='ampstat.7.html'>ampstat</ulink> man page for more information.
  379. </para>
  380. </listitem>
  381. </varlistentry>
  382. <varlistentry id="program-amptone">
  383. <term>
  384. <application>
  385. amptone
  386. </application>
  387. </term>
  388. <listitem>
  389. <para>
  390. This program is installed in folder <filename>/usr/local/bin</filename> with 4555 file permissions. See the discussion on security for more information about file permissions. The main source code is located in folder <filename>./plc</filename>. See the <ulink url='amptone.7.html'>amptone</ulink> man page for more information.
  391. </para>
  392. </listitem>
  393. </varlistentry>
  394. <varlistentry id="program-mdustats">
  395. <term>
  396. mdustats
  397. </term>
  398. <listitem>
  399. <para>
  400. A command line utility to collect and display various MDU traffic statistics. This program is installed in folder <filename>/usr/local/bin</filename> with 0555 file permissions. The main source code is located in folder <filename>./plc</filename>. See the <ulink url="mdustats.7.html">mdustats</ulink> man page for more information.
  401. </para>
  402. </listitem>
  403. </varlistentry>
  404. </variablelist>
  405. </section>
  406. <section id='programs-7420'>
  407. <title>
  408. AR7420 Device Configuration
  409. </title>
  410. <para>
  411. Programs in this group understand changes to .nvm file formats and to the device boot and memory flash messages and sequences.
  412. </para>
  413. <variablelist>
  414. <varlistentry id="program-plchost">
  415. <term>
  416. <application>
  417. plchost
  418. </application>
  419. </term>
  420. <listitem>
  421. <para>
  422. This program is installed in folder <filename>/usr/local/bin</filename> with 4555 file permissions. See the discussion on security for more information about file permissions. The main source code is located in folder <filename>./plc</filename>. See the <ulink url='plchost.7.html'>plchost</ulink> man page for more information.
  423. </para>
  424. </listitem>
  425. </varlistentry>
  426. <varlistentry id="program-plctest">
  427. <term>
  428. <application>
  429. plctest
  430. </application>
  431. </term>
  432. <listitem>
  433. <para>
  434. A command line utility that downloads and executes small program images stored in older and newer <filename>.nvm</filename> files. It can be used to download and execute small powerline diagnostic programs. It is not intended to download and start runtime firmware. The program is installed in folder <filename>/usr/local/bin</filename> with 4555 file permissions. See the discussion on security for more information about file permissions. The main source code is located in folder <filename>./plc</filename>. See the <ulink url='plctest.7.html'>plctest</ulink> man page for more information.
  435. </para>
  436. <para>
  437. This program automatically detects the type of .nvm file format and adapts.
  438. </para>
  439. </listitem>
  440. </varlistentry>
  441. </variablelist>
  442. </section>
  443. <section id='programs-configure'>
  444. <title>
  445. Parameter File Management
  446. </title>
  447. <para>
  448. Programs in this group are used to inspect and change .pib files in various ways. The do not communicate directly with the powerline device. Use program int6k, amptool or plctool to read the PIB from a powerline device or write a PIB to the powerline device.
  449. </para>
  450. <variablelist>
  451. <varlistentry id="program-chkpib">
  452. <term>
  453. <application>
  454. chkpib
  455. </application>
  456. </term>
  457. <listitem>
  458. <para>
  459. A command line utility to validate <filename>.pib</filename> files based on their internal checksum, file size and other characteristics. It can also be used to produce a text catalog of <filename>.pib</filename> files. This program is slower than program <link linkend='program-chkpib2'>chkpib2</link> but requires less memory to execute. This program is installed in folder <filename>/usr/local/bin</filename> with 0555 file permissions. The main source code is located in folder <filename>./pib</filename>. See the <ulink url='chkpib.7.html'>chkpib</ulink> man page for more information.
  460. </para>
  461. </listitem>
  462. </varlistentry>
  463. <varlistentry id="program-chkpib2">
  464. <term>
  465. <application>
  466. chkpib2
  467. </application>
  468. </term>
  469. <listitem>
  470. <para>
  471. A command line utility to validate <filename>.pib</filename> files based on their internal checksum, file size and other characteristics. It can also be used to produce a text catalog of <filename>.pib</filename> files. This program is faster than program <link linkend='program-chkpib'>chkpib</link> but requires more memory to execute. This program is installed in folder <filename>/usr/local/bin</filename> with 0555 file permissions. The main source code is located in folder <filename>./pib</filename>. See the <ulink url='chkpib2.7.html'>chkpib2</ulink> man page for more information.
  472. </para>
  473. </listitem>
  474. </varlistentry>
  475. <varlistentry id="program-getpib">
  476. <term>
  477. <application>
  478. getpib
  479. </application>
  480. </term>
  481. <listitem>
  482. <para>
  483. A free-form means of extracting paremeters from a PIB file when the offset, length and format of the parameter is known. It is a companion to program <link linkend='program-setpib'>setpib</link>. The user specifies the filename, a starting offset and a sequence of type/data pairs. Values are echoed in order on the console in the specified format. This program is installed in folder <filename>/usr/local/bin</filename> with 0555 file permissions. The main source code is located in folder <filename>./pib</filename>. See the <ulink url='getpib.7.html'>getpib</ulink> man page for more information.
  484. </para>
  485. </listitem>
  486. </varlistentry>
  487. <varlistentry id="program-modpib">
  488. <term>
  489. <application>
  490. modpib
  491. </application>
  492. </term>
  493. <listitem>
  494. <para>
  495. A command line utility to change the MAC, DAK and/or NMK of an existing PIB file and recompute the checksum. It can also be used to change the manufacturer string, network name and username strings. This program is installed in folder <filename>/usr/local/bin</filename> with 0555 file permissions. The main source code is located in folder <filename>./pib</filename>. See the <ulink url='modpib.7.html'>modpib</ulink> man page for more information.
  496. </para>
  497. </listitem>
  498. </varlistentry>
  499. <varlistentry id="program-mrgpib">
  500. <term>
  501. <application>
  502. mrgpib
  503. </application>
  504. </term>
  505. <listitem>
  506. <para>
  507. A command line utility that transfers parameters from one PIB file to another. The two files needs not have the same PIB version. This program is installed in folder <filename>/usr/local/bin</filename> with 0555 file permissions. The main source code is located in folder <filename>./pib</filename>. See the <ulink url='mrgpib.7.html'>mrgpib</ulink> man page for more information.
  508. </para>
  509. </listitem>
  510. </varlistentry>
  511. <varlistentry id="program-pib2xml">
  512. <term>
  513. <application>
  514. pib2xml
  515. </application>
  516. </term>
  517. <listitem>
  518. <para>
  519. An offset-driven <acronym>XML</acronym> dump utility for the <acronym>PIB</acronym>. It requires an offset description file to be useful. The user specifies an offset description file and a PIB file. The program output an <acronym>XML</acronym> description of PIB fields. An example file, <filename>piboffset.txt</filename>, is included as a basic example. The example offset description file is intentionally incomplete. Complete files are reserved for use by Atheros Field Application Engineers. This program is an alternative to program <link linkend='program-pibdump'>pibdump</link>. The main source code is located in folder <filename>./tools</filename>. See the <ulink url='pib2xml.7.html'>pib2xml</ulink> man page for more information.
  520. </para>
  521. </listitem>
  522. </varlistentry>
  523. <varlistentry id="program-pibcomp">
  524. <term>
  525. <application>
  526. pibcomp
  527. </application>
  528. </term>
  529. <listitem>
  530. <para>
  531. An offset-driven binary file compare utility for the <acronym>PIB</acronym>. It requires an offset description file to be useful. The user specifies an offset description file and two binary files. The files are compared, field by field, and differences are printed on stdout, field by field. An example file, <filename>piboffset.txt</filename>, is included as a basic example. The example offset description file is intentionally incomplete. Complete files are reserved for use by Atheros Field Application Engineers. This program is an alternative to program <link linkend='program-pib2xml'>pib2xml</link> and a companion to program <link linkend='program-pibdump'>pibdump</link>. The main source code is located in folder <filename>./tools</filename>. See the <ulink url='pibcomp.7.html'>pibcomp</ulink> man page for more information.
  532. </para>
  533. </listitem>
  534. </varlistentry>
  535. <varlistentry id="program-pibdump">
  536. <term>
  537. <application>
  538. pibdump
  539. </application>
  540. </term>
  541. <listitem>
  542. <para>
  543. An offset-driven dump utility for the <acronym>PIB</acronym>. It requires an offset description file to be useful. An example file, <filename>piboffset.txt</filename>, is included as a basic example. The example offset description file is intentionally incomplete. Complete files are reserved for use by Atheros Field Application Engineers. This program is a companion to program <link linkend='program-pibcomp'>pibcomp</link>. The main source code is located in folder <filename>./tools</filename>. See the <ulink url='pibdump.7.html'>pibdump</ulink> man page for more information.
  544. </para>
  545. </listitem>
  546. </varlistentry>
  547. <varlistentry id="program-pibruin">
  548. <term>
  549. <application>
  550. pibruin
  551. </application>
  552. </term>
  553. <listitem>
  554. <para>
  555. A command line utility that inserts classifier rules, read from a file, into a <acronym>PIB</acronym> file. It is an alternative to program <ulink url="int6krule.7.html">int6krule</ulink> and companion to program <ulink url="pibrump.7.html">pibrump</ulink>. The main source code is located in folder <filename>./pib</filename>. See the <ulink url='pibruin.7.html'>pibruin</ulink> man page for more information.
  556. </para>
  557. <para>
  558. This program supports INT6300, INT6400 and AR7400 PIBs only and is deprecated.
  559. </para>
  560. </listitem>
  561. </varlistentry>
  562. <varlistentry id="program-pibrump">
  563. <term>
  564. <application>
  565. pibrump
  566. </application>
  567. </term>
  568. <listitem>
  569. <para>
  570. A command line utility that reads classifier rules from a PIB file and prints them on stdout in a format suitable for input to program <ulink url="pibruin.7.html">pibruin</ulink>. The main source code is located in folder <filename>./pib</filename>. See the <ulink url='pibrump.7.html'>pibrump</ulink> man page for more information.
  571. </para>
  572. </listitem>
  573. </varlistentry>
  574. <varlistentry id="program-psin">
  575. <term>
  576. <application>
  577. psin
  578. </application>
  579. </term>
  580. <listitem>
  581. <para>
  582. A command line utility to insert an amplitude map into an existing PIB file. The map is read from stdin in text format allowing the output of program <ulink url='psout.7.html'>psout</ulink> to be piped directly into this program. The main source code is located in folder <filename>./pib</filename>. See the <ulink url='psin.7.html'>psin</ulink> man page for more information.
  583. </para>
  584. </listitem>
  585. </varlistentry>
  586. <varlistentry id="program-psout">
  587. <term>
  588. <application>
  589. psout
  590. </application>
  591. </term>
  592. <listitem>
  593. <para>
  594. A command line utility to that exports an amplitude map stored in an existing PIB file. The map is written directly to stdin in text format allowing the output of this program to be piped into the input of program <ulink url='psin.7.html'>psin</ulink>. The main source code is located in folder <filename>./pib</filename>. See the <ulink url='psout.7.html'>psout</ulink> man page for more information.
  595. </para>
  596. </listitem>
  597. </varlistentry>
  598. <varlistentry id="program-pxe">
  599. <term>
  600. <application>
  601. pxe
  602. </application>
  603. </term>
  604. <listitem>
  605. <para>
  606. A generic 'Remote PIB Management' tool. One or more XML files define decimal, hexadecimal and string edits to be applied to a PIB file. The PIB is read, edits are applied, a new checksum is computed and the PIB is saved. This program is installed in folder <filename>/usr/local/bin</filename> with 0555 file permissions. The main source code is located in folder <filename>./pib</filename>. See the <ulink url='pxe.7.html'>pxe</ulink> man page for more information.
  607. </para>
  608. </listitem>
  609. </varlistentry>
  610. <varlistentry id="program-setpib">
  611. <term>
  612. <application>
  613. setpib
  614. </application>
  615. </term>
  616. <listitem>
  617. <para>
  618. A simple means of setting PIB parameters when the parameter offset, length and format are known. It is an alternative to program <link linkend='program-pxe'>pxe</link> and a companion to program <link linkend='program-getpib'>getpib</link>. The user specifies the filename, a starting offset and a sequence of type/data pairs. Edits are applied in order and a new checksum is computed. A full or partial dump of the PIB displays the result. This program is installed in folder <filename>/usr/local/bin</filename> with 0555 file permissions. The main source code is located in folder <filename>./pib</filename>. See the <ulink url='setpib.7.html'>setpib</ulink> man page for more information.
  619. </para>
  620. </listitem>
  621. </varlistentry>
  622. </variablelist>
  623. </section>
  624. <section id='programs-firmware'>
  625. <title>
  626. Firmware File Management
  627. </title>
  628. <variablelist>
  629. <varlistentry id="program-chknvm">
  630. <term>
  631. <application>
  632. chknvm
  633. </application>
  634. </term>
  635. <listitem>
  636. <para>
  637. A command line utility to validate <filename>.nvm</filename> files based on their internal checksum, file size and other characteristics. This program is slower than program <link linkend='program-chknvm2'>chknvm2</link> but requires less memory to execute. Optionally, it can be used to display the image headers inside the file. This program is installed in folder <filename>/usr/local/bin</filename> with 0555 file permissions. The main source code is located in folder <filename>./nvm</filename>. See the <ulink url='chknvm.7.html'>chknvm</ulink> man page for more information.
  638. </para>
  639. </listitem>
  640. </varlistentry>
  641. <varlistentry id="program-chknvm2">
  642. <term>
  643. <application>
  644. chknvm2
  645. </application>
  646. </term>
  647. <listitem>
  648. <para>
  649. A command line utility to validate <filename>.nvm</filename> files based on their internal checksum, file size and other characteristics. Optionally, it can be used to display the image headers inside the file. This program is faster than program <link linkend='program-chknvm'>chknvm</link> but requires more memory to execute. This program is installed in folder <filename>/usr/local/bin</filename> with 0555 file permissions. The main source code is located in folder <filename>./nvm</filename>. See the <ulink url='chknvm2.7.html'>chknvm2</ulink> man page for more information.
  650. </para>
  651. </listitem>
  652. </varlistentry>
  653. <varlistentry id="program-config2cfg">
  654. <term>
  655. <application>
  656. config2cfg
  657. </application>
  658. </term>
  659. <listitem>
  660. <para>
  661. A command line utility to convert an SDRAM configruation file used by the Atheros <application>Windows Device Manager</application> to the configuration file format used by the Open Powerline Toolkit applications. This program is installed in folder <filename>/usr/local/bin</filename> with 0555 file permissions. The main source code is located in folder <filename>./sdram</filename>. See the <ulink url='config2cfg.7.html'>config2cfg</ulink> man page for more information.
  662. </para>
  663. </listitem>
  664. </varlistentry>
  665. <varlistentry id="program-nvmmerge">
  666. <term>
  667. <application>
  668. nvmmerge
  669. </application>
  670. </term>
  671. <listitem>
  672. <para>
  673. A command line utility to combine multiple Atheros image files into one. It is reserved for use by Atheros Field Application Engineers. Use of this probram could void some contractual obligations made by Atheros. This program is installed in folder <filename>/usr/local/bin</filename> with 0555 file permissions. The main source code is located in folder <filename>./nvm</filename>. See the <ulink url='nvmmerge.7.html'>nvmmerge</ulink> man page for more information.
  674. </para>
  675. </listitem>
  676. </varlistentry>
  677. <varlistentry id="program-nvmsplit">
  678. <term>
  679. <application>
  680. nvmsplit
  681. </application>
  682. </term>
  683. <listitem>
  684. <para>
  685. A command line utility to extract all constituent images from an Atheros image file. It is reserved for use by Atheros Field Application Engineers. Use of this probram could void some contractual obligations made by Atheros. This program is installed in folder <filename>/usr/local/bin</filename> with 0555 file permissions. The main source code is located in folder <filename>./nvm</filename>. See the <ulink url='nvmsplit.7.html'>nvmsplit</ulink> man page for more information.
  686. </para>
  687. </listitem>
  688. </varlistentry>
  689. </variablelist>
  690. </section>
  691. <section id='programs-ethernet'>
  692. <title>
  693. Ethernet Traffic
  694. </title>
  695. <variablelist>
  696. <varlistentry id="program-edru">
  697. <term>
  698. <application>
  699. edru
  700. </application>
  701. </term>
  702. <listitem>
  703. <para>
  704. A command line program that reads one or more Ethernet II (IEEE 802.2) frames and write frame data to stdout as a continuous stream. This program can be used to capture serial data sent from a remote UART-enabled powerline device. This program is installed in folder <filename>/usr/local/bin</filename> with 4555 file permissions. See the discussion on security for more information about file permissions. The main source code is located in folder <filename>./ether</filename>. See the <ulink url='edru.7.html'>edru</ulink> man page for more information.
  705. </para>
  706. </listitem>
  707. </varlistentry>
  708. <varlistentry id="program-edsu">
  709. <term>
  710. <application>
  711. edsu
  712. </application>
  713. </term>
  714. <listitem>
  715. <para>
  716. A command line program sends one or more files over the network using Ethernet II (IEEE 802.2) Frames. This program can be used to test remote UART-enabled powerline devices. This program is installed in folder <filename>/usr/local/bin</filename> with 4555 file permissions. See the discussion on security for more information about file permissions. The main source code is located in folder <filename>./ether</filename>. See the <ulink url='edsu.7.html'>edsu</ulink> man page for more information.
  717. </para>
  718. </listitem>
  719. </varlistentry>
  720. <varlistentry id="program-efsu">
  721. <term>
  722. <application>
  723. efsu
  724. </application>
  725. </term>
  726. <listitem>
  727. <para>
  728. A freeform Ethernet frame send utility used to define and send Ethernet packets. Packets are defined in text files containing hexadecimal byte codes plus optional comments and whitespace. Input files are stripped of comments and whitespace then transmitted as Ethernet frames. This program is installed in folder <filename>/usr/local/bin</filename> with 4555 file permissions. See the discussion on security for more information about file permissions. The main source code is located in folder <filename>./ether</filename>. See the <ulink url='efsu.7.html'>efsu</ulink> man page for more information.
  729. </para>
  730. </listitem>
  731. </varlistentry>
  732. <varlistentry id="program-hpav">
  733. <term>
  734. <application>
  735. hpav
  736. </application>
  737. </term>
  738. <listitem>
  739. <para>
  740. A basic <trademark class='registered'>HomePlug</trademark> AV packet sniffer that displays only <trademark class='registered'>HomePlug</trademark> AV protocol frames on the console as they are sent or arrive on a given interface. This program is installed in folder <filename>/usr/local/bin</filename> with 4555 file permissions. See the discussion on security for more information about file permissions. The main source code is located in folder <filename>./mme</filename>. See the <ulink url='hpav.7.html'>hpav</ulink> man page for more information.
  741. </para>
  742. </listitem>
  743. </varlistentry>
  744. <varlistentry id="program-pcapdevs">
  745. <term>
  746. <application>
  747. pcapdevs
  748. </application>
  749. </term>
  750. <listitem>
  751. <para>
  752. A utility to enumerate <application>LibPcap</application> or <application>WinPcap</application> devices available on the host. It is compiled but only works if one of these two packages is installed on the host. At present, it is only needed with the Windows version of the Toolkit which is compiled against the <application>WinPcap</application> library. The main source code is located in folder <filename>./ether</filename>. See the <ulink url='pcapdevs.7.html'>pcapdevs</ulink> man page for more information.
  753. </para>
  754. </listitem>
  755. </varlistentry>
  756. </variablelist>
  757. </section>
  758. <section id='programs-passwords'>
  759. <title>
  760. Passwords and Keys
  761. </title>
  762. <variablelist>
  763. <varlistentry id="program-hpavkey">
  764. <term>
  765. <application>
  766. hpavkey
  767. </application>
  768. </term>
  769. <listitem>
  770. <para>
  771. A <trademark class='registered'>HomePlug</trademark> AV key generator. Pass phrase arguments are hashed to form the corresponding Device Access Key (<acronym>DAK</acronym>), Network Membership Key (<acronym>NMK</acronym>) or Network Identifier (<acronym>NID</acronym>). This program is installed in folder <filename>/usr/local/bin</filename> with 4555 permissions. The main source code is located in folder <filename>./crypt</filename>. See the <ulink url='hpavkey.7.html'>hpavkey</ulink> man page for more information.
  772. </para>
  773. </listitem>
  774. </varlistentry>
  775. <varlistentry id="program-hpavkeys">
  776. <term>
  777. <application>
  778. hpavkeys
  779. </application>
  780. </term>
  781. <listitem>
  782. <para>
  783. A <trademark class='registered'>HomePlug</trademark> AV key generator. Pass phrases are read from a file and hashed to form the corresponding Device Access Key (<acronym>DAK</acronym>), Network Membership Key (<acronym>NMK</acronym>) or Network Identifier (<acronym>NID</acronym>). This program is installed in folder <filename>/usr/local/bin</filename> with 4555 permissions. The main source code is located in folder <filename>./crypt</filename>. See the <ulink url='hpavkeys.7.html'>hpavkeys</ulink> man page for more information.
  784. </para>
  785. </listitem>
  786. </varlistentry>
  787. <varlistentry id="program-mac2pw">
  788. <term>
  789. <application>
  790. mac2pw
  791. </application>
  792. </term>
  793. <listitem>
  794. <para>
  795. A device password generator that prints a range of MAC address and passwords on stdout. It is an alternative to the Atheros Production Test System (<acronym>PTS</acronym>) DBBuilder Utility and toolkit program <link linkend='program-mac2pwd'>mac2pwd</link>. This program is installed in folder <filename>/usr/local/bin</filename> with 4555 file permissions. See the discussion on security for more information about file permissions. The main source code is located in folder <filename>./crypt</filename>. See the <ulink url='mac2pw.7.html'>mac2pw</ulink> man page for more information.
  796. </para>
  797. </listitem>
  798. </varlistentry>
  799. <varlistentry id="program-mac2pwd">
  800. <term>
  801. <application>
  802. mac2pwd
  803. </application>
  804. </term>
  805. <listitem>
  806. <para>
  807. A device password generator that reads files containing MAC addresses and prints address/password pairs. It is an alternative to the Atheros Production Test System (<acronym>PTS</acronym>) DBBuilder Utility and toolkit program <link linkend='program-mac2pw'>mac2pw</link>. This program is installed in folder <filename>/usr/local/bin</filename> with 4555 file permissions. See the discussion on security for more information about file permissions. The main source code is located in folder <filename>./crypt</filename>. See the <ulink url='mac2pwd.7.html'>mac2pwd</ulink> man page for more information.
  808. </para>
  809. </listitem>
  810. </varlistentry>
  811. <varlistentry id="program-rkey">
  812. <term>
  813. <application>
  814. rkey
  815. </application>
  816. </term>
  817. <listitem>
  818. <para>
  819. A command line utility to dynamically generate distinct HomePlug AV compliant keys from a user created keyfile. It can be used in shell scripts to dynamically insert random and distinct keys on program command lines as arguments. For example, a Linux bash script can reference "$(rkey -i eth0 -D secret.key)" inline. This program is installed in folder <filename>/usr/local/bin</filename> with 4555 file permissions. See the discussion on security for more information about file permissions. The main source code is located in folder <filename>./crypt</filename>. See the <ulink url='rkey.7.html'>rkey</ulink> man page for more information.
  820. </para>
  821. </listitem>
  822. </varlistentry>
  823. </variablelist>
  824. </section>
  825. <section id='programs-mdio'>
  826. <title>
  827. MDIO Programming
  828. </title>
  829. <variablelist>
  830. <varlistentry id="program-int6kmdio">
  831. <term>
  832. int6kmdio
  833. </term>
  834. <listitem>
  835. <para>
  836. A command line utility that uses VS_MDIO_COMMAND messages to read and write MDIO registers on a switch chip connected to the local powerline device. MDIO instructions are specified and send as Clause 22 instructions. This program is installed in folder <filename>/usr/local/bin</filename> with 0555 file permissions. The main source code is located in folder <filename>./mdio</filename>. See the <ulink url="int6kmdio.7.html">mdioblock</ulink> man page for more information.
  837. </para>
  838. </listitem>
  839. </varlistentry>
  840. <varlistentry id="program-int6kmdio2">
  841. <term>
  842. int6kmdio2
  843. </term>
  844. <listitem>
  845. <para>
  846. A command line utility that uses VS_MDIO_COMMAND messages to read and write MDIO registers on a switch chip connected to the local powerline device. Instructions are read as Clause 45 instructions but send as Clause 22 instructions. This program is installed in folder <filename>/usr/local/bin</filename> with 0555 file permissions. The main source code is located in folder <filename>./mdio</filename>. See the <ulink url="int6kmdio2.7.html">mdioblock</ulink> man page for more information.
  847. </para>
  848. </listitem>
  849. </varlistentry>
  850. <varlistentry id="program-mdioblock">
  851. <term>
  852. mdioblock
  853. </term>
  854. <listitem>
  855. <para>
  856. A command line utility to assemble an Atheros MDIO instruction block from hexadecimal register instructions. MDIO instruction blocks are written to Atheros powerline devices as modules using the VS_MOD_OP message type. This program is installed in folder <filename>/usr/local/bin</filename> with 0555 file permissions. The main source code is located in folder <filename>./mdio</filename>. See the <ulink url="mdioblock.7.html">mdioblock</ulink> man page for more information.
  857. </para>
  858. </listitem>
  859. </varlistentry>
  860. <varlistentry id="program-mdioblock2">
  861. <term>
  862. mdioblock2
  863. </term>
  864. <listitem>
  865. <para>
  866. A command line utility to assemble an Atheros MDIO instruction block from hexadecimal register instructions. MDIO instruction blocks are written to Atheros powerline devices as modules using the VS_MOD_OP message type. This program is installed in folder <filename>/usr/local/bin</filename> with 0555 file permissions. The main source code is located in folder <filename>./mdio</filename>. See the <ulink url="mdioblock2.7.html">mdioblock2</ulink> man page for more information.
  867. </para>
  868. </listitem>
  869. </varlistentry>
  870. <varlistentry id="program-mdiodump">
  871. <term>
  872. mdiodump
  873. </term>
  874. <listitem>
  875. <para>
  876. A command line utility to read and display Atheros MDIO custom modules in human readable format. This program is installed in folder <filename>/usr/local/bin</filename> with 0555 file permissions. The main source code is located in folder <filename>./mdio</filename>. See the <ulink url="mdiodump.7.html">mdiodump</ulink> man page for more information.
  877. </para>
  878. </listitem>
  879. </varlistentry>
  880. <varlistentry id="program-mdiogen">
  881. <term>
  882. mdiogen
  883. </term>
  884. <listitem>
  885. <para>
  886. A rudimentary command line utility that write a custom MDIO block to a fixed file. The user must edit a data statements, in the main program, to define MDIO command fields. A series of macros then mask, shift and merge the fields to create complete Clause 22 or Clause 45 MDIO commands on output. The program has no dependencies on other toolkit modules and so it will compile anywhere. This program must be manually compiled and it is not automatically installed. The main source code is located in folder <filename>./mdio</filename> and file <ulink url='mdio.h.html'>mdio.h</ulink> is required for compilation. There are no help files available at this time. If you do not understand how to use it then you may not need it.
  887. </para>
  888. </listitem>
  889. </varlistentry>
  890. </variablelist>
  891. </section>
  892. <section id='programs-serial'>
  893. <title>
  894. Serial Programming
  895. </title>
  896. <variablelist>
  897. <varlistentry id="program-ptsctl">
  898. <term>
  899. <application>
  900. ptsctl
  901. </application>
  902. </term>
  903. <listitem>
  904. <para>
  905. A command line program used to control a bank of three Weeder programmable attenuators. It may be used to construct a Production Test System (<acronym>PTS</acronym>) for Qualcomm Atheros <productname>SmartLink</productname> devices. See program <link linkend='program-weeder'>weeder</link> to control a bank of two Weeder programmable attenuators. This program is installed in folder <filename>/usr/local/bin</filename> with 0555 file permissions. The main source code is located in folder <filename>./serial</filename>. See the <ulink url='ptsctl.7.html'>ptsctl</ulink> man page for more information.
  906. </para>
  907. </listitem>
  908. </varlistentry>
  909. <varlistentry id="program-ttycat">
  910. <term>
  911. <application>
  912. ttycat
  913. </application>
  914. </term>
  915. <listitem>
  916. <para>
  917. A command line program that copies one or more host files to a specific serial port. It can be used to stream serial data to the local UART-enabled powerline device for transmission over powerline. This program is installed in folder <filename>/usr/local/bin</filename> with 0555 file permissions. The main source code is located in folder <filename>./serial</filename>. See the <ulink url='ttycat.7.html'>ttycat</ulink> man page for more information.
  918. </para>
  919. </listitem>
  920. </varlistentry>
  921. <varlistentry id="program-weeder">
  922. <term>
  923. <application>
  924. weeder
  925. </application>
  926. </term>
  927. <listitem>
  928. <para>
  929. A command line program used to control a bank of two Weeder programmable attenuators. It may be used to construct a Production Test System (<acronym>PTS</acronym>) for Qualcomm Atheros powerline devices. See program <link linkend='program-ptsctl'>ptsctl</link> to control a bank of three Weeder programmable attenuators. This program is installed in folder <filename>/usr/local/bin</filename> with 0555 file permissions. The main source code is located in folder <filename>./serial</filename>. See the <ulink url='weeder.7.html'>weeder</ulink> man page for more information.
  930. </para>
  931. </listitem>
  932. </varlistentry>
  933. </variablelist>
  934. <para>
  935. Atheros Communications reserves the right to add, remove or rename utility programs or modify their command line options or their functionality in future software releases without any obligation to notify or compensate users of this software.
  936. </para>
  937. </section>
  938. </section>