MY-IMX6 Linux-3.0.35 Device and Driver

来自明远智睿的wiki
跳转至: 导航搜索

Document instruction


System environment instruction

  • Compife CPU architeture of host:64 bit
  • Compife system of host:Linux
  • Linux release version:Ubuntu
  • Ubuntu version type:server version
  • Ubuntu version no.:12.04.5
  • Ubuntu system type:x86-64

Note:for development host please use ubuntu 12.04.5 x86-64(either desktop version or server version is ok),some unneccesory problems may arise if other release versions or other buntu versions are used.


Operating instruction

1)Lines starting with “$”in document,following it will be Linux command.
2)Lines starting with “$”in document,following it will be Linux command.
3)If following a space is charater “-”in any executing command in the document(e.g:sudo apt-get –y install and the like),please enter manually to Linux host for execution(direct copy,pasting to Linux host to run,which may cause failure of execution).
4)Any line with unfinished Linux command in the document,please enter manually to Linux host for execution(since copy,pasting can't contain special charater such as “line break”).
5)Pay attention to whether the executing result is consistent with image in the document or not when enter and execut Linux command,to ensure whether there is an incorrect entry of command or failure of exectuion.
6)Please follow strictly the documents to compife for the first time,otherwise there may arise some unexpected mistakes.


Screenshots instruction

To make the view look neat and tidy ,myzr$ should be used uniformly as command prompt in the screenshots.

Linux command in image

In the image of the document, you can see the input Linux command visually from the lines that start with “linyn@u12045-serv:~$”.

Driving & relevant device file


File in source code and device corresponding to evaluation board in Linux-3.0.35 as following table:

Function Position of source code Linux device and folder
GPIO drivers/gpio/gpiolib.c /sys/class/gpio/
LED drivers/leds/leds-gpio.c /sys/class/leds/
BUTTON drivers/input/keyboard/gpio_keys.c /dev/input/event0
LVDS drivers/video/mxc/ldb.c /dev/fb*
LCD drivers/video/mxc/mxc_lcdif.c /dev/fb*
BACKLIGHT drivers/video/backlight/pwm_bl.c /sys/class/backlight/
UART drivers/tty/serial/imx.c /dev/ttymxc*
I2C drivers/i2c/i2c-dev.c /dev/i2c-*
SPI drivers/spi/spidev.c /dev/spidev1.0
MMC/SD/SDIO drivers/mmc/host/ /dev/mmcblk*
NAND GPMI drivers/mtd/nand/gpmi-nand/ /dev/mtd*
TOUCH SCREEN drivers/input/touchscreen/ft5x06_ts.c /dev/input/event1
FEC drivers/net/fec.c eth0,eth1
PWM arch/arm/plat-mxc/pwm.c NC
HDMI drivers/video/mxc_hdmi.c /dev/mxc_hdmi
IPU drivers/mxc/ipu3/ /dev/mxc_ipu
GPU drivers/mxc/gpu-viv/ /dev/galcore
VPU drivers/mxc/vpu/mxc_vpu.c /dev/mxc_vpu
OV5642 drivers/media/video/mxc/capture/ /dev/video0
MIPI DSI drivers/video/mxc/mipi_dsi.c NC
MIPI CSI2 drivers/mxc/mipi/mxc_mipi_csi2.c NC
V4L2 drivers/media/video/mxc/ NC
SGTL5000 sound/soc/codecs/sgtl5000.c /dev/snd/
PCIE arch/arm/mach-mx6/pcie.c /sys/class/pci_bus
TW6865 drivers/media/video/TW68-video.c /dev/video0~7
SATA drivers/ata/ahci_platform.c /dev/sda或/dev/sdb
WM8962 sound/soc/codecs/wm8962.c /dev/snd/
ISL1208 drivers/rtc/rtc-isl1208.c /dev/rtc0
USB drivers/usb/ NC
FLEXCAN drivers/net/can/flexcan.c can0,can1
WATCHDOG drivers/watchdog/imx2_wdt.c /dev/watchdog

Board level directory:arch/arm/mach-mx6/
Board level file:arch/arm/mach-mx6/board-myimx6ek***.c (“***”represent 200 or 314)
Function definition of pin:arch/arm/mach-mx6/board-myimx6ek***-6*.h (“***”represent 200 or 314,“*”represent q or u)
Notation definition of pin:arch/arm/plat-mxc/include/mach/iomux-mx6*.h (“*”represent q or dl).
Note:if would like to know more about relevant files about driving,please refer to file“i.MX_6Dual6Quad_Linux_Reference_Manual.pdf”;if want to check detailedly the registor ,please refer to file“IMX6DQRM_201406.pdf”.