<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://www.mediawiki.compulab.com/w/index.php?action=history&amp;feed=atom&amp;title=CM-T43%3A_Yocto_Linux%3A_User_Space</id>
	<title>CM-T43: Yocto Linux: User Space - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://www.mediawiki.compulab.com/w/index.php?action=history&amp;feed=atom&amp;title=CM-T43%3A_Yocto_Linux%3A_User_Space"/>
	<link rel="alternate" type="text/html" href="https://www.mediawiki.compulab.com/w/index.php?title=CM-T43:_Yocto_Linux:_User_Space&amp;action=history"/>
	<updated>2026-05-08T08:20:30Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.31.0</generator>
	<entry>
		<id>https://www.mediawiki.compulab.com/w/index.php?title=CM-T43:_Yocto_Linux:_User_Space&amp;diff=3397&amp;oldid=prev</id>
		<title>Grinberg: /* GPIO */</title>
		<link rel="alternate" type="text/html" href="https://www.mediawiki.compulab.com/w/index.php?title=CM-T43:_Yocto_Linux:_User_Space&amp;diff=3397&amp;oldid=prev"/>
		<updated>2017-07-16T15:31:34Z</updated>

		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;GPIO&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== Overview ==&lt;br /&gt;
The example run-time Yocto Linux filesystem image for the CompuLab CM-T43 System-on-Module / Computer-on-Module is based on Texas Instruments Arago project.&lt;br /&gt;
&lt;br /&gt;
The Automatic Installation page provides a brief introduction on how to install the run-time Yocto Linux image.&lt;br /&gt;
&lt;br /&gt;
== Using Yocto Linux on CM-T43 ==&lt;br /&gt;
&lt;br /&gt;
=== Connection and Logging In ===&lt;br /&gt;
Use the following username to login:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@cm-t43: root&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To login into the Linux system, you may use a serial console (ttyO0) at 115200 bps, or connect through the network.&lt;br /&gt;
&lt;br /&gt;
=== Networking ===&lt;br /&gt;
CM-T43 can operate in two modes: dual MAC mode, or as a 3 port ethernet switch. The default mode of operation is dual MAC mode.&lt;br /&gt;
A user guide for both operation modes can be found in the [http://processors.wiki.ti.com/index.php/Linux_Core_CPSW_User%27s_Guide Linux Core CPSW User's Guide] article in the TI wiki.&lt;br /&gt;
To configure networking, edit {{filename|/etc/network/interfaces}}, {{filename|/etc/resolv.conf}}, {{filename|/etc/hostname}} and {{filename|/etc/hosts}}. For more information about Linux network configuration read [http://www.debian.org/doc/manuals/reference/ch05.en.html Network setup] chapter in the [http://www.debian.org/doc/manuals/reference/index.en.html Debian Reference].&lt;br /&gt;
&lt;br /&gt;
==== Switching to 3-port switch mode ====&lt;br /&gt;
To enable 3-port switch mode, the device tree blob must be modified to remove the dual_emac property before Linux boots. This can be done using the following U-Boot commands:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# fdt addr &amp;lt;address fdt was loaded to&amp;gt;&lt;br /&gt;
# fdt rm /ocp/ethernet@4a100000 dual_emac&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Wayland display server ===&lt;br /&gt;
The Arago root filesystem image contains fully featured display server system Wayland/Weston.&lt;br /&gt;
Wayland is a protocol that specifies the communication between a display server (called Wayland compositor) and its clients, as well as a reference implementation of the protocol.&lt;br /&gt;
The Wayland project includes a demo Wayland compositor, called Weston. It's fast, small, and runs on embedded and mobile devices.&lt;br /&gt;
On start-up Wayland and the Texas Instruments Matrix is started.&lt;br /&gt;
Connect USB mouse and keyboard for interaction with Wayland and the Texas Instruments Matrix.&lt;br /&gt;
*Use the following commands to stop the matrix:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/etc/init.d/matrix-gui-2.0 stop&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*Use the following commands to start the matrix:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/etc/init.d/matrix-gui-2.0 start&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*Use the following commands to stop the Weston:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/etc/init.d/weston stop&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*Use the following commands to start the Weston:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/etc/init.d/weston start&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Display options ===&lt;br /&gt;
CM-T43 evaluation platform has three video output interfaces: LCD, DVI, and LVDS. Default configuration of Yocto Linux for CM-T43 uses LCD as primary video output.&lt;br /&gt;
&lt;br /&gt;
=== USB Dual-Role-Device ===&lt;br /&gt;
&lt;br /&gt;
CM-T43 has USB DWC3 based controller. It features USB 2.0 Dual-Role-Device (DRD) subsystem with integrated HS/FS (USB2.0) PHY.&lt;br /&gt;
CM-T43 DRD port is USB host and USB device (gadget) capable. USB Device Gadget drivers are compiled as modules with default CM-T43 kernel configuration.&lt;br /&gt;
Current Linux kernel support of DWC3 features does not allow dynamic role (host/device) switching during runtime. By default, ''host'' role is assigned to CM-T43 DRD port.&lt;br /&gt;
&lt;br /&gt;
Device mode can be enabled by running the following U-Boot commands before boot:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# fdt addr &amp;lt;address fdt was loaded to&amp;gt;&lt;br /&gt;
# fdt resize&lt;br /&gt;
# fdt set /ocp/omap_dwc3@48380000/usb@48390000 dr_mode peripheral&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Testing Device (gadget) mode ====&lt;br /&gt;
&lt;br /&gt;
Default CM-T43 kernel configuration enables {{filename|g_serial}}, {{filename|g_mass_storage}}, {{filename|g_ether}}, {{filename|g_audio}}, and {{filename|g_hid}} gadget drivers.&lt;br /&gt;
More gadget drivers can be enabled in the kernel configuration.&lt;br /&gt;
&lt;br /&gt;
* Connect USB OTG micro B-cable (ID pin Float) to P3 USB DRD port of SB-SOM baseboard.&lt;br /&gt;
* Connect other side Standard-A connector to Linux Host PC USB Host port.&lt;br /&gt;
&lt;br /&gt;
===== Emulate a serial link =====&lt;br /&gt;
&lt;br /&gt;
* Load gadget driver on CM-T43 Eval board:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@cm-t43:~# modprobe g_serial&lt;br /&gt;
[   56.306729] g_serial gadget: Gadget Serial v2.4&lt;br /&gt;
[   56.311433] g_serial gadget: g_serial ready&lt;br /&gt;
[   56.758367] g_serial gadget: high-speed config #2: CDC ACM config&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Ensure the connection is established on the Host PC:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
user@linux-host:~$ dmesg&lt;br /&gt;
...&lt;br /&gt;
[72415.607738] cdc_acm 2-1.8.2:2.0: ttyACM0: USB ACM device&lt;br /&gt;
[72415.608446] usbcore: registered new interface driver cdc_acm&lt;br /&gt;
[72415.608447] cdc_acm: USB Abstract Control Model driver for USB modems and ISDN adapters&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Receive data on CM-T43 Eval board:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@cm-t43:~# cat /dev/ttyGS0&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Send data from Host PC:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
user@linux-host:~$ echo &amp;quot;Test message&amp;quot; &amp;gt; /dev/ttyACM0&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Analog Audio  ===&lt;br /&gt;
CM-T43 provides an analog audio interface, which is registered as a standard ALSA sound card. Use '''aplay -l''' to list all soundcards and digital audio devices registered on the system: &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@cm-t43:~# aplay -l&lt;br /&gt;
**** List of PLAYBACK Hardware Devices ****&lt;br /&gt;
card 0: CMT43SoundCard [CM-T43-Sound-Card], device 0: davinci-mcasp.0-wm8731-hifi wm8731-hifi-0 []&lt;br /&gt;
  Subdevices: 1/1&lt;br /&gt;
  Subdevice #0: subdevice #0&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Analog Audio Settings ====&lt;br /&gt;
To enable the Analog audio playback, {{cmd|alsamixer}} or {{cmd|amixer}} applications can be used.&lt;br /&gt;
* {{cmd|alsamixer}} - set the “''Output Mixer''” control on.&lt;br /&gt;
or&lt;br /&gt;
* {{cmd|amixer}} - set the “''Output Mixer HiFi Playback Switch''” control on using command line interface:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@cm-t43:/# amixer cset numid=13 1&lt;br /&gt;
numid=13,iface=MIXER,name='Output Mixer HiFi Playback Switch'&lt;br /&gt;
  ; type=BOOLEAN,access=rw------,values=1&lt;br /&gt;
  : values=on&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Analog Audio Playback ====&lt;br /&gt;
In order to play back a sound file make use of the {{cmd|aplay}} application.&lt;br /&gt;
&amp;lt;dl&amp;gt;&lt;br /&gt;
* {{cmd|aplay -L}} can be used for listing of all pcm devices.&lt;br /&gt;
&amp;lt;/dl&amp;gt;&lt;br /&gt;
Here is a sample output of {{cmd|aplay -L}} command:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@cm-t43:/# aplay -L&lt;br /&gt;
null&lt;br /&gt;
    Discard all samples (playback) or generate zero samples (capture)&lt;br /&gt;
pulse&lt;br /&gt;
    PulseAudio Sound Server&lt;br /&gt;
default:CARD=CMT43SoundCard&lt;br /&gt;
    CM-T43-Sound-Card, &lt;br /&gt;
    Default Audio Device&lt;br /&gt;
sysdefault:CARD=CMT43SoundCard&lt;br /&gt;
    CM-T43-Sound-Card, &lt;br /&gt;
    Default Audio Device&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== WiFi ===&lt;br /&gt;
CM-T43 features 802.11b/g/n wireless connectivity solution, implemented with a Marvell wireless controller module.&lt;br /&gt;
&lt;br /&gt;
==== WiFi Initialization ====&lt;br /&gt;
* The driver gets loaded automatically. Make sure that the WiFi driver is loaded:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@cm-t43:/# lsmod | grep mwifi&lt;br /&gt;
mwifiex_sdio           26039  0&lt;br /&gt;
mwifiex               256669  1 mwifiex_sdio&lt;br /&gt;
cfg80211              259154  1 mwifiex&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* {{cmd|iwconfig}} command from {{cmd|wireless-tools}} package can be used to retrieve detailed information about the WiFi interfaces:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
mlan0     IEEE 802.11abgn  ESSID:off/any  &lt;br /&gt;
          Mode:Managed  Access Point: Not-Associated   &lt;br /&gt;
          Retry short limit:9   RTS thr=2347 B   Fragment thr=2346 B   &lt;br /&gt;
          Encryption key:off&lt;br /&gt;
          Power Management:on&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* WLAN interface activating:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@cm-t43:/# ifconfig mlan0 up&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Sample WiFi scanning:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@cm-t43:/# iwlist mlan0 scan&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
The output will show the list of Access Points and Ad-Hoc cells in range.&lt;br /&gt;
For more information about connecting to wireless networks and tuning WiFi interfaces refer to “wpa_supplicant” and “wireless-tools” man pages.&lt;br /&gt;
&lt;br /&gt;
=== Bluetooth ===&lt;br /&gt;
==== Host Controller Interface (HCI) Initialization ==== &lt;br /&gt;
* HCI requires no user interaction for being configured. The driver gets loaded automatically unless this option has been disabled by putting a black list rule for this device.&amp;lt;br&amp;gt;&lt;br /&gt;
Make sure that the Bluetooth driver is loaded:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@cm-t43:/# lsmod | grep btmrvl&lt;br /&gt;
btmrvl_sdio            14518  0&lt;br /&gt;
btmrvl                 12690  1 btmrvl_sdio&lt;br /&gt;
bluetooth             326343  16 bnep,btmrvl,btmrvl_sdio&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* HCI device configuration utility can be run to retrieve detailed information about the Bluetooth interfaces:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@cm-t43:/# hciconfig -a&lt;br /&gt;
hci0:	Type: BR/EDR  Bus: SDIO&lt;br /&gt;
	BD Address: 80:D2:1D:5F:45:18  ACL MTU: 1021:7  SCO MTU: 120:6&lt;br /&gt;
	UP RUNNING PSCAN &lt;br /&gt;
	RX bytes:1704 acl:0 sco:0 events:76 errors:0&lt;br /&gt;
	TX bytes:1459 acl:0 sco:0 commands:75 errors:0&lt;br /&gt;
	Features: 0xff 0xfe 0x8f 0xfe 0xdb 0xff 0x7b 0x87&lt;br /&gt;
	Packet type: DM1 DM3 DM5 DH1 DH3 DH5 HV1 HV2 HV3 &lt;br /&gt;
	Link policy: RSWITCH HOLD SNIFF &lt;br /&gt;
	Link mode: SLAVE ACCEPT &lt;br /&gt;
	Name: 'cm-t43-0'&lt;br /&gt;
	Class: 0x000100&lt;br /&gt;
	Service Classes: Unspecified&lt;br /&gt;
	Device Class: Computer, Uncategorized&lt;br /&gt;
	HCI Version:  (0x8)  Revision: 0x8300&lt;br /&gt;
	LMP Version:  (0x8)  Subversion: 0x7270&lt;br /&gt;
	Manufacturer: Marvell Technology Group Ltd. (72)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* If the HCI device is not running, use the below command to enable the HCI device:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@cm-t43:/# hciconfig hci0 up&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* HCI inquire remote devices&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@cm-t43:/# hcitool scan&lt;br /&gt;
Scanning ...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== RTC ===&lt;br /&gt;
==== Accessing and setting the RTC ====&lt;br /&gt;
To access the RTC time and date run:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@cm-t43:/# hwclock&lt;br /&gt;
Sat Jun 17 13:36:35 2017  0.000000 seconds&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To set the date and write it into the RTC do the following:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@cm-t43:/# date -s &amp;quot;2015-02-11 10:00:00&amp;quot;&lt;br /&gt;
Wed Feb 11 10:00:00 UTC 2015&lt;br /&gt;
root@cm-t43:/# hwclock -w&lt;br /&gt;
root@cm-t43:/# hwclock&lt;br /&gt;
Sat Jun 17 13:39:09 2017  0.000000 seconds&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Touchscreen ===&lt;br /&gt;
&lt;br /&gt;
Touchscreen calibration runs on first boot. To rerun it, execute the following commands:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
rm /etc/udev/rules.d/ws-calibrate.rules&lt;br /&gt;
rm /run/media/mmcblk0p1/ws-calibrate.rules&lt;br /&gt;
reboot&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== CAN bus ===&lt;br /&gt;
&lt;br /&gt;
Install can-utils using:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# apt-get install can-utils&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== CAN interface configuration ====&lt;br /&gt;
* Load the can bus modules:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@cm-t43:~# modprobe can-raw&lt;br /&gt;
[  123.114470] can: controller area network core (rev 20120528 abi 9)&lt;br /&gt;
[  123.120993] NET: Registered protocol family 29&lt;br /&gt;
[  123.155278] can: raw protocol (rev 20120528)&lt;br /&gt;
root@cm-t43:~# modprobe can-bcm&lt;br /&gt;
[  145.749470] can: broadcast manager protocol (rev 20120528 t)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It is recommended configure the CAN interface, with the {{filename|iproute2}} utilities.&lt;br /&gt;
&lt;br /&gt;
* To make sure the right {{filename|ip}} utility is used, run:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@cm-t43:~# ip -V&lt;br /&gt;
ip utility, iproute2-ss160111&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Configure the CAN interface bit-rate to 125 Kbits/sec (values of up to 1Mbit/sec are supported):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@cm-t43:~# ip link set can0 type can bitrate 125000&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Enable the CAN interface:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@cm-t43:~# ip link set can0 up&lt;br /&gt;
[  184.948857] net can0: c_can_hw_raminit_wait_syscon: time out&lt;br /&gt;
[  184.954781] c_can_platform 481d0000.can can0: setting BTR=0518 BRPE=0000&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Send/Receive packets =====&lt;br /&gt;
&lt;br /&gt;
Use {{filename|cansend}} and {{filename|candump}} utilities to send and receive packets via CAN interface.&lt;br /&gt;
&lt;br /&gt;
* Send standard CAN frame (on the first device):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@cm-t43:~# cansend can0 111#1122334455667788&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Send extended CAN frame (on the first device):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@cm-t43:~# cansend can0 11111111#1122334455667788&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Dump all received data frames as well as error frames (on the second device):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@cm-t43:~# candump any,0:0,#FFFFFFFF&lt;br /&gt;
  can0  111  [8] 11 22 33 44 55 66 77 88&lt;br /&gt;
  can0  11111111  [8] 11 22 33 44 55 66 77 88&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== GPIO ===&lt;br /&gt;
&lt;br /&gt;
To use a GPIO:&lt;br /&gt;
* Select a pin you wish to use as GPIO by consulting the [http://www.compulab.com/products/computer-on-modules/cm-t43/#devres CM-T43 reference manual]. The reference manual contains a list of pins and the possible functions each pin can support, many of which include GPIO signals as one of the possible functions.&lt;br /&gt;
* Setup the pinmux so that the GPIO function is selected for the pin you chose in the previous step. This may require you to edit the device tree for CM-T43. Consult the [[Linux: Introduction to device trees | device tree article]] in the CM-T43 Linux wiki.&lt;br /&gt;
* Export the GPIO in Linux sysfs and cd into it&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@cm-t43:/# echo &amp;lt;gpio_num&amp;gt; &amp;gt; /sys/class/gpio/export&lt;br /&gt;
root@cm-t43:/# cd gpio&amp;lt;gpio_num&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Select GPIO input/output function:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@cm-t43:/# echo in &amp;gt; direction&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
or&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@cm-t43:/# echo out &amp;gt; direction&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* To read GPIO input (or determine what value is being output):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@cm-t43:/# cat value&lt;br /&gt;
0&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* To output a value on the GPIO pin:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@cm-t43:/# echo 1 &amp;gt; value&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== PRU ===&lt;br /&gt;
&lt;br /&gt;
CM-T43 Yocto Linux has PRU support. For usage instructions, consult the [http://processors.wiki.ti.com/index.php/PRU-ICSS TI PRU wiki].&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
&lt;br /&gt;
* [[CM-T43: Yocto Linux: Automatic Installation]]&lt;br /&gt;
* [[CM-T43: Yocto Linux: Manual Installation]]&lt;br /&gt;
* [[Linux: Development for ARM modules]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:Yocto]]&lt;br /&gt;
[[Category:CM-T43]]&lt;/div&gt;</summary>
		<author><name>Grinberg</name></author>
		
	</entry>
</feed>