element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet & Tria Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • About Us
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      • Japan
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Vietnam
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
Avnet Boards Forums
  • Products
  • Dev Tools
  • Avnet & Tria Boards Community
  • Avnet Boards Forums
  • More
  • Cancel
Avnet Boards Forums
MicroZed Hardware Design UART 1 speed issue ?
  • Forum
  • Documents
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Join Avnet Boards Forums to participate - click to join for free!
Actions
  • Share
  • More
  • Cancel
Forum Thread Details
  • State Not Answered
  • Replies 1 reply
  • Subscribers 340 subscribers
  • Views 517 views
  • Users 0 members are here
Related

UART 1 speed issue ?

100bobdxcool
100bobdxcool over 9 years ago

I am running ubuntu based xillinux OS on my microzed board. I have connected a GSM modem to serial port UART1 (identified as PS1 on the Operating system). The issue I am facing is whenever I use the modem (as dial up modem using wvdial and generating an access pint via wifi module) at a baud rate of 115200 or above on this port, the error I get is mmc0: Timeout waiting for hardware interrupt. It hangs here. And then I have to reboot the microzed . However for speeds below 115200. it works well without any hanging issues. Why is this ? How can I resolve this ?

Edit: After a few seconds of getting mmc error, then comes
[  168.436823] INFO: rcu_preempt self-detected stall on CPU { 0}  (t=6000 jiffies g=420 c=419 q=370)

My device tree for reference:

/dts-v1/;

