Turbo BDM Light ColdFire (TBLCF) devices, such as the Axiom
AxBDM device, are supported. The TBLCF device type partitions the
device-url
as follows:
tblcf:[//:number
/]
The number
indicates the number of the TBLCF
interface to connect to, counting from zero upwards. If the number is
omitted, the default is to connect to the zeroth interface, which works
well if you have only one TBLCF device connected to your computer.
There are no further options for the TBLCF device.
If you are connecting via TBLCF from Windows, you may see a message like:
m68k-linux-gnu-sprite:error: Couldn't load libusb DLL
If this happens, you must install the driver for the TBLCF device, included with Sourcery G++ Lite. See Section 5.6.1, “Installing TBLCF (AxBDM) Windows Drivers” for installation instructions.
If you are connecting via TBLCF from Linux, you may see a message like:
m68k-linux-gnu-sprite:error: Error claiming interface \ (-1, permission denied)
If you see this message, consult Section 5.6.2, “Configuring TBLCF (AxBDM) Devices on Linux” for configuration instructions.
Before using a TBLCF device, you must install a driver. To install the TBLCF (AxBDM) driver on Windows, follow these steps:
Complete the Sourcery G++ Lite installation.
Run the Add Hardware Control Panel. Click Yes, I have already connected the hardware.
Select Add a new hardware device.
Select Install the hardware that I manually select from a list.
Select Show all devices.
Click Have Disk. Browse to
libexec/m68k-linux-gnu-post-install/axbdm-drivers/axbdm.inf
,
then select AxBDM from the list on the
following pane.
You will get warnings about the driver not being signed by Microsoft. This is expected.
Reboot the system when prompted and start using Sourcery G++ Lite.
Windows may auto-detect the TBLCF device when it is connected, and invoke the driver installation dialog automatically. If you have already installed Sourcery G++ Lite, you may continue with the dialog using steps similar to those outlined above. Otherwise, close the dialog, install Sourcery G++ Lite first, and then follow the above steps to install the driver.
The method you should use for configuring the TBLCF device on Linux depends on whether your machine is using udev or hotplug to manage USB device permissions. To determine which of these your distribution uses, find out your kernel and udev version numbers as follows:
> uname -r2.6.20
> udevinfo -V udevinfo, version108
A rule of thumb is that if your kernel version is less than 2.6.13
(2.6.20
in the example) or your udev version is
less than 059 (108
in the example), your machine
uses hotplug to control USB device permissions, else it uses udev. If this
rule of thumb doesn't work for you, consult your operating system vendor to
determine which method your distribution uses.
Performing the following steps allows any user to access the TBLCF device, rather than just the superuser (root). Running the Debug Sprite as root is technically possible, but is strongly discouraged.
To configure udev to handle TBLCF permissions, first locate your udev
rule configuration directory (e.g.
/etc/udev/rules.d/
). As root, create
a file in that directory called 25-tblcf.rules
with
the following contents:
BUS=="usb", SYSFS{idVendor}=="0425", SYSFS{idProduct}=="1001", \ MODE="0666"
Note that this should be entered on one line, without the backslash. Once this file is created, plug in the TBLCF device (if it is not already plugged in) then reboot your machine to make sure your changes take effect.
To configure hotplug to handle TBLCF permissions, you must create two
files in your hotplug USB configuration directory (e.g.
/etc/hotplug/usb/
) as root. The first file is
named tblcf
and contains:
#!/bin/bash # /etc/hotplug/usb/tblcf # if [ "${ACTION}" = "add" ] && [ -f "${DEVICE}" ] then case "$PRODUCT" in 425/1001/*) chmod 0666 "${DEVICE}" ;; esac fi
The second file (in the same directory) is named
tblcf.usermap
and contains:
tblcf 0x0003 0x0425 0x1001 0x0000 0x0000 0x00 0x00 0x00 0x00 \ 0x00 0x00 0x00000000
Note that the above must be entered on one line, without the backslash. Create these files and plug in your TBLCF device, if it is not already plugged in. Reboot your machine to make sure your changes take effect.
If you are having difficulties using the Debug Sprite as a non-root user, check that your udev or hotplug configuration is working properly by ensuring that the TBLCF device has the right file permissions. To do this, first run the following command:
> lsusb -d 0x0425:0x1001 Bus 004 Device 002: ID 0425:1001 Motorola Semiconductors HK, Ltd
Note the bus and device number (004
and
002
above). Now, examine the permissions
of the corresponding device file as follows:
> ls -l /proc/bus/usb/004
/002
-rw-rw-rw- 1 root root 50 2007-11-02 12:12 /proc/bus/usb/004/002
If the file has permissions as shown, you should be able run the Debug Sprite as any user, and the problem lies elsewhere. If the permissions are different, or there was no output from the lsusb command above, your configuration is not working properly. Ask CodeSourcery for further guidance.