打印
[i.MX]

i.mx6Uboot支持USB(已解决)

[复制链接]
4320|19
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
mx_jack|  楼主 | 2014-4-16 18:49 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
FSL_TICS_ZJJ| | 2014-4-17 09:49 | 只看该作者
楼主你好,你的问题已经转交给我们的i.MX工程师,他会回答你,请耐心等待!

使用特权

评论回复
板凳
FSL_TICS_Rita| | 2014-4-18 14:55 | 只看该作者
楼主你好,你是否可以把你的环境描述的清楚一些呢?你用的板子是哪块板子?以及板子上跑的是Linux还是android?

使用特权

评论回复
地板
FSL_TICS_Rita| | 2014-4-18 14:55 | 只看该作者
还有你是如何操作的?

使用特权

评论回复
5
mx_jack|  楼主 | 2014-4-18 17:21 | 只看该作者
FSL_TICS_Rita 发表于 2014-4-18 14:55
还有你是如何操作的?

是飞思卡尔i.MX 6Quqd Sabrelite开发板,跑的是android
在U-Boot中,在include/configs/mx6q_sabrelite_android.h添加了支持USB命令的宏定义
#define CONFIG_CMD_USB
#define CONFIG_USB_STORAGE
#define CONFIG_USB_EHCI
#define CONFIG_USB_EHCI_FSL
#define CONFIG_EHCI_HCD_INIT_AFTER_RESET
#define CONFIG_SYS_FLS_USDHC_NUM 4
#define CONFIG_DOS_PARTITION 1
#define CONFIG_CMD_FAT 1

然后修改了了driver/usb/host/ehic-fsl.c文件的int ehci_hcd_init(void)
int ehci_hcd_init(void)
{
struct usb_ehci *ehci;

//ehci = (struct usb_ehci *)CONFIG_SYS_MPC8xxx_USB_ADDR;
ehci = (struct usb_ehci *)0x02184200;
hccr = (struct ehci_hccr *)((uint32_t)&ehci->caplength);
hcor = (struct ehci_hcor *)((uint32_t) hccr +
HC_LENGTH(ehci_readl(&hccr->cr_capbase)));

/* Set to Host mode */
/*
setbits_le32(&ehci->usbmode, CM_HOST);
out_be32(&ehci->snoop1, SNOOP_SIZE_2GB);
out_be32(&ehci->snoop2, 0x80000000 | SNOOP_SIZE_2GB);
*/
         
/* Init phy */
/*
if (!strcmp(getenv("usb_phy_type"), "utmi"))
out_le32(&(hcor->or_portsc[0]), PORT_PTS_UTMI);
else
out_le32(&(hcor->or_portsc[0]), PORT_PTS_ULPI);
*/
/* Enable interface. */
/*
       setbits_be32(&ehci->control, USB_EN);

out_be32(&ehci->prictrl, 0x0000000c);
out_be32(&ehci->age_cnt_limit, 0x00000040);
out_be32(&ehci->sictrl, 0x00000001);

in_le32(&ehci->usbmode);*/
return 0;
}

由于编译不能通过所以就屏蔽了后面部分,结果就出现了
U-Boot > usb start
(Re)start USB...
USB:   Register 10011 NbrPorts 1
USB EHCI 1.00
scanning bus for devices...

使用特权

评论回复
6
FSL_TICS_Rita| | 2014-4-21 14:54 | 只看该作者
楼主你好,关于你帖中提到的问题,目前飞思卡尔官网没有相关的文档和实现的案例,这里建议你到飞思卡尔的官方网站论坛上创建一个帖中来提问一下,因为该论坛有来自世界各地的工程师,看他们是否有更好的建议,链接为:https://community.freescale.com/community/imx/。这里建议你用英文发。

使用特权

评论回复
7
mx_jack|  楼主 | 2014-4-21 16:01 | 只看该作者
已解决:victory:

使用特权

评论回复
8
mx_jack|  楼主 | 2014-4-21 16:02 | 只看该作者
已解决:victory:

使用特权

评论回复
9
FSL_TICS_Rita| | 2014-4-21 16:19 | 只看该作者
mx_jack 发表于 2014-4-21 16:01
已解决

请问楼主是如何解决的,可否分享一下解决办法?:)

使用特权

评论回复
10
mx_jack|  楼主 | 2014-5-4 09:59 | 只看该作者
新版本UBOOT已经支持USB了

使用特权

评论回复
11
FSL_TICS_Rita| | 2014-5-4 11:32 | 只看该作者
mx_jack 发表于 2014-5-4 09:59
新版本UBOOT已经支持USB了

Great!

使用特权

评论回复
12
FSL_TICS_Rita| | 2014-5-4 11:33 | 只看该作者
楼主你好,如果你的问题已经解决麻烦帮我们把该贴结了,非常感谢。结贴方式参考:本论坛中结贴方式

使用特权

评论回复
13
weisy5| | 2014-5-29 10:32 | 只看该作者
请问imx6q sabrelite uboot支持USB吗  

使用特权

评论回复
14
lqland| | 2014-5-29 11:08 | 只看该作者
mx_jack 发表于 2014-5-4 09:59
新版本UBOOT已经支持USB了

Hi mx-jack
我现在用的U-BOOT是u-boot-2009.08
你所说的新版u-boot是指哪一版?
你的意思,你已修改新版的u-boot并已适用于I.MX开发板了?

使用特权

评论回复
15
FSL_TICS_Rita| | 2014-5-29 11:34 | 只看该作者
lqland 发表于 2014-5-29 11:08
Hi mx-jack
我现在用的U-BOOT是u-boot-2009.08
你所说的新版u-boot是指哪一版?

新的u-boot版本是高于2009的,比如2012,2013和2014的。

使用特权

评论回复
16
FSL_TICS_Rita| | 2014-5-29 11:35 | 只看该作者
weisy5 发表于 2014-5-29 10:32
请问imx6q sabrelite uboot支持USB吗


这个要看你的u-boot版本的。新的版本是支持的。

使用特权

评论回复
17
weisy5| | 2014-6-23 21:45 | 只看该作者
FSL_TICS_Rita 发表于 2014-5-29 11:35
这个要看你的u-boot版本的。新的版本是支持的。

能够告诉具体哪个版本支持usb吗,方便的话能否发一份,谢谢!

使用特权

评论回复
18
FSL_TICS_Rita| | 2014-6-25 16:42 | 只看该作者
weisy5 发表于 2014-6-23 21:45
能够告诉具体哪个版本支持usb吗,方便的话能否发一份,谢谢!

你好,更高版本的u-boot可以到http://git.freescale.com/git/cgit.cgi/imx/uboot-imx.git/下载。

使用特权

评论回复
19
liuyanfeng1818| | 2015-5-11 17:30 | 只看该作者
楼主你好,我编译了sabrelite最新的uboot,2013.7份的那个。但是编译后无法烧写。总是报错误。错误如下:
262144 bytes (256.0KB) copied, 8.364445 seconds, 30.6KB/s
UTP: sending Non-success to kernel for command $ dd if=$FILE of=/dev/mtd0 bs=512.
utp_poll: exit with status 256。
各位能够帮忙看下吗?感激不尽。

使用特权

评论回复
20
mini1986| | 2015-5-12 17:08 | 只看该作者
关注一下......

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

5

帖子

0

粉丝