hardarm 发表于 2020-3-4 17:14:30

OKMX6Q-C 将EIM的管脚改为GPIO

各位大神:

OKMX6Q-C 将EIM的管脚改为GPIO,用的是Linux3.0.15的内核,内核中用make_menuconfig配置那块去掉EIM的FPGA驱动?
已经在board-mx6q_c_sabresd.c中去掉了
/* add eim device*/
//platform_device_register(&weim_fpga_device);
下一步的GPIO如何配置?



hardarm 发表于 2020-3-5 08:52:10

使用echo 195 >/sys/class/gpio/export 导出也不会生成gpio195文件
问一下OKMX6Q-C那个引脚可以直接导出的

zhichao 发表于 2020-3-5 08:56:21

您可参考OKMX6DL、Q系列产品应用笔记中的 GPIO功能应用笔记 对GPIO进行配置

zhichao 发表于 2020-3-5 09:00:46

195是GPIO7-IO03对应的编号,您需要按照实际需求写
应用笔记中有写:
当我们操作某个 GPIO 之前,需要先向 export 文件写入该 GPIO 编号以导
出它的设备目录。GPIO 编号的计算公式如下所示:
GPIO 编号=(BANK-1)*32+N
在公式中 BANK 为 GPIO 引脚所在的 GPIO 组编号,N 则为引脚在该个
BANK 中的序号。以 GPIO7-IO03 为例,其 BANK 值为 7,N 值为 3,因此排列
序号为(7-1)*32+3=195。

hardarm 发表于 2020-3-5 09:36:45

应用笔记我看过了,用195号测试不行

zhichao 发表于 2020-3-5 09:46:53

计算公式为GPIO 编号=(BANK-1)*32+N
您用的GPIO是GPIO BANK_IO N,再套用公式

hardarm 发表于 2020-3-5 10:02:01

引脚的宏定义                                      引脚序号
MX6Q_PAD_ENET_RX_ER__GPIO_1_24        24
MX6Q_PAD_EIM_A22__GPIO_2_16        48
MX6Q_PAD_EIM_A21__GPIO_2_17        49
MX6Q_PAD_EIM_A20__GPIO_2_18        50
MX6Q_PAD_EIM_A19__GPIO_2_19        51
MX6Q_PAD_EIM_A18__GPIO_2_20        52
MX6Q_PAD_EIM_A17__GPIO_2_21        53
MX6Q_PAD_EIM_A16__GPIO_2_22        54
MX6Q_PAD_EIM_RW__GPIO_2_26        58
MX6Q_PAD_EIM_EB0__GPIO_2_28        60
MX6Q_PAD_EIM_EB1__GPIO_2_29        61
MX6Q_PAD_EIM_EB3__GPIO_2_31        63
MX6Q_PAD_EIM_DA0__GPIO_3_0        64
MX6Q_PAD_EIM_DA1__GPIO_3_1        65
MX6Q_PAD_EIM_DA2__GPIO_3_2        66
MX6Q_PAD_EIM_DA3__GPIO_3_3        67
MX6Q_PAD_EIM_DA4__GPIO_3_4        68
MX6Q_PAD_EIM_DA5__GPIO_3_5        69
MX6Q_PAD_EIM_DA6__GPIO_3_6        70
MX6Q_PAD_EIM_DA7__GPIO_3_7        71
MX6Q_PAD_EIM_DA8__GPIO_3_8        72
MX6Q_PAD_EIM_DA9__GPIO_3_9        73
MX6Q_PAD_EIM_DA10__GPIO_3_10        74
MX6Q_PAD_EIM_DA11__GPIO_3_11        64
MX6Q_PAD_EIM_DA12__GPIO_3_12        65
MX6Q_PAD_EIM_DA13__GPIO_3_13        66
MX6Q_PAD_EIM_DA14__GPIO_3_14        67
MX6Q_PAD_EIM_DA15__GPIO_3_15        68

hardarm 发表于 2020-3-5 10:06:01

以上这些都试过了,好像都不行。还有一个问题就是下载的Linux3.0.15内核编译之后执行wifi.sh 打不开wlan0设备

hardarm 发表于 2020-3-5 10:17:11