/ {
tmodel = "Xilinx Zynq";
tcompatible = "xlnx,zynq-7000";
t#size-cells = <0x1>;
t#address-cells = <0x1>;

tamba@0 {
ttphandle = <0x1>;
ttlinux,phandle = <0x1>;
ttranges;
ttcompatible = "xlnx,ps7-axi-interconnect-1.00.a", "simple-bus";
tt#size-cells = <0x1>;
tt#address-cells = <0x1>;

ttleds {
tttcompatible = "gpio-leds";

tttmmc_led {
ttttlinux,default-trigger = "mmc0";
ttttgpios = <0x5 0x2f 0x0>;
ttttlabel = "mmc_led";
ttt};
tt};

ttps7-xadc@f8007100 {
tttreg = <0xf8007100 0x20>;
tttinterrupts = <0x0 0x7 0x4>;
tttinterrupt-parent = <0x2>;
tttcompatible = "xlnx,ps7-xadc-1.00.a";
tttclocks = <0x3 0xc>;
tt};

ttps7-usb@e0002000 {
tttreg = <0xe0002000 0x1000>;
tttphy_type = "ulpi";
tttinterrupts = <0x0 0x15 0x4>;
tttinterrupt-parent = <0x2>;
tttdr_mode = "host";
tttcompatible = "xlnx,ps7-usb-1.00.a";
tttclocks = <0x3 0x1c>;
tt};

ttuartlite_1@42C10000 {
tttclock = <0x5f5e100>;
tttinterrupts = <0x0 0x1e 0x1>;
tttinterrupt-parent = <0x2>;
tttreg = <0x42c10000 0x10000>;
tttcompatible = "xlnx,axi-uartlite-2.0", "xlnx,xps-uartlite-1.00.a", "xlnx,xps-uartlite-1.02.a";
tt};

ttuartlite_0@42C00000 {
tttclock = <0x5f5e100>;
tttinterrupts = <0x0 0x1d 0x1>;
tttinterrupt-parent = <0x2>;
tttreg = <0x42c00000 0x10000>;
tttcompatible = "xlnx,axi-uartlite-2.0", "xlnx,xps-uartlite-1.00.a", "xlnx,xps-uartlite-1.02.a";
tt};

ttserial@e0000000 {
tttxlnx,has-modem = <0x0>;
tttreg = <0xe0000000 0x1000>;
tttport-number = <0x1>;
tttinterrupts = <0x0 0x1b 0x4>;
tttinterrupt-parent = <0x2>;
tttdevice_type = "serial";
tttcurrent-speed = <0x1c200>;
tttcompatible = "xlnx,ps7-uart-1.00.a", "xlnx,xuartps";
tttclocks = <0x3 0x17 0x3 0x28>;
tttclock-names = "ref_clk", "aper_clk";
tt};

ttserial@e0001000 {
tttxlnx,has-modem = <0x0>;
tttreg = <0xe0001000 0x1000>;
tttport-number = <0x0>;
tttinterrupts = <0x0 0x32 0x4>;
tttinterrupt-parent = <0x2>;
tttdevice_type = "serial";
tttcurrent-speed = <0x1c200>;
tttcompatible = "xlnx,ps7-uart-1.00.a", "xlnx,xuartps";
tttclocks = <0x3 0x18 0x3 0x29>;
tttclock-names = "ref_clk", "aper_clk";
tt};

ttps7-ttc@f8001000 {
tttreg = <0xf8001000 0x1000>;
tttinterrupts = <0x0 0xa 0x4 0x0 0xb 0x4 0x0 0xc 0x4>;
tttinterrupt-parent = <0x2>;
tttinterrupt-names = "ttc0", "ttc1", "ttc2";
tttcompatible = "xlnx,ps7-ttc-1.00.a", "cdns,ttc";
tttclocks = <0x3 0x6>;
tt};

ttps7-slcr@f8000000 {
tttreg = <0xf8000000 0x1000>;
tttcompatible = "xlnx,ps7-slcr-1.00.a", "xlnx,zynq-slcr";

tttclocks {
tttt#size-cells = <0x0>;
tttt#address-cells = <0x1>;

ttttclkc {
tttttphandle = <0x3>;
tttttlinux,phandle = <0x3>;
tttttps-clk-frequency = <0x1fca055>;
tttttfclk-enable = <0xf>;
tttttcompatible = "xlnx,ps7-clkc";
tttttclock-output-names = "armpll", "ddrpll", "iopll", "cpu_6or4x", "cpu_3or2x", "cpu_2x", "cpu_1x", "ddr2x", "ddr3x", "dci", "lqspi", "smc", "pcap", "gem0", "gem1", "fclk0", "fclk1", "fclk2", "fclk3", "can0", "can1", "sdio0", "sdio1", "uart0", "uart1", "spi0", "spi1", "dma", "usb0_aper", "usb1_aper", "gem0_aper", "gem1_aper", "sdio0_aper", "sdio1_aper", "spi0_aper", "spi1_aper", "can0_aper", "can1_aper", "i2c0_aper", "i2c1_aper", "uart0_aper", "uart1_aper", "gpio_aper", "lqspi_aper", "smc_aper", "swdt", "dbg_trc", "dbg_apb";
ttttt#clock-cells = <0x1>;
tttt};
ttt};
tt};

ttps7-sdio@e0100000 {
tttsdhci,wp-broken;
tttxlnx,has-power = <0x0>;
tttreg = <0xe0100000 0x1000>;
tttinterrupts = <0x0 0x18 0x4>;
tttinterrupt-parent = <0x2>;
tttcompatible = "xlnx,ps7-sdio-1.00.a", "generic-sdhci", "arasan,sdhci-8.9a";
tttclocks = <0x3 0x15 0x3 0x20>;
tttclock-names = "clk_xin", "clk_ahb";
tttclock-frequency = <0x2faf080>;
tt};

ttps7-scuwdt@f8f00620 {
tttreg = <0xf8f00620 0xe0>;
tttinterrupts = <0x1 0xe 0x301>;
tttinterrupt-parent = <0x2>;
tttdevice_type = "watchdog";
tttcompatible = "xlnx,ps7-scuwdt-1.00.a";
tttclocks = <0x3 0x4>;
tt};

ttps7-scutimer@f8f00600 {
tttreg = <0xf8f00600 0x20>;
tttinterrupts = <0x1 0xd 0x301>;
tttinterrupt-parent = <0x2>;
tttcompatible = "xlnx,ps7-scutimer-1.00.a", "arm,cortex-a9-twd-timer";
tttclocks = <0x3 0x4>;
tt};

ttps7-scugic@f8f01000 {
tttphandle = <0x2>;
tttlinux,phandle = <0x2>;
tttreg = <0xf8f01000 0x1000 0xf8f00100 0x100>;
tttnum_interrupts = <0x60>;
tttnum_cpus = <0x2>;
tttinterrupt-controller;
tttcompatible = "xlnx,ps7-scugic-1.00.a", "arm,cortex-a9-gic", "arm,gic";
ttt#size-cells = <0x1>;
ttt#interrupt-cells = <0x3>;
ttt#address-cells = <0x2>;
tt};

ttps7-qspi-linear@fc000000 {
tttreg = <0xfc000000 0x1000000>;
tttcompatible = "xlnx,ps7-qspi-linear-1.00.a";
tttclocks = <0x3 0xa 0x3 0x2b>;
tttclock-names = "ref_clk", "aper_clk";
tt};

ttps7-qspi@e000d000 {
ttt#size-cells = <0x0>;
ttt#address-cells = <0x1>;
tttxlnx,qspi-mode = <0x0>;
tttxlnx,fb-clk = <0x1>;
tttreg = <0xe000d000 0x1000>;
tttnum-chip-select = <0x1>;
tttis-dual = <0x0>;
tttinterrupts = <0x0 0x13 0x4>;
tttinterrupt-parent = <0x2>;
tttcompatible = "xlnx,ps7-qspi-1.00.a";
tttclocks = <0x3 0xa 0x3 0x2b>;
tttclock-names = "ref_clk", "aper_clk";

tttflash@0 {
tttt#size-cells = <0x1>;
tttt#address-cells = <0x1>;
ttttspi-max-frequency = <0x2faf080>;
ttttreg = <0x0>;
ttttcompatible = "n25q128";

ttttpartition@qspi-bitstream {
tttttreg = <0xc00000 0x400000>;
tttttlabel = "qspi-bitstream";
tttt};

ttttpartition@qspi-rootfs {
tttttreg = <0x620000 0x5e0000>;
tttttlabel = "qspi-rootfs";
tttt};

ttttpartition@qspi-device-tree {
tttttreg = <0x600000 0x20000>;
tttttlabel = "qspi-device-tree";
tttt};

ttttpartition@qspi-linux {
tttttreg = <0x100000 0x500000>;
tttttlabel = "qspi-linux";
tttt};

ttttpartition@qspi-fsbl-uboot {
tttttreg = <0x0 0x100000>;
tttttlabel = "qspi-fsbl-uboot";
tttt};
ttt};
tt};

ttps7-pl310@f8f02000 {
tttreg = <0xf8f02000 0x1000>;
tttinterrupts = <0x0 0x2 0x4>;
tttinterrupt-parent = <0x2>;
tttcompatible = "xlnx,ps7-pl310-1.00.a", "arm,pl310-cache";
tttcache-unified;
tttcache-level = <0x2>;
tttarm,tag-latency = <0x2 0x2 0x2>;
tttarm,data-latency = <0x3 0x2 0x2>;
tt};

ttps7-ocmc@f800c000 {
tttreg = <0xf800c000 0x1000>;
tttinterrupts = <0x0 0x3 0x4>;
tttinterrupt-parent = <0x2>;
tttcompatible = "xlnx,ps7-ocmc-1.00.a", "xlnx,zynq-ocm-1.0";
tt};

ttps7-iop-bus-config@e0200000 {
tttreg = <0xe0200000 0x1000>;
tttcompatible = "xlnx,ps7-iop-bus-config-1.00.a";
tt};

ttps7-gpio@e000a000 {
tttphandle = <0x5>;
tttlinux,phandle = <0x5>;
tttreg = <0xe000a000 0x1000>;
tttinterrupts = <0x0 0x14 0x4>;
tttinterrupt-parent = <0x2>;
tttgpio-mask-low = <0xfe81>;
tttgpio-mask-high = <0xc0000>;
tttgpio-controller;
tttemio-gpio-width = <0x40>;
tttcompatible = "xlnx,ps7-gpio-1.00.a";
tttclocks = <0x3 0x2a>;
ttt#gpio-cells = <0x2>;
tt};

ttps7-ethernet@e000b000 {
tttxlnx,ptp-enet-clock = <0x69f6bcb>;
tttxlnx,has-mdio = <0x1>;
tttxlnx,eth-mode = <0x1>;
tttreg = <0xe000b000 0x1000>;
tttphy-mode = "rgmii-id";
tttphy-handle = <0x4>;
tttlocal-mac-address = [00 0a 35 00 01 22];
tttinterrupts = <0x0 0x16 0x4>;
tttinterrupt-parent = <0x2>;
tttcompatible = "xlnx,ps7-ethernet-1.00.a";
tttclocks = <0x3 0xd 0x3 0x1e>;
tttclock-names = "ref_clk", "aper_clk";
ttt#size-cells = <0x0>;
ttt#address-cells = <0x1>;

tttmdio {
tttt#size-cells = <0x0>;
tttt#address-cells = <0x1>;

ttttphy@0 {
tttttphandle = <0x4>;
tttttlinux,phandle = <0x4>;
tttttreg = <0x0>;
tttttdevice_type = "ethernet-phy";
tttttcompatible = "marvell,88e1510";
tttt};
ttt};
tt};

ttps7-dma@f8003000 {
tttreg = <0xf8003000 0x1000>;
tttinterrupts = <0x0 0xd 0x4 0x0 0xe 0x4 0x0 0xf 0x4 0x0 0x10 0x4 0x0 0x11 0x4 0x0 0x28 0x4 0x0 0x29 0x4 0x0 0x2a 0x4 0x0 0x2b 0x4>;
tttinterrupt-parent = <0x2>;
tttinterrupt-names = "abort", "dma0", "dma1", "dma2", "dma3", "dma4", "dma5", "dma6", "dma7";
tttcompatible = "xlnx,ps7-dma-1.00.a", "arm,primecell", "arm,pl330";
tttclocks = <0x3 0x1b>;
tttclock-names = "apb_pclk";
ttt#dma-requests = <0x4>;
ttt#dma-channels = <0x8>;
ttt#dma-cells = <0x1>;
tt};

ttps7-dev-cfg@f8007000 {
tttreg = <0xf8007000 0x100>;
tttinterrupts = <0x0 0x8 0x4>;
tttinterrupt-parent = <0x2>;
tttcompatible = "xlnx,ps7-dev-cfg-1.00.a";
tttclocks = <0x3 0xc 0x3 0xf 0x3 0x10 0x3 0x11 0x3 0x12>;
tttclock-names = "ref_clk", "fclk0", "fclk1", "fclk2", "fclk3";
tt};

ttps7-ddrc@f8006000 {
tttxlnx,has-ecc = <0x0>;
tttreg = <0xf8006000 0x1000>;
tttcompatible = "xlnx,ps7-ddrc-1.00.a", "xlnx,ps7-ddrc";
tt};
t};

tmemory@0 {
ttreg = <0x0 0x40000000>;
ttdevice_type = "memory";
t};

tpmu {
ttreg-names = "cpu0", "cpu1";
ttreg = <0xf8891000 0x1000 0xf8893000 0x1000>;
ttinterrupts = <0x0 0x5 0x4 0x0 0x6 0x4>;
ttinterrupt-parent = <0x2>;
ttcompatible = "arm,cortex-a9-pmu";
t};

tcpus {
tt#size-cells = <0x0>;
tt#address-cells = <0x1>;

ttcpu@1 {
tttreg = <0x1>;
tttinterrupt-handle = <0x2>;
ttti-cache-size = <0x8000>;
ttti-cache-line-size = <0x20>;
tttdevice_type = "cpu";
tttd-cache-size = <0x8000>;
tttd-cache-line-size = <0x20>;
tttcompatible = "arm,cortex-a9";
tttbus-handle = <0x1>;
tt};

ttcpu@0 {
tttreg = <0x0>;
tttinterrupt-handle = <0x2>;
ttti-cache-size = <0x8000>;
ttti-cache-line-size = <0x20>;
tttdevice_type = "cpu";
tttd-cache-size = <0x8000>;
tttd-cache-line-size = <0x20>;
tttcompatible = "arm,cortex-a9";
tttbus-handle = <0x1>;
tt};
t};

txillinux {
ttboard = "microzed";
t};

tchosen {
ttlinux,stdout-path = "/amba@0/serial@e0001000";
ttbootargs = "console=ttyPS0,115200n8 consoleblank=0 root=/dev/mmcblk0p2 rw rootwait earlyprintk";
t};

taliases {
ttspi0 = "/amba@0/ps7-qspi@e000d000";
ttserial3 = "/amba@0/uartlite_1@42C10000";
ttserial2 = "/amba@0/uartlite_0@42C00000";
ttserial1 = "/amba@0/serial@e0000000";
ttserial0 = "/amba@0/serial@e0001000";
ttethernet0 = "/amba@0/ps7-ethernet@e000b000";
t};
};

  • Sign in to reply
  • Cancel
  • drozwood90
    0 drozwood90 over 9 years ago

    Hi there,

    From what I can see from some Google searches, it seems this is a Linux related issue not a Zynq related issue.  I think you will need to contact Xillybus for support.
    http://xillybus.com/contact

    --Dan

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2025 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube