mdioblock.1 5.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155
  1. .TH mdioblock 1 "Mar 2014" "plc-utils-2.1.6" "Qualcomm Atheros Powerline Toolkit"
  2. .SH NAME
  3. mdioblock - Qualcomm Atheros Clause 22 MDIO Instruction Block Assembler
  4. .SH SYNOPSIS
  5. .BR mdioblock
  6. .RI [ options ]
  7. .IR file
  8. .RI [ file ]
  9. .RI [ ... ]
  10. .RI [> stdout ]
  11. .PP
  12. .BR mdioblock
  13. .RI [ options ]
  14. .RI [< stdin ]
  15. .RI [> stdout ]
  16. .SH DESCRIPTION
  17. Assemble an Atheros MDIO instruction block from hexadecimal register instructions.
  18. MDIO instruction blocks are written to Atheros powerline devices as modules using the \fBVS_MOD_OP\fR message type.
  19. Alternately, program \fBint6kmod\fR can be used.
  20. .PP
  21. Atheros MDIO modules consists of a 16-bit header followed by one or more MDIO communication frames with register masks and padded to the nearest multiple of 32-bits for download purposes.
  22. MDIO instructions are specified here using \fB802.3 Clause 22\fR (or \fIphy\fR, \fIreg\fR, \fIdata\fR and \fImask\fR) format.
  23. See program \fBmdioblock2\fR for a similar program that accepts instructions in \fB802.3ae Clause 45\fR (or \fIaddress\fR, \fIdata\fR and \fImask\fR) format.
  24. .PP
  25. This program is part of the Qualcomm Atheros Powerline Toolkit.
  26. See the \fBAMP\fR man page for an overview and installation instructions.
  27. .SH OPTIONS
  28. .TP
  29. .RB - q
  30. Quiet mode.
  31. Suppresses error messages caused by instruction syntax errors.
  32. .TP
  33. .RB - v
  34. Verbose mode.
  35. Prints instructions on stderr as they are processed.
  36. .TP
  37. .RB - ? ,-- help
  38. Displays program help information on stderr.
  39. This option takes precedence over all other options on the command line except version information.
  40. .TP
  41. .RB - ! ,-- version
  42. Displays program version information on stderr.
  43. This option takes precedence over all other options on the command line except help information.
  44. Use this option when sending screen dumps to Atheros technical staff.
  45. .SH ARGUMENTS
  46. .TP
  47. .IR file
  48. A text files contining one or more generic MDIO register intructions consisting of a \fBphy\fR, \fBreg\fR, \fBdata\fR and \fBmask\fR fields.
  49. Fields are seperated by whitespace and instructions are terminated with semicolon.
  50. Multiple instructions may appear on a single line or a single instruction can span multiple lines.
  51. Script-style comments are permitted between instructions but not between fields.
  52. .SH REFERENCES
  53. See the Qualcomm Atheros \fIAR7x00 Firmware Technical Reference Manual\fR section on the \fIModule Operation\fR message type for more information on MDIO Block format.
  54. .SH DISCLAIMER
  55. Atheros HomePlug AV Vendor Specific Management Message structure and content is proprietary to Qualcomm Atheros, Ocala FL USA.
  56. Consequently, public information may not be available.
  57. Qualcomm Atheros reserves the right to modify message structure and content in future firmware releases without any obligation to notify or compensate users of this program.
  58. .SH EXAMPLES
  59. The following command reads register instructions from file \fBmdio.txt\fR and writes them as an MDIO program block to file \fBmdio.bin\fR.
  60. In this example, the program acts as a filter.
  61. .PP
  62. # mdioblock < mdio.txt > mdio.bin
  63. .PP
  64. The following command reads register instructions from files \fBphysetup.dat\fR, \fBflowctl.dat\fR and \fBmisc.ins\fR and write them all as one MDIO block to file \fBmdio.bin\fR.
  65. The previous contents of file \fBmdio.bin\fR is overwritten.
  66. .PP
  67. # mdioblock physetup.dat flowctl.dat misc.ins > mdio.bin
  68. .PP
  69. An example register instruction file might look like this.
  70. The first two lines consist of one instruction each.
  71. An instruction has \fIphy\fR, \fIreg\fR, \fIdata\fR and \fImask\fR fields.
  72. Instruction fields are separated by whitespace.
  73. Instructions are separated by a semicolon.
  74. Multiple instruction may appear on one line and one instruction can span multiple lines.
  75. Script-style comments are permitted between instructions but not between instruction fields.
  76. .PP
  77. 18 00 0000 FFFF;
  78. 10 16 003F FFFF;
  79. # multiple instructions on one line;
  80. 10 17 7E3F FFFF; 18 00 0000 FFFF;
  81. # one instruction on multiple lines;
  82. 10
  83. 02
  84. 0700
  85. FFFF;
  86. 10 03 0000 FFFF;
  87. 18 00 0000 FFFF;
  88. 14 00 007D FFFF;
  89. 14 01 0000 FFFF;
  90. .PP
  91. A 16-bit hexdump of the MDIO block will look like this on little-endian hosts.
  92. The block consists of a 16-bit header followed by a variable number of 16-bit triplets.
  93. The header indicates the number of triplets that follow.
  94. Each triplet specifies a 16-bit operation, a 16-bit data value and a 16-bit data mask.
  95. The application of these fields is beyond the scope of this man page.
  96. Consult the IEEE standards for more information.
  97. .PP
  98. # hexdump mdio.bin
  99. 0000000 0241 8185 0000 ffff ad05 003f ffff af05
  100. 0000010 7e3f ffff 8185 0000 ffff 8505 0700 ffff
  101. 0000020 8705 0000 ffff 8185 0000 ffff 8145 007d
  102. 0000030 ffff 8345 0000 ffff
  103. .PP
  104. An 8-bit dump of the MDIO block will look like this on all hosts since the MDIO block is always distributed in little-endian format.
  105. .pp
  106. # hexdmp mdio.bin
  107. 00000000 41 02 85 81 00 00 FF FF 05 AD 3F 00 FF FF 05 AF A.........?.....
  108. 00000010 3F 7E FF FF 85 81 00 00 FF FF 05 85 00 07 FF FF ?~..............
  109. 00000020 05 87 00 00 FF FF 85 81 00 00 FF FF 45 81 7D 00 ............E.}.
  110. 00000030 FF FF 45 83 00 00 FF FF ..E.....
  111. .SH SEE ALSO
  112. .BR amp ( 1 ),
  113. .BR int6kmod ( 1 ),
  114. .BR int6kmdio ( 1 ),
  115. .BR int6kmdio2 ( 1 ),
  116. .BR mdioblock2 ( 1 ),
  117. .BR mdiodump ( 1 ),
  118. .BR mdiogen ( 1 )
  119. .SH CREDITS
  120. Charles Maier <cmaier@qca.qualcomm.com>