Nios® V/II Embedded Design Suite (EDS)
Support for Embedded Development Tools, Processors (SoCs and Nios® V/II processor), Embedded Development Suites (EDSs), Boot and Configuration, Operating Systems, C and C++

USB on altera DE2 board

Altera_Forum
Honored Contributor II
1,685 Views

I'm working on usb communication on the Altera DE2 kit, have to follow the instructions on the wiki NIOS, the source linux I used is 20090808 

 

sytem_0. ptf file from vga mouse host projects in DE2_system DE2 CD 

 

first make,download and boot then detect the hub 1-0: 2 ports detected 

 

the second,with the above zImage, download and boot it can't detect usb hub 1-0: 1 port detected 

 

i don't understand why this error 

 

I followed the instructions on the forum is how to skip clock = check immediately return 1 after variable declaration in the function file hc_reset of isp1362-hcd.c but still not detect the usb  

 

Who solved this problem can you help me? 

 

static int isp1362_hc_reset(struct usb_hcd *hcd) { int ret = 0; struct isp1362_hcd *isp1362_hcd = hcd_to_isp1362_hcd(hcd); unsigned long t; unsigned long timeout = 100; unsigned long flags; int clkrdy = 0; ret=1; pr_info("%s:\n", __func__); if (isp1362_hcd->board && isp1362_hcd->board->reset) { isp1362_hcd->board->reset(hcd->self.controller, 1); msleep(20); if (isp1362_hcd->board->clock) isp1362_hcd->board->clock(hcd->self.controller, 1); isp1362_hcd->board->reset(hcd->self.controller, 0); } else isp1362_sw_reset(isp1362_hcd); /* chip has been reset. First we need to see a clock */ t = jiffies + msecs_to_jiffies(timeout); while (!clkrdy && time_before_eq(jiffies, t)) { spin_lock_irqsave(&isp1362_hcd->lock, flags); clkrdy = isp1362_read_reg16(isp1362_hcd, HCuPINT) & HCuPINT_CLKRDY; spin_unlock_irqrestore(&isp1362_hcd->lock, flags); if (!clkrdy) msleep(4); } spin_lock_irqsave(&isp1362_hcd->lock, flags); isp1362_write_reg16(isp1362_hcd, HCuPINT, HCuPINT_CLKRDY); spin_unlock_irqrestore(&isp1362_hcd->lock, flags); //if (!clkrdy) { if (clkrdy) { //end of edit pr_err("Clock not ready after %lums\n", timeout); ret = -ENODEV; } return ret; }
0 Kudos
5 Replies
Altera_Forum
Honored Contributor II
293 Views

 

--- Quote Start ---  

, the source linux I used is 20090808 

--- Quote End ---  

 

 

Much too old to be supported by anybody. 

 

You need to upgrade using the current git files. 

 

-Michael
0 Kudos
Altera_Forum
Honored Contributor II
293 Views

@ mschnell : 

I see the latest version source nios linux on the nios ftp is nioslinux 20100621, can i use this source or need to run command "./update"?
0 Kudos
Altera_Forum
Honored Contributor II
293 Views

Sorry, I not working actively with NIOS any more, so I am not knowledgeable regarding the latest proceedings.  

 

-Michael
0 Kudos
Altera_Forum
Honored Contributor II
293 Views

i used file sytem_0.ptf from DE2_NIOS_HOST_MOUSE_VGA on DE2_SytemCD.v1.6,  

 

the OS is Ubuntu 10.10 

 

version quartus 9.1sp1 & nios ide 9.1 on Window to download zImage and boot 

 

I read instructions on USBHost (altera wiki) 

 

use ISP1362_CTRL.v to create new components named "ISP1362" , 

set setup time,hold time... = 100 ns,  

 

add 2 interfaces interrupt sender & interrupt sender to avalon_slave_0 & interrupt_sender_1 to avalon_slave_1, set NATIVE on avalon slave_0 &1, set type "irq_n" 

 

 

 

set OTG_signal to " conduit-end" and their types are "export" 

 

then complete this component, I add it to sopc, name "ISP1362" 

 

But have no effect, still detect 1 port hub1-0, who can supported me to solve this problem? 

 

I'm not good at English, sorry
0 Kudos
Altera_Forum
Honored Contributor II
293 Views

I solved this problem, after downloaded file .sof to board, you should press KEY0 (reset) 

 

then i downloaded zImage and boot : 

 

detected 2 port and could access file on USB http://nj5.upanh.com/b5.s3.d1/ebaca0ea474ef479baf99cc2677fb488_42190205.untitled.jpg
0 Kudos
Reply