diff options
author | Francis Rowe <info@gluglug.org.uk> | 2015-07-11 13:26:40 (EDT) |
---|---|---|
committer | Francis Rowe <info@gluglug.org.uk> | 2015-07-11 16:47:16 (EDT) |
commit | befeea2ee3c969471a30becb38cd2abf9c4e2413 (patch) | |
tree | cfbb09142737d382184e44aa7e68ec9311f1acd1 /docs/install | |
parent | c94328112af92906ecc55c6f14d96481b723e3e4 (diff) | |
download | libreboot-befeea2ee3c969471a30becb38cd2abf9c4e2413.zip libreboot-befeea2ee3c969471a30becb38cd2abf9c4e2413.tar.gz libreboot-befeea2ee3c969471a30becb38cd2abf9c4e2413.tar.bz2 |
Documentation: convert to GFDL
Some sections were owned by other people; these were re-written,
deleted, or moved. Alternatively, they were re-licensed as-is,
with permission from the relevant author(s).
Patrick "P. J." McDermott on #libreboot freenode IRC:
Saturday, 11 July 2015 log:
<francis7> pehjota, you made a few changes to the
libreboot documentation
<francis7> pehjota, do I have your permission to re-license those
parts under GFDL 1.3/higher, with no invariant sections or
back/front cover texts?
<francis7> (if so, can you write to the mailing list?)
<pehjota> francis7: Sure, I'll send a message to the libreboot-dev list later.
(pehjota=Patrick McDermott)
(francis7=Francis Rowe, the person making this commit)
TODO: docs/install/bbb_ehci.html: Get permission from author to
re-license it (contact Alex David. tty0_ on IRC)
Diffstat (limited to 'docs/install')
-rw-r--r-- | docs/install/bbb_ehci.html | 482 | ||||
-rw-r--r-- | docs/install/bbb_setup.html | 486 | ||||
-rw-r--r-- | docs/install/index.html | 62 | ||||
-rw-r--r-- | docs/install/r400_external.html | 62 | ||||
-rw-r--r-- | docs/install/t400_external.html | 62 | ||||
-rw-r--r-- | docs/install/t500_external.html | 62 | ||||
-rw-r--r-- | docs/install/t60_unbrick.html | 44 | ||||
-rw-r--r-- | docs/install/x200_external.html | 66 | ||||
-rw-r--r-- | docs/install/x60_unbrick.html | 44 | ||||
-rw-r--r-- | docs/install/x60tablet_unbrick.html | 44 |
10 files changed, 839 insertions, 575 deletions
diff --git a/docs/install/bbb_ehci.html b/docs/install/bbb_ehci.html new file mode 100644 index 0000000..45fc68f --- /dev/null +++ b/docs/install/bbb_ehci.html @@ -0,0 +1,482 @@ +<!DOCTYPE html> +<html> +<head> + <meta charset="utf-8"> + <meta name="viewport" content="width=device-width, initial-scale=1"> + + <style type="text/css"> + @import url('../css/main.css'); + </style> + + <title>EHCI debugging on the BeagleBone Black</title> +</head> + +<body> + + <div class="section"> + <h1 id="pagetop">EHCI debugging on the BeagleBone Black</h1> + + <p><a href="index.html">Back to previous index</a></p> + </div> + + <div class="section"> + <h1>EHCI debugging</h1> + <ol class="toc"> + <li><a href="#FindUSBportonthetargetthatsupportsEHCIdebug">Find + USB port on the target that supports EHCI debug</a></li> + <li><a href="#InitialsetupofBBBtoactasEHCIdebugdongle">Initial + setup of BBB to act as EHCI debug dongle</a></li> + <li><a href="#PatchBBBsgdbgpmoduleoptionalbuthighlyrecommended">Patch + BBB's <tt>g_dbgp</tt> module (optional, but highly recommended)</a></li> + <li><a href="#ConfigurelibrebootwithEHCIdebug">Configure + libreboot with EHCI debug</a> + <ol> + <li><a href="#SelectingHCDIndexandUSBDebugport">Selecting + <tt>HCD Index</tt> and <tt>USB Debug port</tt></a></li> + </ol></li> + <li><a href="#Howtogetthedebuglogs">How to get the debug + logs</a></li> + <li><a + href="#EnebleEHCIDebugonthetargetskerneloptionalrecommended">Eneble + EHCI Debug on the target's kernel (optional, recommended)</a></li> + <li><a href="#References">References</a></li> + </ol> + <p>If your computer does not boot after installing libreboot, it is + very useful to get debug logs from it, from the payload (grub) and/or + the kernel (if gets to there). All of them stream debug logs on the + available serial (RS-232) by default. However, most of todays laptops + lack RS-232 port. The other option is to stream the logs to USB EHCI + debug port.</p> + <p>This section explains step-by-step how to setup BBB as a + “USB EHCI debug dongle” and configure libreboot and the + linux kernel to stream logs to it (TODO: grub).</p> + <p>I will refer to three computers:</p> + <ul> + <li><b>host</b> - this is the computer you use, have + tools, compiler, Internet, etc</li> + <li><b>BBB</b> - Beaglebone Black (rev. B or higher, i + use rev. C)</li> + <li><b>target</b> - the computer you are trying to + install liberboot</li> + </ul> + <h3 id="FindUSBportonthetargetthatsupportsEHCIdebug">Find USB port + on the target that supports EHCI debug</h3> + <p> + Not all USB controllers support EHCI debug (see: <a + href="http://www.coreboot.org/EHCI_Debug_Port#Hardware_capability">EHCI + Debug Port</a> ). Even more, if a USB controller supports EHCI debug, it + is available only <b>on a single port</b> that might or might + not be exposed externally. + </p> + <ul> + <li>You need running OS (GNU/Linux) on your target for this step + (If you’ve flashed libreboot and it does not boot, you have to + flush back the stock bios)</li> + <li>You need USB memory stick (the data on it will not be + touched).</li> + <li>The EHCI debugging can not be done through external hub, BBB + must be connected directly to the debug port of the controller (so, no + hubs)</li> + </ul> + <ul> + <li>Download<sup class="footnote"><a href="#___fn1">1</a></sup> <a + href="http://www.coreboot.org/pipermail/coreboot/attachments/20080909/ae11c291/attachment.sh">this</a> + shell script. + </li> + </ul> + <ol> + <li>Plug the usb stick in the first available usb port</li> + <li>Run the script, you will get output similar to following:</li> +<pre>The following PCI devices support a USB debug port (says lspci): 0000:00:1a.0 0000:00:1d.0 +The following PCI devices support a USB debug port (says the kernel): 0000:00:1a.0 0000:00:1d.0 +*PCI device 0000:00:1a.0, USB bus 3, USB physical port 1* +*PCI device 0000:00:1d.0, USB bus 4, USB physical port 2* +Currently connected high-speed devices: +/: Bus 04.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/2p, 480M + |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/8p, 480M + |__ Port 7: Dev 14, If 0, Class=Hub, Driver=hub/4p, 480M + |__ Port 1: Dev 15, If 0, Class=Hub, Driver=hub/4p, 480M + |__ Port 3: Dev 17, If 0, Class=Hub, Driver=hub/2p, 480M + |__ Port 4: Dev 18, If 0, Class=Hub, Driver=hub/4p, 480M +/: Bus 03.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/2p, 480M + |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/6p, 480M +/: *Bus 01*.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 480M + |__ *Port 3: Dev 31, If 0, Class=Mass Storage, Driver=usb-storage, 480M* +</pre> + <li>The buses the support debug are Bus 3 (0000:00:1a.0) on Port 1 + and Bus 4 (0000:00:1d.0) on port 2. Your usb stick is plugged on Bus + 1, Port 3</li> + <li>Repeat the steps, plugging the USB stick in the next available + port</li> + <li>Go through all available ports and remember(write down) those + for which bus/port of the usb stick matches one of the bus/port that + support debug (bold).</li> + </ol> + <p>Remember (write down) for each port (external plug) you found + that supports debug: <b>PCI device id, the bus id, the port number, and + the physical location of the usb plug.</b></p> + <p>If you do not find a match, you can not get debug over EHCI. + Sorry.</p> + <p id="___fn1" class="footnote"> + <sup>1</sup> The guys from coreboot were talking about including the + script in coreboot distribution (check the status). + </p> + <h3 id="InitialsetupofBBBtoactasEHCIdebugdongle">Initial setup of + BBB to act as EHCI debug dongle</h3> + <p>BBB must be powered with a barrel power connector since the + mini-B USB plug will be used for the EHCI debug stream. So you will + need:</p> + <ul> + <li>power supply (5V, 2A(10W) is sufficient).</li> + <li>an extra usb cable: A to mini-B</li> + </ul> + <p> + (On BBB) The linux kernel includes module (g_dbgp that enables one of the usb ports on a computer to behave as EHCI + debug dongle. Make sure you have this module available on your BBB + (Debian 7.8 that comes with BBB should have it), if not, you should + compile it yourself (see next section): + </p> +<pre>ls /lib/modules/3.8.13-bone70/kernel/drivers/usb/gadget/g_dbgp.ko</pre> + <p> + Unload all other + g_* + modules: + </p> +<pre># lsmod +# rmmod g_multi +... +</pre> + <p> + Then load + g_dbgp + : + </p> +<pre># modprobe g_dbgp +# lsmod # should show that g_dbgp is loaded, and no other g_* +</pre> + <p> + Plug the mini-B side of the USB cable in your BBB and the A side in + your target. Then one of the usb devices on your target (with + lsusb + ) should be: + </p> +<pre>Bus 001 Device 024: ID 0525:c0de Netchip Technology, Inc.</pre> + <p>If you see the device on the target, you are good to continue to + the next step.</p> + <h3 id="PatchBBBsgdbgpmoduleoptionalbuthighlyrecommended"> + Patch BBB’s + g_dbgp + module (optional, but highly recommended) + </h3> + <p> + For the reasons why you need this, see: <a + href="http://www.coreboot.org/EHCI_Gadget_Debug">EHCI Gadget Debug</a>.<br />Make + sure that you have cross compiling environment for + arm-linux-gnueabihf + setup on your <em>host</em>. + </p> + <ul> + <li>On BBB: uname -r - this will give you version + number like 3.8.13-bone70 (I will refer to this as: $mav.$miv-$lv: + where mav=3.8, miv=13, lv=bone70 + </li> + <li>Get the BBB kernel ready on your host for cross-compiling:</li> + </ul> +<pre>$ cd $work_dir +$ git clone https://github.com/beagleboard/kernel.git +$ cd kernel +$ git checkout $mav (see above) +$ ./patch.sh +$ wget http://arago-project.org/git/projects/?p=am33x-cm3.git\;a=blob_plain\;f=bin/am335x-pm-firmware.bin\;hb=HEAD -O kernel/firmware/am335x-pm-firmware.bin +$ cp configs/beaglebone kernel/arch/arm/configs/beaglebone_defconfig +</pre> + <ul> + <li>Download the patch from <a + href="http://www.coreboot.org/images/8/88/Ehci-debug-gadget-patches.tar.gz">here</a></li> + <li>tar -xf Ehci-debug-gadget-patches.tar.gz (will + create dir: usbdebug-gadget)</li> + <li>Note that there are two patches (patch_1 and patch_2) for each + of the two different version of the kernel (3.8 and 3.10). I will use + 3.8. (If using kernel 3.12 patch_1 is not needed)</li> + <li>cd kernel (note that this is one more level: you + should be in $work_dir/kernel/kernel)</li> + <li>Apply the patches:</li> + </ul> +<pre> +git apply ../usbdebug-gadget/v3.8-debug-gadget/0001-usb-dbgp-gadget-Fix-re-connecting-after-USB-disconne.patch +git apply ../usbdebug-gadget/v3.8-debug-gadget/0002-usb-serial-gadget-no-TTY-hangup-on-USB-disconnect-WI.patch +; +make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- beaglebone_defconfig -j4@ +</pre> + <ul> + <li> + You should also apply the linux-libre <i>deblob</i> script to turn it into linux-libre + (deletes all the blobs from the linux kernel). + <a href="http://www.fsfla.org/ikiwiki/selibre/linux-libre/">fsfla website</a> + - see <a href="http://www.fsfla.org/svn/fsfla/software/linux-libre/scripts/">scripts</a>. + </li> + <li>Get your current BBB kernel config (from: /boot/config-<ver>) + and copy it to your host as $work_dir/kernel/kernel/.config</li> +<pre> +make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- oldconfig - all default answers</pre> + <li>Set proper version number: + <ul> + <li>On your host, edit $work_dir/kernel/kernel/.config + (the one you’ve just copied from BBB), find the line CONFIG_LOCALVERSION="<something + or empty>" and change it to CONFIG_LOCALVERSION="-$lv", + so it will look something like: CONFIG_LOCALVERSION="-bone70"</li> + </ul> + </li> + <li>Also, make sure that: CONFIG_USB_G_DBGP=m (If + not, make menuconfig, and set @Device Drivers-> USB + Support -> USB Gadget Support -> EHCI Debug Device Gadget=m</li> + <li>Build the module:</li> + </ul> +<pre> +$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- -j4 (is it possoble to build only the gadget modules) +$ mkdir ../tmp && make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- INSTALL_MOD_PATH=../tmp modules_install +</pre> + <ul> + <li>on BBB, backup /lib/modules/3.8.13-bone70/kernel/drivers/usb/gadget + (i.e. mv + /lib/modules/3.8.13-bone70/kernel/drivers/usb/gadget $HOME) + </li> + <li>copy the freshly compiled usb/gadget dir to /lib/modules/3.8.13-bone70/kernel/drivers/usb</li> + <li>restart BBB</li> + <li>Remove all g_* modules (rmmod + g_<>) + </li> + <li>modprobpe g_dbgp</li> + </ul> + <h3 id="ConfigurelibrebootwithEHCIdebug">Configure libreboot with + EHCI debug</h3> + <p> + Libreboot(coreboot) should be configured with debug turned on and to + push debug messages to the EHCI debug port.<br />If you’ve + downloaded the binary distribution, you can check if it is properly + configured in the following way: + </p> + <ul> + <li>Go to the libreboot dist root directory cd + $libreboot_bin</li> + <li>Locate the rom image for your target (I will call it: $img_path) + </li> + <li>Running the following command will extract the config in a + file ./my_config: + </li> + </ul> +<pre> +./cbfstool/i686/cbfstool $img_path extract -n config -f ./my_config +</pre> + <ul> + <li>Make sure that the following params in the config are set as + following:</li> + </ul> +<pre> +CONFIG_USBDEBUG=y (Generic Drivers -> USB 2.0 EHCI debug dongle support) +CONFIG_USBDEBUG_IN_ROMSTAGE=y (Generic Drivers -> Enable early (pre-RAM) usbdebug) +CONFIG_USBDEBUG_HCD_INDEX=<HCD Index of usb controller - see below> (Generic Drivers -> Index for EHCI controller to use with usbdebug) +CONFIG_USBDEBUG_DEFAULT_PORT=<USB Debug port - see below> (Generic Drivers -> Default USB port to use as Debug Port) +</pre> + <p> + The following three are behind radio button in the menu. Only the first + one<sup class="footnote"><a href="#___fn2">2</a></sup> should be = y + </p> +<pre> +USBDEBUG_DONGLE_STD=y (Generic Drivers -> Type of dongle (Net20DC or compatible) -> Net20DC or compatible) +CONFIG_USBDEBUG_DONGLE_BEAGLEBONE=n (Generic Drivers -> Type of dongle (Net20DC or compatible) -> BeagleBone) +CONFIG_USBDEBUG_DONGLE_BEAGLEBONE_BLACK=n (Generic Drivers -> Type of dongle (Net20DC or compatible) -> BeagleBone Black) +</pre> + <p id="___fn2" class="footnote"> + <sup>2</sup> The g_dbgp module on BeagleBone Black (Rev. C) reports it self as Net20DC, the + other options are for older BB(B) - ver1. This is documented <a + href="https://johnlewis.ie/coreboot-ehci-debug-gadget-demonstration/">here</a> + (also tested/verified). + </p> + <p> + Then:<br /> +<pre> +CONFIG_CONSOLE_USB=y (Console -> USB dongle console output) +</pre> + </p> + <p> + Also + Debugging ---> Output verbose XYZ + ) (<b>FIXME</b> somebody verify these): + </p> +<pre> +CONFIG_DEBUG_CBFS=y (Output verbose CBFS debug messages ) +CONFIG_HAVE_DEBUG_RAM_SETUP=y (??? What/where is this) +CONFIG_DEBUG_RAM_SETUP=y (Output verbose RAM init debug messages) +CONFIG_DEBUG_SMI=y (Output verbose SMI debug messages) +CONFIG_DEBUG_ACPI=y (Output verbose ACPI debug messages ) +CONFIG_DEBUG_USBDEBUG=y (Output verbose USB 2.0 EHCI debug dongle messages) +</pre> + <p>If some of the above mentioned configuration options are not as + specified, you have to configure and compile libreboot yourself. Please + refer to the doc(<b>FIXME: link</b> about compiling libreboot.</p> + <h4 id="SelectingHCDIndexandUSBDebugport"> + Selecting + HCD Index + and + USB Debug port + </h4> + <p> + This applies (and works) only if the USB controller that supports debug + (found in the first section) is from Intel.<br />If the PCI ID of the + port you found in the first section is + 0000:00:1a.0 + or + 0000:00:1d.0 + , you are ok. Otherwise you have to try without guarantee that will + work. + </p> + <p> + If the externally exposed port is on a bus with + PCI ID == 0000:00:1a.0 + then for + CONFIG_USBDEBUG_HCD_INDEX + choose 2, otherwise choose 0 + . + </p> + <p> + For + CONFIG_USBDEBUG_DEFAULT_PORT + choose the port from the first section that correspond to the + PCI ID + </p> + <p> + Notes:<br />The above is based on the implementation of + coreboot/src/southbridge/intel/common/usb_debug.c : pci_ehci_dbg_dev() + .<br />This is enough as it applies for the supported GM45/G45 + Thinkpads. coreboot support some other contollers too, but they are + irellevent for libreboot (for now). + </p> + <ul> + <li>On T500 (with switchable GPU) the debug ports for both intel + controllers is exposed.</li> + <li>On x200t the debug ports for both intel controllers is + exposed.</li> + </ul> + <h3 id="Howtogetthedebuglogs">How to get the debug logs</h3> + <ul> + <li>Plug the USB cable in the target’s debug port (the one + you found in step 1) and BBB’s mini-B USB</li> + <li>Make sure no other then g_dbgp of the g_* + modules is loaded on your BBB + </li> + <li>On the BBB:</li> + </ul> +<pre> +stty -icrnl -inlcr -F /dev/ttyGS0 +cat /dev/ttyGS0 +</pre> + <ul> + <li>Power on the target with libreboot</li> + <li>You should see debug logs comming on your BBB console</li> + </ul> + <p> + Note that this is not permanent on BBB, if you reboot it, you have to + rmmod g_* + and + modprobe g_dbgp + </p> + <h3 id="EnebleEHCIDebugonthetargetskerneloptionalrecommended">Eneble + EHCI Debug on the target’s kernel (optional, recommended)</h3> + <p>You have to know how to compile kernel for your target.</p> + <ol> + <li>Check if early debugging is already enabled: grep + CONFIG_EARLY_PRINTK_DBGP /boot/config-<ver></li> + <li>If enabled, you do not have to compile the kernel (skip this + step). Otherwise, prepare kernel source for your distribution and + select (Kernel hacking -> Early printk via EHCI debug + port). Compile and install the new kernel. + </li> + <li>Edit your grub configuration and add following to the kenel + parameters<sup class="footnote"><a href="#___fn20">20</a></sup><sup + class="footnote"><a href="#___fn21">21</a></sup>: earlyprintk=dbgp,keep. + Also, try: earlyprintk=dbgp<N>,keep where N + is the debug port id if the first does not work. + </li> + </ol> + <h3 id="References">References</h3> + <p id="___fn10" class="footnote"> + <sup>10</sup> <a href="http://www.coreboot.org/EHCI_Debug_Port">EHCI + Debug Port</a> + </p> + <p id="___fn11" class="footnote"> + <sup>11</sup> <a + href="https://johnlewis.ie/coreboot-ehci-debug-gadget-demonstration/">coreboot + EHCI debug gadget demonstration</a> + </p> + <p id="___fn12" class="footnote"> + <sup>12</sup> <a href="http://www.coreboot.org/EHCI_Gadget_Debug">EHCI + Gadget Debug</a> + </p> + <p id="___fn13" class="footnote"> + <sup>13</sup> <a + href="http://www.coreboot.org/images/8/88/Ehci-debug-gadget-patches.tar.gz">Ehci-debug-gadget-patches.tar.gz</a> + </p> + <p id="___fn14" class="footnote"> + <sup>14</sup> <a + href="http://wiki.beyondlogic.org/index.php/BeagleBoneBlack_Building_Kernel">Compiling + the BeagleBone Black Kernel</a> + </p> + <p id="___fn15" class="footnote"> + <sup>15</sup> + http://dumb-looks-free.blogspot.ca/2014/06/beaglebone-black-bbb-compile-kernel.html + </p> + <p id="___fn16" class="footnote"> + <sup>16</sup> + http://dumb-looks-free.blogspot.fr/2014/06/beaglebone-black-bbb-kernal-headers.html + </p> + <p id="___fn17" class="footnote"> + <sup>17</sup> <a href="http://elinux.org/Building_BBB_Kernel">Building + BBB Kernel</a> + </p> + <p id="___fn18" class="footnote"> + <sup>18</sup> + http://komposter.com.ua/documents/USB-2.0-Debug-Port%28John-Keys%29.pdf + </p> + <p id="___fn19" class="footnote"> + <sup>19</sup> <a href="http://cs.usfca.edu/~cruse/cs698s10/">Exploring + USB at the Hardware/Software Interface</a> + </p> + <p id="___fn20" class="footnote"> + <sup>20</sup> + https://www.kernel.org/doc/Documentation/x86/earlyprintk.txt + </p> + <p id="___fn21" class="footnote"> + <sup>21</sup> https://wiki.ubuntu.com/Kernel/Debugging/USBearlyprintk + </p> + <p> + <b>TODO</b>: + </p> + <ol> + <li>grub does not send messages to EHCI debug. Investigate.</li> + <li>The section “Configure libreboot with EHCI debug” + can be skipped/simplified if a common configuration works for all + relevant targets is selected as defualt</li> + <li>Patch and compule g_dbgp on BBB instead cross-compile</li> + <li>Find a simple way to send debug messages from targets userland</li> + </ol> + </div> + + <div class="section"> + + <p> + Copyright © 2015 Alex David <opdecirkel@gmail.com><br/> + This document is released under the Creative Commons Attribution-ShareAlike 4.0 International Public License and all future versions. + A copy of the license can be found at <a href="../cc-by-sa-4.txt">../cc-by-sa-4.txt</a>. + </p> + + <p> + This document is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See <a href="../cc-by-sa-4.txt">../cc-by-sa-4.txt</a> for more information. + </p> + + </div> + +</body> +</html> diff --git a/docs/install/bbb_setup.html b/docs/install/bbb_setup.html index f3d3596..c17b424 100644 --- a/docs/install/bbb_setup.html +++ b/docs/install/bbb_setup.html @@ -123,7 +123,7 @@ <p> Here is an example set up:<br/> - <img src="images/x200/psu33.jpg" alt="" title="Copyright © 2015 Patrick "P. J." McDermott <pj@pehjota.net> CC BY-SA 3.0 or later" /> + <img src="images/x200/psu33.jpg" alt="" title="Copyright © 2015 Patrick "P. J." McDermott <pj@pehjota.net> see license notice at the end of this document" /> </p> </div> @@ -393,464 +393,52 @@ GND 4-5 MOSI </ul> </div> - + <div class="section"> - <h1>EHCI debugging</h1> - <ol class="toc"> - <li><a href="#FindUSBportonthetargetthatsupportsEHCIdebug">Find - USB port on the target that supports EHCI debug</a></li> - <li><a href="#InitialsetupofBBBtoactasEHCIdebugdongle">Initial - setup of BBB to act as EHCI debug dongle</a></li> - <li><a href="#PatchBBBsgdbgpmoduleoptionalbuthighlyrecommended">Patch - BBB's <tt>g_dbgp</tt> module (optional, but highly recommended)</a></li> - <li><a href="#ConfigurelibrebootwithEHCIdebug">Configure - libreboot with EHCI debug</a> - <ol> - <li><a href="#SelectingHCDIndexandUSBDebugport">Selecting - <tt>HCD Index</tt> and <tt>USB Debug port</tt></a></li> - </ol></li> - <li><a href="#Howtogetthedebuglogs">How to get the debug - logs</a></li> - <li><a - href="#EnebleEHCIDebugonthetargetskerneloptionalrecommended">Eneble - EHCI Debug on the target's kernel (optional, recommended)</a></li> - <li><a href="#References">References</a></li> - </ol> - <p>If your computer does not boot after installing libreboot, it is - very useful to get debug logs from it, from the payload (grub) and/or - the kernel (if gets to there). All of them stream debug logs on the - available serial (RS-232) by default. However, most of todays laptops - lack RS-232 port. The other option is to stream the logs to USB EHCI - debug port.</p> - <p>This section explains step-by-step how to setup BBB as a - “USB EHCI debug dongle” and configure libreboot and the - linux kernel to stream logs to it (TODO: grub).</p> - <p>I will refer to three computers:</p> - <ul> - <li><b>host</b> - this is the computer you use, have - tools, compiler, Internet, etc</li> - <li><b>BBB</b> - Beaglebone Black (rev. B or higher, i - use rev. C)</li> - <li><b>target</b> - the computer you are trying to - install liberboot</li> - </ul> - <h3 id="FindUSBportonthetargetthatsupportsEHCIdebug">Find USB port - on the target that supports EHCI debug</h3> - <p> - Not all USB controllers support EHCI debug (see: <a - href="http://www.coreboot.org/EHCI_Debug_Port#Hardware_capability">EHCI - Debug Port</a> ). Even more, if a USB controller supports EHCI debug, it - is available only <b>on a single port</b> that might or might - not be exposed externally. - </p> - <ul> - <li>You need running OS (GNU/Linux) on your target for this step - (If you’ve flashed libreboot and it does not boot, you have to - flush back the stock bios)</li> - <li>You need USB memory stick (the data on it will not be - touched).</li> - <li>The EHCI debugging can not be done through external hub, BBB - must be connected directly to the debug port of the controller (so, no - hubs)</li> - </ul> - <ul> - <li>Download<sup class="footnote"><a href="#___fn1">1</a></sup> <a - href="http://www.coreboot.org/pipermail/coreboot/attachments/20080909/ae11c291/attachment.sh">this</a> - shell script. - </li> - </ul> - <ol> - <li>Plug the usb stick in the first available usb port</li> - <li>Run the script, you will get output similar to following:</li> -<pre>The following PCI devices support a USB debug port (says lspci): 0000:00:1a.0 0000:00:1d.0 -The following PCI devices support a USB debug port (says the kernel): 0000:00:1a.0 0000:00:1d.0 -*PCI device 0000:00:1a.0, USB bus 3, USB physical port 1* -*PCI device 0000:00:1d.0, USB bus 4, USB physical port 2* -Currently connected high-speed devices: -/: Bus 04.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/2p, 480M - |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/8p, 480M - |__ Port 7: Dev 14, If 0, Class=Hub, Driver=hub/4p, 480M - |__ Port 1: Dev 15, If 0, Class=Hub, Driver=hub/4p, 480M - |__ Port 3: Dev 17, If 0, Class=Hub, Driver=hub/2p, 480M - |__ Port 4: Dev 18, If 0, Class=Hub, Driver=hub/4p, 480M -/: Bus 03.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/2p, 480M - |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/6p, 480M -/: *Bus 01*.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 480M - |__ *Port 3: Dev 31, If 0, Class=Mass Storage, Driver=usb-storage, 480M* -</pre> - <li>The buses the support debug are Bus 3 (0000:00:1a.0) on Port 1 - and Bus 4 (0000:00:1d.0) on port 2. Your usb stick is plugged on Bus - 1, Port 3</li> - <li>Repeat the steps, plugging the USB stick in the next available - port</li> - <li>Go through all available ports and remember(write down) those - for which bus/port of the usb stick matches one of the bus/port that - support debug (bold).</li> - </ol> - <p>Remember (write down) for each port (external plug) you found - that supports debug: <b>PCI device id, the bus id, the port number, and - the physical location of the usb plug.</b></p> - <p>If you do not find a match, you can not get debug over EHCI. - Sorry.</p> - <p id="___fn1" class="footnote"> - <sup>1</sup> The guys from coreboot were talking about including the - script in coreboot distribution (check the status). - </p> - <h3 id="InitialsetupofBBBtoactasEHCIdebugdongle">Initial setup of - BBB to act as EHCI debug dongle</h3> - <p>BBB must be powered with a barrel power connector since the - mini-B USB plug will be used for the EHCI debug stream. So you will - need:</p> - <ul> - <li>power supply (5V, 2A(10W) is sufficient).</li> - <li>an extra usb cable: A to mini-B</li> - </ul> - <p> - (On BBB) The linux kernel includes module (g_dbgp that enables one of the usb ports on a computer to behave as EHCI - debug dongle. Make sure you have this module available on your BBB - (Debian 7.8 that comes with BBB should have it), if not, you should - compile it yourself (see next section): - </p> -<pre>ls /lib/modules/3.8.13-bone70/kernel/drivers/usb/gadget/g_dbgp.ko</pre> - <p> - Unload all other - g_* - modules: - </p> -<pre># lsmod -# rmmod g_multi -... -</pre> - <p> - Then load - g_dbgp - : - </p> -<pre># modprobe g_dbgp -# lsmod # should show that g_dbgp is loaded, and no other g_* -</pre> - <p> - Plug the mini-B side of the USB cable in your BBB and the A side in - your target. Then one of the usb devices on your target (with - lsusb - ) should be: - </p> -<pre>Bus 001 Device 024: ID 0525:c0de Netchip Technology, Inc.</pre> - <p>If you see the device on the target, you are good to continue to - the next step.</p> - <h3 id="PatchBBBsgdbgpmoduleoptionalbuthighlyrecommended"> - Patch BBB’s - g_dbgp - module (optional, but highly recommended) - </h3> - <p> - For the reasons why you need this, see: <a - href="http://www.coreboot.org/EHCI_Gadget_Debug">EHCI Gadget Debug</a>.<br />Make - sure that you have cross compiling environment for - arm-linux-gnueabihf - setup on your <em>host</em>. - </p> - <ul> - <li>On BBB: uname -r - this will give you version - number like 3.8.13-bone70 (I will refer to this as: $mav.$miv-$lv: - where mav=3.8, miv=13, lv=bone70 - </li> - <li>Get the BBB kernel ready on your host for cross-compiling:</li> - </ul> -<pre>$ cd $work_dir -$ git clone https://github.com/beagleboard/kernel.git -$ cd kernel -$ git checkout $mav (see above) -$ ./patch.sh -$ wget http://arago-project.org/git/projects/?p=am33x-cm3.git\;a=blob_plain\;f=bin/am335x-pm-firmware.bin\;hb=HEAD -O kernel/firmware/am335x-pm-firmware.bin -$ cp configs/beaglebone kernel/arch/arm/configs/beaglebone_defconfig -</pre> - <ul> - <li>Download the patch from <a - href="http://www.coreboot.org/images/8/88/Ehci-debug-gadget-patches.tar.gz">here</a></li> - <li>tar -xf Ehci-debug-gadget-patches.tar.gz (will - create dir: usbdebug-gadget)</li> - <li>Note that there are two patches (patch_1 and patch_2) for each - of the two different version of the kernel (3.8 and 3.10). I will use - 3.8. (If using kernel 3.12 patch_1 is not needed)</li> - <li>cd kernel (note that this is one more level: you - should be in $work_dir/kernel/kernel)</li> - <li>Apply the patches:</li> - </ul> -<pre> -git apply ../usbdebug-gadget/v3.8-debug-gadget/0001-usb-dbgp-gadget-Fix-re-connecting-after-USB-disconne.patch -git apply ../usbdebug-gadget/v3.8-debug-gadget/0002-usb-serial-gadget-no-TTY-hangup-on-USB-disconnect-WI.patch -; -make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- beaglebone_defconfig -j4@ -</pre> - <ul> - <li> - You should also apply the linux-libre <i>deblob</i> script to turn it into linux-libre - (deletes all the blobs from the linux kernel). - <a href="http://www.fsfla.org/ikiwiki/selibre/linux-libre/">fsfla website</a> - - see <a href="http://www.fsfla.org/svn/fsfla/software/linux-libre/scripts/">scripts</a>. - </li> - <li>Get your current BBB kernel config (from: /boot/config-<ver>) - and copy it to your host as $work_dir/kernel/kernel/.config</li> -<pre> -make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- oldconfig - all default answers</pre> - <li>Set proper version number: - <ul> - <li>On your host, edit $work_dir/kernel/kernel/.config - (the one you’ve just copied from BBB), find the line CONFIG_LOCALVERSION="<something - or empty>" and change it to CONFIG_LOCALVERSION="-$lv", - so it will look something like: CONFIG_LOCALVERSION="-bone70"</li> - </ul> - </li> - <li>Also, make sure that: CONFIG_USB_G_DBGP=m (If - not, make menuconfig, and set @Device Drivers-> USB - Support -> USB Gadget Support -> EHCI Debug Device Gadget=m</li> - <li>Build the module:</li> - </ul> -<pre> -$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- -j4 (is it possoble to build only the gadget modules) -$ mkdir ../tmp && make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- INSTALL_MOD_PATH=../tmp modules_install -</pre> - <ul> - <li>on BBB, backup /lib/modules/3.8.13-bone70/kernel/drivers/usb/gadget - (i.e. mv - /lib/modules/3.8.13-bone70/kernel/drivers/usb/gadget $HOME) - </li> - <li>copy the freshly compiled usb/gadget dir to /lib/modules/3.8.13-bone70/kernel/drivers/usb</li> - <li>restart BBB</li> - <li>Remove all g_* modules (rmmod - g_<>) - </li> - <li>modprobpe g_dbgp</li> - </ul> - <h3 id="ConfigurelibrebootwithEHCIdebug">Configure libreboot with - EHCI debug</h3> - <p> - Libreboot(coreboot) should be configured with debug turned on and to - push debug messages to the EHCI debug port.<br />If you’ve - downloaded the binary distribution, you can check if it is properly - configured in the following way: - </p> - <ul> - <li>Go to the libreboot dist root directory cd - $libreboot_bin</li> - <li>Locate the rom image for your target (I will call it: $img_path) - </li> - <li>Running the following command will extract the config in a - file ./my_config: - </li> - </ul> -<pre> -./cbfstool/i686/cbfstool $img_path extract -n config -f ./my_config -</pre> - <ul> - <li>Make sure that the following params in the config are set as - following:</li> - </ul> -<pre> -CONFIG_USBDEBUG=y (Generic Drivers -> USB 2.0 EHCI debug dongle support) -CONFIG_USBDEBUG_IN_ROMSTAGE=y (Generic Drivers -> Enable early (pre-RAM) usbdebug) -CONFIG_USBDEBUG_HCD_INDEX=<HCD Index of usb controller - see below> (Generic Drivers -> Index for EHCI controller to use with usbdebug) -CONFIG_USBDEBUG_DEFAULT_PORT=<USB Debug port - see below> (Generic Drivers -> Default USB port to use as Debug Port) -</pre> - <p> - The following three are behind radio button in the menu. Only the first - one<sup class="footnote"><a href="#___fn2">2</a></sup> should be = y - </p> -<pre> -USBDEBUG_DONGLE_STD=y (Generic Drivers -> Type of dongle (Net20DC or compatible) -> Net20DC or compatible) -CONFIG_USBDEBUG_DONGLE_BEAGLEBONE=n (Generic Drivers -> Type of dongle (Net20DC or compatible) -> BeagleBone) -CONFIG_USBDEBUG_DONGLE_BEAGLEBONE_BLACK=n (Generic Drivers -> Type of dongle (Net20DC or compatible) -> BeagleBone Black) -</pre> - <p id="___fn2" class="footnote"> - <sup>2</sup> The g_dbgp module on BeagleBone Black (Rev. C) reports it self as Net20DC, the - other options are for older BB(B) - ver1. This is documented <a - href="https://johnlewis.ie/coreboot-ehci-debug-gadget-demonstration/">here</a> - (also tested/verified). - </p> - <p> - Then:<br /> -<pre> -CONFIG_CONSOLE_USB=y (Console -> USB dongle console output) -</pre> - </p> - <p> - Also - Debugging ---> Output verbose XYZ - ) (<b>FIXME</b> somebody verify these): - </p> -<pre> -CONFIG_DEBUG_CBFS=y (Output verbose CBFS debug messages ) -CONFIG_HAVE_DEBUG_RAM_SETUP=y (??? What/where is this) -CONFIG_DEBUG_RAM_SETUP=y (Output verbose RAM init debug messages) -CONFIG_DEBUG_SMI=y (Output verbose SMI debug messages) -CONFIG_DEBUG_ACPI=y (Output verbose ACPI debug messages ) -CONFIG_DEBUG_USBDEBUG=y (Output verbose USB 2.0 EHCI debug dongle messages) -</pre> - <p>If some of the above mentioned configuration options are not as - specified, you have to configure and compile libreboot yourself. Please - refer to the doc(<b>FIXME: link</b> about compiling libreboot.</p> - <h4 id="SelectingHCDIndexandUSBDebugport"> - Selecting - HCD Index - and - USB Debug port - </h4> - <p> - This applies (and works) only if the USB controller that supports debug - (found in the first section) is from Intel.<br />If the PCI ID of the - port you found in the first section is - 0000:00:1a.0 - or - 0000:00:1d.0 - , you are ok. Otherwise you have to try without guarantee that will - work. - </p> - <p> - If the externally exposed port is on a bus with - PCI ID == 0000:00:1a.0 - then for - CONFIG_USBDEBUG_HCD_INDEX - choose 2, otherwise choose 0 - . - </p> - <p> - For - CONFIG_USBDEBUG_DEFAULT_PORT - choose the port from the first section that correspond to the - PCI ID - </p> + <p> - Notes:<br />The above is based on the implementation of - coreboot/src/southbridge/intel/common/usb_debug.c : pci_ehci_dbg_dev() - .<br />This is enough as it applies for the supported GM45/G45 - Thinkpads. coreboot support some other contollers too, but they are - irellevent for libreboot (for now). + Copyright © 2014, 2015 Francis Rowe <info@gluglug.org.uk><br/> + Copyright © 2015 Patrick "P. J." McDermott <pj@pehjota.net><br/> + Permission is granted to copy, distribute and/or modify this document + under the terms of the GNU Free Documentation License, Version 1.3 + or any later version published by the Free Software Foundation; + with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. + A copy of the license can be found at <a href="../gfdl-1.3.txt">../gfdl-1.3.txt</a> </p> - <ul> - <li>On T500 (with switchable GPU) the debug ports for both intel - controllers is exposed.</li> - <li>On x200t the debug ports for both intel controllers is - exposed.</li> - </ul> - <h3 id="Howtogetthedebuglogs">How to get the debug logs</h3> - <ul> - <li>Plug the USB cable in the target’s debug port (the one - you found in step 1) and BBB’s mini-B USB</li> - <li>Make sure no other then g_dbgp of the g_* - modules is loaded on your BBB - </li> - <li>On the BBB:</li> - </ul> -<pre> -stty -icrnl -inlcr -F /dev/ttyGS0 -cat /dev/ttyGS0 -</pre> - <ul> - <li>Power on the target with libreboot</li> - <li>You should see debug logs comming on your BBB console</li> - </ul> + <p> - Note that this is not permanent on BBB, if you reboot it, you have to - rmmod g_* - and - modprobe g_dbgp - </p> - <h3 id="EnebleEHCIDebugonthetargetskerneloptionalrecommended">Eneble - EHCI Debug on the target’s kernel (optional, recommended)</h3> - <p>You have to know how to compile kernel for your target.</p> - <ol> - <li>Check if early debugging is already enabled: grep - CONFIG_EARLY_PRINTK_DBGP /boot/config-<ver></li> - <li>If enabled, you do not have to compile the kernel (skip this - step). Otherwise, prepare kernel source for your distribution and - select (Kernel hacking -> Early printk via EHCI debug - port). Compile and install the new kernel. - </li> - <li>Edit your grub configuration and add following to the kenel - parameters<sup class="footnote"><a href="#___fn20">20</a></sup><sup - class="footnote"><a href="#___fn21">21</a></sup>: earlyprintk=dbgp,keep. - Also, try: earlyprintk=dbgp<N>,keep where N - is the debug port id if the first does not work. - </li> - </ol> - <h3 id="References">References</h3> - <p id="___fn10" class="footnote"> - <sup>10</sup> <a href="http://www.coreboot.org/EHCI_Debug_Port">EHCI - Debug Port</a> - </p> - <p id="___fn11" class="footnote"> - <sup>11</sup> <a - href="https://johnlewis.ie/coreboot-ehci-debug-gadget-demonstration/">coreboot - EHCI debug gadget demonstration</a> - </p> - <p id="___fn12" class="footnote"> - <sup>12</sup> <a href="http://www.coreboot.org/EHCI_Gadget_Debug">EHCI - Gadget Debug</a> - </p> - <p id="___fn13" class="footnote"> - <sup>13</sup> <a - href="http://www.coreboot.org/images/8/88/Ehci-debug-gadget-patches.tar.gz">Ehci-debug-gadget-patches.tar.gz</a> - </p> - <p id="___fn14" class="footnote"> - <sup>14</sup> <a - href="http://wiki.beyondlogic.org/index.php/BeagleBoneBlack_Building_Kernel">Compiling - the BeagleBone Black Kernel</a> - </p> - <p id="___fn15" class="footnote"> - <sup>15</sup> - http://dumb-looks-free.blogspot.ca/2014/06/beaglebone-black-bbb-compile-kernel.html - </p> - <p id="___fn16" class="footnote"> - <sup>16</sup> - http://dumb-looks-free.blogspot.fr/2014/06/beaglebone-black-bbb-kernal-headers.html - </p> - <p id="___fn17" class="footnote"> - <sup>17</sup> <a href="http://elinux.org/Building_BBB_Kernel">Building - BBB Kernel</a> - </p> - <p id="___fn18" class="footnote"> - <sup>18</sup> - http://komposter.com.ua/documents/USB-2.0-Debug-Port%28John-Keys%29.pdf - </p> - <p id="___fn19" class="footnote"> - <sup>19</sup> <a href="http://cs.usfca.edu/~cruse/cs698s10/">Exploring - USB at the Hardware/Software Interface</a> - </p> - <p id="___fn20" class="footnote"> - <sup>20</sup> - https://www.kernel.org/doc/Documentation/x86/earlyprintk.txt - </p> - <p id="___fn21" class="footnote"> - <sup>21</sup> https://wiki.ubuntu.com/Kernel/Debugging/USBearlyprintk + Updated versions of the license (when available) can be found at + <a href="https://www.gnu.org/licenses/licenses.html">https://www.gnu.org/licenses/licenses.html</a> </p> + <p> - <b>TODO</b>: + UNLESS OTHERWISE SEPARATELY UNDERTAKEN BY THE LICENSOR, TO THE + EXTENT POSSIBLE, THE LICENSOR OFFERS THE LICENSED MATERIAL AS-IS + AND AS-AVAILABLE, AND MAKES NO REPRESENTATIONS OR WARRANTIES OF + ANY KIND CONCERNING THE LICENSED MATERIAL, WHETHER EXPRESS, + IMPLIED, STATUTORY, OR OTHER. THIS INCLUDES, WITHOUT LIMITATION, + WARRANTIES OF TITLE, MERCHANTABILITY, FITNESS FOR A PARTICULAR + PURPOSE, NON-INFRINGEMENT, ABSENCE OF LATENT OR OTHER DEFECTS, + ACCURACY, OR THE PRESENCE OR ABSENCE OF ERRORS, WHETHER OR NOT + KNOWN OR DISCOVERABLE. WHERE DISCLAIMERS OF WARRANTIES ARE NOT + ALLOWED IN FULL OR IN PART, THIS DISCLAIMER MAY NOT APPLY TO YOU. </p> - <ol> - <li>grub does not send messages to EHCI debug. Investigate.</li> - <li>The section “Configure libreboot with EHCI debug” - can be skipped/simplified if a common configuration works for all - relevant targets is selected as defualt</li> - <li>Patch and compule g_dbgp on BBB instead cross-compile</li> - <li>Find a simple way to send debug messages from targets userland</li> - </ol> - </div> - - <div class="section"> - <p> - Copyright © 2014, 2015 Francis Rowe <info@gluglug.org.uk><br/> - Copyright © 2015 Patrick "P. J." McDermott <pj@pehjota.net><br/> - Copyright © 2015 Alex David <opdecirkel@gmail.com><br/> - This document is released under the Creative Commons Attribution-ShareAlike 4.0 International Public License and all future versions. - A copy of the license can be found at <a href="../cc-by-sa-4.txt">../cc-by-sa-4.txt</a>. + TO THE EXTENT POSSIBLE, IN NO EVENT WILL THE LICENSOR BE LIABLE + TO YOU ON ANY LEGAL THEORY (INCLUDING, WITHOUT LIMITATION, + NEGLIGENCE) OR OTHERWISE FOR ANY DIRECT, SPECIAL, INDIRECT, + INCIDENTAL, CONSEQUENTIAL, PUNITIVE, EXEMPLARY, OR OTHER LOSSES, + COSTS, EXPENSES, OR DAMAGES ARISING OUT OF THIS PUBLIC LICENSE OR + USE OF THE LICENSED MATERIAL, EVEN IF THE LICENSOR HAS BEEN + ADVISED OF THE POSSIBILITY OF SUCH LOSSES, COSTS, EXPENSES, OR + DAMAGES. WHERE A LIMITATION OF LIABILITY IS NOT ALLOWED IN FULL OR + IN PART, THIS LIMITATION MAY NOT APPLY TO YOU. </p> - <p> - This document is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See <a href="../cc-by-sa-4.txt">../cc-by-sa-4.txt</a> for more information. + The disclaimer of warranties and limitation of liability provided + above shall be interpreted in a manner that, to the extent + possible, most closely approximates an absolute disclaimer and + waiver of all liability. </p> </div> diff --git a/docs/install/index.html b/docs/install/index.html index bfefddd..e6a910e 100644 --- a/docs/install/index.html +++ b/docs/install/index.html @@ -39,6 +39,7 @@ <h2>Hardware methods</h2> <ul> <li><a href="bbb_setup.html">How to programme an SPI flash chip with the BeagleBone Black</a></li> + <li><a href="bbb_ehci.html">How to configure EHCI debugging on the BeagleBone Black</a></li> <li><a href="x60_unbrick.html">ThinkPad X60: Recovery guide</a></li> <li><a href="x60tablet_unbrick.html">ThinkPad X60 Tablet: Recovery guide</a></li> <li><a href="t60_unbrick.html">ThinkPad T60: Recovery guide</a></li> @@ -224,22 +225,10 @@ <h2>Flash chip size on GM45 (X200/R400/T400/T500)</h2> <p> - <b>Users of the X200/R400/T400/T500 take note:</b> There are two different sized capacities - that your flash chip could have: 4MiB or 8MiB. There are archives for each capacity, for each - of these laptops, and you will need to select the correct size. + Use this to find out:<br/> + # <b>dmidecode | grep ROM\ Size</b> </p> - <p> - To easily identify which size chip is present:<br/> - # <b>dmidecode | grep ROM\ Size</b><br/> - or (on some distributions):<br/> - $ <b>sudo dmidecode | grep ROM\ Size</b><br/> - Example output: - </p> -<pre> -# ROM Size: 8192 kB -</pre> - <h2>All good?</h2> <p>Excellent! Moving on...</p> @@ -441,16 +430,47 @@ <div class="section"> <p> - Copyright © 2014, 2015 Francis Rowe <info@gluglug.org.uk><br/> - Copyright © 2015 Chris Ryder <cdkr00@gmail.com><br/> - This document is released under the Creative Commons Attribution-ShareAlike 4.0 International Public License and all future versions. - A copy of the license can be found at <a href="../cc-by-sa-4.txt">../cc-by-sa-4.txt</a>. + Copyright © 2014, 2015 Francis Rowe <info@gluglug.org.uk><br/> + Permission is granted to copy, distribute and/or modify this document + under the terms of the GNU Free Documentation License, Version 1.3 + or any later version published by the Free Software Foundation; + with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. + A copy of the license can be found at <a href="../gfdl-1.3.txt">../gfdl-1.3.txt</a> + </p> + + <p> + Updated versions of the license (when available) can be found at + <a href="https://www.gnu.org/licenses/licenses.html">https://www.gnu.org/licenses/licenses.html</a> </p> <p> - This document is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See <a href="../cc-by-sa-4.txt">../cc-by-sa-4.txt</a> for more information. + UNLESS OTHERWISE SEPARATELY UNDERTAKEN BY THE LICENSOR, TO THE + EXTENT POSSIBLE, THE LICENSOR OFFERS THE LICENSED MATERIAL AS-IS + AND AS-AVAILABLE, AND MAKES NO REPRESENTATIONS OR WARRANTIES OF + ANY KIND CONCERNING THE LICENSED MATERIAL, WHETHER EXPRESS, + IMPLIED, STATUTORY, OR OTHER. THIS INCLUDES, WITHOUT LIMITATION, + WARRANTIES OF TITLE, MERCHANTABILITY, FITNESS FOR A PARTICULAR + PURPOSE, NON-INFRINGEMENT, ABSENCE OF LATENT OR OTHER DEFECTS, + ACCURACY, OR THE PRESENCE OR ABSENCE OF ERRORS, WHETHER OR NOT + KNOWN OR DISCOVERABLE. WHERE DISCLAIMERS OF WARRANTIES ARE NOT + ALLOWED IN FULL OR IN PART, THIS DISCLAIMER MAY NOT APPLY TO YOU. + </p> + <p> + TO THE EXTENT POSSIBLE, IN NO EVENT WILL THE LICENSOR BE LIABLE + TO YOU ON ANY LEGAL THEORY (INCLUDING, WITHOUT LIMITATION, + NEGLIGENCE) OR OTHERWISE FOR ANY DIRECT, SPECIAL, INDIRECT, + INCIDENTAL, CONSEQUENTIAL, PUNITIVE, EXEMPLARY, OR OTHER LOSSES, + COSTS, EXPENSES, OR DAMAGES ARISING OUT OF THIS PUBLIC LICENSE OR + USE OF THE LICENSED MATERIAL, EVEN IF THE LICENSOR HAS BEEN + ADVISED OF THE POSSIBILITY OF SUCH LOSSES, COSTS, EXPENSES, OR + DAMAGES. WHERE A LIMITATION OF LIABILITY IS NOT ALLOWED IN FULL OR + IN PART, THIS LIMITATION MAY NOT APPLY TO YOU. + </p> + <p> + The disclaimer of warranties and limitation of liability provided + above shall be interpreted in a manner that, to the extent + possible, most closely approximates an absolute disclaimer and + waiver of all liability. </p> </div> diff --git a/docs/install/r400_external.html b/docs/install/r400_external.html index fcbc4d4..c0a5282 100644 --- a/docs/install/r400_external.html +++ b/docs/install/r400_external.html @@ -95,25 +95,12 @@ <div class="section"> - <h1 id="flashchips">Flash chips</h1> + <h1 id="flashchips">Flash chip size</h1> <p> - There are two possible flash chip sizes for the R400: 4MiB - (32Mbit) or 8MiB (64Mbit). This can be identified by the type - of flash chip present: 4MiB is SOIC-8 (8 pins), 8MiB - is SOIC-16 (16 pins). - </p> - - <p> - To easily identify which size chip is present, before fully disassemblying:<br> + Use this to find out:<br> # <b>dmidecode | grep ROM\ Size</b><br> - or (on some distributions):<br/> - $ <b>sudo dmidecode | grep ROM\ Size</b><br/> - Example output: </p> -<pre> -# ROM Size: 8192 kB -</pre> <p> <a href="#pagetop">Back to top of page.</a> @@ -545,16 +532,47 @@ Verifying flash... VERIFIED. <div class="section"> <p> - Copyright © 2014, 2015 Francis Rowe <info@gluglug.org.uk><br/> - Copyright © 2015 Chris Ryder <cdkr00@gmail.com><br/> - This document is released under the Creative Commons Attribution-ShareAlike 4.0 International Public License and all future versions. - A copy of the license can be found at <a href="../cc-by-sa-4.txt">../cc-by-sa-4.txt</a>. + Copyright © 2014, 2015 Francis Rowe <info@gluglug.org.uk><br/> + Permission is granted to copy, distribute and/or modify this document + under the terms of the GNU Free Documentation License, Version 1.3 + or any later version published by the Free Software Foundation; + with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. + A copy of the license can be found at <a href="../gfdl-1.3.txt">../gfdl-1.3.txt</a> + </p> + + <p> + Updated versions of the license (when available) can be found at + <a href="https://www.gnu.org/licenses/licenses.html">https://www.gnu.org/licenses/licenses.html</a> </p> <p> - This document is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See <a href="../cc-by-sa-4.txt">../cc-by-sa-4.txt</a> for more information. + UNLESS OTHERWISE SEPARATELY UNDERTAKEN BY THE LICENSOR, TO THE + EXTENT POSSIBLE, THE LICENSOR OFFERS THE LICENSED MATERIAL AS-IS + AND AS-AVAILABLE, AND MAKES NO REPRESENTATIONS OR WARRANTIES OF + ANY KIND CONCERNING THE LICENSED MATERIAL, WHETHER EXPRESS, + IMPLIED, STATUTORY, OR OTHER. THIS INCLUDES, WITHOUT LIMITATION, + WARRANTIES OF TITLE, MERCHANTABILITY, FITNESS FOR A PARTICULAR + PURPOSE, NON-INFRINGEMENT, ABSENCE OF LATENT OR OTHER DEFECTS, + ACCURACY, OR THE PRESENCE OR ABSENCE OF ERRORS, WHETHER OR NOT + KNOWN OR DISCOVERABLE. WHERE DISCLAIMERS OF WARRANTIES ARE NOT + ALLOWED IN FULL OR IN PART, THIS DISCLAIMER MAY NOT APPLY TO YOU. + </p> + <p> + TO THE EXTENT POSSIBLE, IN NO EVENT WILL THE LICENSOR BE LIABLE + TO YOU ON ANY LEGAL THEORY (INCLUDING, WITHOUT LIMITATION, + NEGLIGENCE) OR OTHERWISE FOR ANY DIRECT, SPECIAL, INDIRECT, + INCIDENTAL, CONSEQUENTIAL, PUNITIVE, EXEMPLARY, OR OTHER LOSSES, + COSTS, EXPENSES, OR DAMAGES ARISING OUT OF THIS PUBLIC LICENSE OR + USE OF THE LICENSED MATERIAL, EVEN IF THE LICENSOR HAS BEEN + ADVISED OF THE POSSIBILITY OF SUCH LOSSES, COSTS, EXPENSES, OR + DAMAGES. WHERE A LIMITATION OF LIABILITY IS NOT ALLOWED IN FULL OR + IN PART, THIS LIMITATION MAY NOT APPLY TO YOU. + </p> + <p> + The disclaimer of warranties and limitation of liability provided + above shall be interpreted in a manner that, to the extent + possible, most closely approximates an absolute disclaimer and + waiver of all liability. </p> </div> diff --git a/docs/install/t400_external.html b/docs/install/t400_external.html index 951f32f..67a9ffb 100644 --- a/docs/install/t400_external.html +++ b/docs/install/t400_external.html @@ -89,23 +89,12 @@ <div class="section"> - <h1 id="flashchips">Flash chips</h1> + <h1 id="flashchips">Flash chip size</h1> <p> - The T400 will use an 8MiB or 64Mb SOIC-16 chip (rare models - will use a 4MiB or 32Mb SOIC-8 chip). + Use this to find out:<br> + # <b>dmidecode | grep ROM\ Size</b> </p> - - <p> - To easily identify which size chip is present, before fully disassemblying:<br> - # <b>dmidecode | grep ROM\ Size</b><br> - or (on some distributions):<br/> - $ <b>sudo dmidecode | grep ROM\ Size</b><br/> - Example output: - </p> -<pre> -# ROM Size: 8192 kB -</pre> <p> <a href="#pagetop">Back to top of page.</a> @@ -521,16 +510,47 @@ Verifying flash... VERIFIED. <div class="section"> <p> - Copyright © 2015 Francis Rowe <info@gluglug.org.uk><br/> - Copyright © 2015 Chris Ryder <cdkr00@gmail.com><br/> - This document is released under the Creative Commons Attribution-ShareAlike 4.0 International Public License and all future versions. - A copy of the license can be found at <a href="../cc-by-sa-4.txt">../cc-by-sa-4.txt</a>. + Copyright © 2015 Francis Rowe <info@gluglug.org.uk><br/> + Permission is granted to copy, distribute and/or modify this document + under the terms of the GNU Free Documentation License, Version 1.3 + or any later version published by the Free Software Foundation; + with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. + A copy of the license can be found at <a href="../gfdl-1.3.txt">../gfdl-1.3.txt</a> + </p> + + <p> + Updated versions of the license (when available) can be found at + <a href="https://www.gnu.org/licenses/licenses.html">https://www.gnu.org/licenses/licenses.html</a> </p> <p> - This document is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See <a href="../cc-by-sa-4.txt">../cc-by-sa-4.txt</a> for more information. + UNLESS OTHERWISE SEPARATELY UNDERTAKEN BY THE LICENSOR, TO THE + EXTENT POSSIBLE, THE LICENSOR OFFERS THE LICENSED MATERIAL AS-IS + AND AS-AVAILABLE, AND MAKES NO REPRESENTATIONS OR WARRANTIES OF + ANY KIND CONCERNING THE LICENSED MATERIAL, WHETHER EXPRESS, + IMPLIED, STATUTORY, OR OTHER. THIS INCLUDES, WITHOUT LIMITATION, + WARRANTIES OF TITLE, MERCHANTABILITY, FITNESS FOR A PARTICULAR + PURPOSE, NON-INFRINGEMENT, ABSENCE OF LATENT OR OTHER DEFECTS, + ACCURACY, OR THE PRESENCE OR ABSENCE OF ERRORS, WHETHER OR NOT + KNOWN OR DISCOVERABLE. WHERE DISCLAIMERS OF WARRANTIES ARE NOT + ALLOWED IN FULL OR IN PART, THIS DISCLAIMER MAY NOT APPLY TO YOU. + </p> + <p> + TO THE EXTENT POSSIBLE, IN NO EVENT WILL THE LICENSOR BE LIABLE + TO YOU ON ANY LEGAL THEORY (INCLUDING, WITHOUT LIMITATION, + NEGLIGENCE) OR OTHERWISE FOR ANY DIRECT, SPECIAL, INDIRECT, + INCIDENTAL, CONSEQUENTIAL, PUNITIVE, EXEMPLARY, OR OTHER LOSSES, + COSTS, EXPENSES, OR DAMAGES ARISING OUT OF THIS PUBLIC LICENSE OR + USE OF THE LICENSED MATERIAL, EVEN IF THE LICENSOR HAS BEEN + ADVISED OF THE POSSIBILITY OF SUCH LOSSES, COSTS, EXPENSES, OR + DAMAGES. WHERE A LIMITATION OF LIABILITY IS NOT ALLOWED IN FULL OR + IN PART, THIS LIMITATION MAY NOT APPLY TO YOU. + </p> + <p> + The disclaimer of warranties and limitation of liability provided + above shall be interpreted in a manner that, to the extent + possible, most closely approximates an absolute disclaimer and + waiver of all liability. </p> </div> diff --git a/docs/install/t500_external.html b/docs/install/t500_external.html index 3a702e0..8be9bdc 100644 --- a/docs/install/t500_external.html +++ b/docs/install/t500_external.html @@ -90,23 +90,12 @@ <div class="section"> - <h1 id="flashchips">Flash chips</h1> + <h1 id="flashchips">Flash chip size</h1> <p> - The T500 will use an 8MiB or 64Mb SOIC-16 chip (rare models - will use a 4MiB or 32Mb SOIC-8 chip). + Use this to find out:<br/> + # <b>dmidecode | grep ROM\ Size</b> </p> - - <p> - To easily identify which size chip is present, before fully disassemblying:<br/> - # <b>dmidecode | grep ROM\ Size</b><br/> - or (on some distributions):<br/> - $ <b>sudo dmidecode | grep ROM\ Size</b><br/> - Example output: - </p> -<pre> -# ROM Size: 8192 kB -</pre> <p> <a href="#pagetop">Back to top of page.</a> @@ -536,16 +525,47 @@ Verifying flash... VERIFIED. <div class="section"> <p> - Copyright © 2015 Francis Rowe <info@gluglug.org.uk><br/> - Copyright © 2015 Chris Ryder <cdkr00@gmail.com><br/> - This document is released under the Creative Commons Attribution-ShareAlike 4.0 International Public License and all future versions. - A copy of the license can be found at <a href="../cc-by-sa-4.txt">../cc-by-sa-4.txt</a>. + Copyright © 2015 Francis Rowe <info@gluglug.org.uk><br/> + Permission is granted to copy, distribute and/or modify this document + under the terms of the GNU Free Documentation License, Version 1.3 + or any later version published by the Free Software Foundation; + with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. + A copy of the license can be found at <a href="../gfdl-1.3.txt">../gfdl-1.3.txt</a> + </p> + + <p> + Updated versions of the license (when available) can be found at + <a href="https://www.gnu.org/licenses/licenses.html">https://www.gnu.org/licenses/licenses.html</a> </p> <p> - This document is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See <a href="../cc-by-sa-4.txt">../cc-by-sa-4.txt</a> for more information. + UNLESS OTHERWISE SEPARATELY UNDERTAKEN BY THE LICENSOR, TO THE + EXTENT POSSIBLE, THE LICENSOR OFFERS THE LICENSED MATERIAL AS-IS + AND AS-AVAILABLE, AND MAKES NO REPRESENTATIONS OR WARRANTIES OF + ANY KIND CONCERNING THE LICENSED MATERIAL, WHETHER EXPRESS, + IMPLIED, STATUTORY, OR OTHER. THIS INCLUDES, WITHOUT LIMITATION, + WARRANTIES OF TITLE, MERCHANTABILITY, FITNESS FOR A PARTICULAR + PURPOSE, NON-INFRINGEMENT, ABSENCE OF LATENT OR OTHER DEFECTS, + ACCURACY, OR THE PRESENCE OR ABSENCE OF ERRORS, WHETHER OR NOT + KNOWN OR DISCOVERABLE. WHERE DISCLAIMERS OF WARRANTIES ARE NOT + ALLOWED IN FULL OR IN PART, THIS DISCLAIMER MAY NOT APPLY TO YOU. + </p> + <p> + TO THE EXTENT POSSIBLE, IN NO EVENT WILL THE LICENSOR BE LIABLE + TO YOU ON ANY LEGAL THEORY (INCLUDING, WITHOUT LIMITATION, + NEGLIGENCE) OR OTHERWISE FOR ANY DIRECT, SPECIAL, INDIRECT, + INCIDENTAL, CONSEQUENTIAL, PUNITIVE, EXEMPLARY, OR OTHER LOSSES, + COSTS, EXPENSES, OR DAMAGES ARISING OUT OF THIS PUBLIC LICENSE OR + USE OF THE LICENSED MATERIAL, EVEN IF THE LICENSOR HAS BEEN + ADVISED OF THE POSSIBILITY OF SUCH LOSSES, COSTS, EXPENSES, OR + DAMAGES. WHERE A LIMITATION OF LIABILITY IS NOT ALLOWED IN FULL OR + IN PART, THIS LIMITATION MAY NOT APPLY TO YOU. + </p> + <p> + The disclaimer of warranties and limitation of liability provided + above shall be interpreted in a manner that, to the extent + possible, most closely approximates an absolute disclaimer and + waiver of all liability. </p> </div> diff --git a/docs/install/t60_unbrick.html b/docs/install/t60_unbrick.html index e92298b..9bcdb12 100644 --- a/docs/install/t60_unbrick.html +++ b/docs/install/t60_unbrick.html @@ -273,15 +273,47 @@ POMONA 5250: <div class="section"> <p> - Copyright © 2014, 2015 Francis Rowe <info@gluglug.org.uk><br/> - This document is released under the Creative Commons Attribution-ShareAlike 4.0 International Public License and all future versions. - A copy of the license can be found at <a href="../cc-by-sa-4.txt">../cc-by-sa-4.txt</a>. + Copyright © 2014, 2015 Francis Rowe <info@gluglug.org.uk><br/> + Permission is granted to copy, distribute and/or modify this document + under the terms of the GNU Free Documentation License, Version 1.3 + or any later version published by the Free Software Foundation; + with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. + A copy of the license can be found at <a href="../gfdl-1.3.txt">../gfdl-1.3.txt</a> </p> <p> - This document is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See <a href="../cc-by-sa-4.txt">../cc-by-sa-4.txt</a> for more information. + Updated versions of the license (when available) can be found at + <a href="https://www.gnu.org/licenses/licenses.html">https://www.gnu.org/licenses/licenses.html</a> + </p> + + <p> + UNLESS OTHERWISE SEPARATELY UNDERTAKEN BY THE LICENSOR, TO THE + EXTENT POSSIBLE, THE LICENSOR OFFERS THE LICENSED MATERIAL AS-IS + AND AS-AVAILABLE, AND MAKES NO REPRESENTATIONS OR WARRANTIES OF + ANY KIND CONCERNING THE LICENSED MATERIAL, WHETHER EXPRESS, + IMPLIED, STATUTORY, OR OTHER. THIS INCLUDES, WITHOUT LIMITATION, + WARRANTIES OF TITLE, MERCHANTABILITY, FITNESS FOR A PARTICULAR + PURPOSE, NON-INFRINGEMENT, ABSENCE OF LATENT OR OTHER DEFECTS, + ACCURACY, OR THE PRESENCE OR ABSENCE OF ERRORS, WHETHER OR NOT + KNOWN OR DISCOVERABLE. WHERE DISCLAIMERS OF WARRANTIES ARE NOT + ALLOWED IN FULL OR IN PART, THIS DISCLAIMER MAY NOT APPLY TO YOU. + </p> + <p> + TO THE EXTENT POSSIBLE, IN NO EVENT WILL THE LICENSOR BE LIABLE + TO YOU ON ANY LEGAL THEORY (INCLUDING, WITHOUT LIMITATION, + NEGLIGENCE) OR OTHERWISE FOR ANY DIRECT, SPECIAL, INDIRECT, + INCIDENTAL, CONSEQUENTIAL, PUNITIVE, EXEMPLARY, OR OTHER LOSSES, + COSTS, EXPENSES, OR DAMAGES ARISING OUT OF THIS PUBLIC LICENSE OR + USE OF THE LICENSED MATERIAL, EVEN IF THE LICENSOR HAS BEEN + ADVISED OF THE POSSIBILITY OF SUCH LOSSES, COSTS, EXPENSES, OR + DAMAGES. WHERE A LIMITATION OF LIABILITY IS NOT ALLOWED IN FULL OR + IN PART, THIS LIMITATION MAY NOT APPLY TO YOU. + </p> + <p> + The disclaimer of warranties and limitation of liability provided + above shall be interpreted in a manner that, to the extent + possible, most closely approximates an absolute disclaimer and + waiver of all liability. </p> </div> diff --git a/docs/install/x200_external.html b/docs/install/x200_external.html index fc149f7..efe7f49 100644 --- a/docs/install/x200_external.html +++ b/docs/install/x200_external.html @@ -39,23 +39,12 @@ <div class="section"> - <h1 id="flashchips">Flash chips</h1> + <h1 id="flashchips">Flash chip size</h1> <p> - The X200 will use an 8MiB or 64Mb SOIC-16 chip (rare models - will use a 4MiB or 32Mb SOIC-8 chip), below the palm rest. + Use this to find out:<br/> + # <b>dmidecode | grep ROM\ Size</b> </p> - - <p> - To easily identify which size chip is present, before fully disassemblying:<br/> - # <b>dmidecode | grep ROM\ Size</b><br/> - or (on some distributions):<br/> - $ <b>sudo dmidecode | grep ROM\ Size</b><br/> - Example output: - </p> -<pre> -# ROM Size: 8192 kB -</pre> <p> The X200S and X200 Tablet will use a WSON-8 flash chip, on the @@ -134,7 +123,7 @@ POMONA 5250 (correlate with the BBB guide) === right side of the X200 (where the audio jacks are) === <i>This is how you will connect. Numbers refer to pin numbers on the BBB, on the plugs near the DC jack.</i> Here is a photo of the SOIC-8 flash chip. The pins are labelled:<br/> -<img title="Copyright 2015 Patrick "P. J." McDermott <pj@pehjota.net>, CC BY-SA 3.0 or later" src="images/x200/soic8.jpg" alt="freenode IRC #libreboot 01:42 UK/London timezone February 8th 2015: pehjota: fchmmr: Here are two photos in the camera's configured resolution; resize them as you wish: http://www.pehjota.net/~pj/x200/soic-8/. License: CC BY-SA 3.0 or later. If you want other angles or anything, let me know." alt="" /> +<img title="Copyright 2015 Patrick "P. J." McDermott <pj@pehjota.net>, see license notice at the end of this document" src="images/x200/soic8.jpg" /> Look at the pads in that photo, on the left and right. Those are for SOIC-16. Would it be possible to remove the SOIC-8 and solder a SOIC-16 chip on those pins? @@ -143,7 +132,7 @@ chip on those pins? <b>On the X200S and X200 Tablet the flash chip is underneath the board, in a WSON package. The pinout is very much the same as a SOIC-8, except you need to solder (there are no clips available).<br/> The following image shows how this is done:</b><br/> - <img src="images/x200/wson_soldered.jpg" title="Copyright 2014 Steve Shenton <sgsit@libreboot.org> under CC-BY-SA 4.0" alt="" /> + <img src="images/x200/wson_soldered.jpg" title="Copyright 2014 Steve Shenton <sgsit@libreboot.org> see license notice at the end of this document" alt="" /> <br/> In this image, a pin header was soldered onto the WSON. Another solution might be to de-solder the WSON-8 chip and put a SOIC-8 there instead. Check the list of SOIC-8 flash chips at <a href="../hcl/gm45_remove_me.html#flashchips">../hcl/gm45_remove_me.html#flashchips</a> but @@ -422,16 +411,47 @@ PR4: Warning: 0x005f8000-0x005fffff is locked. <div class="section"> <p> - Copyright © 2014, 2015 Francis Rowe <info@gluglug.org.uk><br/> - Copyright © 2015 Chris Ryder <cdkr00@gmail.com><br/> - This document is released under the Creative Commons Attribution-ShareAlike 4.0 International Public License and all future versions. - A copy of the license can be found at <a href="../cc-by-sa-4.txt">../cc-by-sa-4.txt</a>. + Copyright © 2014, 2015 Francis Rowe <info@gluglug.org.uk><br/> + Permission is granted to copy, distribute and/or modify this document + under the terms of the GNU Free Documentation License, Version 1.3 + or any later version published by the Free Software Foundation; + with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. + A copy of the license can be found at <a href="../gfdl-1.3.txt">../gfdl-1.3.txt</a> + </p> + + <p> + Updated versions of the license (when available) can be found at + <a href="https://www.gnu.org/licenses/licenses.html">https://www.gnu.org/licenses/licenses.html</a> </p> <p> - This document is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See <a href="../cc-by-sa-4.txt">../cc-by-sa-4.txt</a> for more information. + UNLESS OTHERWISE SEPARATELY UNDERTAKEN BY THE LICENSOR, TO THE + EXTENT POSSIBLE, THE LICENSOR OFFERS THE LICENSED MATERIAL AS-IS + AND AS-AVAILABLE, AND MAKES NO REPRESENTATIONS OR WARRANTIES OF + ANY KIND CONCERNING THE LICENSED MATERIAL, WHETHER EXPRESS, + IMPLIED, STATUTORY, OR OTHER. THIS INCLUDES, WITHOUT LIMITATION, + WARRANTIES OF TITLE, MERCHANTABILITY, FITNESS FOR A PARTICULAR + PURPOSE, NON-INFRINGEMENT, ABSENCE OF LATENT OR OTHER DEFECTS, + ACCURACY, OR THE PRESENCE OR ABSENCE OF ERRORS, WHETHER OR NOT + KNOWN OR DISCOVERABLE. WHERE DISCLAIMERS OF WARRANTIES ARE NOT + ALLOWED IN FULL OR IN PART, THIS DISCLAIMER MAY NOT APPLY TO YOU. + </p> + <p> + TO THE EXTENT POSSIBLE, IN NO EVENT WILL THE LICENSOR BE LIABLE + TO YOU ON ANY LEGAL THEORY (INCLUDING, WITHOUT LIMITATION, + NEGLIGENCE) OR OTHERWISE FOR ANY DIRECT, SPECIAL, INDIRECT, + INCIDENTAL, CONSEQUENTIAL, PUNITIVE, EXEMPLARY, OR OTHER LOSSES, + COSTS, EXPENSES, OR DAMAGES ARISING OUT OF THIS PUBLIC LICENSE OR + USE OF THE LICENSED MATERIAL, EVEN IF THE LICENSOR HAS BEEN + ADVISED OF THE POSSIBILITY OF SUCH LOSSES, COSTS, EXPENSES, OR + DAMAGES. WHERE A LIMITATION OF LIABILITY IS NOT ALLOWED IN FULL OR + IN PART, THIS LIMITATION MAY NOT APPLY TO YOU. + </p> + <p> + The disclaimer of warranties and limitation of liability provided + above shall be interpreted in a manner that, to the extent + possible, most closely approximates an absolute disclaimer and + waiver of all liability. </p> </div> diff --git a/docs/install/x60_unbrick.html b/docs/install/x60_unbrick.html index d420cb6..d626143 100644 --- a/docs/install/x60_unbrick.html +++ b/docs/install/x60_unbrick.html @@ -269,15 +269,47 @@ POMONA 5250: <div class="section"> <p> - Copyright © 2014, 2015 Francis Rowe <info@gluglug.org.uk><br/> - This document is released under the Creative Commons Attribution-ShareAlike 4.0 International Public License and all future versions. - A copy of the license can be found at <a href="../cc-by-sa-4.txt">../cc-by-sa-4.txt</a>. + Copyright © 2014, 2015 Francis Rowe <info@gluglug.org.uk><br/> + Permission is granted to copy, distribute and/or modify this document + under the terms of the GNU Free Documentation License, Version 1.3 + or any later version published by the Free Software Foundation; + with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. + A copy of the license can be found at <a href="../gfdl-1.3.txt">../gfdl-1.3.txt</a> </p> <p> - This document is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See <a href="../cc-by-sa-4.txt">../cc-by-sa-4.txt</a> for more information. + Updated versions of the license (when available) can be found at + <a href="https://www.gnu.org/licenses/licenses.html">https://www.gnu.org/licenses/licenses.html</a> + </p> + + <p> + UNLESS OTHERWISE SEPARATELY UNDERTAKEN BY THE LICENSOR, TO THE + EXTENT POSSIBLE, THE LICENSOR OFFERS THE LICENSED MATERIAL AS-IS + AND AS-AVAILABLE, AND MAKES NO REPRESENTATIONS OR WARRANTIES OF + ANY KIND CONCERNING THE LICENSED MATERIAL, WHETHER EXPRESS, + IMPLIED, STATUTORY, OR OTHER. THIS INCLUDES, WITHOUT LIMITATION, + WARRANTIES OF TITLE, MERCHANTABILITY, FITNESS FOR A PARTICULAR + PURPOSE, NON-INFRINGEMENT, ABSENCE OF LATENT OR OTHER DEFECTS, + ACCURACY, OR THE PRESENCE OR ABSENCE OF ERRORS, WHETHER OR NOT + KNOWN OR DISCOVERABLE. WHERE DISCLAIMERS OF WARRANTIES ARE NOT + ALLOWED IN FULL OR IN PART, THIS DISCLAIMER MAY NOT APPLY TO YOU. + </p> + <p> + TO THE EXTENT POSSIBLE, IN NO EVENT WILL THE LICENSOR BE LIABLE + TO YOU ON ANY LEGAL THEORY (INCLUDING, WITHOUT LIMITATION, + NEGLIGENCE) OR OTHERWISE FOR ANY DIRECT, SPECIAL, INDIRECT, + INCIDENTAL, CONSEQUENTIAL, PUNITIVE, EXEMPLARY, OR OTHER LOSSES, + COSTS, EXPENSES, OR DAMAGES ARISING OUT OF THIS PUBLIC LICENSE OR + USE OF THE LICENSED MATERIAL, EVEN IF THE LICENSOR HAS BEEN + ADVISED OF THE POSSIBILITY OF SUCH LOSSES, COSTS, EXPENSES, OR + DAMAGES. WHERE A LIMITATION OF LIABILITY IS NOT ALLOWED IN FULL OR + IN PART, THIS LIMITATION MAY NOT APPLY TO YOU. + </p> + <p> + The disclaimer of warranties and limitation of liability provided + above shall be interpreted in a manner that, to the extent + possible, most closely approximates an absolute disclaimer and + waiver of all liability. </p> </div> diff --git a/docs/install/x60tablet_unbrick.html b/docs/install/x60tablet_unbrick.html index c64f90c..23a770b 100644 --- a/docs/install/x60tablet_unbrick.html +++ b/docs/install/x60tablet_unbrick.html @@ -166,15 +166,47 @@ POMONA 5250: <div class="section"> <p> - Copyright © 2014, 2015 Francis Rowe <info@gluglug.org.uk><br/> - This document is released under the Creative Commons Attribution-ShareAlike 4.0 International Public License and all future versions. - A copy of the license can be found at <a href="../cc-by-sa-4.txt">../cc-by-sa-4.txt</a>. + Copyright © 2014, 2015 Francis Rowe <info@gluglug.org.uk><br/> + Permission is granted to copy, distribute and/or modify this document + under the terms of the GNU Free Documentation License, Version 1.3 + or any later version published by the Free Software Foundation; + with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. + A copy of the license can be found at <a href="../gfdl-1.3.txt">../gfdl-1.3.txt</a> </p> <p> - This document is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See <a href="../cc-by-sa-4.txt">../cc-by-sa-4.txt</a> for more information. + Updated versions of the license (when available) can be found at + <a href="https://www.gnu.org/licenses/licenses.html">https://www.gnu.org/licenses/licenses.html</a> + </p> + + <p> + UNLESS OTHERWISE SEPARATELY UNDERTAKEN BY THE LICENSOR, TO THE + EXTENT POSSIBLE, THE LICENSOR OFFERS THE LICENSED MATERIAL AS-IS + AND AS-AVAILABLE, AND MAKES NO REPRESENTATIONS OR WARRANTIES OF + ANY KIND CONCERNING THE LICENSED MATERIAL, WHETHER EXPRESS, + IMPLIED, STATUTORY, OR OTHER. THIS INCLUDES, WITHOUT LIMITATION, + WARRANTIES OF TITLE, MERCHANTABILITY, FITNESS FOR A PARTICULAR + PURPOSE, NON-INFRINGEMENT, ABSENCE OF LATENT OR OTHER DEFECTS, + ACCURACY, OR THE PRESENCE OR ABSENCE OF ERRORS, WHETHER OR NOT + KNOWN OR DISCOVERABLE. WHERE DISCLAIMERS OF WARRANTIES ARE NOT + ALLOWED IN FULL OR IN PART, THIS DISCLAIMER MAY NOT APPLY TO YOU. + </p> + <p> + TO THE EXTENT POSSIBLE, IN NO EVENT WILL THE LICENSOR BE LIABLE + TO YOU ON ANY LEGAL THEORY (INCLUDING, WITHOUT LIMITATION, + NEGLIGENCE) OR OTHERWISE FOR ANY DIRECT, SPECIAL, INDIRECT, + INCIDENTAL, CONSEQUENTIAL, PUNITIVE, EXEMPLARY, OR OTHER LOSSES, + COSTS, EXPENSES, OR DAMAGES ARISING OUT OF THIS PUBLIC LICENSE OR + USE OF THE LICENSED MATERIAL, EVEN IF THE LICENSOR HAS BEEN + ADVISED OF THE POSSIBILITY OF SUCH LOSSES, COSTS, EXPENSES, OR + DAMAGES. WHERE A LIMITATION OF LIABILITY IS NOT ALLOWED IN FULL OR + IN PART, THIS LIMITATION MAY NOT APPLY TO YOU. + </p> + <p> + The disclaimer of warranties and limitation of liability provided + above shall be interpreted in a manner that, to the extent + possible, most closely approximates an absolute disclaimer and + waiver of all liability. </p> </div> |