引脚的宏定义        引脚序号
MX6Q_PAD_ENET_RX_ER__GPIO_1_24        24
MX6Q_PAD_EIM_A22__GPIO_2_16        48
MX6Q_PAD_EIM_A21__GPIO_2_17        49
MX6Q_PAD_EIM_A20__GPIO_2_18        50
MX6Q_PAD_EIM_A19__GPIO_2_19        51
MX6Q_PAD_EIM_A18__GPIO_2_20        52
MX6Q_PAD_EIM_A17__GPIO_2_21        53
MX6Q_PAD_EIM_A16__GPIO_2_22        54
MX6Q_PAD_EIM_RW__GPIO_2_26        58
MX6Q_PAD_EIM_EB0__GPIO_2_28        60
MX6Q_PAD_EIM_EB1__GPIO_2_29        61
MX6Q_PAD_EIM_EB3__GPIO_2_31        63
MX6Q_PAD_EIM_DA0__GPIO_3_0        64
MX6Q_PAD_EIM_DA1__GPIO_3_1        65
MX6Q_PAD_EIM_DA2__GPIO_3_2        66
MX6Q_PAD_EIM_DA3__GPIO_3_3        67
MX6Q_PAD_EIM_DA4__GPIO_3_4        68
MX6Q_PAD_EIM_DA5__GPIO_3_5        69
MX6Q_PAD_EIM_DA6__GPIO_3_6        70
MX6Q_PAD_EIM_DA7__GPIO_3_7        71
MX6Q_PAD_EIM_DA8__GPIO_3_8        72
MX6Q_PAD_EIM_DA9__GPIO_3_9        73
MX6Q_PAD_EIM_DA10__GPIO_3_10        74
MX6Q_PAD_EIM_DA11__GPIO_3_11        75
MX6Q_PAD_EIM_DA12__GPIO_3_12        76
MX6Q_PAD_EIM_DA13__GPIO_3_13        77
MX6Q_PAD_EIM_DA14__GPIO_3_14        78
MX6Q_PAD_EIM_DA15__GPIO_3_15        79
最下面这几个算错了,抱歉。

zhichao 发表于 2020-3-5 11:04:24

您需要把io口配置好才行,不是任意一个都可以
直接烧写我们提供的镜像,执行wifi.sh能打开wlan0设备吗,您是按照手册上提供的方法操作的吗

hardarm 发表于 2020-3-5 12:30:42

镜像是可以的,就是自己编译的内核不可以,没有改变原来的配置,直接编译。
IO那个我找到原因了
是因为输入echo 48 > /sys/class/gpio/export这个命令时,在 编号 和 > 和/sys/class/gpio/export之间都要加空格,如果不加空格就不行。

zhichao 发表于 2020-3-5 13:17:15

您编译的时候是按照手册上的方法操作的吗,有没有丢失步骤或操作失误,比如配置内核

hardarm 发表于 2020-3-5 14:09:19

配置内核
步骤1:首先你需要复制imx6_defconfig 到.config 以方便你配置你的内核,命令如下。
#make distclean
#cp arch/arm/configs/imx6_c_defconfig .config
步骤2:开始配置内核,命令如下。
#make menuconfig
步骤3:完成配置内核,选择exit 保存退出
编译内核命令如下:
#make uImage

hardarm 发表于 2020-3-5 14:11:18

按照这个步骤做的,配置内核没有动界面的内容。直接退出,保存。

hardarm 发表于 2020-3-5 14:22:31

我重新配置了一下内核
选中Device Drivers---network device support---wireless lAN---REALTEK 8723B USB WIFI就可以了

zhichao 发表于 2020-3-5 14:24:00

您再看看是否有其他没注意到的地方,源码我们都验证过,不会有问题,或者您试试重新解压源码重编译

hardarm 发表于 2020-3-6 11:53:19

我又重新编译了一下,确实不行。
但是原因找到了,就是没有加载wifi模块的驱动。
加载一下就没问题了。
这样在启动文件中增加一条指令就OK了。
感谢耐心指导,谢谢!

hello159 发表于 2021-9-3 17:54:02

zhichao 发表于 2020-3-5 08:56
您可参考OKMX6DL、Q系列产品应用笔记中的 GPIO功能应用笔记 对GPIO进行配置

您好,请问gpio功能应用笔记在哪里下载?

wjy 发表于 2021-9-6 09:58:38

hello159 发表于 2021-9-3 17:54
您好,请问gpio功能应用笔记在哪里下载?

应用笔记在我们论坛的资料下载板块,您进入6q分区下载相应的PDF文档,该文档里就有应用笔记的网盘链接。
页: [1]
查看完整版本: OKMX6Q-C 将EIM的管脚改为GPIO