This patch adds a small tutorial to the README of ssb-sprom. There is a steep 
learning curve for
this tool - I hope this will help.

Larry

Index: sprom/README
===================================================================
--- sprom.orig/README
+++ sprom/README
@@ -13,3 +13,80 @@ Requirements
  ------------

  1)    C99 compatible compiler.
+
+Usage
+-----
+
+The contents of the sprom are exposed to the user in sysfs. This tool can, in
+principle, read and write the sprom in place; however, making a mistake during
+sprom writing could render your device unusable. For this reason, we recommend
+copying the sprom contents to disk as the first step. This copy can then be
+modified until it contains the desired new information. Only then and with
+caution should the sprom be rewritten. DO NOT MAKE ANY CHANGES UNLESS YOU KNOW
+WHAT YOU ARE DOING!!!! You have been warned!!!
+
+Obtaining a disk copy of the sprom contents
+-------------------------------------------
+
+This file name for the sprom contents depends on the bus layout of the specific
+computer being used and will be something cryptic like
+
+/sys/devices/pci0000:00/0000:00:02.0/0000:01:00.0/ssb_sprom
+
+It is not recommended that you try to type the name. Instead, you should
+use the following commands to get the working copy:
+
+SSB_SPROM=`find /sys -name ssb_sprom`
+sudo cat $SSB_SPROM > ssb_sprom_copy
+
+Newbie Note: In the first line, those symbols are back ticks (usually found
+near the <ESC> key, not forward ticks usually found near the <CR> (enter) key.
+
+Modifying the contents of the working copy
+------------------------------------------
+
+You may now look at the contents of your sprom with the command
+
+ssb-sprom -i ssb_sprom_copy -P
+
+As an example, let us suppose that you have purchased a Dell mini-pci card to
+use in an HP laptop. The HP BIOS refuses to use the card when the pcivendor is
+Dell (code 0x1028), not HP (code 0x103C). From the dump above, we learn that 
the
+pcivendor code is a 16-bit quantity stored at 0x06. To change that code, we use
+the commands
+
+ssb-sprom -i ssb_sprom_copy -o ssb_sprom_copy -s 0x06,0x3C
+ssb-sprom -i ssb_sprom_copy -o ssb_sprom_copy -s 0x07.0x10
+
+to write the two bytes separately. The documentation implies that these data
+could be written as a single 16-bit quantity; however, that doesn't work at
+the moment.
+
+Once you think you have updated correctly, use
+
+ssb-sprom -i ssb_sprom_copy -P
+
+again to check the contents.
+
+Rewriting the sprom contents
+----------------------------
+
+Once the sprom contents are the way you want them, and presumably correct,
+you are ready to rewrite the file. If you have logged out since the working
+copy of the sprom contents was obtained, the symbol containing the location
+of the file in sysfs will have been lost. In any case, it is safe to reload
+that symbol again with
+
+SSB_SPROM=`find /sys -name ssb_sprom`
+
+You are then ready to rewrite the sprom with
+
+sudo cat ssb_sprom_copy > $SSB_SPROM
+
+Once again, you are urged to be absolutely certain of the contents of the
+working copy BEFORE taking this step. If your interface becomes unusable as a
+result of writing incorrect data into the sprom, the responsibility is YOURS.
+Once again, you have been warned.
+
+----------
+

_______________________________________________
Bcm43xx-dev mailing list
[email protected]
https://lists.berlios.de/mailman/listinfo/bcm43xx-dev

Reply via email to