* How to use ttyUL0 as input and use VGA as display? @ 2008-08-16 11:34 yanlong wang 2008-08-16 12:56 ` Anatolij Gustschin 2008-08-16 19:53 ` U-boot and Xilinx emaclite, TX_PING_PONG -> stops working Philipp Hachtmann 0 siblings, 2 replies; 7+ messages in thread From: yanlong wang @ 2008-08-16 11:34 UTC (permalink / raw) To: linuxppc-embedded SGksCiAgICAgSSBwb3J0IHRoZSBsaW51eCBvbiBteSBtbDMwMCBib2FyZCAsIHRoZSBzeXN0ZW0g aXMgd29yayB3ZWxsLiBCdXQKaGF2ZSBzb21lIHNtYWxsIHByb2JsZW0uCiAgICBJIHdhbnQgdXNl ICBzZXJpYWwgcG9ydCBhcyBpbnB1dCBkZXZpY2UgIGFuZCB1c2UgVkdBIGFzIGRpc3BsYXkuCiAg ICBIb3cgaSBzZXQgdGhlIGNvbnNvbGUgcGFyYW1ldGVyPwogICAgSWYgaSBzZXQgY29uc29sZSBs aWtlIHRoaXMgIiBjb25zb2xlPXR0eVVMMCw5NjAwIGNvbnNvbGU9dHR5MApyb290PS9kZXYvcmFt Ii4gVGhlIGJvb3QgbWVzc2FnZSBkaXNwbGF5IG9uIGJvdGggb2YgIHNlcmlhbCBwb3J0IGFuZApW R0EuIEJ1dCB3aGVuIHRoZSBzeXN0ZW0gY29tZSB0byB0aGUgInNoIi5UaGVyZSBpcyBubyBvdXRw dXQgb24gdHR5VUwwCiwuQWxsIG1lc3NhZ2UgZGlzcGxheSBvbiB0aGUgVkdBICwgdGhlbiCjyWNh bm4ndCBpbnB1dCBjb21tYW5kIGJ5CnNlcmlhbCBwb3J0IC4KICAgIEhvdyB0byBzbG92ZSB0aGlz IHByb2JlbG0/CiAgICByZWdhcmRzOikKeWFubG9uZwo= ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: How to use ttyUL0 as input and use VGA as display? 2008-08-16 11:34 How to use ttyUL0 as input and use VGA as display? yanlong wang @ 2008-08-16 12:56 ` Anatolij Gustschin 2008-08-16 16:38 ` wangyanlong 2008-08-18 6:18 ` wangyanlong 2008-08-16 19:53 ` U-boot and Xilinx emaclite, TX_PING_PONG -> stops working Philipp Hachtmann 1 sibling, 2 replies; 7+ messages in thread From: Anatolij Gustschin @ 2008-08-16 12:56 UTC (permalink / raw) To: yanlong wang; +Cc: linuxppc-embedded Hi, yanlong wang wrote: > I port the linux on my ml300 board , the system is work well. But > have some small problem. > I want use serial port as input device and use VGA as display. > How i set the console parameter? > If i set console like this " console=ttyUL0,9600 console=tty0 > root=/dev/ram". The boot message display on both of serial port and > VGA. But when the system come to the "sh".There is no output on ttyUL0 > ,.All message display on the VGA , then Icann't input command by > serial port . > How to slove this probelm? Did you try to pass ttyUL0 after tty0? Try "root=/dev/ram console=tty0 console=ttyUL0,9600". Best regards, Anatolij ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: How to use ttyUL0 as input and use VGA as display? 2008-08-16 12:56 ` Anatolij Gustschin @ 2008-08-16 16:38 ` wangyanlong 2008-08-18 6:18 ` wangyanlong 1 sibling, 0 replies; 7+ messages in thread From: wangyanlong @ 2008-08-16 16:38 UTC (permalink / raw) To: linuxppc-embedded Hi, Thanks for all your replies :) if i set console like this " console=tty0 console=ttyUL0,9600 root=/dev/ram". The boot message display on both of serial port and VGA. But when the system come to the "sh", the VGA display no change at all ,and all message comeout on serial port.The words i type only show on the serial port , the VGA is no change:( regards:) yanlong -- View this message in context: http://www.nabble.com/How-to-use-ttyUL0-as-input-and-use-VGA-as-display--tp19010756p19012924.html Sent from the linuxppc-embedded mailing list archive at Nabble.com. ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: How to use ttyUL0 as input and use VGA as display? 2008-08-16 12:56 ` Anatolij Gustschin 2008-08-16 16:38 ` wangyanlong @ 2008-08-18 6:18 ` wangyanlong 1 sibling, 0 replies; 7+ messages in thread From: wangyanlong @ 2008-08-18 6:18 UTC (permalink / raw) To: linuxppc-embedded Hi, Thanks for all your replies :) if i set console like this " console=tty0 console=ttyUL0,9600 root=/dev/ram". The boot message display on both of serial port and VGA. But when the system come to the "sh", the VGA display no change at all ,and all message comeout on serial port.The words i type only show on the serial port , the VGA is no change:( regards:) yanlong -- View this message in context: http://www.nabble.com/How-to-use-ttyUL0-as-input-and-use-VGA-as-display--tp19010756p19026472.html Sent from the linuxppc-embedded mailing list archive at Nabble.com. ^ permalink raw reply [flat|nested] 7+ messages in thread
* U-boot and Xilinx emaclite, TX_PING_PONG -> stops working 2008-08-16 11:34 How to use ttyUL0 as input and use VGA as display? yanlong wang 2008-08-16 12:56 ` Anatolij Gustschin @ 2008-08-16 19:53 ` Philipp Hachtmann 2008-08-16 21:33 ` jozsef imrek 2008-08-20 12:13 ` Michal Simek 1 sibling, 2 replies; 7+ messages in thread From: Philipp Hachtmann @ 2008-08-16 19:53 UTC (permalink / raw) To: linuxppc-embedded Hi all, I use a Xilinx Virtex-4FX (with powerpc) Board (Ml403) with U-boot and Linux. I am currently wondering if someone has experience with the emaclite driver. When I unset the "ping pong" (double buffering) parameters of the core, I can use it unter Linux and U-boot. But the performance is near to non-functional (wget tells me about 10kByte/sec). Then I switched to double buffering. Now it runs very well - but only under Linux. I found a driver (xilinx_emaclite.c) in the U-boot git. That completely refuses to work correctly (of course with parameters corrected). The other driver I once found "somewhere" (in the Petalinux distribution). It at least worked without the double buffering. Both drivers talk about the ping pong options in their source, so I think they *should* know about it. Does anyone know that problem? Is there an improved driver around? Best wishes, Philipp -- http://www.hachti.de ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: U-boot and Xilinx emaclite, TX_PING_PONG -> stops working 2008-08-16 19:53 ` U-boot and Xilinx emaclite, TX_PING_PONG -> stops working Philipp Hachtmann @ 2008-08-16 21:33 ` jozsef imrek 2008-08-20 12:13 ` Michal Simek 1 sibling, 0 replies; 7+ messages in thread From: jozsef imrek @ 2008-08-16 21:33 UTC (permalink / raw) To: linuxppc-embedded [-- Attachment #1: Type: TEXT/PLAIN, Size: 1617 bytes --] dear philipp, On Sat, 16 Aug 2008, Philipp Hachtmann wrote: > I am currently wondering if someone has experience with the emaclite > driver. When I unset the "ping pong" (double buffering) parameters of > ... > > I found a driver (xilinx_emaclite.c) in the U-boot git. That completely > refuses to work correctly (of course with parameters corrected). The > other driver I once found "somewhere" (in the Petalinux distribution). i don't know what exact versions are you using. for me the following combination works reasonably both with tx-ping-pong = rx-ping-pong = 0 and with tx-ping-pong = rx-ping-pong = 1, both under u-boot and linux (i'm normally using ping-pong = 1, i've only made a quick test with ping-pong = 0): - edk 9.1, opb_ethernetlite v1.01.b, v4-fx12 (memec/avnet minimodule) - u-boot: ftp://ftp.denx.de/pub/u-boot/u-boot-1.3.3.tar.bz2 - linux: xilinx's git://git.xilinx.com/linux-2.6-xlnx, 2.6.26-rc6 also, i think there is a bug in the linux driver: the XEmacLite_Config structure used to set up the device is located on the stack. so after the init returns, further references to this struct by the os independent part of the driver are invalid. see the attached patch. i don't know if it solves your prolem, though.. (the patch also replaces a few calls of dev_kfree_skb() from interrupt context. thoose can generate lots of warnings on the console, thus slowing down operation.) -- mazsi ---------------------------------------------------------------- strawberry fields forever! mazsi@imrek.org ---------------------------------------------------------------- [-- Attachment #2: Type: TEXT/x-diff, Size: 3339 bytes --] diff --git a/drivers/net/xilinx_emaclite/adapter.c b/drivers/net/xilinx_emaclite/adapter.c index ed7a947..2a50e29 100644 --- a/drivers/net/xilinx_emaclite/adapter.c +++ b/drivers/net/xilinx_emaclite/adapter.c @@ -100,6 +100,7 @@ struct net_local { * data as an opaque object in this file (meaning that we never * reference any of the fields inside of the structure). */ + XEmacLite_Config Config; XEmacLite EmacLite; void *desc_space; @@ -168,7 +169,7 @@ static void reset(struct net_device *dev, DUPLEX duplex) XEmacLite_EnableInterrupts(&lp->EmacLite); if (lp->deferred_skb) { - dev_kfree_skb(lp->deferred_skb); + dev_kfree_skb_any(lp->deferred_skb); lp->deferred_skb = NULL; lp->stats.tx_errors++; } @@ -279,7 +280,7 @@ static int xemaclite_Send(struct sk_buff *orig_skb, struct net_device *dev) spin_unlock_irqrestore(&reset_lock, flags); lp->stats.tx_bytes += len; - dev_kfree_skb(new_skb); + dev_kfree_skb_any(new_skb); dev->trans_start = jiffies; return 0; @@ -298,7 +299,7 @@ static void SendHandler(void *CallbackRef) return; } else { - dev_kfree_skb(lp->deferred_skb); + dev_kfree_skb_any(lp->deferred_skb); lp->deferred_skb = NULL; netif_wake_queue(dev); } @@ -354,7 +355,7 @@ static void RecvHandler(void *CallbackRef) if (!len) { lp->stats.rx_errors++; - dev_kfree_skb(skb); + dev_kfree_skb_any(skb); //printk(KERN_ERR "%s: Could not receive buffer\n",dev->name); spin_lock(&reset_lock); //reset(dev, UNKNOWN_DUPLEX); @@ -438,8 +439,6 @@ static int xemaclite_setup( u32 virt_baddr; /* virtual base address of emac */ - XEmacLite_Config Config; - struct net_device *ndev = NULL; struct net_local *lp = NULL; @@ -471,9 +470,9 @@ static int xemaclite_setup( lp->ndev = ndev; /* Setup the Config structure for the XEmacLite_CfgInitialize() call. */ - Config.BaseAddress = r_mem->start; /* Physical address */ - Config.TxPingPong = pdata->tx_ping_pong; - Config.RxPingPong = pdata->rx_ping_pong; + lp->Config.BaseAddress = r_mem->start; /* Physical address */ + lp->Config.TxPingPong = pdata->tx_ping_pong; + lp->Config.RxPingPong = pdata->rx_ping_pong; /* Get the virtual base address for the device */ @@ -485,7 +484,7 @@ static int xemaclite_setup( } - if (XEmacLite_CfgInitialize(&lp->EmacLite, &Config, virt_baddr) != XST_SUCCESS) { + if (XEmacLite_CfgInitialize(&lp->EmacLite, &lp->Config, virt_baddr) != XST_SUCCESS) { dev_err(dev, "XEmacLite: Could not initialize device.\n"); rc = -ENODEV; goto error; @@ -498,12 +497,12 @@ static int xemaclite_setup( XEmacLite_SetMacAddress(&lp->EmacLite, ndev->dev_addr); dev_info(dev, - "MAC address is now %2x:%2x:%2x:%2x:%2x:%2x\n", + "MAC address is now %02x:%02x:%02x:%02x:%02x:%02x\n", pdata->mac_addr[0], pdata->mac_addr[1], pdata->mac_addr[2], pdata->mac_addr[3], pdata->mac_addr[4], pdata->mac_addr[5]); - dev_err(dev, "using fifo mode.\n"); + dev_err(dev, "using fifo mode, tx-ping-pong=%d, rx-ping-pong=%d.\n", lp->Config.TxPingPong, lp->Config.RxPingPong); XEmacLite_SetRecvHandler(&lp->EmacLite, ndev, RecvHandler); XEmacLite_SetSendHandler(&lp->EmacLite, ndev, SendHandler); ndev->hard_start_xmit = xemaclite_Send; ^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: U-boot and Xilinx emaclite, TX_PING_PONG -> stops working 2008-08-16 19:53 ` U-boot and Xilinx emaclite, TX_PING_PONG -> stops working Philipp Hachtmann 2008-08-16 21:33 ` jozsef imrek @ 2008-08-20 12:13 ` Michal Simek 1 sibling, 0 replies; 7+ messages in thread From: Michal Simek @ 2008-08-20 12:13 UTC (permalink / raw) To: Philipp Hachtmann; +Cc: linuxppc-embedded Hi Philipp, I did U-BOOT driver for emaclite. You can set both ping pong mode - all combination are supported. I tested this driver with Microblaze and works well. I use this driver almost every day and I have no problem with it. If you have problem with this driver please send your email to u-boot mailing list. Regards, Michal > Hi all, > > I use a Xilinx Virtex-4FX (with powerpc) Board (Ml403) with U-boot and > Linux. > > I am currently wondering if someone has experience with the emaclite > driver. When I unset the "ping pong" (double buffering) parameters of > the core, I can use it unter Linux and U-boot. But the performance is > near to non-functional (wget tells me about 10kByte/sec). > Then I switched to double buffering. Now it runs very well - but only > under Linux. > > I found a driver (xilinx_emaclite.c) in the U-boot git. That completely > refuses to work correctly (of course with parameters corrected). The > other driver I once found "somewhere" (in the Petalinux distribution). > It at least worked without the double buffering. Both drivers talk about > the ping pong options in their source, so I think they *should* know > about it. > > > Does anyone know that problem? Is there an improved driver around? > > Best wishes, > > Philipp > > > > > ^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2008-08-20 12:26 UTC | newest] Thread overview: 7+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2008-08-16 11:34 How to use ttyUL0 as input and use VGA as display? yanlong wang 2008-08-16 12:56 ` Anatolij Gustschin 2008-08-16 16:38 ` wangyanlong 2008-08-18 6:18 ` wangyanlong 2008-08-16 19:53 ` U-boot and Xilinx emaclite, TX_PING_PONG -> stops working Philipp Hachtmann 2008-08-16 21:33 ` jozsef imrek 2008-08-20 12:13 ` Michal Simek
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).