
飞思卡尔 I.MX6Q
文章平均质量分 95
dxmcu
QQ : 2795247843
展开
-
基于飞思卡尔imx6 sabrelite开发板的android lvds屏幕驱动调试
一、概述 1、 飞思卡尔 imx6的显示屏驱动架构: 2、目标: 因sabrelite开发板本身已提供LVDS接口,目标屏幕是LG的LP101WX1-SLN2,其主要参数为:分辨率:1280*800色彩:18位色彩数:262K时钟频率:69.3M Hz 二 移植过程1、首先把屏幕的接口接到sabrel转载 2016-12-24 12:01:16 · 1848 阅读 · 0 评论 -
imx6 项目的按键驱动程序
/** * filename:imx6_key_drv.c * description: matrix key driver for imx6. * author:shell.albert@gmail.com * date: September 1,2015. * * three gpio keys are connected to imx6 through differ转载 2016-09-17 16:57:38 · 3334 阅读 · 0 评论 -
在Ubuntu 12.04上安装LTIB及编译Linux BSP
在Ubuntu 12.04上安装LTIB及编译Linux BSPFreescale官方提供的《Setting_Up_LTIB_host.pdf》文件是指导如何在Ubuntu 9.04(32位或64位)上安装LTIB,通过网上查找资料了解到,由于Ubuntu 9.04的系统比较老旧,ltib中的一些补丁包与系统不兼容,安装过程容易出现错误,而且难以解决,故在这里采用Ubuntu 12.04(32转载 2016-08-12 23:02:24 · 2751 阅读 · 0 评论 -
imx6q处理器,linux操作系统平台搭建 从eMMC启动系统
[摘要:本文是参考http://blog.youkuaiyun.com/girlkoo/article/details/44536447战http://blog.youkuaiyun.com/girlkoo/article/details/44626011那篇两篇文章,然后把移植进程战进修条记再次留下.]本文是参考http://blog.youkuaiyun.com/girlkoo/article/details/445转载 2016-08-23 21:17:25 · 5866 阅读 · 0 评论 -
模块插入错误 insmod: can't insert 'memdev.ko': Device or resource busy
insmod: can't insert 'dev.ko': Device or resource busy图1 模块Device or resource busy提示什么chmod,chown都用过了,6410板子也reboot过,ftp也by后从新连接过,还是同样的结果。最后求助google(最近好上一点,不会点一两个链接就会出现链接不上),原来是设备号冲原创 2016-09-13 22:43:15 · 8725 阅读 · 0 评论 -
imx6ul evk板子 记录(5)通过底板sd卡即mmc 0 启动设备
mx6UL有两路sdio 其中核心板上一路 mmc 1 底板上一路 mmc0现在 想要通过底板上的mmc 0启动设备mfgtool 工具目录下面 有mfgtool2-yocto-mx-evk-sdcard-sd1.vbs 文件 可以烧录mmc 0 需要的系统第一次烧录的时候 什么都不用管 跟sw601 sw602跟烧mmc 1 一样设置 烧完后 ,uboot启动完后转载 2016-09-01 23:21:43 · 2137 阅读 · 0 评论 -
uboot 启动 linux ----2 ----set setevn saveenv 命令 保存介质
uboot 官方学习文档 http://www.denx.de/wiki/DULG/Manual=> help setenv setenv - set environment variables Usage: setenv name value ... - set environment variable 'name' to 'value ...' setenv name - delete e转载 2016-09-01 23:19:23 · 6544 阅读 · 0 评论 -
Yocto i.MX6 (TQIMX6) (04) : 使用mjpg-streamer做一个WebCam Server
libjpeg的编译下载后直接对configure指定即可。或者使用Yocto编译,参考我的其他与Yocto相关博文。mjpg-server的编译mjpg-streamer已经很老了,且sourceforge中的下载文件,默认是deb格式的,因此需要找到对应的源代码下载地址:http://sourceforge.net/projects/mjpg-streamer/files/mj转载 2016-09-13 17:24:13 · 2287 阅读 · 0 评论 -
Yocto i.MX6 (TQIMX6) (03) : wifi网卡的相关工具wpa_supplicant与dhcp
加密与认证无线网卡驱动起来之后,还需要在用户态的一些程序支持,从而可以寻找热点并连接热点,访问网络。wifi连接时候的有出于两个方面的考虑:连接认证传输数据的加密出现了不同的标准,这些认证/加密常见的有下面这些:open(即不加密)WEP(WEP)WPA(TKIP)WPA2(AES)加密认证工具而针对不同的认证/加密就有不同的软件来辅助我们wifi设备的认证/连接:转载 2016-09-13 17:22:09 · 2194 阅读 · 0 评论 -
Yocto i.MX6 (TQIMX6) (02) : USB Wifi (TP-Link WN821N等设备)AR9170的Linux内核支持与固件使用
说明固件的下载见博客末尾。Wifi模块有一个TP-Link的WN821N的USB无线网卡,查到UbuntuPC上面用lsusb看了看:内核支持在内核中搜索lsusb输出的设备VID与PID,可以看到是有支持的,直接在内核中配置即可:这个是Linux社区对这个USB Wifi的支持,在这个Menuconfig选项的help中的网站里面很多东西都已经无法转载 2016-09-13 17:20:45 · 2574 阅读 · 0 评论 -
飞思卡尔IMX6修改uboot默认启动参数
硬件平台:飞思卡尔IMX6内核版本:kernel3.0.35问题来源:开发板的默认显示方式是FPC接口800*480的屏,本项目中用到的屏是工业级的1024*768接口的LVDS屏,更换屏之后,除了移植相应的屏驱动和触摸驱动之外,就是uboot传输给内核的启动参数bootargs需要修改,涉及到批量生产之后,不可能每台机器在烧写玩系统之后,还去命令行修改参数,所以在uboot源转载 2016-08-26 21:52:47 · 6179 阅读 · 0 评论 -
iMX6q gpio操作
#define EIM_DA0 IMX_GPIO_NR(3, 0) gpio_direction_output(EIM_DA0, 1);gpio_direction_input(EIM_DA0);data = gpio_get_value(EIM_DA0);mxc_iomux_v3_setup_multiple_pads原创 2016-09-23 13:14:56 · 3857 阅读 · 1 评论 -
[IMX6Q]LCD参数匹配过程分析
Platform: IMX6QOS: Android 4.4本文只讨论lvds接口的是lcd参数匹配的过程,mipi dsi以及其他接口部分会有一点差异。核心函数fb_find_mode(),在分析之前先了解下几个参数。重要参数说明: 1. ldb.c中的 ldb_modedb[cpp] view plain copy转载 2016-10-29 09:29:29 · 4103 阅读 · 0 评论 -
飞思卡尔IMX6处理器的GPIO配置方式
在linux或android系统中,假如我们要配置飞思卡尔IMX6处理器的GPIO管脚,比如是GPIO_19这个管脚,那么要像这样:[cpp] view plaincopy#define MX6Q_PAD_GPIO_19__GPIO_4_5 \ (_MX6Q_PAD_GPIO_19__GPIO_4_5 | MUX_PA转载 2016-09-26 09:06:52 · 1250 阅读 · 0 评论 -
IMX6 驱动代码位置
emmc/sdcard 驱动 drivers/mmc/host:sdhci-esdhc-imx.c /dev/mmcblk* sdhci.c转载 2016-09-07 22:40:38 · 3238 阅读 · 0 评论 -
imx6q GPIO功能的使用方法
假如我们要使用扩展口的第11脚EIM_D18。先在arch/arm/plat-mxc/include/mach/iomux-mx6q.h中找有EIM_18,可以找到MX6Q_PAD_EIM_D18__xxx。因为要作为gpio,所以使用MX6Q_PAD_EIM_D18__GPIO_3_18这个配置,将它加入board-mx6q_sabresd.h中。static iomux_v3_转载 2016-09-23 16:49:29 · 4163 阅读 · 0 评论 -
Linux开机自动加载模块
下面是以前学习Linux时写的,后来仔细研究rc.sysinit后发现,只需要修改下列地方就可以了,不必这么麻烦的: rc.sysinit中有这样的一段代码: # load other user-definedmodules for file in / etc / sysconfig /modules/ *.modules ; do [ -x$file ] &&转载 2016-09-23 14:27:26 · 6991 阅读 · 0 评论 -
让 Linux 启动时加载自己的驱动模块 .ko
整个开机流程是(1) 载入BIOS的硬件信息,并取得第一个开机装置的代号(2)读取第一个开机装置的MBR的boot Loader (grub)的开机信息(3)载入OS Kernel信息,解压Kernel,尝试驱动硬件(4) Kernel执行init程序并获得run-lebel信息(如3或5)(5) init执行/etc/rc.d/rc.sysinit(6)启动内核外挂模块(转载 2016-09-23 14:19:57 · 11248 阅读 · 0 评论 -
linux驱动模块开机自动加载,以及应用程序开机自启动
将测试程序放在/bin底下,然后用vi编辑/etc/init.d/rcS,加上/bin/应用程序名 &,加上&表示后台运行 这两个功能的实现都是通过设置启动脚本来实现的。启动脚本的一般存放路径是 /etc/init.d/rcS (rcS即脚本文件),自启动应用程序一般放置于 /etc/rc.d/init.d目录下。我们需要用vi命令对rcS进行编辑,当然也可以通过其他方式对其进转载 2016-09-23 14:17:00 · 2199 阅读 · 0 评论 -
I.MX6_Linux_UART_device&driver_hacking
/****************************************************************************************** * I.MX6_Linux_UART_device&driver_hacking * 声明: * 1. 目录脚本生成: * grep -v转载 2016-09-23 13:32:19 · 1558 阅读 · 0 评论 -
mx6_sabresd_board_init()
static void __init mx6_sabresd_board_init(void) { int i; int ret; struct clk *clko, *clko2; struct clk *new_parent; int rate; //判断cpu类型和pad初始化; if (cpu_is_mx6q())转载 2016-09-23 13:20:56 · 1185 阅读 · 0 评论 -
Yocto i.MX6 (TQIMX6) (01) : 3.14.28内核的适配
Freesacle Yocto的环境配置与编译到Freescale下载imx6 Linux Source Code,解压里面的fsl-yocto命名的压缩包得到Yocto setup手册:Freescale_Yocto_Project_User's_Guide.pdf然后按照里面的步骤操作即可编译出一个完整的distribution,当然很可能会因为网络或者一些Package早已不转载 2016-09-13 17:19:17 · 6012 阅读 · 0 评论 -
uboot启动阶段修改启动参数方法及分析
本来启动方式这节不是什么复杂的事儿,不过想简单的说清楚明白,还真是不知道怎么组织。毕竟文字跟有声语言表达有别。但愿简单的东西别让我讲的太复杂!Arm板系统文件一般有三个——bootloader(uboot)、kernel(uImage)及根文件系统(rootfs)。在arm板上电后,按uboot->kernel->rootfs的顺序依次启动。由于开发板上有多种存储介质,三个文件可以放在任何可以转载 2016-08-23 11:01:19 · 2748 阅读 · 0 评论 -
天嵌E9开发板tftp烧录eMMC教程(Android)
环境:天嵌E9开发板CPU:freescale imx6q系统:Android天嵌提供了MfgTool2.exe工具进行烧写.但是每次修改内核驱动都要烧写,很麻烦,于是想利用uboot通过tftp来单独烧写内核.1.首先要知道mmc的分区结构,通过系统查看:root@sabresd_6dq:/ # cat /proc/partitions转载 2016-08-23 10:42:35 · 2082 阅读 · 0 评论 -
I.MX6Q(TQIMX6Q/TQE9)学习笔记——新版BSP之LCD移植
经过前面的移植,eMMC已经可以在tqimx6q上正常运行了,本文将来移植LCD驱动。DTS编写imx6的LCD控制器与之前的芯片略有不同,详细的信息可以阅读芯片手册。参考sabrelite开发板的DTS,我们可以添加如下内容:[cpp] view plain copy / { ... aliases { mxcfb转载 2016-06-23 13:59:24 · 2558 阅读 · 0 评论 -
I.MX6Q(TQIMX6Q/TQE9)学习笔记——新版BSP之eMMC移植
前一篇文章已经移植好CAN,本文来移植eMMC。eMMC的移植一般来讲比较简单,因为MMC驱动是由官方维护的,一般来讲,不会有什么问题,对我们来说,只需要正确的配置各个pin脚的复用关系,这种情况也是DTS最擅长的。下面我们开始eMMC移植。DTS编写参考sabresd的DTS,我们可以如下编写DTS:[cpp] view plain copy &usdhc转载 2016-06-23 13:56:13 · 2090 阅读 · 0 评论 -
I.MX6Q(TQIMX6Q/TQE9)学习笔记——新版BSP之CAN移植
经过前面的移植,tqimx6q已经完美支持网卡,现在,我们来移植CAN。其实这里所谓的移植,仅仅是配置DTS,使内核能够检测到CAN设备,CAN驱动本身是freescale维护的。下面开始CAN的移植。DTS编写参考imx6q其它的DTS编写方式,我们可以如下编写DTS文件:[cpp] view plain copy ... &flexcan1 {转载 2016-06-23 13:53:45 · 1726 阅读 · 0 评论 -
I.MX6Q(TQIMX6Q/TQE9)学习笔记——新版BSP之网卡驱动移植
由于对网卡这块不是很熟悉,误以为网卡驱动也可以简单的配置下DTS就可以正常工作了,实际移植中遇到了些问题。闲话少说,下面开始tqimx6q的网卡驱动移植。DTS编写首先在我们的DTS中添加网卡配置,参考sabrelite的DTS,我们可以如下编写:[cpp] view plain copy &fec { pinctrl-names = "defau转载 2016-06-23 13:49:43 · 5058 阅读 · 0 评论 -
I.MX6Q(TQIMX6Q/TQE9)学习笔记——新版BSP之USB HOST移植
USB HOST驱动一般都是由芯片厂商维护的,因此,我们仍然只需要配置下DTS即可完成USB HOST驱动的移植。DTS配置参考sabresd相关的DTS,在我们的DTS中添加如下内容:[cpp] view plain copy / { ... regulators { compatible = "sim转载 2016-06-23 13:42:50 · 1735 阅读 · 0 评论 -
I.MX6Q(TQIMX6Q/TQE9)学习笔记——新版BSP之UART移植
我们在内核启动时候已经配置系统了UART,但是tqimx6q这块开发板上引出了imx6q的5路TTL接口,其中,uart1和uart2转成232接口,本文将配置这5路Uart接口。DTS配置由于内核中已经有imx6q的uart控制器驱动,因此,我们只需要配置各端口的pinctrl即可。根据tqimx6q的原理图,我们对我们的DTS作如下修改:[html] view plai转载 2016-06-23 10:04:25 · 1215 阅读 · 0 评论 -
I.MX6Q(TQIMX6Q/TQE9)学习笔记——新版BSP之KEY、LED
经过前面的移植,内核已经可以在tqimx6q上正常挂载根文件系统了,接下来开始移植各类设备驱动,本文先来移植按键和LED。之所以从按键和LED开始是因为这两种设备的驱动是最简单的。按键驱动移植查看tqimx6q的原理图可知,这块开发板有5个按键,其中,除了reset键之外还有个电源键,这个电源键与其它键有些不同,因此,本文移植剩余的这三个键(电源键在移植电源管理模块时处理)。通过阅读原理图转载 2016-06-23 10:00:47 · 1676 阅读 · 0 评论 -
I.MX6Q(TQIMX6Q/TQE9)学习笔记——新版BSP之根文件系统挂载
经过前面的移植,新版BSP的uboot和kernel已经能够在tqimx6q开发板上运行了,接下来我们来挂载文件系统。DTB整理前面的文章中提到,新版BSP的DTB管理感觉不是太好,在之前移植的BSP上我发现即便有根文件系统,内核也会挂掉,由于原来的DTS文件中配置内容太多,不好确定问题的源头,本文对DTS进行了整理,整理后只需要一个DTS文件,其内容如下:[cpp] vi转载 2016-06-23 09:55:15 · 3399 阅读 · 0 评论 -
I.MX6Q(TQIMX6Q/TQE9)学习笔记——新版BSP之kernel移植
前篇文章已经在tqimx6q上成功跑起了新版BSP的uboot,本文来配置下新版BSP的kernel,使kernel能在tqimx6q上正常启动。准备工作每次移植kernel的时候都会做的工作就是找到与当前开发板接近的config,其实uboot移植的时候也是一样的。由于tqimx6q的芯片是imx6q的,所以,还是以mx6q_sabresd为例。另外,自己动手移植BSP时应该充分使用官方转载 2016-06-23 09:45:06 · 3185 阅读 · 0 评论 -
I.MX6Q(TQIMX6Q/TQE9)学习笔记——新版BSP之触摸屏驱动移植
之所以说是驱动移植是因为之前已经在TQ210、AM335x两个平台上移植过了,因此,仅需要少量修改就可以将驱动移植到imx6q。下面开始触摸驱动移植。DTS编写参考其它DTS的i2c设备写法,我们可以添加如下内容:[cpp] view plain copy &i2c1 { clock-frequency = ; pinctrl-names转载 2016-06-23 14:03:15 · 1784 阅读 · 0 评论 -
I.MX6Q(TQIMX6Q/TQE9)学习笔记——新版BSP之声卡驱动移植
经过前面的移植,tqimx6q已经可以正常驱动触摸屏了,本文我们来移植声卡驱动。DTS编写由于tqimx6q搭载的声卡是sgtl5000芯片,因此,参考dts目录下其它开发板的相应信息,我们可以在DTS中添加如下内容:[cpp] view plain copy / { ... regulators {转载 2016-06-23 14:06:47 · 4138 阅读 · 0 评论 -
天嵌E9卡片i.mx6q-Linux12.04搭建nfs环境以及从nfs启动开发板
最近导师丢了一个图像处理的项目,要用嵌入式来实现。于是买了一块天嵌近期推出的E9卡片i.mx6q板子,这款板子算是功能比较全面,基本上要用的驱动都给实现了。刚开始接触嵌入式,之前也没用过Linux系统,一开始入手真是各种不懂。一开始调程序都是在pc机上调好然后在用U盘拷到板子上运行。这样太麻烦了,而且效率太低,真是费力不讨好。于是在网上看了很多nfs环境搭建以及使用nfs启动开发板的资料,折腾了一转载 2016-08-22 21:06:53 · 1894 阅读 · 0 评论 -
I.MX6Q(TQIMX6Q/TQE9)学习笔记——内核启动与文件系统挂载
经过前面的移植,u-boot已经有能力启动内核了,本文主要来看下如何通过之前移植的u-boot来启动内核。如果按照前面的文章完成了LTIB的编译,那么,Linux的内核应该就会出现rpm/BUILD/目录下,接下来,我们就开始移植这个3.0.35版本的内核到TQIMX6Q。内核的编译为了简化内核编译的过程,可以在内核目录下创建编译脚本,命名为build.sh,内容如下:[cpp转载 2016-06-22 16:15:18 · 2580 阅读 · 0 评论 -
I.MX6Q(TQIMX6Q/TQE9)学习笔记——U-Boot移植
其实Freescale的BSP移植文档已经将u-boot的移植步骤讲述的非常详细了,但为了以后方便查阅,还是按照自己的理解记录在这里。获取源码根据前一篇文章搭建好LTIB环境后就可以非常方便的导出u-boot源码了。切换到ltib目录,并运行如下指令:[cpp] view plain copy ./ltib -m prep -p u-boot转载 2016-06-22 15:34:08 · 2578 阅读 · 4 评论 -
I.MX6 SABRE SD L3.0.35
1). copy u-bootsudo dd if=u-boot-mx6q-sabresd.bin of=/dev/sdb bs=512 seek=2 skip=2 conv=fsync2). copy uImagesudo dd if=uImage of=/dev/sdb bs=512 seek=2048 conv=fsync3). copy rootfs4)转载 2016-08-22 17:04:21 · 1289 阅读 · 0 评论 -
imx515 开发板Android源代码编译过程
由于我们生成了nopading的uboot,我们直接执行前者语句即可,烧写uboot后上电测试.进入uboot目录linuxidc.com@lnuxidc-laptop:~$ cd workdir/freescale/Android/bootable/bootloader/uboot-imx/生成nopading的ubootlinuxidc.com@lnuxidc-laptop:~转载 2016-08-22 15:10:02 · 788 阅读 · 0 评论