Difference between revisions of "Beagleboard:BeagleBone cape interface spec"

From eLinux.org
Jump to: navigation, search
(UART)
(PWM/TIMER)
Line 145: Line 145:
  
 
= PWM/TIMER =
 
= PWM/TIMER =
=== /dev/bone/timer/0 ===
+
=== /dev/bone-timer0 ===
 
AM3358 TIMER4<br>
 
AM3358 TIMER4<br>
 
AM5729 TIMER11
 
AM5729 TIMER11
 
* P8.7
 
* P8.7
  
=== /dev/bone/timer/1 ===
+
=== /dev/bone-timer1 ===
 
AM3358 TIMER5<br>
 
AM3358 TIMER5<br>
 
AM5729 TIMER14
 
AM5729 TIMER14
 
* P8.9
 
* P8.9
  
=== /dev/bone/timer/2 ===
+
=== /dev/bone-timer2 ===
 
AM3358 TIMER6<br>
 
AM3358 TIMER6<br>
 
AM5729 TIMER10
 
AM5729 TIMER10
 
* P8.10
 
* P8.10
  
=== /dev/bone/timer/3 ===
+
=== /dev/bone-timer3 ===
 
AM3358 TIMER7<br>
 
AM3358 TIMER7<br>
 
AM5729 TIMER12
 
AM5729 TIMER12

Revision as of 07:15, 29 March 2020

This is a list of symlink interfaces based on BeagleBone Cape header pins.

I2C

/dev/bone-i2c0

AM3358 I2C0
AM5729 I2C1

  • On-board peripherals

/dev/bone-i2c1

AM3358 I2C1
AM5729 I2C5

  • P9.17 - SCL
  • P9.18 - SDA

/dev/bone-i2c2

AM3358 I2C2
AM5729 I2C4

  • P9.19 - SCL
  • P9.20 - SDA

/dev/bone-i2c3

AM3358 N/A
AM5729 I2C3

  • P9.24 - SCL
  • P9.26 - SDA


SPI

/dev/bone/spi/0.x

AM3358 SPI0
AM5729 SPI2

  • P9.18 - MOSI
  • P9.21 - MISO
  • P9.22 - CLK

/dev/bone/spi/0.0

AM3358 SPI0 CS0
AM5729 SPI2 CS0

  • P9.17 - CS

/dev/bone/spi/1.x

AM3358 SPI1
AM5729 SPI3

  • P9.30 - MOSI
  • P9.29 - MISO
  • P9.31 - CLK

/dev/bone/spi/1.0

AM3358 SPI1 CS0
AM5729 SPI3 CS0

  • P9.28 - CS

/dev/bone/spi/1.1

AM3358 SPI1 CS1
AM5729 SPI3 CS1

  • P9.42 - CS

/dev/bone/spi/1.2

AM3358 SPI1 GPIO1_17
AM5729 SPI3 GPIO7_11

  • P9.23 - CS

UART

/dev/bone-uart0

AM3358 UART0
AM5729 UART1

  • console debug header pins

/dev/bone-uart1

AM3358 UART1
AM5729 UART10

  • P9.24 - TX
  • P9.26 - RX

/dev/bone-uart2

AM3358 UART2
AM5729 UART3

  • P9.21 - TX
  • P9.22 - RX

/dev/bone-uart3

AM3358 UART3
AM5729 N/A

  • P9.42 - TX

/dev/bone-uart4

AM3358 UART4
AM5729 UART5

  • P9.13 - TX
  • P9.11 - RX

/dev/bone-uart5

AM3358 UART5
AM5729 UART8

  • P8.37 - TX
  • P8.38 - RX

CAN

/dev/bone-can0

AM3358 CAN0
AM5729 N/A

  • P9.19 - RX
  • P9.20 - TX

/dev/bone-can1

AM3358 CAN1
AM5729 CAN2

  • P9.24 - RX
  • P9.26 - TX

ADC

/dev/bone-adc0

  • AIN0 - AM3358 in_voltage0_raw, AM5729 in_voltage0_raw
  • AIN1 - AM3358 in_voltage1_raw, AM5729 in_voltage1_raw
  • AIN2 - AM3358 in_voltage2_raw, AM5729 in_voltage3_raw
  • AIN3 - AM3358 in_voltage3_raw, AM5729 in_voltage2_raw
  • AIN4 - AM3358 in_voltage4_raw, AM5729 in_voltage7_raw
  • AIN5 - AM3358 in_voltage5_raw, AM5729 in_voltage6_raw
  • AIN6 - AM3358 in_voltage6_raw, AM5729 in_voltage4_raw

PWM/TIMER

/dev/bone-timer0

AM3358 TIMER4
AM5729 TIMER11

  • P8.7

/dev/bone-timer1

AM3358 TIMER5
AM5729 TIMER14

  • P8.9

/dev/bone-timer2

AM3358 TIMER6
AM5729 TIMER10

  • P8.10

/dev/bone-timer3

AM3358 TIMER7
AM5729 TIMER12

  • P8.8

MMC

/dev/bone/mmc/2

AM3358 MMC2
AM5729 MMC3

  • P8.21 - CLK
  • P8.20 - CMD
  • P8.25 - DAT0
  • P8.24 - DAT1
  • P8.5 - DAT2
  • P8.6 - DAT3
  • P8.23 - DAT4
  • P8.22 - DAT5
  • P8.4 - DAT7
  • P8.3 - DAT6

LCD

eQEP

/dev/bone/eqep/0

AM3358 eQEP0
AM5729 eQEP3

  • P9.42 - A
  • P9.27 - B
  • P9.25 - STROBE (AM3358-only)

/dev/bone/eqep/1

AM3358 eQEP1
AM5729 eQEP1

  • P8.34 - A
  • P8.36 - B

/dev/bone/eqep/2

AM3358 eQEP2
AM5729 eQEP2

  • P8.12 - A
  • P8.11 - B

McASP

Methodology

udev rules

10-of-symlink.rules

#From: https://github.com/mvduin/py-uio/blob/master/etc/udev/rules.d/10-of-symlink.rules
# allow declaring a symlink for a device in DT
ATTR{device/of_node/symlink}!="", \
	ENV{OF_SYMLINK}="%s{device/of_node/symlink}"

ENV{OF_SYMLINK}!="", ENV{DEVNAME}!="", \
	SYMLINK+="%E{OF_SYMLINK}", \
	TAG+="systemd", ENV{SYSTEMD_ALIAS}+="/dev/%E{OF_SYMLINK}"

TBD

#Also courtesy of mvduin
# create symlinks for gpios exported to sysfs by DT
SUBSYSTEM=="gpio", ACTION=="add", TEST=="value", ATTR{label}!="sysfs", \
        RUN+="/bin/mkdir -p /dev/gpio", \
        RUN+="/bin/ln -sT '/sys/class/gpio/%k' /dev/gpio/%s{label}"