debugasm

Members
  • Content Count

    16
  • Joined

  • Last visited

  • Days Won

    1

debugasm last won the day on July 28 2016

debugasm had the most liked content!

About debugasm

  • Rank
    Member

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. debugasm

    AXI DMA

    What is the problem with using "scatter gather mode" ? Without "scatter gather mode" you can try this: https://github.com/bmartini/zynq-xdma but did you not have the disposition "read / write" but only "iocrtl" mode.
  2. debugasm

    AXI DMA

    Hi, I've tried this and it works fine. https://github.com/jeremytrimble/ezdma Take care also to this part for use last kernel. https://github.com/jeremytrimble/ezdma/pull/5 debugasm
  3. Hi, there are two cases one for "bare metal" one for "linux" : "bare metal" Add this code to FSL bootloader (this code from Digilent source), Zybo board have I2C eeprom that have unique MAC address: /****************************************************************************** * This function is the hook which will be called before the FSBL does a handoff * to the application. The user can add all the customized code required to be * executed before the handoff to this routine. * * @param None * * @return * - XST_SUCCESS to indicate success * - XST_FAILURE.to indicate failure * ****************************************************************************/ u32 FsblHookBeforeHandoff(void) { u32 Status; Status = XST_SUCCESS; /* * User logic to be added here. * Errors to be stored in the status variable and returned */ fsbl_printf(DEBUG_INFO,"In FsblHookBeforeHandoff function \r\n"); /* Read Out MAC Address */ { int Status; XIicPs Iic; XIicPs_Config *Iic_Config; XEmacPs Emac; XEmacPs_Config *Mac_Config; unsigned char mac_addr[6]; int i = 0; fsbl_printf(DEBUG_GENERAL,"Look Up I2C Configuration\n\r"); Iic_Config = XIicPs_LookupConfig(XPAR_PS7_I2C_0_DEVICE_ID); if(Iic_Config == NULL) { return XST_FAILURE; } fsbl_printf(DEBUG_GENERAL,"I2C Initialization\n\r"); Status = XIicPs_CfgInitialize(&Iic, Iic_Config, Iic_Config->BaseAddress); if(Status != XST_SUCCESS) { return XST_FAILURE; } fsbl_printf(DEBUG_GENERAL,"Set I2C Clock\n\r"); XIicPs_SetSClk(&Iic, 200000); mac_addr[0] = 0xFA; fsbl_printf(DEBUG_GENERAL,"Set Memory Read Address\n\r"); XIicPs_MasterSendPolled(&Iic, mac_addr, 1, 0x50); while(XIicPs_BusIsBusy(&Iic)); fsbl_printf(DEBUG_GENERAL,"Get Mac Address\n\r"); XIicPs_MasterRecvPolled(&Iic, mac_addr, 6, 0x50); while(XIicPs_BusIsBusy(&Iic)); fsbl_printf(DEBUG_GENERAL,"MAC Addr: "); for(i = 0; i < 6; i++) { fsbl_printf(DEBUG_GENERAL,"%02x ", mac_addr[i]); } fsbl_printf(DEBUG_GENERAL,"\n\r"); fsbl_printf(DEBUG_GENERAL,"Look Up Emac Configuration\n\r"); Mac_Config = XEmacPs_LookupConfig(XPAR_PS7_ETHERNET_0_DEVICE_ID); if(Mac_Config == NULL) { return XST_FAILURE; } fsbl_printf(DEBUG_GENERAL,"Emac Initialization\n\r"); Status = XEmacPs_CfgInitialize(&Emac, Mac_Config, Mac_Config->BaseAddress); if(Status != XST_SUCCESS){ return XST_FAILURE; } fsbl_printf(DEBUG_GENERAL,"Set Emac MAC Address\n\r"); Status = XEmacPs_SetMacAddress(&Emac, mac_addr, 1); if(Status != XST_SUCCESS){ return XST_FAILURE; } fsbl_printf(DEBUG_GENERAL,"Verify Emac MAC Address\n\r"); XEmacPs_GetMacAddress(&Emac, mac_addr, 1); if(Status != XST_SUCCESS){ return XST_FAILURE; } } return (Status); } "linux" To get actual MAC address zybo:~# ifconfig eth0 Link encap:Ethernet HWaddr 00:11:22:33:44:55 inet addr:192.168.1.2 Bcast:192.168.1.255 Mask:255.255.255.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:333436242 errors:0 dropped:111 overruns:0 frame:0 TX packets:166776007 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:3075863808 (2.8 GiB) TX bytes:462587297 (441.1 MiB) Interrupt:54 Base address:0xb000 lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 UP LOOPBACK RUNNING MTU:65536 Metric:1 RX packets:432 errors:0 dropped:0 overruns:0 frame:0 TX packets:432 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:31127 (30.3 KiB) TX bytes:31127 (30.3 KiB) To set new MAC address zybo:~# ifconfig eth0 hw ether 00:11:22:33:44:55 I hope I was helpful.
  4. debugasm

    USB on Zybo

    Hi, with ZYBO usb I slammed my head for quite a while !!! The USB pin reset on ZYBO is controlled during the "First Stage Bootloader" : /****************************************************************************** * This function is the hook which will be called before the FSBL does a handoff * to the application. The user can add all the customized code required to be * executed before the handoff to this routine. * * @param None * * @return * - XST_SUCCESS to indicate success * - XST_FAILURE.to indicate failure * ****************************************************************************/ u32 FsblHookBeforeHandoff(void) { u32 Status; Status = XST_SUCCESS; /* * User logic to be added here. * Errors to be stored in the status variable and returned */ fsbl_printf(DEBUG_INFO,"In FsblHookBeforeHandoff function \r\n"); /* Read Out MAC Address */ { int Status; XIicPs Iic; XIicPs_Config *Iic_Config; XEmacPs Emac; XEmacPs_Config *Mac_Config; unsigned char mac_addr[6]; int i = 0; fsbl_printf(DEBUG_GENERAL,"Look Up I2C Configuration\n\r"); Iic_Config = XIicPs_LookupConfig(XPAR_PS7_I2C_0_DEVICE_ID); if(Iic_Config == NULL) { return XST_FAILURE; } fsbl_printf(DEBUG_GENERAL,"I2C Initialization\n\r"); Status = XIicPs_CfgInitialize(&Iic, Iic_Config, Iic_Config->BaseAddress); if(Status != XST_SUCCESS) { return XST_FAILURE; } fsbl_printf(DEBUG_GENERAL,"Set I2C Clock\n\r"); XIicPs_SetSClk(&Iic, 200000); mac_addr[0] = 0xFA; fsbl_printf(DEBUG_GENERAL,"Set Memory Read Address\n\r"); XIicPs_MasterSendPolled(&Iic, mac_addr, 1, 0x50); while(XIicPs_BusIsBusy(&Iic)); fsbl_printf(DEBUG_GENERAL,"Get Mac Address\n\r"); XIicPs_MasterRecvPolled(&Iic, mac_addr, 6, 0x50); while(XIicPs_BusIsBusy(&Iic)); fsbl_printf(DEBUG_GENERAL,"MAC Addr: "); for(i = 0; i < 6; i++) { fsbl_printf(DEBUG_GENERAL,"%02x ", mac_addr[i]); } fsbl_printf(DEBUG_GENERAL,"\n\r"); fsbl_printf(DEBUG_GENERAL,"Look Up Emac Configuration\n\r"); Mac_Config = XEmacPs_LookupConfig(XPAR_PS7_ETHERNET_0_DEVICE_ID); if(Mac_Config == NULL) { return XST_FAILURE; } fsbl_printf(DEBUG_GENERAL,"Emac Initialization\n\r"); Status = XEmacPs_CfgInitialize(&Emac, Mac_Config, Mac_Config->BaseAddress); if(Status != XST_SUCCESS){ return XST_FAILURE; } fsbl_printf(DEBUG_GENERAL,"Set Emac MAC Address\n\r"); Status = XEmacPs_SetMacAddress(&Emac, mac_addr, 1); if(Status != XST_SUCCESS){ return XST_FAILURE; } fsbl_printf(DEBUG_GENERAL,"Verify Emac MAC Address\n\r"); XEmacPs_GetMacAddress(&Emac, mac_addr, 1); if(Status != XST_SUCCESS){ return XST_FAILURE; } } /* Reset SMSC USB3320 ULPI transceiver */ { int Status; XGpioPs Gpio; XGpioPs_Config *ConfigPtr; volatile int Delay; #define RESET_PIN 46 #define DELAY 10000 /* Initialize the GPIO driver. */ ConfigPtr = XGpioPs_LookupConfig(XPAR_XGPIOPS_0_DEVICE_ID); Status = XGpioPs_CfgInitialize(&Gpio, ConfigPtr, ConfigPtr->BaseAddr); if (Status != XST_SUCCESS) { return XST_FAILURE; } /* RESET in output mode */ XGpioPs_SetDirectionPin(&Gpio, RESET_PIN, 1); XGpioPs_SetOutputEnablePin(&Gpio, RESET_PIN, 1); /* Set the RESET to be high. */ XGpioPs_WritePin(&Gpio, RESET_PIN, 1); /* Delay */ for (Delay = 0; Delay < DELAY; Delay++); /* Set the RESET to be low. */ XGpioPs_WritePin(&Gpio, RESET_PIN, 0); /* Delay */ for (Delay = 0; Delay < DELAY; Delay++); /* Set the RESET to be high. */ XGpioPs_WritePin(&Gpio, RESET_PIN, 1); /* Delay */ for (Delay = 0; Delay < DELAY; Delay++); /* Set the direction for the RESET to be input. */ XGpioPs_SetDirectionPin(&Gpio, RESET_PIN, 0); } return (Status); } With other test I have compiled working version of linux 3.18 with this "dts" change: ps7_usb_0: ps7-usb@e0002000 { clocks = <&clkc 28>; compatible = "xlnx,ps7-usb-1.00.a", "xlnx,zynq-usb-1.00.a"; dr_mode = "host"; interrupt-parent = <&ps7_scugic_0>; interrupts = <0 21 4>; phy_type = "ulpi"; reg = <0xe0002000 0x1000>; xlnx,usb-reset = "MIO 46"; } ; Linux dmesg: [ 0.890631] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver [ 0.895843] ehci-pci: EHCI PCI platform driver [ 0.899112] ULPI transceiver vendor/product ID 0x0424/0x0007 [ 0.903562] Found SMSC USB3320 ULPI transceiver. [ 0.906790] ULPI integrity check: passed. [ 0.909662] zynq-ehci zynq-ehci.0: Xilinx Zynq USB EHCI Host Controller [ 0.914968] zynq-ehci zynq-ehci.0: new USB bus registered, assigned bus number 1 [ 0.949942] zynq-ehci zynq-ehci.0: irq 53, io mem 0x00000000 [ 0.969908] zynq-ehci zynq-ehci.0: USB 2.0 started, EHCI 1.00 [ 0.975019] hub 1-0:1.0: USB hub found [ 0.977409] hub 1-0:1.0: 1 port detected [ 0.980549] usbcore: registered new interface driver usb-storage [ 1.092779] usbcore: registered new interface driver usbhid [ 1.096961] usbhid: USB HID core driver debugasm
  5. Hi, for assign one interrupt use this formula (subtract 32 to the value of the interrupt) Interrupt in linux "61": IRQ_F2P[15:0] == [91:84],[68:61] ==> 61 - 32 = 29 Value on DTS: interrupts = <0 29 4>; Once started linux can check assignment with this command: cat /proc/interrupts From previous example: CPU0 CPU1 27: 0 0 GIC 27 gt 29: 10547 21880 GIC 29 twd 35: 0 0 GIC 35 f800c000.ps7-ocmc 39: 43 0 GIC 39 f8007100.ps7-xadc 40: 0 0 GIC 40 f8007000.ps7-dev-cfg 41: 0 0 GIC 41 f8005000.ps7-watchdog 43: 0 0 GIC 43 ttc_clockevent 45: 0 0 GIC 45 f8003000.ps7-dma 46: 0 0 GIC 46 f8003000.ps7-dma 47: 0 0 GIC 47 f8003000.ps7-dma 48: 0 0 GIC 48 f8003000.ps7-dma 49: 0 0 GIC 49 f8003000.ps7-dma 51: 0 0 GIC 51 e000d000.ps7-qspi 53: 0 0 GIC 53 ehci_hcd:usb1 54: 3922 0 GIC 54 eth0 56: 5259 0 GIC 56 mmc0 57: 2368 0 GIC 57 cdns-i2c 61: 0 0 GIC 61 xilinx-dma-controller <<<<<< Example "61" 62: 0 0 GIC 62 xilinx-dma-controller 63: 0 0 GIC 63 xilinx-dma-controller 72: 0 0 GIC 72 f8003000.ps7-dma 73: 0 0 GIC 73 f8003000.ps7-dma 74: 0 0 GIC 74 f8003000.ps7-dma 75: 0 0 GIC 75 f8003000.ps7-dma 82: 41 0 GIC 82 xuartps IPI1: 0 0 Timer broadcast interrupts IPI2: 3534 4487 Rescheduling interrupts IPI3: 0 0 Function call interrupts IPI4: 27 41 Single function call interrupts IPI5: 0 0 CPU stop interrupts IPI6: 1 0 IRQ work interrupts IPI7: 0 0 completion interrupts debugasm
  6. Hi sbobrowicz, thanks for your advice. I'll try to make measurements and tests on hardware, but these are the result with my custom kernel. After insert one of my Usb Pen Drive : usb 1-1: new high-speed USB device number 2 using zynq-ehci usb-storage 1-1:1.0: USB Mass Storage device detected scsi host0: usb-storage 1-1:1.0 scsi 0:0:0:0: Direct-Access USB DISK 1100 PQ: 0 ANSI: 4 sd 0:0:0:0: Attached scsi generic sg0 type 0 sd 0:0:0:0: [sda] 15730688 512-byte logical blocks: (8.05 GB/7.50 GiB) sd 0:0:0:0: [sda] Write Protect is off sd 0:0:0:0: [sda] Mode Sense: 43 00 00 00 sd 0:0:0:0: [sda] No Caching mode page found sd 0:0:0:0: [sda] Assuming drive cache: write through sda: sda1 sd 0:0:0:0: [sda] Attached SCSI removable disk Now I mount partition: mkdir /media/pendrive mount -w -t vfat /dev/sda1 /media/pendrive ls -l /media/pendrive totale 1114112 -rwxr-xr-x 1 root root 1073741824 mag 10 19:42 largefile -rwxr-xr-x 1 root root 67108864 mag 10 19:42 smallfile And read test transfer speed : dd if=/media/pendrive/smallfile of=/dev/null bs=8k 8192+0 record dentro 8192+0 record fuori 67108864 byte (67 MB) copiati, 2,72241 s, 24,7 MB/s dd if=/media/pendrive/largefile of=/dev/null bs=8k 131072+0 record dentro 131072+0 record fuori 1073741824 byte (1,1 GB) copiati, 43,7348 s, 24,6 MB/s And write test transfer speed : dd if=/dev/zero of=/media/pendrive/test_write bs=8k count=8192 8192+0 record dentro 8192+0 record fuori 67108864 byte (67 MB) copiati, 1,08801 s, 61,7 MB/s I believe that the hardware has nothing. debugasm
  7. Sorry for long delay. Yes, I use a wall adapter with Jumper JP7 configured properly on position : "WALL" I have follow your suggestione but the problem unfortunately with these files it is worsened. After connecting the serial port "PROG/USB" : Built with PetaLinux v2015.4 (Yocto 1.8) Digilent-Zybo-Linux-BD-v2015_4 /dev/ttyPS0 Digilent-Zybo-Linux-BD-v2015_4 login: I logged on with "user:root" and "password:root" login[1049]: root login on 'ttyPS0' root@Digilent-Zybo-Linux-BD-v2015_4:~# I configured the network interface to access : eth0 Link encap:Ethernet HWaddr 00:1E:C0:DD:BB:09 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:1447 errors:0 dropped:64 overruns:0 frame:0 TX packets:62 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:103454 (101.0 KiB) TX bytes:21204 (20.7 KiB) Interrupt:147 Base address:0xb000 lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 UP LOOPBACK RUNNING MTU:65536 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:0 (0.0 B) TX bytes:0 (0.0 B) Change IP address : ifconfig eth0 192.168.1.198 netmask 255.255.255.0 broadcast 192.168.1.255 eth0 Link encap:Ethernet HWaddr 00:1E:C0:DD:BB:09 inet addr:192.168.1.198 Bcast:192.168.1.255 Mask:255.255.255.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:2886 errors:0 dropped:248 overruns:0 frame:0 TX packets:219 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:199417 (194.7 KiB) TX bytes:74898 (73.1 KiB) Interrupt:147 Base address:0xb000 lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 UP LOOPBACK RUNNING MTU:65536 Metric:1 RX packets:16 errors:0 dropped:0 overruns:0 frame:0 TX packets:16 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:1088 (1.0 KiB) TX bytes:1088 (1.0 KiB) Now I have disconnecting the serial port "PROG/USB" and switch to Telnet (port 23, SSH is not available) telnet 192.168.1.198 root@Digilent-Zybo-Linux-BD-v2015_4:~# Insert USB drive : usb 1-1: new high-speed USB device number 2 using ci_hdrc usb-storage 1-1:1.0: USB Mass Storage device detected scsi host0: usb-storage 1-1:1.0 usb 1-1: USB disconnect, device number 2 usb 1-1: new high-speed USB device number 3 using ci_hdrc usb-storage 1-1:1.0: USB Mass Storage device detected scsi host1: usb-storage 1-1:1.0 random: nonblocking pool is initialized usb 1-1: USB disconnect, device number 3 usb 1-1: new high-speed USB device number 4 using ci_hdrc usb-storage 1-1:1.0: USB Mass Storage device detected scsi host2: usb-storage 1-1:1.0 usb 1-1: USB disconnect, device number 4 usb 1-1: new high-speed USB device number 5 using ci_hdrc usb 1-1: new high-speed USB device number 6 using ci_hdrc usb-storage 1-1:1.0: USB Mass Storage device detected scsi host3: usb-storage 1-1:1.0 usb 1-1: USB disconnect, device number 6 usb 1-1: new high-speed USB device number 7 using ci_hdrc usb-storage 1-1:1.0: USB Mass Storage device detected scsi host4: usb-storage 1-1:1.0 usb 1-1: USB disconnect, device number 7 usb 1-1: new high-speed USB device number 8 using ci_hdrc usb-storage 1-1:1.0: USB Mass Storage device detected scsi host5: usb-storage 1-1:1.0 usb 1-1: USB disconnect, device number 8 usb 1-1: new high-speed USB device number 9 using ci_hdrc usb-storage 1-1:1.0: USB Mass Storage device detected scsi host6: usb-storage 1-1:1.0 usb 1-1: USB disconnect, device number 9 usb 1-1: new high-speed USB device number 10 using ci_hdrc usb-storage 1-1:1.0: USB Mass Storage device detected scsi host7: usb-storage 1-1:1.0 Change USB pen drive with Kingston : usb 1-1: new high-speed USB device number 12 using ci_hdrc usb-storage 1-1:1.0: USB Mass Storage device detected scsi host9: usb-storage 1-1:1.0 scsi 9:0:0:0: Direct-Access Kingston DataTraveler 3.0 PMAP PQ: 0 ANSI: 6 sd 9:0:0:0: Attached scsi generic sg0 type 0 sd 9:0:0:0: [sda] 15138816 512-byte logical blocks: (7.75 GB/7.21 GiB) sd 9:0:0:0: [sda] Write Protect is off sd 9:0:0:0: [sda] Mode Sense: 45 00 00 00 sd 9:0:0:0: [sda] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA usb 1-1: USB disconnect, device number 12 sd 9:0:0:0: [sda] Read Capacity(10) failed: Result: hostbyte=0x01 driverbyte=0x00 sd 9:0:0:0: [sda] Sense not available. sda: detected capacity change from 7751073792 to 0 sd 9:0:0:0: [sda] Attached SCSI removable disk usb 1-1: new high-speed USB device number 13 using ci_hdrc usb-storage 1-1:1.0: USB Mass Storage device detected scsi host10: usb-storage 1-1:1.0 scsi 10:0:0:0: Direct-Access Kingston DataTraveler 3.0 PMAP PQ: 0 ANSI: 6 sd 10:0:0:0: [sda] 15138816 512-byte logical blocks: (7.75 GB/7.21 GiB) sd 10:0:0:0: Attached scsi generic sg0 type 0 sd 10:0:0:0: [sda] Write Protect is off sd 10:0:0:0: [sda] Mode Sense: 45 00 00 00 sd 10:0:0:0: [sda] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA usb 1-1: USB disconnect, device number 13 sd 10:0:0:0: [sda] UNKNOWN(0x2003) Result: hostbyte=0x01 driverbyte=0x00 sd 10:0:0:0: [sda] CDB: opcode=0x28 28 00 00 00 00 00 00 00 08 00 blk_update_request: I/O error, dev sda, sector 0 Buffer I/O error on dev sda, logical block 0, async page read sda: unable to read partition table sd 10:0:0:0: [sda] Attached SCSI removable disk usb 1-1: new high-speed USB device number 14 using ci_hdrc usb-storage 1-1:1.0: USB Mass Storage device detected scsi host11: usb-storage 1-1:1.0 usb 1-1: USB disconnect, device number 14 usb 1-1: new high-speed USB device number 15 using ci_hdrc usb-storage 1-1:1.0: USB Mass Storage device detected scsi host12: usb-storage 1-1:1.0 scsi 12:0:0:0: Direct-Access Kingston DataTraveler 3.0 PMAP PQ: 0 ANSI: 6 sd 12:0:0:0: [sda] 15138816 512-byte logical blocks: (7.75 GB/7.21 GiB) sd 12:0:0:0: Attached scsi generic sg0 type 0 sd 12:0:0:0: [sda] Write Protect is off sd 12:0:0:0: [sda] Mode Sense: 45 00 00 00 sd 12:0:0:0: [sda] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA sda: sda1 sd 12:0:0:0: [sda] Attached SCSI removable disk Change USB pen drive with other Kingston : usb 1-1: new high-speed USB device number 16 using ci_hdrc usb-storage 1-1:1.0: USB Mass Storage device detected scsi host13: usb-storage 1-1:1.0 usb 1-1: USB disconnect, device number 16 usb 1-1: new high-speed USB device number 17 using ci_hdrc usb-storage 1-1:1.0: USB Mass Storage device detected scsi host14: usb-storage 1-1:1.0 scsi 14:0:0:0: Direct-Access Kingston DataTraveler 3.0 PMAP PQ: 0 ANSI: 6 sd 14:0:0:0: Attached scsi generic sg0 type 0 usb 1-1: USB disconnect, device number 17 sd 14:0:0:0: [sda] Read Capacity(10) failed: Result: hostbyte=0x01 driverbyte=0x00 sd 14:0:0:0: [sda] Sense not available. sd 14:0:0:0: [sda] Write Protect is off sd 14:0:0:0: [sda] Mode Sense: 80 fe 4d dd sd 14:0:0:0: [sda] No Caching mode page found sd 14:0:0:0: [sda] Assuming drive cache: write through sd 14:0:0:0: [sda] Attached SCSI removable disk usb 1-1: new high-speed USB device number 18 using ci_hdrc usb-storage 1-1:1.0: USB Mass Storage device detected scsi host15: usb-storage 1-1:1.0 usb 1-1: USB disconnect, device number 18 usb 1-1: new high-speed USB device number 19 using ci_hdrc usb-storage 1-1:1.0: USB Mass Storage device detected scsi host16: usb-storage 1-1:1.0 usb 1-1: USB disconnect, device number 19 usb 1-1: new high-speed USB device number 20 using ci_hdrc usb-storage 1-1:1.0: USB Mass Storage device detected scsi host17: usb-storage 1-1:1.0 scsi 17:0:0:0: Direct-Access Kingston DataTraveler 3.0 PMAP PQ: 0 ANSI: 6 sd 17:0:0:0: Attached scsi generic sg0 type 0 Unfortunately, with this "BSP Petalinux" I was not able to use any of my "USB pend drive" available. I returned to my custom kernel and everything works (if I keep disconnected from the PC the Zybo PROG/USB serial port) debugasm
  8. Yes, I have tried three other pen drive, unfortunately the same brand, but i want try with other brands. There are not yet expert enough to answer this question. Maybe someone can help us. While doing other tests I noticed the strangest thing. Wanting to keep the console "PROG UART" connected, this has always been active for all of my tests, by chance I disconnected and I started an SSH terminal shell. With SSH terminal USB read test working without problem: dd if=/media/pendrive/largefile of=/dev/null bs=8k 131072+0 record dentro 131072+0 record fuori 1073741824 byte (1,1 GB) copiati, 42,4746 s, 25,3 MB/s dd if=/media/pendrive/smallfile of=/dev/null bs=8k 8192+0 record dentro 8192+0 record fuori 67108864 byte (67 MB) copiati, 2,75659 s, 24,3 MB/s With SSH terminal USB write test working without problem (very low speed on FAT32): dd if=/dev/zero of=/media/pendrive/testwritefile bs=8k count=1000 1000+0 record dentro 1000+0 record fuori 8192000 byte (8,2 MB) copiati, 64,863 s, 126 kB/s I tried to reconnect the port "USB PROG" and open connection on serial terminal. The test is it make on SSH terminal and error get from Serial termina: SSH Terminal: dd if=/media/pendrive/largefile of=/dev/null bs=8k dd: errore leggendo "/media/pendrive/largefile": Errore di input/output 56574+0 record dentro 56574+0 record fuori 463454208 byte (463 MB) copiati, 49,1486 s, 9,4 MB/s Serial Terminal: usb 1-1: USB disconnect, device number 4 sd 2:0:0:0: [sda] Result: hostbyte=0x01 driverbyte=0x00 sd 2:0:0:0: [sda] CDB: cdb[0]=0x28: 28 00 00 11 27 bf 00 00 f0 00 blk_update_request: I/O error, dev sda, sector 1124287 sd 2:0:0:0: [sda] Result: hostbyte=0x01 driverbyte=0x00 sd 2:0:0:0: [sda] CDB: cdb[0]=0x28: 28 00 00 11 28 af 00 00 10 00 blk_update_request: I/O error, dev sda, sector 1124527 usb 1-1: new high-speed USB device number 5 using zynq-ehci usb 1-1: device descriptor read/64, error -110 usb 1-1: device descriptor read/64, error -110 usb 1-1: new high-speed USB device number 6 using zynq-ehci usb 1-1: device descriptor read/64, error -110 usb 1-1: device descriptor read/64, error -110 usb 1-1: new high-speed USB device number 7 using zynq-ehci usb 1-1: device not accepting address 7, error -110 usb 1-1: new high-speed USB device number 8 using zynq-ehci usb 1-1: device not accepting address 8, error -110 usb usb1-port1: unable to enumerate USB device usb 1-1: new high-speed USB device number 9 using zynq-ehci FAT-fs (sda1): unable to read boot sector to mark fs as dirty usb 1-1: device descriptor read/64, error -110 Someone can think of something ? I am even more puzzled. debugasm
  9. Yes, I have used the external power supply, supplied with the kit of zybo, 5V, 2.5A Switching Power Supply. Can you make the previous test with your Zybo board ?
  10. Hi, I want to use the "USB OTG" available on Zybo development board. With "USB OTG" in "Host Mode" I connect an USB pen drive (FAT32) and reading a file at fixed rate (about 5Mbit/s) for streaming data to logical part (PL). With default setup of Zybo that boot from QSPI I have made some test, without success. I have used an "Consumer USB pen drive", of 8 GByte, formatted with FAT32 and preload "largefile" with size of 1Gbyte. (1) Follow user guide of Zybo When acting as an embedded host, the USB A connector (J10) should be used to connect to a USB peripheral device, and JP1 should be shorted JP1 is shorted with jumper While in host mode, the ZYBO is technically an "embedded host", because it does not provide the required 150 μF of capacitance on VBUS required to qualify as a general purpose host. It is possible to modify the ZYBO so that it complies with the general purpose USB host requirements by loading C64 with a 150 μF capacitor and shorting JP2. Only those experienced at soldering small components on PCBs should attempt this rework. Many USB peripheral devices will work just fine without loading C64. Whether the ZYBO is configured as an embedded host or a general purpose host, it can provide 500 mA on the 5V VBUS line. I have load C64 with ceramic 150uF/6.3V and shorting JP2 for "USB host" I have : - JP1 is shorted with jumper - Load C64 with ceramic 150uF/6.3V and shorting JP2 for "USB host" (2) After insert USB pen drive (FAT32 8 GByte) zynq> usb 1-1: new high-speed USB device number 2 using xusbps-ehci usb-storage 1-1:1.0: USB Mass Storage device detected scsi0 : usb-storage 1-1:1.0 scsi 0:0:0:0: Direct-Access USB DISK 1100 PQ: 0 ANSI: 4 sd 0:0:0:0: [sda] 15730688 512-byte logical blocks: (8.05 GB/7.50 GiB) sd 0:0:0:0: [sda] Write Protect is off sd 0:0:0:0: Attached scsi generic sg0 type 0 sd 0:0:0:0: [sda] No Caching mode page present sd 0:0:0:0: [sda] Assuming drive cache: write through sd 0:0:0:0: [sda] No Caching mode page present sd 0:0:0:0: [sda] Assuming drive cache: write through sda: sda1 sd 0:0:0:0: [sda] No Caching mode page present sd 0:0:0:0: [sda] Assuming drive cache: write through sd 0:0:0:0: [sda] Attached SCSI removable disk Zybo recognizes USB pen drive without problems (3) Mount USB pen drive zynq> mkdir /mnt/pendrive zynq> mount -w -t vfat /dev/sda1 /mnt/pendrive zynq> ls /mnt/pendrive -l total 1048576 -rwxr-xr-x 1 root 0 1073741824 Apr 28 2016 largefile (4) Test read speed (file of 1 GByte is present on USB pen drive "largefile") zynq> dd if=/mnt/pendrive/largefile of=/dev/null bs=8k (5) After few seconds USB pen drive disconnects ... usb 1-1: USB disconnect, device number 2 sd 0:0:0:0: Device offlined - not ready after error recovery dd: /mnt/pendrive/largefile: Input/output errorsd 0:0:0:0: [sda] Unhandled error code sd 0:0:0:0: [sda] Result: hostbyte=0x05 driverbyte=0x00 sd 0:0:0:0: [sda] CDB: zynq> cdb[0]=0x28: 28 00 00 20 8d 17 00 00 10 00 end_request: I/O error, dev sda, sector 2133271 sd 0:0:0:0: rejecting I/O to offline device sd 0:0:0:0: [sda] killing request sd 0:0:0:0: rejecting I/O to offline device sd 0:0:0:0: rejecting I/O to offline device sd 0:0:0:0: [sda] Unhandled error code sd 0:0:0:0: [sda] Result: hostbyte=0x01 driverbyte=0x00 sd 0:0:0:0: [sda] CDB: cdb[0]=0x28: 28 00 00 20 8d 27 00 00 f0 00 end_request: I/O error, dev sda, sector 2133287 usb 1-1: new high-speed USB device number 3 using xusbps-ehci usb 1-1: device descriptor read/64, error -110 usb 1-1: device descriptor read/64, error -110 usb 1-1: new high-speed USB device number 4 using xusbps-ehci usb 1-1: device descriptor read/64, error -110 zynq> usb 1-1: device descriptor read/64, error -110 usb 1-1: new high-speed USB device number 5 using xusbps-ehci usb 1-1: device not accepting address 5, error -110 usb 1-1: new high-speed USB device number 6 using xusbps-ehci The USB pen drive becomes unresponsive What might be the problem ? It never occurred to anyone ? Thanks very much. debugasm
  11. debugasm

    ZYBO PCB request ...

    Thanks anyway. debugasm
  12. debugasm

    ZYBO PCB request ...

    I have bougth a Zybo board to explorer new Xilinx chip plus FPGA Zynq. Now I started to develop my PCB owner, following the wiring diagram of Zybo reference. I started to design the PCB but I have doubts on the routing of DDR3 memory. I was wondering if it was possbile to have the files Gerber / CAD / PCB / Allegro to carry out an exploration positioning, length and configuration of the slopes. Can you provide these files ? Thanks very much. Best Regards, debugasm
  13. debugasm

    JTAG-HS2

    Hi, After uninstalling all the drivers and software of FTDI from system, now the cable JTAG-HS2 works perfectly using iMPACT. Thanks very much. debugasm
  14. debugasm

    JTAG-HS2

    Hi, I have follow the step on page 15. I have download "ug344_windows.zip" and execute "install_xusb.bat" with these result: But the JTAG-HS2 It is still recognized as "USB serial port". After open Xilinx iMPACT the software detect Digilent PlugIn but do not find JTAG cable. INFO:iMPACT - Digilent Plugin: Plugin Version: 2.4.4 INFO:iMPACT - Digilent Plugin: no JTAG device was found.Other ideas ? I think the chip FTDI cable JTAG-HS2 is not programmed properly. I wait, hopeful. debugasm
  15. debugasm

    JTAG-HS2

    Hi, I have bought JTAG-HS2 or the laboratory to program Xilinx Spartan-3A DSP FPGA. I installed the driver and then connected to the PC HS2 but Windows 7 installs a "FTDI USB Serial Port". After open Xilinx iMPACT the software detect Digilent PlugIn but do not find JTAG cable. INFO:iMPACT - Digilent Plugin: Plugin Version: 2.4.4 INFO:iMPACT - Digilent Plugin: no JTAG device was found. I tried several times but I can not make it work. Someone managed to make it work ? Thanks very much. debugasm