longyue

longyue

0个粉丝

9

问答

0

专栏

0

资料

longyue  发布于  2015-04-29 18:15:35
采纳率 0%
9个问答
3484

3520a的uart3怎么使用

 
我根据网上搜索到的资料进行修改,可以在dev下看到ttyAMA2设备,但是对这个设备进行write操作,示波器却从uart脚上看不到波形,内核是SDK直接解压出来的内核,然后进行了如下修改:
/osdrv/kernel/linux-3.0.y/arch/arm/mach-godarm/core.c中:
HIL_AMBA_DEVICE(uart0, "uart:0",  UART0,    NULL);
HIL_AMBA_DEVICE(uart1, "uart:1",  UART1,    NULL);
+HIL_AMBA_DEVICE(uart2, "uart:2",  UART2,    NULL);
+HIL_AMBA_DEVICE(uart3, "uart:3",  UART3,    NULL);

static struct amba_device *amba_devs[] __initdata = {
        &HIL_AMBADEV_NAME(uart0),
        &HIL_AMBADEV_NAME(uart1),
+       &HIL_AMBADEV_NAME(uart3),
};


static struct clk uart_clk;
-static struct clk_lookup lookups[2];
+static struct clk_lookup lookups[3];

static void  uart_clk_init(unsigned long clk)
{
@@ -328,6 +332,12 @@

        lookups[1].dev_id = "uart:1";
        lookups[1].clk = &uart_clk;
+
+       lookups[2].dev_id = "uart:3";
+       lookups[2].clk = &uart_clk;
}

void __init hi3520d_init(void)  

osdrv/kernel/linux-3.0.y/arch/arm/mach-godarm/include/mach/irqs.h中
#define UART0_IRQ              (HI3520D_IRQ_START + 8)
#define UART1_IRQ              (HI3520D_IRQ_START + 9)
+#define UART3_IRQ              (HI3520D_IRQ_START + 11)

#define INTNR_L2CACHE_CHK0_INT (HI3520D_IRQ_START + 29)
#define INTNR_L2CACHE_CHK1_INT (HI3520D_IRQ_START + 30)  

因为uart2被viu占用,所以没有使用。
mach-godarm路径应该没错,因为编译发现只有这个路径下有编译,而mach-hi3520d是没有编译的

另外发现UART3的RX和TX是复用的,所以测试的时候手动用himm命令将复用脚0x200f01c0和0x200f01bc改成了1。

另外还有个问题,按SDK中的操作,如果用
make OSDRV_CROSS=arm-hisiv100nptl-linux CHIP=3520a all
编译整个osdrv目录,那么产生的uImage文件可以正常使用,但如果只是编译kernel:
make ARCH=arm CROSS_COMPILE=arm-hisiv100nptl-linux- uImage
那么编译出来的文件就无法使用,不知道为什么。
我来回答
回答2个
时间排序
认可量排序

david

33个粉丝

368

问答

253

专栏

229

资料

david 2015-04-30 13:14:32
认可0
不是 20a 么 肯定不会编译 mach-hi3520d了。 步骤 没有什么问题 ,还是检查下RX TX复用。

duhao

0个粉丝

8

问答

0

专栏

0

资料

duhao 2015-05-19 21:37:43
认可0
楼主你好,想问一下,你的TX,RX复用问题解决了没啊?
或将文件直接拖到这里
悬赏:
E币
网盘
* 网盘链接:
* 提取码:
悬赏:
E币

Markdown 语法

  • 加粗**内容**
  • 斜体*内容*
  • 删除线~~内容~~
  • 引用> 引用内容
  • 代码`代码`
  • 代码块```编程语言↵代码```
  • 链接[链接标题](url)
  • 无序列表- 内容
  • 有序列表1. 内容
  • 缩进内容
  • 图片![alt](url)
+ 添加网盘链接/附件

Markdown 语法

  • 加粗**内容**
  • 斜体*内容*
  • 删除线~~内容~~
  • 引用> 引用内容
  • 代码`代码`
  • 代码块```编程语言↵代码```
  • 链接[链接标题](url)
  • 无序列表- 内容
  • 有序列表1. 内容
  • 缩进内容
  • 图片![alt](url)
举报反馈

举报类型

  • 内容涉黄/赌/毒
  • 内容侵权/抄袭
  • 政治相关
  • 涉嫌广告
  • 侮辱谩骂
  • 其他

详细说明

易百纳技术社区