DIAG
Go to file
Bjorn Andersson 5c2b796e2e peripherals: Create and use flow context
Introduce a flow control context per peripheral and pass this to
dm_broadcast() in order for any queued messages to be accounted for in
the flow control context. Associate the same flow control context with
the read watcher for the peripheral's incoming data descriptors to make
the watch runner selectively read from the given peripheral only when
the number of outstanding, queued, messages are below the threshold.

Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
2020-02-19 16:00:17 -08:00
doc doc: Add udev rules example 2018-01-23 17:08:43 -08:00
router peripherals: Create and use flow context 2020-02-19 16:00:17 -08:00
tools Fix build with musl 2018-09-25 14:01:54 -07:00
.gitignore diag: Restructure repository 2018-07-12 21:56:44 -07:00
LICENSE Update copyrights and add license file 2017-02-16 02:21:16 -08:00
Makefile build: Honor CFLAGS 2019-01-19 12:29:42 -08:00
README.md README: Configuration string should be diag_dun 2019-01-19 12:29:42 -08:00

DIAG

DIAG implements routing of diagnostics related messages between host and various subsystems.

USB Gadget

Ensure that your kernel is built with CONFIG_CONFIGFS_FS and CONFIG_USB_CONFIGFS_F_FS and that configfs is mounted in /sys/kernel/config.

G1="/sys/kernel/config/usb_gadget/g1"

mkdir $G1
mkdir $G1/strings/0x409
mkdir $G1/functions/ffs.diag
mkdir $G1/configs/c.1
mkdir $G1/configs/c.1/strings/0x409

echo 0xVID > $G1/idVendor
echo 0xPID > $G1/idProduct
echo SERIAL > $G1/strings/0x409/serialnumber
echo MANUFACTURER > $G1/strings/0x409/manufacturer
echo PRODUCT > $G1/strings/0x409/product
echo "diag_dun" > $G1/configs/c.1/strings/0x409/configuration
ln -s $G1/functions/ffs.diag $G1/configs/c.1

mkdir /dev/ffs-diag
mount -t functionfs diag /dev/ffs-diag

diag-router &

sleep 1

echo 6a00000.dwc3 > $G1/UDC