Difference between revisions of "BeagleBoardPinMux"

From eLinux.org
Jump to: navigation, search
m (Link to TRM)
(Add links to docu and code)
Line 8: Line 8:
 
==OMAP3==
 
==OMAP3==
  
Details of OMAP35x PinMux can be found in [http://focus.ti.com/lit/ug/spruf98b/spruf98b.pdf OMAP35x Applications Processor TRM] (spruf98b.pdf).
+
Details of OMAP35x PinMux can be found in [http://focus.ti.com/lit/ug/spruf98b/spruf98b.pdf OMAP35x Applications Processor TRM] (spruf98b.pdf) in section ''7.4.4.3 Pad Multiplexing Register Fields'' (page 814).
 +
 
 +
tbd.
  
 
==Beagle==
 
==Beagle==
 +
 +
Details of Beagle's expansion header usage can be found in [http://beagleboard.org/static/BBSRM_latest.pdf BeagleBoard System Reference Manual] in ''table 20 Expansion connector signals'' (page 96).
  
 
tbd.
 
tbd.
Line 17: Line 21:
  
 
==U-Boot==
 
==U-Boot==
 +
 +
Main PinMux configuration in done in bootloader U-Boot. For beagle, see file [http://git.denx.de/?p=u-boot.git;a=blob;f=board/omap3/beagle/beagle.h board/omap3/beagle/beagle.h].
  
 
tbd.
 
tbd.
  
 
==Linux kernel==
 
==Linux kernel==
 +
 +
Some additional PinMux configuration is done by Linux kernel, too. Note that this has to be enabled by ''CONFIG_OMAP_MUX'', else this isn't executed. This is done in file [http://git.kernel.org/?p=linux/kernel/git/tmlind/linux-omap-2.6.git;a=blob;f=arch/arm/mach-omap2/mux.c arch/arm/mach-omap2/mux.c] (section CONFIG_ARCH_OMAP34XX).
  
 
tbd.
 
tbd.

Revision as of 08:39, 26 May 2009

This page is about Pin Multiplex (PinMux) on BeagleBoard (OMAP3). OMAP3 chip has less balls (pins) than the internal logic provides functionality. So each ball (pin) of OMAP3 can have different functionality (e.g. GPIO or I2C.TX). This is controlled by OMAP3 chip internal registers. This page tries to give some details where some info about OMAP3 pin mux can be found in hardware and how this is controlled by software, mainly U-Boot and Linux kernel. The information on this page can be used then e.g. to re-configure pins exposed at Beagle's expansion connector.

Hardware

OMAP3

Details of OMAP35x PinMux can be found in OMAP35x Applications Processor TRM (spruf98b.pdf) in section 7.4.4.3 Pad Multiplexing Register Fields (page 814).

tbd.

Beagle

Details of Beagle's expansion header usage can be found in BeagleBoard System Reference Manual in table 20 Expansion connector signals (page 96).

tbd.

Software

U-Boot

Main PinMux configuration in done in bootloader U-Boot. For beagle, see file board/omap3/beagle/beagle.h.

tbd.

Linux kernel

Some additional PinMux configuration is done by Linux kernel, too. Note that this has to be enabled by CONFIG_OMAP_MUX, else this isn't executed. This is done in file arch/arm/mach-omap2/mux.c (section CONFIG_ARCH_OMAP34XX).

tbd.