From vxwexplo-errs@csg.lbl.gov Sat Jun 1 04:03:15 2002 From: Vxworks Exploder Date: Sat Jun 1 04:03:17 PDT 2002 Subject: comp.os.vxworks newsdigest Comp.Os.Vxworks Daily Digest Sat Jun 1 04:03:10 PDT 2002 Subject: Implementation of std::fstream using rawFS file-system under VxWorks Subject: Re: Frequent interrupt hangs VxWorks 5.4 on PowerPC Subject: Re: non-blocking pipes on 5.4? Subject: Re: Frequent interrupt hangs VxWorks 5.4 on PowerPC Subject: Re: Target Type for GCC Cross Compiler and Binutils: VxSim on Windows NT. Subject: Re: Number of SYNC packets... Subject: Re: Implementation of std::fstream using rawFS file-system under VxWorks Subject: How to make a specific function always be loaded at the lowest address? Subject: Re: How to make a specific function always be loaded at the lowest address? Subject: Looking for cpu usage computation source code Subject: Re: AMC CodeTEST for VxWorks Subject: error when issue memShow command Subject: Re: Frequent interrupt hangs VxWorks 5.4 on PowerPC Subject: Re: error when issue memShow command Subject: parsing console output on bootup Subject: How to write linker scripts to get the same memory layout for two downloadable projects. Subject: Strange IOCTL problem on telnet Subject: PowerPC DCC Vs GCC Subject: DSI Exception - PowerPC Subject: Re: Looking for cpu usage computation source code Subject: Re: FTP problem Subject: Re: SSH commercial implementation for VxWorks Subject: Re: DSI Exception - PowerPC Subject: dosFS questions Subject: Re: dosFS questions ------------------------------------------------------- Newsgroups: comp.os.vxworks,comp.lang.c++ Subject: Implementation of std::fstream using rawFS file-system under VxWorks Date: 31 May 2002 05:14:56 -0700 From: dlong@wvintenltd.com (Darren Long) Organization: http://groups.google.com/ Message-ID: <5c34b056.0205310414.27128f79@posting.google.com> This message was posted to comp.os.vxworks and comp.lang.c++. I apologise for the cross-posting, but feel that the questions (at least some of them) are relevant to both groups. Being a newbie with regard to VxWorks, hard disks, fibre-channel file systems, I have some questions. I need to implement a STANAG (NATO standard) 4575 file-system (see reference below for unclassified NATO document)under VxWorks. The implementation will be in C++, using Rhapsody CASE tool. The media is a Seagate Cheetah 73-LPFC 72GByte drive with a fibre-channel interface, which must be represented by a single partition. I would like to provide full support for the std::fstream interface to files stored within the STANAG 4575 file-system. I believe that using VxWorks rawFS is the most likely solution, but wondered if it will support the media size in one partition? Being unfamiliar with VxWorks, I suspect that I may be able to use the supplied std::fstream library "out of the box" if I implement a STANAG 4575 file-system manager on top of the rawFS, and implement a SCSI-FCP driver for the disk interface. Alternatively, I wonder if I may have to provide my own implementation of std::fstream (non_std::fstream) or do away with the fstream interface completely and implement a bespoke interface. Does anyone have any suggestions on what approach to take? Thanks Darren Long References: http://www.nato.int/docu/stanag/4575/4575.htm --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Frequent interrupt hangs VxWorks 5.4 on PowerPC Date: Fri, 31 May 2002 08:48:56 -0700 From: Joe Durusau Organization: Lockheed Martin Corporation Message-ID: <3CF79B68.737AA99@lmco.com> References: <82606370.0205301445.21abb88@posting.google.com> Mike Johnson wrote: > > A coworker of mine ran a test in which an external interrupt was > generated approximately every 10 microseconds, and hung his MPC7400 > CPU board. Resetting and examining memory from the VxWorks boot > prompt, we observed that a task's stack was corrupted, and so was our > code. Obviously, this is not a practical application; an interrupt at > this frequency leaves very little time for anything else. > Nevertheless, the system should handle interrupts at any frequency > without overflowing stacks or corrupting code. Has anyone else > observed this problem? I haven't seen this personally, but there are some things that you just can't do. For example, if your ISR gives a semaphore or does something that in effect makes the kernel have some deferred task that it needs to work on later, you willl cause a kernel panic if you do things at this rate. Also, on some arch's, the ISR uses a task's stack, so if the ISR does any significant work, (not likely in your test case) it can overflow the stack. Finally, it might just be a simple memory leak in the ISR code itself. Speaking only for myself, Joe Durusau --------------------------- Newsgroups: comp.os.vxworks Subject: Re: non-blocking pipes on 5.4? Date: Fri, 31 May 2002 08:57:37 -0700 From: Joe Durusau Organization: Lockheed Martin Corporation Message-ID: <3CF79D71.1BC4FF33@lmco.com> References: <3CF6641D.BF8CD148@lucent.com> "Peter W. Colovas" wrote: > > Can I set up a pipe to be non-blocking on reads and writes? I can't find > an answer for this in the documentation or the FAQ. I think I can do > this using select(), with a wait time of 0. is this correct? > > Thanks, > -Pete That will work for a read, but a write can still block. Message queues support O_NONBLOCK and might be better for you. Speaking only for myself, Joe Durusau --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Frequent interrupt hangs VxWorks 5.4 on PowerPC Date: Fri, 31 May 2002 10:57:43 -0400 From: Aaron MacDonald Organization: Alcatel - Carrier Internetworking Division Message-ID: <3CF78F67.732273AE@alcatel.com> References: <82606370.0205301445.21abb88@posting.google.com> Reply-To: aaron.macdonald@alcatel.com This is a multi-part message in MIME format. - --------------A169BDEA7FDFD599FB1E7CED Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit When you examined the stack, did you see the function reschedule in the calling chain? We have seen a specific case of someone calling taskUnlock inside an ISR which can cause problems. If you do see reschedule in the stack trace, I can give you more details. Cheers, Aaron Mike Johnson wrote: > A coworker of mine ran a test in which an external interrupt was > generated approximately every 10 microseconds, and hung his MPC7400 > CPU board. Resetting and examining memory from the VxWorks boot > prompt, we observed that a task's stack was corrupted, and so was our > code. Obviously, this is not a practical application; an interrupt at > this frequency leaves very little time for anything else. > Nevertheless, the system should handle interrupts at any frequency > without overflowing stacks or corrupting code. Has anyone else > observed this problem? - --------------A169BDEA7FDFD599FB1E7CED Content-Type: text/x-vcard; charset=us-ascii; name="aaron.macdonald.vcf" Content-Transfer-Encoding: 7bit Content-Description: Card for Aaron MacDonald Content-Disposition: attachment; filename="aaron.macdonald.vcf" begin:vcard n:MacDonald;Aaron tel;work:613-784-3540 x-mozilla-html:FALSE org:Alcatel - Carrier Internetworking Division adr:;;;Kanata;Ontario;;Canada version:2.1 email;internet:aaron.macdonald@alcatel.com title:Software Engineer x-mozilla-cpt:;-8264 fn:
Aaron MacDonald
670 RSP Multi-Shelf System

end:vcard - --------------A169BDEA7FDFD599FB1E7CED-- --------------------------- Newsgroups: comp.os.vxworks,gnu.gcc.help Subject: Re: Target Type for GCC Cross Compiler and Binutils: VxSim on Windows NT. Date: 31 May 2002 08:39:36 -0700 From: Giridhar.Nag@ubinetics.co.in (Y Giridhar Appaji Nag) Organization: http://groups.google.com/ Message-ID: <4aea5785.0205310739.5827e99a@posting.google.com> References: <4aea5785.0205020026.6933e49c@posting.google.com> Hi, Giridhar.Naag@ubinetics.coo.in (Y Giridhar Appaji Nag) wrote in message news:<4aea5785.0205020026.6933e49c@posting.google.com>... > What I now want is to be able to do the same for the VxSim target. > My VxSim runs on Windows NT. What would my target description be > of $target be in --target=$target? Thanks to all those who responded ... it was i386-pc-mingw32 - -cheers, Giridhar --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Number of SYNC packets... Date: 31 May 2002 11:52:31 -0400 From: Bill Pringlemeir Organization: Factory of the mind Message-ID: References: Sender: bpringlemeir@DeadDuck Bill> Are there socket options to allow more SYNC packets to be sent Bill> in a connect phase than just two? Just to clarify, that is send more than two SYNC packets when the other sides does not respond to the connect. I think that most systems send three by default (according to my iptables log messages). It was suggest that I try to change the timeout, which I haven't done yet. The reason to increase the number of SYN packets is so that redundancy nodes can observe the trouble connecting and establish the connection... [Which would be step two in subverting a node, after a DOS attack on the server, but this is not my idea.] Regards, Bill Pringlemeir. - -- Don't let God go shopping with your sister. Don't forget to tune your car. An egg is in the air. Stealing a dinoflagellate should not be done under the influence of alcohol. You'll later be gay. Your lucky number today is 29842924728. Look for it everywhere. vxWorks FAQ, "http://www.xs4all.nl/~borkhuis/vxworks/vxworks.html" --------------------------- Newsgroups: comp.os.vxworks,comp.lang.c++ Subject: Re: Implementation of std::fstream using rawFS file-system under VxWorks Date: Fri, 31 May 2002 16:54:00 GMT From: "Leonid Rosenboim" Organization: Verio Message-ID: References: <5c34b056.0205310414.27128f79@posting.google.com> Daren, Althouh I am a somewhat confused by your question, here are a few points you might find useful: Bundled rawFs that comes with VxWorks, might have a limitation of 4GBytes for the entire volume, due to 32-bit integer arithmetics used. As part of the DosFs 2.0 project that I headed, while at WindRiver, we also did an upgrade for rawFs, extending its arithmetics to 64-bit, and adding IOCTL codes for dealing with 64-bit volume size. I do not know for sure what version of VxWorks ships with the extended rawFs version, or if a DosFs 2.0 upgrade also provides this modified library. I do find it surprising that you would want to use rawFs to begin with, instead of writing the new file system directly on top of Block Device, with or without disk cache support. The standard method of implementing file system on VxWorks uses the standard Unix-like I/O system API, open, close,read, write, ioctl, which will allow any C++ application to use this file system with very similar semantics to any other file system (e.g. DosFs, cdromFs, NFS, etc). Hope this helps, - - Leonid Rosenboim "Darren Long" wrote in message news:5c34b056.0205310414.27128f79@posting.google.com... > This message was posted to comp.os.vxworks and comp.lang.c++. I > apologise for the cross-posting, but feel that the questions (at least > some of them) are relevant to both groups. > > Being a newbie with regard to VxWorks, hard disks, fibre-channel file > systems, I have some questions. > > I need to implement a STANAG (NATO standard) 4575 file-system (see > reference below for unclassified NATO document)under VxWorks. The > implementation will be in C++, using Rhapsody CASE tool. The media is > a Seagate Cheetah 73-LPFC 72GByte drive with a fibre-channel > interface, which must be represented by a single partition. > > I would like to provide full support for the std::fstream interface to > files stored within the STANAG 4575 file-system. > > I believe that using VxWorks rawFS is the most likely solution, but > wondered if it will support the media size in one partition? > > Being unfamiliar with VxWorks, I suspect that I may be able to use the > supplied std::fstream library "out of the box" if I implement a STANAG > 4575 file-system manager on top of the rawFS, and implement a SCSI-FCP > driver for the disk interface. Alternatively, I wonder if I may have > to provide my own implementation of std::fstream (non_std::fstream) or > do away with the fstream interface completely and implement a bespoke > interface. > > Does anyone have any suggestions on what approach to take? > > Thanks > > Darren Long > > > References: http://www.nato.int/docu/stanag/4575/4575.htm --------------------------- Newsgroups: comp.os.vxworks Subject: How to make a specific function always be loaded at the lowest address? Date: Fri, 31 May 2002 10:07:56 -0700 From: "Liang Yang" Organization: RTS-LAB Message-ID: Reply-To: "Liang Yang" Hi, I build a project consist of four .c files, say 1.c, 2.c,3.c,4.c. Each .c file contains several functions. Now I want a function in 3.c to be loaded always at the lowest address(compared with other functions in other .c files) when I download project.out file to target machine,how to do it? Thank you. Liang --------------------------- Newsgroups: comp.os.vxworks Subject: Re: How to make a specific function always be loaded at the lowest address? Date: Fri, 31 May 2002 17:18:02 GMT From: "Leonid Rosenboim" Organization: Verio Message-ID: References: Its rather simple, put that particular function at the top of the source file, preceded only by global variable definitions, and link the three files together with the 3.c file being first, e.g. ldppc -r -o project.out 3.o 1.o 2.o 4.o The linker preserves the order. "Liang Yang" wrote in message news:ad8aji$nfe$1@news.asu.edu... > Hi, > > I build a project consist of four .c files, say 1.c, 2.c,3.c,4.c. > Each .c file contains several functions. Now I want a function in > 3.c to be loaded always at the lowest address(compared with other > functions in other .c files) when I download project.out file to > target machine,how to do it? > > Thank you. > > Liang > > --------------------------- Newsgroups: comp.os.vxworks Subject: Looking for cpu usage computation source code Date: Fri, 31 May 2002 12:38:22 -0500 From: "K.Gnanaratne" Organization: Lucent Technologies Message-ID: <3CF7B50E.29045871@lucent.com> Is there a site that has source code to compute the tasks cpu usage in VxWorks. I am trying to implement a simple scheme to monitor few tasks & and to report CPU usage to the host system. I cannot use spy. Thanks K. Gnanaratne --------------------------- Newsgroups: comp.os.vxworks Subject: Re: AMC CodeTEST for VxWorks Date: Fri, 31 May 2002 10:49:42 -0700 From: "Dan Gold" Organization: Mailgate.ORG Server - http://www.Mailgate.ORG Message-ID: References: <7ce21ebb.0205301440.16baea77@posting.google.com> Sender: gold@ensemble.com "GAH" wrote in message news:7ce21ebb.0205301440.16baea77@posting.google.com... > OK. I'm working on a rad750 target trying to get CodeTEST to run but > am having some difficulty. After having read the manual I went back > and recompiled using the ctcxx compiler. Next it says that I need to I'm assuming you're using the hardware CodeTEST. You expected it to work with recompiling and using the ctcxx compiler ? Using the ctcxx compiler causes the software to write out the "triggers" that the CodeTEST unit looks for, as well as generating some other files CodeTEST uses for correlating the tags to the code. > include CodeTEST in my config.h file (which I can do using the Project > Facility). Of course, and you should have an #ifdef CODE_TEST in usrConfig.c, because CodeTEST uses the vxWorks task hook routines. >Once I do this, will I need to do a full rebuild of my > kernel and load it back to the target? I'm trying to avoid this as > memory allocation, NVM issues, etc, could make it pretty messy. Also > I was not involved with the inital kernel upload so it might take some > additional people (yet another headache). First, why are you using CodeTEST ? To profile your system ? If you're using it to profile the entire system, why *wouldn't* you want to rebuild everything ? How can you know where your bottlenecks are if you don't rebuild the entire system ? You can specify that you only want to re-compile certain files if you only want to profile those, but to get a complete system picture, you should really rebuild everything. And speaking as a satisfied user, it will be worth the extra time required to rebuild everything. Once you have everything built, and you can convince yourself that you don't need to rebuild certain parts of the code, then you can exclude those. But you should at least start out examining as much as possible. Why should memory allocation etc... make things messy ? > In any case, I'd be more than interested to hear anyone else's > experience with CodeTEST and any pointers you can supply me with. Disclaimer First: I've used CodeTEST on i960, 860, 8260, and 750/8260 designs. I like it, think it's a great tool, and am a satisfied user. I don't own AMC stock, blah blah blah, yada yada yada.... I've never used the "software only" CodeTEST, only the hardware version. Depending on your designs, it can be a bit tricky to get it setup correctly. You need to understand what signals are on what mictors and where CodeTEST is exepcting to find them. Grab a hardware guy if you need to, so make sure the signals are correct. There seems to be some difference in interpretation of the "HP mictor" standard. So you may need to use a couple of the "flying leads" on the CodeTEST instead of just the cables. Also, when you define an area to write out the tags, use a non-cacheable RAM address. Do not choose ROM/FLASH, etc... as these areas are slow. When I use it, I just mark the first 4K of RAM as non-cacheable and use locations 0x0 and 0x8. You can also define some 'phantom' area with nothing there, and setup the region in your memory controller. The CodeTEST design/support people at AMC are great. They are responsive, intelligent, and willing to help, don't hesitate to call them to help you get started. It will be worth it. Every time we've used it, it's helped us find performance bottlenecks, system problems, etc... My only complaint is that the last time we used it (version 3.0), it was horribly sloooooooow in examining the data. I believe they have re-written that part so it's fast again, but we've been too busy on other things to try it again. hth, Dan Gold gold@ensemble.com --------------------------- Newsgroups: comp.os.vxworks Subject: error when issue memShow command Date: Fri, 31 May 2002 15:25:28 -0400 From: "neural" Organization: Nortel Message-ID: VxWorks (for VxSim for Windows) version 5.4.2. Kernel: WIND version 2.5 - -> memShow WTX Error 0x100d2 (AGENT_GOPHER_TRUNCATED) value = -1 = 0xffffffff What's the possible reason? Thanks. --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Frequent interrupt hangs VxWorks 5.4 on PowerPC Date: 31 May 2002 12:41:37 -0700 From: mwj999@hotmail.com (Mike Johnson) Organization: http://groups.google.com/ Message-ID: <82606370.0205311141.63bcfa7d@posting.google.com> References: <82606370.0205301445.21abb88@posting.google.com> <3CF79B68.737AA99@lmco.com> Joe Durusau wrote in message news:<3CF79B68.737AA99@lmco.com>... > I haven't seen this personally, but there are some things that > you just can't do. For example, if your ISR gives a semaphore or does > something that in effect makes the kernel have some deferred task that > it needs to work on later, you willl cause a kernel panic if you do > things > at this rate. Also, on some arch's, the ISR uses a task's stack, so if > the ISR does any significant work, (not likely in your test case) it > can overflow the stack. Finally, it might just be a simple memory leak > in the ISR code itself. > > Speaking only for myself, > > Joe Durusau Thanks, Joe. I've only been using real-time OSs for eighteen years, and VxWorks for nine years, so, obviously, I don't know everything. I am well aware, however, of kernel work queue panics, and of the system calls that ISRs aren't allowed to make. My ISR (actually I'm using the decrementer) doesn't do much more than decrement a counter and flash some LEDs. It makes no system calls. This problem isn't a kernel work queue panic. Kernel work queue panics usually reboot the board and leave some textual information in low memory (at 0x4300 on the Synergy board I'm using). My board doesn't reboot, and there's no text at 0x4300. The board just hangs. Stacks and code, seen from the VxWorks boot prompt after reset and before the OS is reloaded, are corrupted. If this symptom is caused by a stack overflow, the stack usage doesn't increase gradually over time. Frankly, I suspect a race condition in Wind River's interrupt handling code. You might have seen this same problem yourself without really noticing it. Ever have a board running VxWorks just lock up for no apparent reason? If so, when you reset the board, did you ever stop it at the VxWorks boot prompt and examine memory? --------------------------- Newsgroups: comp.os.vxworks Subject: Re: error when issue memShow command Date: Fri, 31 May 2002 14:56:19 -0500 From: Dinker Charak Organization: Fermi National Accelerator Laboratory Message-ID: <3CF7D563.1AA65918@fnal.gov> References: in tornado's workspace's vxworks tab, make sure that u have included development tools components -> wdb agent components -> wdb gopher show routines -> mem show routines hth, dinker neural wrote: > > VxWorks (for VxSim for Windows) version 5.4.2. > Kernel: WIND version 2.5 > > -> memShow > WTX Error 0x100d2 (AGENT_GOPHER_TRUNCATED) > value = -1 = 0xffffffff > > What's the possible reason? Thanks. --------------------------- Newsgroups: comp.os.vxworks Subject: parsing console output on bootup Date: 31 May 2002 20:33:35 GMT From: todd@possibility.com (Hoff, Todd) Organization: please Message-ID: <20020531163335.343$aF@newsreader.com> The filesystem outputs info to the console on bootup. We need to fail a card anytime a file has been deleted because of a repair. The only way this information seems to available is the console output. Anyone have any ideas how we can get this text to parse and still have it be displayed? Or is there a better way? thanx - -- It's only when your cage is rattled do you realize you are in a cage. --------------------------- Newsgroups: comp.os.vxworks Subject: How to write linker scripts to get the same memory layout for two downloadable projects. Date: Fri, 31 May 2002 15:51:40 -0700 From: "Liang Yang" Organization: RTS-LAB Message-ID: Reply-To: "Liang Yang" Hi, I have two VxWorks projects,say A.out and B.out. Now I want to make both A.out and B.out begin from the same memory address when I download them to target machine sperately. How to write liner scripts to give a specific memory address as a beginning address for A.out and B.out? Thanks. Liang --------------------------- Newsgroups: comp.os.vxworks Subject: Strange IOCTL problem on telnet Date: 31 May 2002 15:54:14 -0700 From: vkgargmobile@yahoo.com (VKG) Organization: http://groups.google.com/ Message-ID: <6fc8f979.0205311454.377fe94c@posting.google.com> Hello, I am using Vxworks 5.4, and have following problem, From My telnet client, hit any escape sequence (Like Up arrow, Dn Arrow etc), and then do IOCTL (ioTaskStdGet(0,0) ,FIONREAD,(int)&bytesunread ) to read read the number of characters at input buffer, I alway get ZERO, I have providing enough time delay etc and this is working fine with serial port. Also , If try to read forcefully, I do read character, for example I read three characters for up arrow by making 3 getc() call, I tried to trace it down little bit, and found that input ring buffer is getting all the values correctly, but when I do IOCTL, TO and FROM pointer (inside ring buffer) are same and that is why it is returning Zero ??? Please provide me some input on this... Thanks vkg --------------------------- Newsgroups: comp.os.vxworks Subject: PowerPC DCC Vs GCC Date: 31 May 2002 15:57:03 -0700 From: naushit@hotmail.com (Naushit Sakaradia) Organization: http://groups.google.com/ Message-ID: Are there any benchmarks that shows performance of GCC(Gnu Compiler) Vs DCC(Diab compiler)? Has anybody has any openion about Best Powerpc Compiler?? Thanks for any pointer/hint. Naushit. --------------------------- Newsgroups: comp.os.vxworks Subject: DSI Exception - PowerPC Date: 31 May 2002 16:40:35 -0700 From: juttu@yahoo.com (Girish Chandraiah) Organization: http://groups.google.com/ Message-ID: We have a DSI exception in our application, and the exception handler printed out SRR0 contents to be 0x03e44aac. We did a lkAddr on the address in 0x03644aac and that gave out something like this [BPP 5]{CP}-> lkAddr 0x03e44aac 0x03e4499c ObjectPool::deallocateObjects(void) text 0x03e44bf4 ObjectPool::checkinPoolObject (RemotePacketBackhaulSetup*) text 0x03e44dd0 ObjectPool::removeObjects(unsigned long)text 0x03e45024 ObjectPool::deallocateObjects(void) text 0x03e4527c ObjectPool::checkinPoolObject (RemoteCircuitBackhaulSetup*) text 0x03e45458 ObjectPool::removeObjects(unsigned long)text 0x03e456ac ObjectPool::deallocateObjects(void) text 0x03e45904 ObjectPool::checkinPoolObject(CircuitGwProxy *) text 0x03e45ae0 ObjectPool::removeObjects(unsigned long) text 0x03e45d34 ObjectPool::deallocateObjects(void) text 0x03e45f8c ObjectPool::checkinPoolObject(CircuitBts *)text I then did a listing on 0x03e4499c(first line after lkAddr above) and that gave me something like this [BPP 5]{CP}-> l 0x03e4499c ObjectPool::deallocateObjects(void): 0x3e4499c 9421ffd8 stwu r1,-40(r1) 0x3e449a0 7c0802a6 mfspr r0,LR 0x3e449a4 93410010 stw r26,16(r1) 0x3e449a8 93610014 stw r27,20(r1) 0x3e449ac 93810018 stw r28,24(r1) 0x3e449b0 93a1001c stw r29,28(r1) 0x3e449b4 93c10020 stw r30,32(r1) 0x3e449b8 93e10024 stw r31,36(r1) 0x3e449bc 9001002c stw r0,44(r1) 0x3e449c0 7c7f1b78 or r31,r3,r3 value = 65292740 = 0x3e449c4 = ObjectPool::deallocateObjects(void) + 0x28 [BPP 5]{CP}-> l 0x3e449c4 3d200422 lis r9,1058 0x3e449c8 806951a8 lwz r3,20904(r9) 0x3e449cc 3d200036 lis r9,54 0x3e449d0 3bc9f8a0 addi r30,r9,-1888 0x3e449d4 7fc803a6 mtspr LR,r30 0x3e449d8 4e800021 blrl 0x3e449dc 74600100 andis. r0,r3,256 0x3e449e0 41820074 bc 12,2,0x03e44a54 0x3e449e4 3fa00422 lis r29,1058 0x3e449e8 817d5194 lwz r11,20884(r29) value = 65292780 = 0x3e449ec = ObjectPool::deallocateObjects(void) + 0x50 Question is, is there an easy way to reverse engineer this to the instruction within my C++ code that caused the exception? Am I even approaching this the right way? Anything that you could suggest? Thanks for your time in advance. Regards, Girish --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Looking for cpu usage computation source code Date: Sat, 01 Jun 2002 01:08:28 GMT From: "H. E. Taylor" Organization: MTS Internet Message-ID: <3CF8392D.7F06@despam.autobahn.mb.ca> References: <3CF7B50E.29045871@lucent.com> In article <3CF7B50E.29045871@lucent.com>, K.Gnanaratne wrote: > > Is there a site that has source code to compute > the tasks cpu usage in VxWorks. I am trying to implement a simple > scheme to monitor few tasks & and to report CPU usage to the host > system. I cannot use spy. > I don't have source for you, but I have done this by adding a task switch hook and using a field in the TCB to store a timestamp. Seems to me there was a private external table as well. - -het - -- "progress in software has not followed Moore's law." -John Holland Computer Links: http://www.autobahn.mb.ca/~het/clinks.html H.E. Taylor http://www.autobahn.mb.ca/~het/ --------------------------- Newsgroups: comp.os.vxworks Subject: Re: FTP problem Date: 31 May 2002 19:31:42 -0700 From: vdalal@hotmail.com (Vasu Dalal) Organization: http://groups.google.com/ Message-ID: <363d071b.0205311831.440123ba@posting.google.com> References: Hi: Before re-booting, check the number of file descriptors from the VxWorks shell using "iosFdShow". Are there a lot of used/hung file descriptors ? If u need to increase the number of file descriptors in your image : [snip] http://www.xs4all.nl/~borkhuis/vxworks/vxw_pt3.html#3.1 Q: What is the maximum number of open file descriptors in VxWorks? Is it configurable? A: Yes, see config/all/configAll.h: #define NUM_FILES 50 /* max 50 files open simultaneously */ The maximum number is 256, as this is a hard-coded maximum for select, but you can only use up to 253 files, as you cannot use fd's 0, 1 and 2. Increasing NUM_FILES to 100, only got us to about 79 file descriptors. Then we had to change to following #defines as well /*Changed SJP 2/1/00 all entries were 64 and then bumbed to 128*/ /*Since the NUM_FILES in configAll.h was changed to 256 we had to increase the size of the clusters that are used when opening sockets*/ #define NUM_SYS_64 256 /* 64 byte system clusters */ #define NUM_SYS_128 256 /* 128 byte system clusters */ #define NUM_SYS_256 256 /* 256 byte system clusters */ #define NUM_SYS_512 256 /* 512 byte system clusters */ [snip] hth, vasu ref: > I have a ftp problem with my target. > (The target spec is, CPU NET+ARM 40, VxWorks 5.4) > > I programmed ftp client using ftpLib in my target. > And the ftp server is on Linux machine. > My target continuously upload files every 30 seconds to > the ftp server. The file size is about 10KB. > > The problem is that the uploading sometimes stops for some reason. > (maybe 1 time / 2~3 days) > Once the uploading stops it never resumes again for itself. > The only method to resume uploading is power off/on the > target. > > I have a question. Is the ftp socket implemented in ftpLib > of VxWorks is blocking? If so, is it possible for ftp > client to wait forever in read function if it loses some packet? > > Thanks in advance for the advice of the gurus here, > :-) --------------------------- Newsgroups: comp.os.vxworks Subject: Re: SSH commercial implementation for VxWorks Date: 31 May 2002 19:53:51 -0700 From: vdalal@hotmail.com (Vasu Dalal) Organization: http://groups.google.com/ Message-ID: <363d071b.0205311853.20ea7a1b@posting.google.com> References: Hi: Talk to your FAE. This one works with RadipControl CLI from VxWorks. http://www.icon-labs.com/products.html#Security Others include: http://www.teamf1.com Also look at : http://www.xs4all.nl/~borkhuis/vxworks/vxw_pt6.html#6.9 hth, vasu ref: > What are the good SSH commercial implementations for VxWorks ? > > Regards > DSA --------------------------- Newsgroups: comp.os.vxworks Subject: Re: DSI Exception - PowerPC Date: 31 May 2002 23:54:49 -0700 From: john_94501@yahoo.com (John) Organization: http://groups.google.com/ Message-ID: <488e459a.0205312254.2f5461c4@posting.google.com> References: Hello, There are three techniques I can think of for dealing with this: 1) Attach the debugger to the task that took the exception. It should take you straight to the code causing the problem as long as you compiled with debug enabled (-g option). 2) You can disassemble the area around the address that crashed and see if you can pin down the location based on other function calls etc (this takes a little experience, esp. if you have optimised code) 3) Disassemble the object file (easier if the app is linked to the kernel btw) using the objdumpppc -S - again you'll need to have debug enabled. If you do this, objdump will interleave the source with the disassembly (though optimisation can make this a little unreliable, so you might want to build without the optimisation). HTH, John... juttu@yahoo.com (Girish Chandraiah) wrote in message news:... > We have a DSI exception in our application, and the exception handler > printed out SRR0 contents to be 0x03e44aac. We did a lkAddr on the > address in 0x03644aac and that gave out something like this > > [BPP 5]{CP}-> lkAddr 0x03e44aac > 0x03e4499c ObjectPool::deallocateObjects(void) > text > 0x03e44bf4 ObjectPool::checkinPoolObject > (RemotePacketBackhaulSetup*) text > 0x03e44dd0 ObjectPool::removeObjects(unsigned > long)text > 0x03e45024 ObjectPool::deallocateObjects(void) > text > 0x03e4527c ObjectPool::checkinPoolObject > (RemoteCircuitBackhaulSetup*) text > 0x03e45458 ObjectPool::removeObjects(unsigned > long)text > 0x03e456ac ObjectPool::deallocateObjects(void) text > 0x03e45904 ObjectPool::checkinPoolObject(CircuitGwProxy > *) text > 0x03e45ae0 ObjectPool::removeObjects(unsigned long) text > 0x03e45d34 ObjectPool::deallocateObjects(void) text > 0x03e45f8c ObjectPool::checkinPoolObject(CircuitBts *)text > > > I then did a listing on 0x03e4499c(first line after lkAddr above) and > that gave me something like this > > [BPP 5]{CP}-> l 0x03e4499c > > ObjectPool::deallocateObjects(void): > 0x3e4499c 9421ffd8 stwu r1,-40(r1) > 0x3e449a0 7c0802a6 mfspr r0,LR > 0x3e449a4 93410010 stw r26,16(r1) > 0x3e449a8 93610014 stw r27,20(r1) > 0x3e449ac 93810018 stw r28,24(r1) > 0x3e449b0 93a1001c stw r29,28(r1) > 0x3e449b4 93c10020 stw r30,32(r1) > 0x3e449b8 93e10024 stw r31,36(r1) > 0x3e449bc 9001002c stw r0,44(r1) > 0x3e449c0 7c7f1b78 or r31,r3,r3 > value = 65292740 = 0x3e449c4 = > ObjectPool::deallocateObjects(void) + 0x28 > [BPP 5]{CP}-> l > 0x3e449c4 3d200422 lis r9,1058 > 0x3e449c8 806951a8 lwz r3,20904(r9) > 0x3e449cc 3d200036 lis r9,54 > 0x3e449d0 3bc9f8a0 addi r30,r9,-1888 > 0x3e449d4 7fc803a6 mtspr LR,r30 > 0x3e449d8 4e800021 blrl > 0x3e449dc 74600100 andis. r0,r3,256 > 0x3e449e0 41820074 bc 12,2,0x03e44a54 > 0x3e449e4 3fa00422 lis r29,1058 > 0x3e449e8 817d5194 lwz r11,20884(r29) > value = 65292780 = 0x3e449ec = > ObjectPool::deallocateObjects(void) + 0x50 > > > > > Question is, is there an easy way to reverse engineer this to the > instruction within my C++ code that caused the exception? Am I even > approaching this the right way? Anything that you could suggest? > Thanks for your time in advance. > > Regards, > Girish --------------------------- Newsgroups: comp.os.vxworks Subject: dosFS questions Date: Sat, 1 Jun 2002 10:45:28 +0200 From: "VU Khac Tri \(home\)" Organization: FUNDP, Namur, Belgium Message-ID: Hi folks, Does anyone know what is the reason WRS designed an asymetrical FS as DosFS 2.0? We know that the functions dpartDevCreate, dosFsDevCreate, dcacheDevCreate exist, but ther is no way to destroy what they created. As I implemented a driver for USB storage devices, this above becomes a limitation. Thanks. Tri. --------------------------- Newsgroups: comp.os.vxworks Subject: Re: dosFS questions Date: Sat, 01 Jun 2002 09:36:37 GMT From: "Leonid Rosenboim" Organization: Verio Message-ID: References: As the designed of DosFs 2.0, I pretty much owe you an explanation. First, I must note that the previous file system (aka DosFs 1.0), did not have means to cleanly remove a volume from the system, and since DosFs 2.0 was viewed as an upgrade, clean logical volume removal was not a required feature. Required features where FAT32, VFAT and some others. Still, I would not refer to this as "assymetrical". We have thought about this issue very seriously, in light of removable storage devices, such as PCMCIA, CD-ROM, PCMCIA, COmpacFlash etc. The topmost question was how to Create a logical device to represent a storage card that just has been inserted. One idea was to devise an automatic nameing convention, e.g. use the DosFs voule name stored on disk, and use that as the name of the device in the I/O system. But that brought up the problem of how does the APPLICATION access such a device. Typical embedded system, not having a GUI or no MMI at all, can not follow the PC approach of letting the USER choose the device. So we took an alternative approach: the APPLICATION designed needs to PROVISION for every supported storage device a priori, and create named logical volumes for every such expected storage device. I.e. of there are two PCMCIA slots, and it could be expected that any PCMCIA disk could have up to 4 partitions if insewrted, the APPLICATION needs to privision eight logical devices. Thence, at run time, the application shall "attempt" accessing a provisioned device, and if no such device is inserted, the access will result in an error. Given this approach, and some common sense, it is quite unreasonable for an APPLICATION to REMOVE a logical volume any time after system initialization, because if the logical volume does not exist, the application would not be able to PROBE for the physical accesability to such a provisioned device. Surely, there are alternative approaches, for example, the Block Driver could "announce" an addition of a storage device to the application, automatically create the logical volume, and then when the device is removed, it would "remove" the logical device from the system. ALthough possible, such an approach would call for some new API that seem quite unnatural for VxWorks, and crossing the layer boundary in the wrong direction. Also, there are some practical issues too, e.g. what does one do with the FIle Descriptors that might be referring to a device being removed ? The VxWorks I/O system does not allow for a driver or a file system to reliably shut down File Descriptors and all references to it in the APPLICATION private data structures. By the way, if a DosFs (or cdromFs) device is removed, all open file descriptors are "marked" as invalid in the file system, and any further calls using these descriptors by the application will return an appropriate error, and the application is EXPECTED to issue a close() call on an invalid file descriptor, and clear it from the internal data structures. Hope you appreciate this free advise, - Leonid Rosenboim DosFs 2.0, cdromFs, FlashLib, ... "VU Khac Tri (home)" wrote in message news:adacfc$26j5@hermes.fundp.ac.be... > Hi folks, > Does anyone know what is the reason WRS designed an asymetrical FS as DosFS > 2.0? > We know that the functions dpartDevCreate, dosFsDevCreate, dcacheDevCreate > exist, but ther is no way to destroy what they created. > As I implemented a driver for USB storage devices, this above becomes a > limitation. > Thanks. > Tri. > > --------------------------- End of New-News digest ********************** From vxwexplo-errs@csg.lbl.gov Sun Jun 2 04:03:09 2002 From: Vxworks Exploder Date: Sun Jun 2 04:03:11 PDT 2002 Subject: comp.os.vxworks newsdigest Comp.Os.Vxworks Daily Digest Sun Jun 2 04:03:05 PDT 2002 Subject: Re: dosFS questions Subject: Re: dosFS questions Subject: 64-bit math Subject: Re: dosFS questions Subject: Slow during boot up Subject: Re: PowerPC DCC Vs GCC Subject: Re: dosFS questions ------------------------------------------------------- Newsgroups: comp.os.vxworks Subject: Re: dosFS questions Date: 01 Jun 2002 15:23:40 GMT From: todd@possibility.com (Hoff, Todd) Organization: please Message-ID: <20020601112340.063$Mn@newsreader.com> References: "Leonid Rosenboim" wrote: >Also, there are some practical > issues too, e.g. what does one do with the FIle Descriptors that might be > referring > to a device being removed ? Have a callback so the application knows it is being removed so it can do something. Include the fds being effected so i can map that back to my application. Don't return the fd's to the pool for a while and fail all accesses. If applications can know what's happening and test if something has happened then they can do the right thing. Expecting apps to do the right thing wihtout giving the appropriate hooks isn't a good plan. > > By the way, if a DosFs (or cdromFs) device is removed, all open file > descriptors are > "marked" as invalid in the file system, and any further calls using these > descriptors > by the application will return an appropriate error, and the application > is EXPECTED > to issue a close() call on an invalid file descriptor, and clear it from > the internal > data structures. Why would i ever close an invalid file descriptor? It's invalid. > > Hope you appreciate this free advise, > - Leonid Rosenboim > DosFs 2.0, cdromFs, FlashLib, ... Vxworks is hardly free :-) - -- It's only when your cage is rattled do you realize you are in a cage. --------------------------- Newsgroups: comp.os.vxworks Subject: Re: dosFS questions Date: Sat, 01 Jun 2002 17:07:30 GMT From: "Leonid Rosenboim" Organization: Verio Message-ID: References: <20020601112340.063$Mn@newsreader.com> "Hoff, Todd" wrote in message news:20020601112340.063$Mn@newsreader.com... > "Leonid Rosenboim" wrote: > > > >Also, there are some practical > > issues too, e.g. what does one do with the FIle Descriptors that might be > > referring > > to a device being removed ? > > Have a callback so the application knows it is being removed so it > can do something. Include the fds being effected so i can map that > back to my application. Don't return the fd's to the pool for a while > and fail all accesses. If applications can know what's happening > and test if something has happened then they can do the right > thing. Expecting apps to do the right thing wihtout giving the > appropriate hooks isn't a good plan. > Hmm, but how long do you keep these file descriptors out of the pool ? How do you make sure the application "listens" to this announcement ? Nice idea, bit fails the backward compatibility criterion. > > > > > By the way, if a DosFs (or cdromFs) device is removed, all open file > > descriptors are > > "marked" as invalid in the file system, and any further calls using these > > descriptors > > by the application will return an appropriate error, and the application > > is EXPECTED > > to issue a close() call on an invalid file descriptor, and clear it from > > the internal > > data structures. > > Why would i ever close an invalid file descriptor? It's invalid. It's too bad people nower days dont read much manuals, According to POSIX, the application owns the file descriptor, until the application closes it. You do the same with a socket that belongs to a broken connection, or a connection closed by the other side. Any subsequent call yields an error, except close(). > > > > > Hope you appreciate this free advise, > > - Leonid Rosenboim > > DosFs 2.0, cdromFs, FlashLib, ... > > Vxworks is hardly free :-) VxWorks is expensive, but I am not working for WindRiver since January 1999, so I do not see how this advise has anything to do with the price of VxWorks. By the way, after sending the previous response, I recalled that I have suggested to enhance the I/O subsystem iosLib to support dynamic logical device adddition and removal (because you see there is no iosDevDelete() for DosFs to call when it would like to remove a logical volume), but my request was denined, because another group was working on revamping the entire I/O subsystem. Don't know how that project ended up. Cheers, - Leonid --------------------------- Newsgroups: comp.os.vxworks Subject: 64-bit math Date: Fri, 31 May 2002 10:15:57 -0700 From: "Michael R. Kesti" Organization: MK Associates Message-ID: <3CF7AFCD.68C32E1C@gv.net> Reply-To: mkesti@gv.net I am using vxWorks 5.4 and Tornado 2.0.2 on Windows NT, and attempting to write a driver for the WRSBC8240 reference board's flash memory. This memory is interfaced with the 8240's 64-bit data bus which forces me to use the "long long" data type and have found that I need to do a shift left operation on such a data type. Using Google, I see that I am not the first to experience the linker reporting an undefined reference to "__ashldi3". I have added these items to my build's linker flags: - -LD:/Tornado/host/x86-win32/lib/gcc-lib/powerpc-wrs-vxworks/cygnus-2.7.2-960126 - -lgcc The linker still doesn't resolve __ashldi3, however. Slight modifications of these options convinces me that the linker is finding the library libgcc.a. If, while in the directory D:/Tornado/host/x86-win32/lib/gcc-lib/powerpc-wrs-vxworks/cygnus-2.7.2-960126 I issue the command: nmppc libgcc.a | grep ashld I see the following output: _ashldi3.o 00000000 T __ashldi3 This convinces me that the linker should be able to resolve this function. I see that some have resorted to extracting __ashldi3.o and friends from libgcc.a and including them explicitly in their projects. Is this really necessary? Any and all hints are welcome. Thanks! - -- ======================================================================== Michael Kesti | "And like, one and one don't make | two, one and one make one." mkesti@gv.net | - The Who, Bargain --------------------------- Newsgroups: comp.os.vxworks Subject: Re: dosFS questions Date: 01 Jun 2002 21:42:00 GMT From: todd@possibility.com (Hoff, Todd) Organization: please Message-ID: <20020601174200.805$d3@newsreader.com> References: <20020601112340.063$Mn@newsreader.com> "Leonid Rosenboim" wrote: > Hmm, but how long do you keep these file descriptors out of the pool ? Make it settable. > How do you make sure the application "listens" to this announcement ? You can't, but as an appliction writer i'd like the option so i can do the right thing and not be held back by those who won't. > Nice idea, bit fails the backward compatibility criterion. So nothing will every get better in the future? Sounds like it could be added in transparently. > It's too bad people nower days dont read much manuals, Is this in the vxworks manual for close? I don't recall it. > VxWorks is expensive, but I am not working for WindRiver since January > 1999, so I do not see how this advise has anything to do with the price > of VxWorks. It's the nature of the netnews that people help each other. Your advice is greatly appreciated, but noting that it is free sounds a little bitter. > Cheers, > - Leonid Are you available to work on a reliable file system project? - -- It's only when your cage is rattled do you realize you are in a cage. --------------------------- Newsgroups: comp.os.vxworks Subject: Slow during boot up Date: 1 Jun 2002 23:59:06 -0700 From: fetch70@asia1.com (TG) Organization: http://groups.google.com/ Message-ID: I am using the batch file vxWorks_rom(i suppose this is the general file) to build a target file. It suppose to copied the file to the Ram for executing, but during this process, it is very slow about >15sec. My target file is approx 4meg. Any help would be appreciated. TG --------------------------- Newsgroups: comp.os.vxworks Subject: Re: PowerPC DCC Vs GCC Date: 2 Jun 2002 00:34:15 -0700 From: vxworks-user@excite.com (VxWorks User) Organization: http://groups.google.com/ Message-ID: References: naushit@hotmail.com (Naushit Sakaradia) wrote in message news:... > Are there any benchmarks that shows performance of GCC(Gnu Compiler) > Vs DCC(Diab compiler)? you can run tests easily (many online). our testing only showed not much different. best case diab about 2% better, some time worse than gnu to. also was much difficult to get code to compile with diab. took long time for little gain in speed. not good. heard wind river had lay off all gnu team in last cut. diab be only compiler for vxworks soon? vu > Has anybody has any openion about Best Powerpc Compiler?? > > Thanks for any pointer/hint. > > Naushit. --------------------------- Newsgroups: comp.os.vxworks Subject: Re: dosFS questions Date: Sun, 2 Jun 2002 10:58:35 +0200 From: "VU Khac Tri \(home\)" Organization: FUNDP, Namur, Belgium Message-ID: References: Hi there, I think you may be right in the case of VxWorks dosFS. Anyhow, from the points of view of VxWorks users, dosFS 2.0 design is not comfortable for the removable storage devices :-( How to avoid creating an unnecesary new FS entry in the device entry table? How to reuse an entry for a newly connected storage device? There would not have had such questions if dosFS had allowed you clean the entries when you don't need them, right. Regards, Tri. "Leonid Rosenboim" wrote in message news:newscache$t3w0xg$z5k$1@lnews.actcom.co.il... > As the designed of DosFs 2.0, I pretty much owe you an explanation. > > First, I must note that the previous file system (aka DosFs 1.0), did not > have > means to cleanly remove a volume from the system, and since DosFs 2.0 > was viewed as an upgrade, clean logical volume removal was not a > required feature. Required features where FAT32, VFAT and some others. > > Still, I would not refer to this as "assymetrical". > > We have thought about this issue very seriously, in light of removable > storage devices, such as PCMCIA, CD-ROM, PCMCIA, COmpacFlash etc. > The topmost question was how to Create a logical device to represent > a storage card that just has been inserted. One idea was to devise an > automatic > nameing convention, e.g. use the DosFs voule name stored on disk, and > use that as the name of the device in the I/O system. > > But that brought up the problem of how does the APPLICATION access > such a device. Typical embedded system, not having a GUI or no MMI > at all, can not follow the PC approach of letting the USER choose the > device. > > So we took an alternative approach: the APPLICATION designed needs > to PROVISION for every supported storage device a priori, and create named > logical volumes for every such expected storage device. > I.e. of there are two PCMCIA slots, and it could be expected that any PCMCIA > disk could have up to 4 partitions if insewrted, the APPLICATION needs > to privision eight logical devices. > > Thence, at run time, the application shall "attempt" accessing a provisioned > device, and if no such device is inserted, the access will result in an > error. > > Given this approach, and some common sense, it is quite unreasonable > for an APPLICATION to REMOVE a logical volume any time after > system initialization, because if the logical volume does not exist, > the application would not be able to PROBE for the physical > accesability to such a provisioned device. > > Surely, there are alternative approaches, for example, the Block Driver > could > "announce" an addition of a storage device to the application, automatically > create the logical volume, and then when the device is removed, it would > "remove" the logical device from the system. ALthough possible, such an > approach would call for some new API that seem quite unnatural for VxWorks, > and crossing the layer boundary in the wrong direction. Also, there are some > practical > issues too, e.g. what does one do with the FIle Descriptors that might be > referring > to a device being removed ? The VxWorks I/O system does not allow for a > driver > or a file system to reliably shut down File Descriptors and all references > to it in > the APPLICATION private data structures. > > By the way, if a DosFs (or cdromFs) device is removed, all open file > descriptors are > "marked" as invalid in the file system, and any further calls using these > descriptors > by the application will return an appropriate error, and the application is > EXPECTED > to issue a close() call on an invalid file descriptor, and clear it from the > internal > data structures. > > Hope you appreciate this free advise, > - Leonid Rosenboim > DosFs 2.0, cdromFs, FlashLib, ... > > "VU Khac Tri (home)" wrote in message > news:adacfc$26j5@hermes.fundp.ac.be... > > Hi folks, > > Does anyone know what is the reason WRS designed an asymetrical FS as > DosFS > > 2.0? > > We know that the functions dpartDevCreate, dosFsDevCreate, dcacheDevCreate > > exist, but ther is no way to destroy what they created. > > As I implemented a driver for USB storage devices, this above becomes a > > limitation. > > Thanks. > > Tri. > > > > > > --------------------------- End of New-News digest ********************** From vxwexplo-errs@csg.lbl.gov Mon Jun 3 02:36:22 2002 From: "Simony, Yaakov (Yaakov)" Date: Mon Jun 3 02:36:25 PDT 2002 Subject: RPC - authentication fields This is a multi-part message in MIME format. ------_=_NextPart_001_01C20AE1.C196B629 Content-Type: text/plain; charset="Windows-1255" Content-Transfer-Encoding: quoted-printable Hi, I am using RPC to develop a Client-Server application over Tornado 2.0.2 = / VxSim. For debug purposes, both client and server are located on the = same instance of VxSim. The transport protocol used is TCP. By default, = the authentication method used is the 'authnone' one. RPC callbacks are = generated using RPCGEN application supplied in the = 'target/unsupported/rpc4.0' code. At the client side, the data encoding makes some problems. = Unfortunately, there is no source code for RPC but I set a breakpoint = before calling to the 'write' routine, and I dumped the buffer to be = sent. It appears that the authentication fields are omitted, i.e. after = the MESSAGE_ID, MESSAGE_TYPE, RPC VERSION, REMOTE PROGRAM, REMOTE = PROGRAM VERSION and REMOTE PROCEDURE fields, starts the data. At the server side, the packet is decoded and since there is no = authentication fields, the server discards the packet as a non valid = one. To help while debugging the RPC encoding, I looked at the RPC code which = is supplied in the 'target/unsupported' directory of Tornado 2.0.2. In = order to make debugging easier, I added this the 'auth_none.c' file to = the BSP code and I compiled it. As a result, the problem disappeared. = The client encodes data correctly (i.e. including the authentication = fields) and the server handles the packet correctly too. It is quite strange that RPC works using the 'unsupported' files and = does not work using vxWorks library. Is there a known bug or did I miss = some initialization code? Thanks Yaakov Simony ------_=_NextPart_001_01C20AE1.C196B629 Content-Type: text/html; charset="Windows-1255" Content-Transfer-Encoding: quoted-printable RPC - authentication fields

Hi,

I am using RPC to develop a = Client-Server application over Tornado 2.0.2 / VxSim. For debug = purposes, both client and server are located on the same instance of = VxSim. The transport protocol used is TCP. By default, the = authentication method used is the 'authnone' one. RPC callbacks are = generated using RPCGEN application supplied in the = 'target/unsupported/rpc4.0' code.

At the client side, the data = encoding makes some problems. Unfortunately, there is no source code for = RPC but I set a breakpoint before calling to the 'write' routine, and I = dumped the buffer to be sent. It appears that the authentication fields = are omitted, i.e. after the MESSAGE_ID, MESSAGE_TYPE, RPC VERSION, = REMOTE PROGRAM, REMOTE PROGRAM VERSION and REMOTE PROCEDURE fields, = starts the data.

At the server side, the = packet is decoded and since there is no authentication fields, the = server discards the packet as a non valid one.

To help while debugging the = RPC encoding, I looked at the RPC code which is supplied in the = 'target/unsupported' directory of Tornado 2.0.2. In order to make = debugging easier, I added this the 'auth_none.c' file to the BSP code = and I compiled it. As a result, the problem disappeared. The client = encodes data correctly (i.e. including the authentication fields) and = the server handles the packet correctly too.

It is quite strange that RPC = works using the 'unsupported' files and does not work using vxWorks = library. Is there a known bug or did I miss some initialization = code?

Thanks

Yaakov Simony

------_=_NextPart_001_01C20AE1.C196B629-- From vxwexplo-errs@csg.lbl.gov Mon Jun 3 04:03:11 2002 From: Vxworks Exploder Date: Mon Jun 3 04:03:13 PDT 2002 Subject: comp.os.vxworks newsdigest Comp.Os.Vxworks Daily Digest Mon Jun 3 04:03:07 PDT 2002 Subject: Re: 64-bit math Subject: Re: Slow during boot up Subject: Cannot connect VC++ with VxWorks(Tornado) Subject: Re: dosFS questions Subject: Re: Slow during boot up Subject: How can I use ldppc to link my program in Tornado? Subject: Interfacing TMS320C54x with Fujitsu flash Subject: how to install multiple simulators in win2000 Subject: Puzzling problem about spyReport Subject: Re: How to write linker scripts to get the same memory layout for two downloadable projects. Subject: Re: how is multi-level interrupt supported by VxWorks Subject: Re: How to make a specific function always be loaded at the lowest address? Subject: Re: How to write linker scripts to get the same memory layout for two downloadable projects. Subject: Re: Frequent interrupt hangs VxWorks 5.4 on PowerPC ------------------------------------------------------- Newsgroups: comp.os.vxworks Subject: Re: 64-bit math Date: 2 Jun 2002 10:29:43 -0700 From: john_94501@yahoo.com (John) Organization: http://groups.google.com/ Message-ID: <488e459a.0206020929.14fa0e36@posting.google.com> References: <3CF7AFCD.68C32E1C@gv.net> Hello Michael, You don't say which build you added the extra flags to. The linker will only resolve that symbol using the new library if there is a need for it. If you added the flags to the kernel build, but do not have your application (or any other code that uses __ashldi3) in the kernel, then the routine will not be linked in. The simplest way of making sure that the appropriate routines are available for your downloadable applications is to add them explicitly to your kernel project. To see how VxWorks normally handles this, if you want it to be a little more configurable, take a look at how the floating point routines are handled in CDF and also under target/src/config - the latter is for command line builds, the former for projects. Now, if your application is linked into your VxWorks build, then the linker should have resolved the missing symbol as long as the -lgcc appeared in link line. Check the linker line in the build output to make sure it looks good. HTH, John... "Michael R. Kesti" wrote in message news:<3CF7AFCD.68C32E1C@gv.net>... > I am using vxWorks 5.4 and Tornado 2.0.2 on Windows NT, and attempting to > write a driver for the WRSBC8240 reference board's flash memory. This > memory is interfaced with the 8240's 64-bit data bus which forces me to use > the "long long" data type and have found that I need to do a shift left > operation on such a data type. > > Using Google, I see that I am not the first to experience the linker > reporting an undefined reference to "__ashldi3". I have added these items > to my build's linker flags: > > -LD:/Tornado/host/x86-win32/lib/gcc-lib/powerpc-wrs-vxworks/cygnus-2.7.2-960126 > -lgcc > > The linker still doesn't resolve __ashldi3, however. Slight modifications of > these options convinces me that the linker is finding the library libgcc.a. > > If, while in the directory > D:/Tornado/host/x86-win32/lib/gcc-lib/powerpc-wrs-vxworks/cygnus-2.7.2-960126 > I issue the command: > > nmppc libgcc.a | grep ashld > > I see the following output: > > _ashldi3.o > 00000000 T __ashldi3 > > This convinces me that the linker should be able to resolve this function. > I see that some have resorted to extracting __ashldi3.o and friends from > libgcc.a and including them explicitly in their projects. Is this really > necessary? > > Any and all hints are welcome. Thanks! --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Slow during boot up Date: 2 Jun 2002 10:43:38 -0700 From: john_94501@yahoo.com (John) Organization: http://groups.google.com/ Message-ID: <488e459a.0206020943.74ca43ee@posting.google.com> References: Hello, Check the settings of the instruction cache in the romInit.s file for your BSP. Often you can safely turn on the i-cache to get the rom copying code (actually, decompression code unless you're using the _uncmp version) to run a little faster. HTH, John... fetch70@asia1.com (TG) wrote in message news:... > I am using the batch file vxWorks_rom(i suppose this is the general > file) to build a target file. > It suppose to copied the file to the Ram for executing, > but during this process, it is very slow about >15sec. > My target file is approx 4meg. > > Any help would be appreciated. > > TG --------------------------- Newsgroups: comp.os.vxworks Subject: Cannot connect VC++ with VxWorks(Tornado) Date: 2 Jun 2002 11:25:32 -0700 From: princessanna25@hotmail.com (Anna Mary) Organization: http://groups.google.com/ Message-ID: <78dbc963.0206021025.533bfcf1@posting.google.com> Hi, I am doing a project in VxWorks using Tornado 2 and VxSim. I plan to develop the User Interface in VC++ which will send and receive messages to and from a VxWorks Backend using Socket programming. I have been able to establish Socket programming within the VxWorks Simulation Environment by using a Custom-Built Simulator(The postings in this group helped a lot) but have been unable to link the VC++ and VxWorks portions of the project. I tried using the addresses of the localhost,VxTarget and host as specified in the Host Listings in the VxShell but connection requests from my VC++ application were not detected by the VxWorks part listening on the port.Kindly advice me as to what IP address I should use in VC++ so that VxWorks can listen and accept the requests. Anna Mary --------------------------- Newsgroups: comp.os.vxworks Subject: Re: dosFS questions Date: Sun, 02 Jun 2002 19:17:36 GMT From: "Leonid Rosenboim" Organization: Verio Message-ID: References: Well, let me put it this way, with the current implementation of iosLib at the time dosFs 2.0 was devceloped, removing a logical device was IMPOSSIBLE, and our offer to revamp iosLib was denied from superior managers. I wony go into the gory detail of how the I/O subsystem is insufficient at that. Now back to the issue at hand, how do you deal with removable devices after all. If you have a digital camera with a CF and SM card slots, you create a logical name for each of these slots, initialize the stack for each, and that is that. If you have a USB port, and you are expected to support a maximum of 4 USB storage devices (I think 99.9% of people won't even think of using more then one at a time), then you create four logical devices, usb0 through usb3, and each time a new USB device appears, you associate it with the first that is available. This association needs to be done at the\block driver level, and there is more then one way to do it. If you create disk cache for each logical device, and if you got many of them, you seem to be waisting a lot of good memory, then there is a disk cache resizing routine, which lets you have a minimal cache for provisioned volumes, and resize to a cool size when there is a device detected. Lastly, but moest interestingly, there is a trick in cbioLib, which I had not come around to documenting, that allows one to effectively replace a subordinate block device driver, it is done with ioctl code CBIO_RESET, and the 3rd argument of the call being the new block device pointer. So you can have just a couple of logical devices, and create use and delete block devices as you please. Hpe this helps, - - Leonid "VU Khac Tri (home)" wrote in message news:add1jq$29hj@hermes.fundp.ac.be... > Hi there, > I think you may be right in the case of VxWorks dosFS. Anyhow, from the > points of view of VxWorks users, dosFS 2.0 design is not comfortable for the > removable storage devices :-( > How to avoid creating an unnecesary new FS entry in the device entry table? > How to reuse an entry for a newly connected storage device? There would not > have had such questions if dosFS had allowed you clean the entries when you > don't need them, right. > Regards, > Tri. > > --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Slow during boot up Date: Sun, 2 Jun 2002 19:55:25 +0000 (UTC) From: "Graham Baxter" Organization: Graham Baxter (Software) Limited Message-ID: References: Some of the BSP's fill the RAM under and above the image with zeros. This can be time consuming. This is not always necessary as the startup code itself will fill the memory with zeros which needs to be zeros such as the .bss section. I hope this helps. - -- Regards, Graham Baxter Freelance Software Engineer (VxWorks and pSOS BSPs) AVAILABLE SHORTLY FOR A NEW ASSIGNMENT EMAIL: gbaxter@NOSPAMbcs.org.uk "TG" wrote in message news:eee196cd.0206012259.3f0a84be@posting.google.com... > I am using the batch file vxWorks_rom(i suppose this is the general > file) to build a target file. > It suppose to copied the file to the Ram for executing, > but during this process, it is very slow about >15sec. > My target file is approx 4meg. > > Any help would be appreciated. > > TG --------------------------- Newsgroups: comp.os.vxworks Subject: How can I use ldppc to link my program in Tornado? Date: Sun, 2 Jun 2002 15:07:20 -0700 From: "Liang Yang" Organization: RTS-LAB Message-ID: Reply-To: "Liang Yang" Hi, Even I set link option for ldppc in tornado, but tornado still use ccppc to link all .o files into .out files as follows: ccppc -nostdlib -r -Wl,-X partialImage.o ctdt.o -o vxjs_rec_new.out But I write a linker script and I want to use ldppc to do this. How can I do it? Thanks. Liang --------------------------- Newsgroups: comp.os.vxworks Subject: Interfacing TMS320C54x with Fujitsu flash Date: 2 Jun 2002 19:59:33 -0700 From: mala_tk@yahoo.com (Mala) Organization: http://groups.google.com/ Message-ID: <4d133ac0.0206021859.30d5fff7@posting.google.com> hello to everyone in the group. i am trying to interface TMS320VC5416 with Fujistu flash MBM29DL400BC.i request u to send me link where i can get source code or assembly code for the same.i request u'r guidance if anyone has worked with the same. thanking u... Mala --------------------------- Newsgroups: comp.os.vxworks Subject: how to install multiple simulators in win2000 Date: 2 Jun 2002 22:37:53 -0700 From: pnumber@hotmail.com (pengtong) Organization: http://groups.google.com/ Message-ID: <964e0610.0206022137.7c11fd7e@posting.google.com> I've try to install the ULIP driver into my computer,but failed.When I locate the driver at../host/x86-w2in32/bin/oemsetup.inf,cann't continue.the error message is "此文件中不包含所需要的硬件信息" ,in English this means "This file don't have the information of the hardware" ,I don't know why. Regards, tong --------------------------- Newsgroups: comp.os.vxworks Subject: Puzzling problem about spyReport Date: 2 Jun 2002 22:54:56 -0700 From: yuzj@utstar.com (Chaos) Organization: http://groups.google.com/ Message-ID: Hi,everyone, We want to know the CPU utilization sometime. I read the help about spy. In my mind, the spy works like this: first, call spyClkStart, this will begin data collection by enabling the auxiliary clock interrupts. Then call spyReport to print the data gathered by collection task at interrupt level. Last, call spyClkStop to stop the collection task by disabling the auxiliary clock interrupts. There is no auxiliary clock on our board. But to my surprise, when i call spyClkStart and spyReport at Tornado shell, it prints the collection data! I am puzzling on how does the spy work. Can anyone tell me? BTW, we also want to know the CPU utilization during 24 hours or 1 hours. How can we get it? Thanks in advance! --------------------------- Newsgroups: comp.os.vxworks Subject: Re: How to write linker scripts to get the same memory layout for two downloadable projects. Date: Mon, 3 Jun 2002 08:55:16 +0200 From: "Michael Lawnick" Organization: Buergernetz Dillingen Message-ID: References: Reply-To: "Michael Lawnick" Sender: mlawnick@pd9e65fe6.dip.t-dialin.net Hi, you may try with loadModuleAt(), but I fear, this will be start of your way to hell... Michael "Liang Yang" schrieb im Newsbeitrag news:ad8uo3$osd$1@news.asu.edu... > Hi, > > I have two VxWorks projects,say A.out and B.out. > Now I want to make both A.out and B.out begin > from the same memory address when I download > them to target machine sperately. > How to write liner scripts to give a specific > memory address as a beginning address for > A.out and B.out? > > Thanks. > > Liang > > > > --------------------------- Newsgroups: comp.os.vxworks Subject: Re: how is multi-level interrupt supported by VxWorks Date: Mon, 3 Jun 2002 09:36:20 +0200 From: "Michael Lawnick" Organization: Buergernetz Dillingen Message-ID: References: <3baeb99.0205300327.3f40bc1e@posting.google.com> Reply-To: "Michael Lawnick" Sender: mlawnick@pd9e65fe6.dip.t-dialin.net Hi Demrala, AFAIK (allmost all) PPC don't support nested interrupts by default. To enable it, you'll have to go deep into system, including patching of assembler routines. E.g. PPC405 'walnut' BSP explicitly disables so called 'critical interrupts' when a 'non-critical interrupt' occurs. HTH Michael "Demrala Rood" schrieb im Newsbeitrag news:3baeb99.0205300327.3f40bc1e@posting.google.com... > "Gary M" wrote in message news:... > > As Joe wrote, it allows a higher-priority interrupt to interrupt the ISR of > > a lower-priority interrupt. The advantages and consequences depend on the > > system, the application, and so on. > > > > VxWorks supports multi-level interrupts, depending on the target > > architecture. > > Can you give example of architecture which VxWorks does not support > it on? What is the mechanism of this support? Is there a system call > to make? One when enter interrupt, another when leaving? How is it > done? > > TIA > DR --------------------------- Newsgroups: comp.os.vxworks Subject: Re: How to make a specific function always be loaded at the lowest address? Date: 3 Jun 2002 07:56:25 GMT From: Johan Borkhuis Organization: Agere Systems Message-ID: References: "Leonid Rosenboim" wrote: > Its rather simple, > > put that particular function at the top of the source file, preceded > only by global variable definitions, and link the three files together > with the 3.c file being first, e.g. > > ldppc -r -o project.out 3.o 1.o 2.o 4.o > > The linker preserves the order. Using the project tool you can also do this. Go to the Build properties of your build, and select the tab Link order. Here you can change the link order of the modules. Groeten, Johan - -- o o o o o o o . . . _____________________________ o _____ || Johan Borkhuis | .][__n_n_|DD[ ====_____ | borkhuis@agere.com | >(________|__|_[_________]_|__________________________| _/oo OOOOO oo` ooo ooo 'o!o!o o!o!o` === VxWorks FAQ: http://www.xs4all.nl/~borkhuis/vxworks/vxworks.html === --------------------------- Newsgroups: comp.os.vxworks Subject: Re: How to write linker scripts to get the same memory layout for two downloadable projects. Date: 3 Jun 2002 08:05:37 GMT From: Johan Borkhuis Organization: Agere Systems Message-ID: References: "Liang Yang" wrote: > Hi, > > I have two VxWorks projects,say A.out and B.out. > Now I want to make both A.out and B.out begin > from the same memory address when I download > them to target machine sperately. > How to write liner scripts to give a specific > memory address as a beginning address for > A.out and B.out? VxWorks using a dynamic loader, and the addresses are resolved only at the time you modules are loaded. So if you have 2 out files you can always load them at a specific location using loadModuleAt. But you cannot do compile time. Groeten, Johan - -- o o o o o o o . . . _____________________________ o _____ || Johan Borkhuis | .][__n_n_|DD[ ====_____ | borkhuis@agere.com | >(________|__|_[_________]_|__________________________| _/oo OOOOO oo` ooo ooo 'o!o!o o!o!o` === VxWorks FAQ: http://www.xs4all.nl/~borkhuis/vxworks/vxworks.html === --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Frequent interrupt hangs VxWorks 5.4 on PowerPC Date: Mon, 03 Jun 2002 08:48:52 GMT From: "Koen Van Hulle" Organization: Xeikon Message-ID: References: <82606370.0205301445.21abb88@posting.google.com> Mike, I've seen this behaveour also. In my case, the system put a limit on the interrupts frequency because the kernel workqueue was full. If the interrupt frequency is too high, you won't even see the related "WorkQ Panic message" getting thru. The WorkQ full problem has been discussed many times in this newsgroup (check the archives) and on WindSurf. Other than that, I know of no errors (except bugs in the interrupt handler) that could limit the interrupt frequency. Regards, Koen "Mike Johnson" wrote in message news:82606370.0205301445.21abb88@posting.google.com... > A coworker of mine ran a test in which an external interrupt was > generated approximately every 10 microseconds, and hung his MPC7400 > CPU board. Resetting and examining memory from the VxWorks boot > prompt, we observed that a task's stack was corrupted, and so was our > code. Obviously, this is not a practical application; an interrupt at > this frequency leaves very little time for anything else. > Nevertheless, the system should handle interrupts at any frequency > without overflowing stacks or corrupting code. Has anyone else > observed this problem? --------------------------- End of New-News digest ********************** From vxwexplo-errs@csg.lbl.gov Mon Jun 3 05:13:44 2002 From: "h. wildenberg" Date: Mon Jun 3 05:13:47 PDT 2002 Subject: shared memory networking Hello vxWorkers, I'am looking for software which is a replace for the standard vxWorks SM network driver. The standard driver has only one piece of memory, where all other boards read from. But reads on the backplane take much more time than writes. A better SM network driver would have a distributed memory space, so messages are only written on the backplane to a destination node. Every node on the backplane has its own shared memory. Thanks for any help in advance. -- o--------------------------------------------------- Unclassified ---o | Thales Nederland | phone: +31-74-248 4403 | Heinrich Wildenberg | fax: +31-74-248 4030 | dept. ICT | email: heinrich.wildenberg@nl.thalesgroup.com | P.O. Box 42 | | 7550 GD Hengelo | (formerly Hollandse Signaalapparaten, | The Netherlands | old email [h.]wildenberg@signaal.nl) o--------------------------------------------------------------------o From vxwexplo-errs@csg.lbl.gov Mon Jun 3 05:49:29 2002 From: "Vijayan D. Nambiar" Date: Mon Jun 3 05:49:31 PDT 2002 Subject: VxSim ULIP Network driver not detected in Windows 2000 This is a multi-part message in MIME format. ------=_NextPartTM-000-17ebdf85-2fa2-4558-9d6b-30bf2c7e3a9e Content-Type: multipart/alternative; boundary="----=_NextPart_000_0012_01C20B2B.55C15CB0" ------=_NextPart_000_0012_01C20B2B.55C15CB0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Hi, I tried to install the VxSim ULIP Network driver in Windows 2000 for enabling network support for the full vxsim simulator. But Windows 2000 is not able to detect the .inf eventhough it is visible in the C:\Tornado\host\x86-win32\bin. As a result I am not able to use networking support in VxSim. Thanks in advance, Vijayan. ------=_NextPart_000_0012_01C20B2B.55C15CB0 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Message
Hi,
 
I = tried to install=20 the VxSim ULIP Network driver in Windows 2000 for enabling network = support for=20 the full vxsim simulator.
 
But = Windows 2000 is=20 not able to detect the .inf eventhough it is visible in the=20 C:\Tornado\host\x86-win32\bin.
 
As a = result I am not=20 able to use networking support in VxSim.
 
Thanks = in=20 advance,
 
Vijayan.
------=_NextPart_000_0012_01C20B2B.55C15CB0-- ------=_NextPartTM-000-17ebdf85-2fa2-4558-9d6b-30bf2c7e3a9e Content-Type: text/plain; name="Wipro_Disclaimer.txt" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="Wipro_Disclaimer.txt" **************************Disclaimer************************************************** Information contained in this E-MAIL being proprietary to Wipro Limited is 'privileged' and 'confidential' and intended for use only by the individual or entity to which it is addressed. You are notified that any use, copying or dissemination of the information contained in the E-MAIL in any manner whatsoever is strictly prohibited. **************************************************************************************** ------=_NextPartTM-000-17ebdf85-2fa2-4558-9d6b-30bf2c7e3a9e-- From vxwexplo-errs@csg.lbl.gov Tue Jun 4 02:22:11 2002 From: Arad Gluska Date: Tue Jun 4 02:22:14 PDT 2002 Subject: Need help with socket connection loss Thanks to the Vxworks users I have a stream socket server implemented on PowerPc 860. It works OK most of the time. However, connection loss occurs rarely (on night runs, a disconnect occurs every 2 or 3 nights). It happens mostly when connected to PC with Windows 98, but not (or much less often) on NT. The only way to recover is to reset the target. It seems that connection loss from the PC, and the target could not recognize it. The server supports only one connection at a time (open only one message socket), allows other connections as well (the listen socket!?) but not communicate. It is therefore seems that the message socket is still opened on the previous connection. There is not memory short (buffers etc.) Any idea why it happens and how to overcome the problem? and why the problem occurs with Windows 98 and not NT OS? (The PC has auto-connect every x time, so if disconnect occurs it is connected again during the night) (PLEASE ALSO SEND DIRECT RESPONSE TO MY DIRECT EMAIL AS NOT ALL MESSAGES ARRIVED TO ME FROM THE GROUP!!??) Thanks again for your time and ideas would be appreciated. :-) Arad From vxwexplo-errs@csg.lbl.gov Tue Jun 4 03:56:59 2002 From: "Sabarivel S" Date: Tue Jun 4 03:57:01 PDT 2002 Subject: Vxworks : priority inversion Hello friends, two of our task running in vxworks target faces priority inheritance problem when can the priority inheritance problem can occur. Pl provide me some pointers on this issue thanks & regards sabari *************************************************************************** This message is proprietary to Future Software Limited (FSL) and is intended solely for the use of the individual to whom it is addressed. It may contain privileged or confidential information and should not be circulated or used for any purpose other than for what it is intended. If you have received this message in error, please notify the originator immediately. If you are not the intended recipient, you are notified that you are strictly prohibited from using, copying, altering, or disclosing the contents of this message. FSL accepts no responsibility for loss or damage arising from the use of the information transmitted by this email including damage from virus. *************************************************************************** From vxwexplo-errs@csg.lbl.gov Tue Jun 4 04:03:13 2002 From: Vxworks Exploder Date: Tue Jun 4 04:03:15 PDT 2002 Subject: comp.os.vxworks newsdigest Comp.Os.Vxworks Daily Digest Tue Jun 4 04:03:10 PDT 2002 Subject: how to install VxSim on solaris2.7 Subject: Re: Slow during boot up Subject: Re: How to write linker scripts to get the same memory layout for two downloadable projects. Subject: Re: How can I use ldppc to link my program in Tornado? Subject: How to obtain source code Line Number during runtime?? Subject: Re: How to obtain source code Line Number during runtime?? Subject: Re: How to obtain source code Line Number during runtime?? Subject: Getting line number and file name for debugging Subject: Re: Getting line number and file name for debugging Subject: Re: Is there a solution to template bloat in VxWorks 5.4? Subject: PSPAN_TARGET_MEM_ADRS Subject: WDB-rpc error Subject: Re: WDB-rpc error Subject: reloc overflow problem in xscale Subject: hi, what's the matter? Subject: Re: hi, what's the matter? Subject: [Q] tNetTask suspends Subject: Shared memory driver ------------------------------------------------------- Newsgroups: comp.os.vxworks Subject: how to install VxSim on solaris2.7 Date: 3 Jun 2002 05:00:18 -0700 From: pnumber@hotmail.com (pengtong) Organization: http://groups.google.com/ Message-ID: <964e0610.0206030400.3adbf81c@posting.google.com> I've tryed to install VxSim into my Solaris2.6 system but failed. The message is devfsadm:driver failed to attach ,but in /kernel/drv/ I found the file ul and ul.conf. I wonder why this happened. Regard, tong --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Slow during boot up Date: Mon, 03 Jun 2002 12:36:45 GMT From: "Leonid Rosenboim" Organization: Verio Message-ID: References: TG, you need first to find out what section of the boot code is taking up the longest time. You need to insert instrumentation into sysALib.s, sysLib.c (functions sysHwInit, sysHwInit2) and bootConfig.c, so that you will be able to measure the time for each int section. I do not think 4MB of RAM would take a long time to zero-out, this could be a very large MMU Page Table that is being build (see sysPhysMemDesc), or a slow initialization of some driver ... "TG" wrote in message news:eee196cd.0206012259.3f0a84be@posting.google.com... > I am using the batch file vxWorks_rom(i suppose this is the general > file) to build a target file. > It suppose to copied the file to the Ram for executing, > but during this process, it is very slow about >15sec. > My target file is approx 4meg. > > Any help would be appreciated. > > TG --------------------------- Newsgroups: comp.os.vxworks Subject: Re: How to write linker scripts to get the same memory layout for two downloadable projects. Date: 03 Jun 2002 09:36:20 -0400 From: Bill Pringlemeir Organization: Factory of the mind Message-ID: References: Sender: bpringlemeir@DeadDuck Liang> Hi, I have two VxWorks projects,say A.out and B.out. Now I Liang> want to make both A.out and B.out begin from the same memory Liang> address when I download them to target machine sperately. How Liang> to write liner scripts to give a specific memory address as a Liang> beginning address for A.out and B.out? ldppc -verbose ldarm -verbose ldsimpc -verbose [...] You get the idea. Examine the HTML file in, "$(WIND_BASE)/docs/gnu/toolkit/ld_toc.html" You will definitions of the linker script language. Then use the `-T' option when building the files to use the linker file. Pay attention to the ADDR() command. However, I recommend you read the entire manual, as new solutions to your problem might become apparent. As other have mentioned, use LoadModuleAt() to get the file to the same memory location... perhaps extra fast RAM that is not part of the general memory pool for instance... hth, Bill Pringlemeir. - -- Schrodinger on QED: I don't like it, and I'm sorry I ever had anything to do with it. vxWorks FAQ, "http://www.xs4all.nl/~borkhuis/vxworks/vxworks.html" --------------------------- Newsgroups: comp.os.vxworks Subject: Re: How can I use ldppc to link my program in Tornado? Date: Mon, 03 Jun 2002 11:46:43 -0700 From: Joe Durusau Organization: Lockheed Martin Corporation Message-ID: <3CFBB993.DF56A30@lmco.com> References: Liang Yang wrote: > > Hi, > > Even I set link option for ldppc in tornado, but tornado > still use ccppc to link all .o files into .out files as > follows: > > ccppc -nostdlib -r -Wl,-X partialImage.o ctdt.o -o vxjs_rec_new.out > > But I write a linker script and I want to use ldppc to do this. > > How can I do it? > > Thanks. > > Liang Why?? All ccppc is doing is calling ldppc. You can call it yourself if you wish, but the auto stuff will stiff do it its own way. Speaking only for myself, Joe Durusau --------------------------- Newsgroups: comp.os.vxworks Subject: How to obtain source code Line Number during runtime?? Date: 3 Jun 2002 09:55:47 -0700 From: nova9@hotmail.com (Joe Lee) Organization: http://groups.google.com/ Message-ID: <161375e4.0206030855.3144974d@posting.google.com> I want to use this during debugging, when I do a printf for an error to be able to also obtain the line number at which the printf was executed. I've seen other programs done simular things but I'am just wondering if this is possible with VXWorks. Thank you very much. --------------------------- Newsgroups: comp.os.vxworks Subject: Re: How to obtain source code Line Number during runtime?? Date: Mon, 03 Jun 2002 10:02:38 -0700 From: Madhusudan Challa Organization: Ericsson Inc Message-ID: <3CFBA12E.CA27B72C@ericsson.com> References: <161375e4.0206030855.3144974d@posting.google.com> Joe Lee wrote: > I want to use this during debugging, when I do a printf for an error > to be able to also obtain the line number at which the printf was > executed. I've seen other programs done simular things but I'am just > wondering if this is possible with VXWorks. yes if you have the source code and you compile it with gcc s "-g"option. Whatever files you want to debug compile them with this option to the compiler. > > > Thank you very much. - -- - -madhusudan Ericsson Inc. Data Backbone and Optical Networks 70 Castilian Drive Santa Barbara, CA 93117 work :- 805-562-6066 --------------------------- Newsgroups: comp.os.vxworks Subject: Re: How to obtain source code Line Number during runtime?? Date: Mon, 03 Jun 2002 13:24:35 -0400 From: david lindauer Message-ID: <3CFBA652.F21D9096@notifier-is.net> References: <161375e4.0206030855.3144974d@posting.google.com> there is a predefined macro __LINE__ which gives the line number. Another predefined macro __FILE__ gives the name of the file. So for example: printf("File: "__FILE__"; Line: %d",__LINE__) ; will show where you are. (Generally the assert() macro uses these as part of its processing). David Joe Lee wrote: > I want to use this during debugging, when I do a printf for an error > to be able to also obtain the line number at which the printf was > executed. I've seen other programs done simular things but I'am just > wondering if this is possible with VXWorks. > > Thank you very much. --------------------------- Newsgroups: comp.os.vxworks Subject: Getting line number and file name for debugging Date: 3 Jun 2002 10:34:57 -0700 From: nova9@hotmail.com (Joe Lee) Organization: http://groups.google.com/ Message-ID: <161375e4.0206030934.61ec4440@posting.google.com> Hi, In VxWorks, how can I obtain the line number and the filename during the program runtime. i.e. For debugging, it'd be helpful to know which file and line called that particular printf. Thanks. --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Getting line number and file name for debugging Date: 03 Jun 2002 14:13:08 -0400 From: Bill Pringlemeir Organization: Factory of the mind Message-ID: References: <161375e4.0206030934.61ec4440@posting.google.com> Sender: bpringlemeir@DeadDuck >>>>> "Joe" == Joe Lee writes: Joe> Hi, In VxWorks, how can I obtain the line number and the Joe> filename during the program runtime. i.e. For debugging, it'd be Joe> helpful to know which file and line called that particular Joe> printf. #define TRACER(a, args...) printf("%s (%d), %s: " ## #a , __FILE__, __LINE__, __FUNCTION__, ## args) - -- Our father who art in heaven.. I sincerely pray that SOMEBODY at this table will PAY for my SHREDDED WHAT and ENGLISH MUFFIN.. and also leave a GENEROUS TIP... vxWorks FAQ, "http://www.xs4all.nl/~borkhuis/vxworks/vxworks.html" --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Is there a solution to template bloat in VxWorks 5.4? Date: 3 Jun 2002 14:02:28 -0700 From: braddillman@yahoo.com (Brad Dillman) Organization: http://groups.google.com/ Message-ID: <1f0502b5.0206031302.31a95e2f@posting.google.com> References: <1f0502b5.0205301056.e0422c5@posting.google.com> <%5IJ8.397$bJ4.357@newsread1.prod.itd.earthlink.net> - -frepo didn't work, there were way too many undefined references. I tried using -fexternal_templates, #pragma interface and #pragma implementation "xxx.h", but the compiler (not the linker) kept complaining about "no match for xxx", where xxx was an STL template member function I wasn't using (looks like I got one for every function I didn't use). Seriously, I can't find any way to eliminate duplicate template code. From this link: http://gcc.gnu.org/onlinedocs/gcc-2.95.3/gcc_5.html#SEC110 I've tried #1, #2, #3 and #4. Only #3 works, but the code is huge. Compiler version is 2.7.2 for PowerPC. bill@woola.qswtools.com wrote in message news:<%5IJ8.397$bJ4.357@newsread1.prod.itd.earthlink.net>... > In article <1f0502b5.0205301056.e0422c5@posting.google.com>, > braddillman@yahoo.com (Brad Dillman) writes: > > I've been searching the web, to find a way to prevent STL templates > > from appearing in multiple .o files. I'm currently trying the -frepo > > option, which requires me to explicitly instantiate templates. > > > > Will this work? > Yes, all WR versions of gcc that I've used support '-frepo' except > the Tornado 1.0.1 version. Except that it's not called "explicit > instantiation". > > > Has this problem been solved before? > Yes. > > > Any pointers, URLs or advice? > Sure. > http://www-es.fernuni-hagen.de/cgi-bin/info2html?(gcc)Template%20Instantiation > > The newer versions of gcc from WRS (2.96) implement the "Borland model" > in which the compiler automatically instantiates template code > in the object file where the template is referenced. The duplicate > code is then discarded by the linker (ldppc) or the loader. The > only cost to this is larger object files, and slightly slower > build times. > > > > > Thanks, > > Brad Dillman --------------------------- Newsgroups: comp.os.vxworks Subject: PSPAN_TARGET_MEM_ADRS Date: 3 Jun 2002 14:34:09 -0700 From: ccadena@vmetro.com (carlos) Organization: http://groups.google.com/ Message-ID: I'm trying to compile the sysFei82557End.c driver into my VxWorks BSP. The macro PSPAN_TARGET_MEM_ADRS is not defined. I include fei82557End.h (which does not define the PSPAN_TARGET_MEM_ADRS macro). Where and what should this definition be? --------------------------- Newsgroups: comp.os.vxworks Subject: WDB-rpc error Date: Mon, 03 Jun 2002 19:37:02 -0500 From: Eric Geelen Organization: tellabs Message-ID: <3CFC0BAE.903C816A@tellabs.com> Help! We're developing a PPC8260 application using the tornado tools and Singlestep debugger. When trying to attach the solaris Host-based target-server to the WDBagent running on the target board: tgtsvr.ex (FW17GCU-A@sunx214): Mon Jun 3 19:01:40 2002 Connecting to target agent... Error: rpccore backend client RPC: Timed out failed. Connecting to target agent... Error: rpccore backend client RPC: Timed out failed. I've tried resetting each element of my environment, the target board, the host workstation, and even tried starting a local copy of the tornado_registry... all to no avail. I've been using scripts for my environment and setup, so I'm pretty sure everything is set up as before (when things were working fine). I checked Windriver's dB for similar issues and I found 8 TSR/Forum message chains asking similar questions, only 2 were given any kind of suggested solutions, neither solution helped me. (one was reset everything, the other was a Win/NT based solution). Has anyone out there been able to isolate this issue? Any success making it go away? --------------------------- Newsgroups: comp.os.vxworks Subject: Re: WDB-rpc error Date: Tue, 04 Jun 2002 01:00:23 GMT From: "drdiags" Organization: AT&T Broadband Message-ID: References: <3CFC0BAE.903C816A@tellabs.com> Hello Eric, Not sure, but the version of vxWorks/Tornado you are using could be in play. You mention that this worked before, so you don't have a DHCP server running, which could be taking the only available SNARF protocol in pre T2.0.2 for PPC. You are sure the kernel is using END or Network for the WDB agent. How about the target server line? You might want to use the logging for WTX/Backend communication in case this may shed some light. Do you have a target shell installed? I am from the pre-GUI days and I absolutely need to have the visibility that the target shell gives me. Plus, I always will build in the symbol table in case networking goes awry during the downloadable symbol table load, it is too late to bite me. Are you using the target's IP address or a name which is known to your DNS/NIS server? Well, I have ran out of the obvious WAGs. (are you building from the IDE or from the command line?) Could you put a telnet server on your board to verify the networking? Good luck...... "Eric Geelen" wrote in message news:3CFC0BAE.903C816A@tellabs.com... > Help! > > We're developing a PPC8260 application using the tornado tools and > Singlestep debugger. When trying to attach the solaris Host-based > target-server to the WDBagent running on the target board: > > > tgtsvr.ex (FW17GCU-A@sunx214): Mon Jun 3 19:01:40 2002 > Connecting to target agent... > Error: rpccore backend client RPC: Timed out > failed. > Connecting to target agent... > Error: rpccore backend client RPC: Timed out > failed. > > > I've tried resetting each element of my environment, the target board, > the host workstation, and even tried starting a local copy of the > tornado_registry... all to no avail. > > I've been using scripts for my environment and setup, so I'm pretty sure > everything is set up as before (when things were working fine). > > I checked Windriver's dB for similar issues and I found 8 TSR/Forum > message chains asking similar questions, only 2 were given any kind of > suggested solutions, neither solution helped me. (one was reset > everything, the other was a Win/NT based solution). > > Has anyone out there been able to isolate this issue? Any success making > it go away? > --------------------------- Newsgroups: comp.os.vxworks Subject: reloc overflow problem in xscale Date: Mon, 3 Jun 2002 18:51:44 -0700 From: "Ramana Cherukuri" Organization: Newshosting.com - Highest quality at a great price! www.newshosting.com Message-ID: <3cfc1d9f$1@news.mhogaming.com> Hi, I am getting reloc overflow error message when trying to link many small object files to one big object file with -r -o option which are required. when I tried with "-split-by-reloc 65535" option I was able to link, but when I am trying to download on to target it fails. Like for PPC "-mlongcall" do we have any options for Xscale. Thanks in advance for your help. --------------------------- Newsgroups: comp.os.vxworks Subject: hi, what's the matter? Date: Tue, 4 Jun 2002 10:47:20 +0800 From: "zhaoyandong" Organization: Bentium Ltd. (CN99) Message-ID: I remembered there were so many people here. But where are you now? --------------------------- Newsgroups: comp.os.vxworks Subject: Re: hi, what's the matter? Date: Tue, 4 Jun 2002 13:44:27 +0800 From: "zhaoyandong" Organization: Bentium Ltd. (CN99) Message-ID: References: why oh why? I miss you all. "zhaoyandong" wrote in message news:adh9fr$8sm$1@mail.cn99.com... > I remembered there were so many people here. > > But where are you now? > > --------------------------- Newsgroups: comp.os.vxworks Subject: [Q] tNetTask suspends Date: 3 Jun 2002 23:01:13 -0700 From: kotaeji@hanmail.net (Kim Tae Hyung) Organization: http://groups.google.com/ Message-ID: Hi~ I have some problems about tNetTask. It suspends. :( << tNetTask Suspend Problem. >> +---------+ +---------+ | | | | | | +--------+ | | | +----------+-+ +-+----------+ | +---------+ +--------+ +---------+ Host PC1 network equip. Host PC2 windows based on vxworks windows or linux or linux or freebsd or freebsd o Problem Summary The Network equipment based on VxWorks 5.4 becomes dead irregularly by some unknown reasons. :( At first, it seems that it dies when many many network traffic occurs. But, sometimes it dies with almost no network traffic. I have attached the informations when died. But the results are different case by case. But whenever it dies, tt shows something like netMblk* netClblk* functions. Where should I check? Any comments appreciated. Thanks. [ results ] - -> i NAME ENTRY TID PRI STATUS PC SP ERRNO DELAY - ---------- ------------ -------- --- ---------- -------- -------- ------- ----- tExcTask excTask f7eac8 0 PEND c3898 f7e9e8 0 0 tLogTask logTask f7c140 0 PEND c3898 f7c068 0 0 tNetTask netTask f3e1f8 1 SUSPEND+I 6ace8 f3e0b8 0 0 tShell shell e3d3b0 1 READY 9aa08 e3d028 0 0 tWdbTask 8ca74 e3f5d8 3 PEND 95ce4 e3f4f0 0 0 - -> tt tNetTask 9e7d4 vxTaskEntry +5c : netTask () 64a74 netTask +b4 : ipintr () 512ec ipintr +40c: ip_forward () 5251c ip_forward +480: b2d50 () b3024 icmp_init +2f4: netMblkClChainFree () 6b77c netMblkClChainFree+28 : 6ae08 () 6ae64 tcpstatShow +1028: 6ac74 () value = 0 = 0x0 - -> --------------------------- Newsgroups: comp.os.vxworks Subject: Shared memory driver Date: Tue, 4 Jun 2002 08:42:02 +0200 From: "Tony de Goede" Organization: Wanadoo NL Message-ID: Hello vxWorkers, I'am looking for software which is replaces the standard vxWorks SM network driver. The standard driver has only one piece of memory, where all other boards read from. But reads on the backplane take much more time than writes. A better SM network driver would have a distibuted memory space, so messages are only written on the backplane to a destination node. Every node on the backplane has its own shared memory. Thanks for any help in advance. --------------------------- End of New-News digest ********************** From vxwexplo-errs@csg.lbl.gov Tue Jun 4 06:03:54 2002 From: "Krishna Kishore Reddy Sureddy" Date: Tue Jun 4 06:03:56 PDT 2002 Subject: Re: Vxworks : priority inversion This is a multi-part message in MIME format. ------=_NextPartTM-000-d9a92946-4d55-4d68-a261-aede25192786 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Hi Sabarivel, For getting Priority Inheritance problem atleast three tasks should be there. Say the tasks are task A. task B and task C. Task A is Lowest Priority Task and Holding semaphore. Task B is Highest priority task waiting for Semaphore. Task C is medium priority Task. So in this case if task A is preempted by task C then it will take some time for task A to resume. Hence deadlines canoot be met. To solve this problem a task holding semaphore is given the Highest Priortity of all the tasks waiting on the semaphore. For more details you can see "vxWorks Programmers Manual. Regards, S.K.K.Reddy. ----- Original Message ----- From: vxwexplo@lbl.gov (the vxWorks Users Group Exploder) Date: Tuesday, June 4, 2002 4:42 pm Subject: Vxworks : priority inversion > Submitted-by vxwexplo-errs@csg.lbl.gov Tue Jun 4 03:56:59 2002 > Submitted-by: "Sabarivel S" > > Hello friends, > two of our task running in vxworks target faces priority > inheritanceproblem > when can the priority inheritance problem can occur. > Pl provide me some pointers on this issue > > thanks & regards > sabari ------=_NextPartTM-000-d9a92946-4d55-4d68-a261-aede25192786 Content-Type: text/plain; name="Wipro_Disclaimer.txt" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="Wipro_Disclaimer.txt" **************************Disclaimer************************************ Information contained in this E-MAIL being proprietary to Wipro Limited is 'privileged' and 'confidential' and intended for use only by the individual or entity to which it is addressed. You are notified that any use, copying or dissemination of the information contained in the E-MAIL in any manner whatsoever is strictly prohibited. *************************************************************************** ------=_NextPartTM-000-d9a92946-4d55-4d68-a261-aede25192786-- From vxwexplo-errs@csg.lbl.gov Tue Jun 4 09:15:59 2002 From: Kenny Krupnik Date: Tue Jun 4 09:16:02 PDT 2002 Subject: VxWorks TELNET client This message is in MIME format. Since your mail reader does not understand this format, some or all of this message may not be legible. ------_=_NextPart_001_01C20BD1.6F55A770 Content-Type: text/plain; charset="WINDOWS-1255" Hi, I would like to know whether anyone has source code for a TELNET client for VxWorks. Thanks, Kenny ------_=_NextPart_001_01C20BD1.6F55A770 Content-Type: text/html; charset="WINDOWS-1255" VxWorks TELNET client

Hi,
I would like to know whether anyone has source code for a TELNET client for VxWorks.

Thanks,
   Kenny

------_=_NextPart_001_01C20BD1.6F55A770-- From vxwexplo-errs@csg.lbl.gov Tue Jun 4 21:58:08 2002 From: "Sabarivel S" Date: Tue Jun 4 21:58:10 PDT 2002 Subject: Vxworks : Priority inversion Hi, I face a problem of priority inheritance of two of our tasks. We are using m2Lib library calls in our code. We have found a semaphore on which the deadlock is occurring. The name of this semaphore is splSemId, this is a vxworks semaphore. is there a known issue with semaphore lockup on any of the vxWorks APIs ? Do any of you have faced similar kind of problem ? Kindly provide your valuable inputs on this thanks sabari *************************************************************************** This message is proprietary to Future Software Limited (FSL) and is intended solely for the use of the individual to whom it is addressed. It may contain privileged or confidential information and should not be circulated or used for any purpose other than for what it is intended. If you have received this message in error, please notify the originator immediately. If you are not the intended recipient, you are notified that you are strictly prohibited from using, copying, altering, or disclosing the contents of this message. FSL accepts no responsibility for loss or damage arising from the use of the information transmitted by this email including damage from virus. *************************************************************************** From vxwexplo-errs@csg.lbl.gov Wed Jun 5 03:27:20 2002 From: "Sabarivel S" Date: Wed Jun 5 03:27:23 PDT 2002 Subject: Vxworks: Route change notification hi, Our protocol which runs over ip needs to get information of unicast route changes (adding/deleting) occuring at IP level. Is there any way of knowing this ? any help on this is highly appreciated. thanks sabari *************************************************************************** This message is proprietary to Future Software Limited (FSL) and is intended solely for the use of the individual to whom it is addressed. It may contain privileged or confidential information and should not be circulated or used for any purpose other than for what it is intended. If you have received this message in error, please notify the originator immediately. If you are not the intended recipient, you are notified that you are strictly prohibited from using, copying, altering, or disclosing the contents of this message. FSL accepts no responsibility for loss or damage arising from the use of the information transmitted by this email including damage from virus. *************************************************************************** From vxwexplo-errs@csg.lbl.gov Wed Jun 5 04:03:15 2002 From: Vxworks Exploder Date: Wed Jun 5 04:03:17 PDT 2002 Subject: comp.os.vxworks newsdigest Comp.Os.Vxworks Daily Digest Wed Jun 5 04:03:11 PDT 2002 Subject: Re: How to obtain source code Line Number during runtime?? Subject: Re: Shared memory driver Subject: interupts at ppc8260 Subject: C pointer function to C++ functino member pointer Subject: Re: visionIce: DriverX vs Win2000 Subject: What is a difference between WatchDog and POSIX timers in VxWorks? Subject: Re: Interfacing TMS320C54x with Fujitsu flash Subject: Re: What is a difference between WatchDog and POSIX timers in VxWorks? Subject: Re: interupts at ppc8260 Subject: Re: C pointer function to C++ functino member pointer Subject: VxWorks BootRom Subject: Re: PPC750 cache locking? Subject: Re: PPC750 cache locking? Subject: Re: VxWorks BootRom Subject: Re: C pointer function to C++ functino member pointer Subject: Re: VxWorks BootRom Subject: Re: WDB-rpc error Subject: VxWorks HDD driver that uses DMA transfers (as opposed to PIO). Subject: How can I write four files quickly on a disk at the same time? Subject: Re: Is there a solution to template bloat in VxWorks 5.4? Subject: Re: how is multi-level interrupt supported by VxWorks Subject: Re: interupts at ppc8260 Subject: Detecting corrupt memory list Subject: Re: How can I write four files quickly on a disk at the same time? Subject: Re: VxWorks HDD driver that uses DMA transfers (as opposed to PIO). Subject: Re: how is multi-level interrupt supported by VxWorks Subject: WindView with Diab compiler Subject: Re: visionIce: DriverX vs Win2000 ------------------------------------------------------- Newsgroups: comp.os.vxworks Subject: Re: How to obtain source code Line Number during runtime?? Date: Tue, 04 Jun 2002 11:42:23 GMT From: amit_raam@hotmail.com Organization: Verio Message-ID: References: <161375e4.0206030855.3144974d@posting.google.com> nova9@hotmail.com (Joe Lee) wrote: >I want to use this during debugging, when I do a printf for an error >to be able to also obtain the line number at which the printf was >executed. I've seen other programs done simular things but I'am just >wondering if this is possible with VXWorks. > >Thank you very much. printf("error at line %d\n", __LINE__); --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Shared memory driver Date: Tue, 04 Jun 2002 12:33:29 GMT From: "Leonid Rosenboim" Organization: Verio Message-ID: References: Tony, you are quite right - the SM and its predecsor BP drivers are not as effecient as they could be, but they where shooting for universal compatibility rather than preformance. It is not very hard to write such a driver for VxWorks, with or without source code of the original SM driver, so uf you know what you are doing (it seems that you do), the best approach for you is write your own shared memory driver, and utilize the aspects of your hardware in the best possible way. One of my customers in the past did just that, which resulted in a rather simple solution with quite impressive performance. "Tony de Goede" wrote in message news:adhnm8$8n8$1@scavenger.euro.net... > Hello vxWorkers, > > I'am looking for software which is replaces the standard vxWorks SM network > driver. > The standard driver has only one piece of memory, where all other boards > read > from. But reads on the backplane take much more time than writes. A better > SM > network driver would have a distibuted memory space, so messages are only > written on the backplane to a destination node. Every node on the backplane > has > its own shared memory. > > Thanks for any help in advance. > > > > > --------------------------- Newsgroups: comp.os.vxworks Subject: interupts at ppc8260 Date: Tue, 4 Jun 2002 16:06:52 +0200 From: "Achim Zimmer" Message-ID: I wonna use pin 7 of port C at PPC8260 as a general interupt pin. But something I do is wrong, it always end in a reboot. Any hints are welcome. At first I configure pin 7 of Port C. Then I configure SIEXR to got an INT at High to low change. I make an intConnect to the service routine. And I wonna enable the Interupt. There is the problem: in this moment my Hardware is rebooting with the errormessage at the end. void xxxInterrupt(int param) { logMsg("xxxInt\n", 0,0,0,0,0,0,0,0,0,0); semGive(xxxIntSem); } void init() { . . . *M8260_IOP_PCDIR(regBase) &= ~0x01000000; // pin 7 = 0 = direction input *M8260_IOP_PCPAR(regBase) |= 0x01000000; // pin 7 = 1 = dedicated function *M8260_IOP_PCSO(regBase) &= ~0x01000000; // pin 7 = 0 = special option 0 *M8260_IOP_PCODR(regBase) &= ~0x01000000; // pin 7 = 0 = activily drive as output *M8260_SIEXR(regBase) |= 0x01000000; // we got an int at HIGH_TO_LOW change // connect interruptroutine (void) intConnect (INUM_TO_IVEC(INUM_PC7), (VOIDFUNCPTR) rtcInterrupt, 0); // set SIMR bit m8260IntEnable(INUM_PC7); // enables the Interrupt in the CORE . . . } Errormessage: Exception at interrupt level: program Exception current instruction address: 0x00000000 Machine Status Register: 0x00089000 Condition Register: 0x08000000 Regs at 0x1cd020 Press any key to stop auto-boot... --------------------------- Newsgroups: comp.os.vxworks Subject: C pointer function to C++ functino member pointer Date: 4 Jun 2002 08:17:16 -0700 From: pboulay@hotmail.com (Patrick Boulay) Organization: http://groups.google.com/ Message-ID: <8bb5523.0206040717.775138fc@posting.google.com> Hello, I need to use WatchDog function for a timeout (wdStart). And I need to pass a function pointer to say what append on a timeout. But When I start a timer for a specific class, I want to point a function member, because it's only this class know what append on timeout. Example class foo { virtual void onTimeOut(); } void foo::onTimeOut() { ... } the function wdStart need a function ptr: void (*fnc)(int) But, I dont want to use STATIC function... The only way I found to use PTR, it's void (foo::*f)(int); f = &A::onTimeOut; So.. I cant put that inside the wdStart parameters.... Anyone can help me? Thanks Patrick --------------------------- Newsgroups: comp.os.vxworks Subject: Re: visionIce: DriverX vs Win2000 Date: Tue, 4 Jun 2002 09:22:02 -0700 From: "kdb" Organization: cmc Message-ID: References: and WRS finds this acceptable? this is totally unsatisfactory! "Johan Borkhuis" wrote in message news:Xns921F5D4FA736Bborkhuisagerecom@135.7.153.102... > "kdb" wrote: > > > I started noticing problems on my Windows 2000 laptop around the time > > I installed the visionClick software (v7.90A) for my visionIce > > emulator. Finally tracked it down to the DriverX driver installed by > > visionClick. Disabled the driver, Win2000 problems went away. > > I had some discussions with WindRiver on this, and this is part of the > answer: > > The DriverX is used for the paralell port, when you connect to the > visionPROBE. Since you are using a visionICE through the network (correct > me if I am wrong), as a workaround it should work to just stop the > driverx. > > I did also see the problem with the connection dropped, but usually it is > restored by reopeneing the NET port. We do not see the problems on other > platforms. > > Groeten, > Johan > > -- > o o o o o o o . . . _____________________________ > o _____ || Johan Borkhuis | > .][__n_n_|DD[ ====_____ | borkhuis@agere.com | > >(________|__|_[_________]_|__________________________| > _/oo OOOOO oo` ooo ooo 'o!o!o o!o!o` > === VxWorks FAQ: http://www.xs4all.nl/~borkhuis/vxworks/vxworks.html === > --------------------------- Newsgroups: comp.os.vxworks Subject: What is a difference between WatchDog and POSIX timers in VxWorks? Date: 4 Jun 2002 09:30:39 -0700 From: renata@metalink.co.il (Renata) Organization: http://groups.google.com/ Message-ID: <74016283.0206040830.7323ad44@posting.google.com> During my work i run into the following problem. In my code i used the one-shot timer(vxworks supports it),but also i found another type of timer - Watchdog timer.I tried to find a difference between them,but i didn't find. Maybe the timer is a Posix(standard) timer,and Watchdog is not? Please help me to clear up this problem... Thanks in advance. --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Interfacing TMS320C54x with Fujitsu flash Date: 4 Jun 2002 09:43:59 -0700 From: vloscomp@yahoo.com (Vinh) Organization: http://groups.google.com/ Message-ID: References: <4d133ac0.0206021859.30d5fff7@posting.google.com> mala_tk@yahoo.com (Mala) wrote in message news:<4d133ac0.0206021859.30d5fff7@posting.google.com>... > hello to everyone in the group. > i am trying to interface TMS320VC5416 with Fujistu flash > MBM29DL400BC.i request u to send me link where i can get source code > or assembly code for the same.i request u'r guidance if anyone has > worked with the same. > thanking u... > Mala Hi Mala, I think you may want to start with the device data sheet, then if you are using TFFS and DosFs reads the socket and MTD section of the manual. Vinh Lam --------------------------- Newsgroups: comp.os.vxworks Subject: Re: What is a difference between WatchDog and POSIX timers in VxWorks? Date: Tue, 04 Jun 2002 16:45:29 GMT From: "Leonid Rosenboim" Organization: Verio Message-ID: References: <74016283.0206040830.7323ad44@posting.google.com> Herfe is a brief explanation, this should be part of tha FAQ: The VxWorks watchdog (wdLib) is a software mechanism for many software modules to share a single hardware timer, that is the system clock. Each wdLib client can request a timeout which is a multiple of the system clock tick, and a user defined function (aka callback) is executed within interrupt service routine of the system clock interrupt. Being run at ISR, the wdLib delivery callback is very accurate, as it is not subject to task priority, but the code therein should be kept as short as possibly, and comply with the limitations of an ISR, i.e. call only those system functions which are allowed for ISR, and avoid using floating point arithmetics. The POSIX timer is an entirely different software mechanism, which uses the same system clock as its time reference, but uses the POSIX signal mechanism (versus callback) to deliver the timer alert to the requesting task, as a result, the signal function which is executed as a result of the timer expiration runs within the context of the task that requested the timer originally. The signal delivery mechanism will be invoked effectively when the receiving task is scheduled, which is subject to that task's priority, so the delivery will be less accurate, and suffer greater delay, but is not limitted with respect to the length or complexity of code that can be executed therein. It will only effect the task which is associated with that timer. "Renata" wrote in message news:74016283.0206040830.7323ad44@posting.google.com... > During my work i run into the following problem. > In my code i used the one-shot timer(vxworks supports it),but also i > found > another type of timer - Watchdog timer.I tried to find a difference > between them,but i didn't find. > Maybe the timer is a Posix(standard) timer,and Watchdog is not? > Please help me to clear up this problem... > Thanks in advance. --------------------------- Newsgroups: comp.os.vxworks Subject: Re: interupts at ppc8260 Date: Tue, 4 Jun 2002 09:50:34 -0700 From: "Dan Gold" Organization: Mailgate.ORG Server - http://www.Mailgate.ORG Message-ID: References: Sender: gold@ensemble.com "Achim Zimmer" wrote in message news:adihpp$11gkpe$1@ID-102608.news.dfncis.de... > I wonna use pin 7 of port C at PPC8260 as a general interupt pin. But > something I do is wrong, it always end in a reboot. > Any hints are welcome. > > *M8260_IOP_PCPAR(regBase) |= 0x01000000; // pin 7 = 1 = dedicated > function This is wrong. In order for port c to generate interrupts, you should have the bit configured for general purpose. If you set it as dedicated, it's function will be defined in chapter 35 of the user's manual. For general purpose and interrupts, the corresponding PAR bit should be 0. hth, Dan Gold gold@ensemble.com --------------------------- Newsgroups: comp.os.vxworks Subject: Re: C pointer function to C++ functino member pointer Date: Tue, 04 Jun 2002 13:04:19 -0400 From: david lindauer Message-ID: <3CFCF313.C6F4136D@notifier-is.net> References: <8bb5523.0206040717.775138fc@posting.google.com> Patrick Boulay wrote: > Hello, > > I need to use WatchDog function for a timeout (wdStart). And I need to > pass a function pointer to say what append on a timeout. But When I > start a timer for a specific class, I want to point a function member, > because it's only this class know what append on timeout. > > Example > > class foo > { > virtual void onTimeOut(); > } > > void foo::onTimeOut() > { > ... > } > > the function wdStart need a function ptr: void (*fnc)(int) > > But, I dont want to use STATIC function... > > The only way I found to use PTR, it's > > void (foo::*f)(int); > f = &A::onTimeOut; > > So.. I cant put that inside the wdStart parameters.... > > Anyone can help me? > > Thanks > Patrick C++ does not allow direct access to member functions this way unless they are static: the reason is that there is an implicit parameter to such functions that is filled in by the compiler (the address of the class instance whose data is to be used throughout the call). Additionally if you are trying to find a virtual function, it will generally be necessary to use the address of the class instance to find it. The way to handle this is to make a C function like this: foo *myFoo ; void myWdFunc(void) { myFoo->onTimeOut() ; } and pass a pointer to the wrapper to the watchdog routine. Don't forget to initialize myFoo with the class instance holding the data you want the timeout function to work with. David --------------------------- Newsgroups: comp.os.vxworks Subject: VxWorks BootRom Date: Tue, 4 Jun 2002 10:56:29 -0700 From: "News" Organization: Arizona State University Message-ID: Hi All We have Synergy board with ppc architecture (PPC 750). We have VxWorks bootrom. If we have to change to Linux2.4 as the OS, Can we just use the same bootrom to download the Linux image insted of VxWorks image on to the board. If No, what is the alternative? Any help is appertiated. Thanks Shesha --------------------------- Newsgroups: comp.os.vxworks Subject: Re: PPC750 cache locking? Date: 4 Jun 2002 11:36:07 -0700 From: jchen@tollbridgetech.com (john c) Organization: http://groups.google.com/ Message-ID: <1f1b48b5.0206041036.33237244@posting.google.com> References: <1f1b48b5.0205301014.bce022@posting.google.com> For us, our cacheLock function does seem to work as well. Its weird, because from a hardware perspective, the 750 doesn't seem to support cache lock of certain region. Either you lock the WHOLE L1 instruction/data cache or you don't. But the cacheLock() function does take an adrs and # of bytes.... any ideas? john vloscomp@yahoo.com (Vinh) wrote in message news:... > Hi, > I am not quite sure about the implementation of cacheLock(), but the > MMU of PPC or the PTE descriptor does allow a page to be lock. You can > look at this in the sysLib.c and the PPC programing manual. > We did successfully used cacheLock(). > > Gl, > Vinh Lam > > jchen@tollbridgetech.com (john c) wrote in message news:<1f1b48b5.0205301014.bce022@posting.google.com>... > > Hi all. > > Quick question about the PPC750. Does anyone know how cacheLock() > > function works? I've been reading through the 750CXe Manual and there > > are no instructions that you can use to lock a part of the cache. The > > 750 provides certain HID[] bits for you to lock or unlock the entire > > L1 cache (Data and/or instruction cache) but strangely enough, the BSP > > for PPC750 supports cacheLock() function. > > > > Does anyone know how vxWorks does cacheLock()? How do you setup the > > hardware to lock certain portions of the cache? Or is this purely a > > software thing? > > > > john --------------------------- Newsgroups: comp.os.vxworks Subject: Re: PPC750 cache locking? Date: 4 Jun 2002 11:36:35 -0700 From: jchen@tollbridgetech.com (john c) Organization: http://groups.google.com/ Message-ID: <1f1b48b5.0206041036.6495ef75@posting.google.com> References: <1f1b48b5.0205301014.bce022@posting.google.com> For us, our cacheLock function does seem to work as well. Its weird, because from a hardware perspective, the 750 doesn't seem to support cache lock of certain region. Either you lock the WHOLE L1 instruction/data cache or you don't. But the cacheLock() function does take an adrs and # of bytes.... any ideas? john vloscomp@yahoo.com (Vinh) wrote in message news:... > Hi, > I am not quite sure about the implementation of cacheLock(), but the > MMU of PPC or the PTE descriptor does allow a page to be lock. You can > look at this in the sysLib.c and the PPC programing manual. > We did successfully used cacheLock(). > > Gl, > Vinh Lam > > jchen@tollbridgetech.com (john c) wrote in message news:<1f1b48b5.0205301014.bce022@posting.google.com>... > > Hi all. > > Quick question about the PPC750. Does anyone know how cacheLock() > > function works? I've been reading through the 750CXe Manual and there > > are no instructions that you can use to lock a part of the cache. The > > 750 provides certain HID[] bits for you to lock or unlock the entire > > L1 cache (Data and/or instruction cache) but strangely enough, the BSP > > for PPC750 supports cacheLock() function. > > > > Does anyone know how vxWorks does cacheLock()? How do you setup the > > hardware to lock certain portions of the cache? Or is this purely a > > software thing? > > > > john --------------------------- Newsgroups: comp.os.vxworks Subject: Re: VxWorks BootRom Date: Tue, 04 Jun 2002 19:08:28 GMT From: "Jim" Organization: Magma Communications Ltd. Message-ID: References: no ... i don;t believe so ... linux uses a different compression scheme on the kernel ... it may be the same but i don;t think it is ... as well there may be mmu settings ... Jim jgdon@ureach.com Ottawa, Can "News" wrote in message news:adiv5p$hsc$1@news.asu.edu... > Hi All > We have Synergy board with ppc architecture (PPC 750). We have VxWorks > bootrom. If we have to change to Linux2.4 as the OS, > Can we just use the same bootrom to download the Linux image insted of > VxWorks image on to the board. If No, what is the alternative? > Any help is appertiated. > > Thanks > Shesha > > > --------------------------- Newsgroups: comp.os.vxworks Subject: Re: C pointer function to C++ functino member pointer Date: Tue, 04 Jun 2002 20:04:48 GMT From: "Leonid Rosenboim" Organization: Verio Message-ID: References: <8bb5523.0206040717.775138fc@posting.google.com> The solution is quite simple: extern "C" int foo_onTimeout_wrap(int arg) { foo:onTimeout(); } wdStart( foo_onTimeout_wrap, ... ) "Patrick Boulay" wrote in message news:8bb5523.0206040717.775138fc@posting.google.com... > Hello, > > I need to use WatchDog function for a timeout (wdStart). And I need to > pass a function pointer to say what append on a timeout. But When I > start a timer for a specific class, I want to point a function member, > because it's only this class know what append on timeout. > > Example > > class foo > { > virtual void onTimeOut(); > } > > void foo::onTimeOut() > { > ... > } > > the function wdStart need a function ptr: void (*fnc)(int) > > But, I dont want to use STATIC function... > > The only way I found to use PTR, it's > > void (foo::*f)(int); > f = &A::onTimeOut; > > > So.. I cant put that inside the wdStart parameters.... > > Anyone can help me? > > Thanks > Patrick --------------------------- Newsgroups: comp.os.vxworks Subject: Re: VxWorks BootRom Date: Tue, 04 Jun 2002 21:17:50 GMT From: "Jim" Organization: Magma Communications Ltd. Message-ID: <28aL8.1609$qc3.45709@news> References: ps please let me know if you learn anything ... "Jim" wrote in message news:Me8L8.1555$qc3.45101@news... > no ... > i don;t believe so ... linux uses a different compression scheme on the > kernel ... > > it may be the same but i don;t think it is ... > > as well there may be mmu settings ... > > Jim > jgdon@ureach.com > Ottawa, Can > > "News" wrote in message news:adiv5p$hsc$1@news.asu.edu... > > Hi All > > We have Synergy board with ppc architecture (PPC 750). We have VxWorks > > bootrom. If we have to change to Linux2.4 as the OS, > > Can we just use the same bootrom to download the Linux image insted of > > VxWorks image on to the board. If No, what is the alternative? > > Any help is appertiated. > > > > Thanks > > Shesha > > > > > > > > --------------------------- Newsgroups: comp.os.vxworks Subject: Re: WDB-rpc error Date: 4 Jun 2002 16:16:06 -0700 From: hsingyuan@yahoo.com (Hsing Yuan) Organization: http://groups.google.com/ Message-ID: <70d78653.0206041516.17a23802@posting.google.com> References: <3CFC0BAE.903C816A@tellabs.com> We have the same problem. From time to time, the target server will time out, and the connection breaks up. It has never worked well. I do notice that sometimes the console prints "recv: Error" or something like that. If anyone has the solution, please let us know too. Thanks Hsing Yuan "drdiags" wrote in message news:... > Hello Eric, > > Not sure, but the version of vxWorks/Tornado you are using could be in > play. You > mention that this worked before, so you don't have a DHCP server running, > which > could be taking the only available SNARF protocol in pre T2.0.2 for PPC. You > are > sure the kernel is using END or Network for the WDB agent. How about the > target server line? You might want to use the logging for WTX/Backend > communication > in case this may shed some light. Do you have a target shell installed? I am > from the > pre-GUI days and I absolutely need to have the visibility that the target > shell gives me. > Plus, I always will build in the symbol table in case networking goes awry > during the > downloadable symbol table load, it is too late to bite me. Are you using the > target's IP address or a name which is known to your DNS/NIS server? Well, I > have ran out of the obvious WAGs. (are you building from the IDE or from the > command line?) Could you put a telnet server on your board to verify the > networking? Good luck...... > > "Eric Geelen" wrote in message > news:3CFC0BAE.903C816A@tellabs.com... > > Help! > > > > We're developing a PPC8260 application using the tornado tools and > > Singlestep debugger. When trying to attach the solaris Host-based > > target-server to the WDBagent running on the target board: > > > > > > tgtsvr.ex (FW17GCU-A@sunx214): Mon Jun 3 19:01:40 2002 > > Connecting to target agent... > > Error: rpccore backend client RPC: Timed out > > failed. > > Connecting to target agent... > > Error: rpccore backend client RPC: Timed out > > failed. > > > > > > I've tried resetting each element of my environment, the target board, > > the host workstation, and even tried starting a local copy of the > > tornado_registry... all to no avail. > > > > I've been using scripts for my environment and setup, so I'm pretty sure > > everything is set up as before (when things were working fine). > > > > I checked Windriver's dB for similar issues and I found 8 TSR/Forum > > message chains asking similar questions, only 2 were given any kind of > > suggested solutions, neither solution helped me. (one was reset > > everything, the other was a Win/NT based solution). > > > > Has anyone out there been able to isolate this issue? Any success making > > it go away? > > --------------------------- Newsgroups: comp.os.vxworks Subject: VxWorks HDD driver that uses DMA transfers (as opposed to PIO). Date: Tue, 4 Jun 2002 18:15:50 -0700 From: "Frank" Message-ID: <3cfd6646$0$38709$e2e8da3@nntp.cts.com> Does anyone have knowlegde of a VxWorks HDD driver that uses DMA transfers (as opposed to PIO). TIA, - - Frank --------------------------- Newsgroups: comp.os.vxworks Subject: How can I write four files quickly on a disk at the same time? Date: 4 Jun 2002 18:44:06 -0700 From: shyang@netease.com (yang) Organization: http://groups.google.com/ Message-ID: <8446174.0206041744.46eda55d@posting.google.com> We want to write four files on a disk at the same time .But we find it take up too many CPU time. We have tried to use FIOCONTIG and rename mechanism. code: bzero(buf,80); bzero(fdName,200); sprintf(fdName,"channel%d/%03d.mpg",i,j); taskDelay(sysClkRateGet()/100); pFd = dosFsOpen( pVolDesc[1], fdName,O_CREAT | O_RDWR, 0 ); taskDelay(sysClkRateGet()/100); if(dosFsIoctl(pFd,FIOCONTIG,creatFileSize) == ERROR) printf("can't allocation continue block\n"); taskDelay(sysClkRateGet()/100); dosFsWrite(pFd,fdName,29); taskDelay(sysClkRateGet()/100); pFileHdl = pFd->pFileHdl; pFileHdl->size = creatFileSize ; bzero(fdName,200); sprintf(fdName,"/ata0b/channel%d/%03d.mpg",i,j); stat(fdName, &fileStat); fd = open (fdName, O_RDWR, 0); read(fd,buf,29); close(fd); dosFsClose(pFd); taskDelay(sysClkRateGet()/100); bzero(fdName,200); sprintf(fdName,"channel%d/%03d.mpg",i,j); pFd = dosFsOpen( pVolDesc[1], fdName,O_RDWR, 0 ); pFileHdl = pFd->pFileHdl; pFileHdl->size = creatFileSize ; pFd->pos = creatFileSize - 1; taskDelay(sysClkRateGet()/100); dosFsClose(pFd); Can someone give me help ? --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Is there a solution to template bloat in VxWorks 5.4? Date: Wed, 05 Jun 2002 03:19:28 GMT From: bill@woola.qswtools.com Organization: EarthLink Inc. -- http://www.EarthLink.net Message-ID: <4rfL8.2837$9H4.1724@newsread2.prod.itd.earthlink.net> References: <1f0502b5.0205301056.e0422c5@posting.google.com> <%5IJ8.397$bJ4.357@newsread1.prod.itd.earthlink.net> <1f0502b5.0206031302.31a95e2f@posting.google.com> In article <1f0502b5.0206031302.31a95e2f@posting.google.com>, braddillman@yahoo.com (Brad Dillman) writes: Wow! You actually got templates to work on that old a compiler? I wasn't even trying back then. I've seen them work well on all the more recent versions that I tried. Certainly the 2.96 ver- sions do it well. > -frepo didn't work, there were way too many undefined references. I > tried using -fexternal_templates, #pragma interface and #pragma > implementation "xxx.h", but the compiler (not the linker) kept > complaining about "no match for xxx", where xxx was an STL template > member function I wasn't using (looks like I got one for every > function I didn't use). > > Seriously, I can't find any way to eliminate duplicate template code. > > From this link: > > http://gcc.gnu.org/onlinedocs/gcc-2.95.3/gcc_5.html#SEC110 > > I've tried #1, #2, #3 and #4. Only #3 works, but the code is huge. > > Compiler version is 2.7.2 for PowerPC. > > bill@woola.qswtools.com wrote in message news:<%5IJ8.397$bJ4.357@newsread1.prod.itd.earthlink.net>... >> In article <1f0502b5.0205301056.e0422c5@posting.google.com>, >> braddillman@yahoo.com (Brad Dillman) writes: >> > I've been searching the web, to find a way to prevent STL templates >> > from appearing in multiple .o files. I'm currently trying the -frepo >> > option, which requires me to explicitly instantiate templates. >> > >> > Will this work? >> Yes, all WR versions of gcc that I've used support '-frepo' except >> the Tornado 1.0.1 version. Except that it's not called "explicit >> instantiation". >> >> > Has this problem been solved before? >> Yes. >> >> > Any pointers, URLs or advice? >> Sure. >> http://www-es.fernuni-hagen.de/cgi-bin/info2html?(gcc)Template%20Instantiation >> >> The newer versions of gcc from WRS (2.96) implement the "Borland model" >> in which the compiler automatically instantiates template code >> in the object file where the template is referenced. The duplicate >> code is then discarded by the linker (ldppc) or the loader. The >> only cost to this is larger object files, and slightly slower >> build times. >> >> > >> > Thanks, >> > Brad Dillman --------------------------- Newsgroups: comp.os.vxworks Subject: Re: how is multi-level interrupt supported by VxWorks Date: Wed, 05 Jun 2002 06:00:00 GMT From: "Gary M" Organization: AT&T Broadband Message-ID: References: <3baeb99.0205300327.3f40bc1e@posting.google.com> The 403, 860, and 8260 certainly do, for starters. Just from looking in target/src/drv/intrCtl. "Michael Lawnick" wrote in message news:adf69l$ks3$1@snoopy.bndlg.de... > Hi Demrala, > > AFAIK (allmost all) PPC don't support nested interrupts by default. To > enable it, you'll have to go deep into system, including patching of > assembler routines. > E.g. PPC405 'walnut' BSP explicitly disables so called 'critical interrupts' > when a 'non-critical interrupt' occurs. > > HTH > Michael --------------------------- Newsgroups: comp.os.vxworks Subject: Re: interupts at ppc8260 Date: Wed, 5 Jun 2002 08:12:59 +0200 From: "Achim Zimmer" Message-ID: References: Thanks for the hint, but after changing it to special purpose (you are right, it should be so) *M8260_IOP_PCPAR(regBase) &= ~0x01000000; the machine boots again at intEnable () with Exception at interrupt level: program Exception current instruction address: 0x00000000 Machine Status Register: 0x00089000 Condition Register: 0x08000000 Regs at 0x1cd1b0 Press any key to stop auto-boot... Anymore hints ??? Thank you very much "Dan Gold" schrieb im Newsbeitrag news:adir82$aar$1@newsreader.mailgate.org... > "Achim Zimmer" wrote in message > news:adihpp$11gkpe$1@ID-102608.news.dfncis.de... > > I wonna use pin 7 of port C at PPC8260 as a general interupt pin. But > > something I do is wrong, it always end in a reboot. > > Any hints are welcome. > > > > *M8260_IOP_PCPAR(regBase) |= 0x01000000; // pin 7 = 1 = dedicated > > function > > This is wrong. In order for port c to generate interrupts, you should have > the bit configured for general purpose. If you set it as dedicated, it's > function will be defined in chapter 35 of the user's manual. For general > purpose and interrupts, the corresponding PAR bit should be 0. > > hth, > Dan Gold gold@ensemble.com > > > --------------------------- Newsgroups: comp.os.vxworks Subject: Detecting corrupt memory list Date: Wed, 5 Jun 2002 09:06:30 +0200 From: "Rene Straub" <_remove_rene.straub@yetnet.ch> Organization: Swisscom IP+ (post doesn't reflect views of Swisscom) Message-ID: Hello, I am tracking down an annoying bug in our software. It causes the memory list to become invalid, which then triggers the "memPartFree: invalid block..." message on a subsequent call to free(). In order to isolate the buggy code sequence I'd like to insert checks for the memory list in my code. Is there any (free) code available that will go through all memory partitions and check them for consistency ? If not is there a description of the VxWorks memory allocator, so that I can write it myself. Yours - - Rene Straub --------------------------- Newsgroups: comp.os.vxworks Subject: Re: How can I write four files quickly on a disk at the same time? Date: Wed, 05 Jun 2002 07:05:51 GMT From: "Leonid Rosenboim" Organization: Verio Message-ID: References: <8446174.0206041744.46eda55d@posting.google.com> Now, this is quite mixed up, here are a few points that come to mind after a quick read: 1. Why are you using the dosFs functions directly ? The common method is using the I/O functions, open(), close(), read(), write() and ioctl(). Your use of the DosFs2.0 low level data structure is completely incorrect, and will have unexpected behaviour. 2. You can not do any two or more operations simultaneously on a single disk, because the disk has only one set of reading heads, which can be only at one disk location at any given time, so whatever you do, th eoperations can be very close to one another timewise, but not ever at the same time. If you will try to describe what you are trying to accoumplish, I might be able to offer advise on what would be a good way to get the result. - - Leonid "yang" wrote in message news:8446174.0206041744.46eda55d@posting.google.com... > We want to write four files on a disk at the same time .But we find it > take up too many CPU time. > We have tried to use FIOCONTIG and rename mechanism. > code: > bzero(buf,80); > bzero(fdName,200); > sprintf(fdName,"channel%d/%03d.mpg",i,j); > taskDelay(sysClkRateGet()/100); > pFd = dosFsOpen( pVolDesc[1], fdName,O_CREAT | O_RDWR, 0 ); > taskDelay(sysClkRateGet()/100); > if(dosFsIoctl(pFd,FIOCONTIG,creatFileSize) == ERROR) > printf("can't allocation continue block\n"); > taskDelay(sysClkRateGet()/100); > dosFsWrite(pFd,fdName,29); > taskDelay(sysClkRateGet()/100); > pFileHdl = pFd->pFileHdl; > pFileHdl->size = creatFileSize ; > bzero(fdName,200); > sprintf(fdName,"/ata0b/channel%d/%03d.mpg",i,j); > stat(fdName, &fileStat); > fd = open (fdName, O_RDWR, 0); > read(fd,buf,29); > close(fd); > dosFsClose(pFd); > taskDelay(sysClkRateGet()/100); > bzero(fdName,200); > sprintf(fdName,"channel%d/%03d.mpg",i,j); > pFd = dosFsOpen( pVolDesc[1], fdName,O_RDWR, 0 ); > pFileHdl = pFd->pFileHdl; > pFileHdl->size = creatFileSize ; > pFd->pos = creatFileSize - 1; > taskDelay(sysClkRateGet()/100); > dosFsClose(pFd); > Can someone give me help ? --------------------------- Newsgroups: comp.os.vxworks Subject: Re: VxWorks HDD driver that uses DMA transfers (as opposed to PIO). Date: Wed, 05 Jun 2002 07:10:27 GMT From: "Leonid Rosenboim" Organization: Verio Message-ID: References: <3cfd6646$0$38709$e2e8da3@nntp.cts.com> VxWorks standard SCSI drivers use DMA, but the IDEw driver (aka ataDrv) only supports PIO, because there is substantial difference in the way different PC motherboards implement the DMA functionality of their DMA channels. In my previous company, I have added support for Bus Master (better than DMA) and UltraATA at 33/66/100 MB/sec transfer rate, specifically for the chipsets used (Intel i810, i815). Wasn't too hard to do. Hope this helps, - Leonid Rosenboim "Frank" wrote in message news:3cfd6646$0$38709$e2e8da3@nntp.cts.com... > Does anyone have knowlegde of a VxWorks HDD driver that uses DMA transfers > (as opposed to PIO). > > TIA, > > - Frank > > --------------------------- Newsgroups: comp.os.vxworks Subject: Re: how is multi-level interrupt supported by VxWorks Date: Wed, 5 Jun 2002 09:06:18 +0200 From: "Michael Lawnick" Organization: Buergernetz Dillingen Message-ID: References: <3baeb99.0205300327.3f40bc1e@posting.google.com> Reply-To: "Michael Lawnick" Sender: mlawnick@pd9524bf2.dip.t-dialin.net Gary, seems you are right (have looked into MV2600 (PPC604) too) , so delete 'allmost all', set 'some like PPC405, it depends on the particular arch/BSP' "Gary M" schrieb im Newsbeitrag news:ANhL8.112526$ux5.172753@rwcrnsc51.ops.asp.att.net... > The 403, 860, and 8260 certainly do, for starters. Just from looking in > target/src/drv/intrCtl. > > "Michael Lawnick" wrote in message > news:adf69l$ks3$1@snoopy.bndlg.de... > > Hi Demrala, > > > > AFAIK (allmost all) PPC don't support nested interrupts by default. To > > enable it, you'll have to go deep into system, including patching of > > assembler routines. > > E.g. PPC405 'walnut' BSP explicitly disables so called 'critical > interrupts' > > when a 'non-critical interrupt' occurs. > > > > HTH > > Michael > > > --------------------------- Newsgroups: comp.os.vxworks Subject: WindView with Diab compiler Date: 5 Jun 2002 00:57:33 -0700 From: Igal.Vainzof@alvarion.com (Igal) Organization: http://groups.google.com/ Message-ID: <8d755023.0206042357.37773f37@posting.google.com> Does anybody know if this is possible to use windview with the Diab compiler? I have Tornado 2.0.2 with windows 2000, two compilers - GNU and Diab. Projects that run GNU compiler use the windview without any problems, but if I try to include the component of windview to the project defined with Diab, it writes that windview is not installed. Does anybody knows what should I do? Thanks --------------------------- Newsgroups: comp.os.vxworks Subject: Re: visionIce: DriverX vs Win2000 Date: 5 Jun 2002 08:07:43 GMT From: Johan Borkhuis Organization: Agere Systems Message-ID: References: "kdb" wrote: > and WRS finds this acceptable? > this is totally unsatisfactory! Yes, I agree, but it is a working solution. Groeten, Johan - -- o o o o o o o . . . _____________________________ o _____ || Johan Borkhuis | .][__n_n_|DD[ ====_____ | borkhuis@agere.com | >(________|__|_[_________]_|__________________________| _/oo OOOOO oo` ooo ooo 'o!o!o o!o!o` === VxWorks FAQ: http://www.xs4all.nl/~borkhuis/vxworks/vxworks.html === --------------------------- End of New-News digest ********************** From vxwexplo-errs@csg.lbl.gov Wed Jun 5 08:49:22 2002 From: Dave Olafson Date: Wed Jun 5 08:49:25 PDT 2002 Subject: Re: Vxworks: Route change notification On Wed, 5 Jun 2002, the vxWorks Users Group Exploder wrote: > Submitted-by vxwexplo-errs@csg.lbl.gov Wed Jun 5 03:27:20 2002 > Submitted-by: "Sabarivel S" > > hi, > Our protocol which runs over ip needs to get information of unicast route > changes (adding/deleting) occuring at IP level. > > Is there any way of knowing this ? > any help on this is highly appreciated. > > > thanks > sabari don't know if there's any way to register for an async notification, but you can certainly poll the route table periodically ... here's one way to get it using the m2Lib stack M2_IPROUTETBL ipRouteTable; if (m2IfInit(NULL, NULL) == OK) { if (m2IpInit(20) == OK) { ipRouteTable.ipRouteDest = 0; while (1) { if (m2IpRouteTblEntryGet(M2_NEXT_VALUE, &ipRouteTable) == ERROR) { break; } /* process route table entry */ } } } dave From vxwexplo-errs@csg.lbl.gov Wed Jun 5 09:08:34 2002 From: Novak Eugene-FEN010 Date: Wed Jun 5 09:08:36 PDT 2002 Subject: Priority Inversion Problem I am wondering if anyone has some ideas on a priority inversion problem I'm seeing which is causing deadlock in the system. I seem to be blocked up on two vxWorks semaphores. The semaphore names are m2RouteSem and splSemId. I am including below a task trace of the three deadlocked tasks, a semShow on the two semaphore IDs, and a partial task list which shows the tasks at their original priorities and then when the priority inversion occurs. Has anyone seen a problem like this in the past? I was surprised to find this points to a vxWorks problem and am trying to figure out how this occured. Thanks for any help. -> tt 0x1b73fb8 7a01fc vxTaskEntry +60 : 5d0d34 () 5d0d34 RtmTaskMain +594: RtmHandleRouteUpdates (&gRtmGlobalInfo) 5cbb04 RtmHandleRouteUpdates+388: RtmPortedAddRoute (1b40708) 5d16dc RtmPortedAddRoute+198: mRouteEntryAdd () 71c878 mRouteEntryAdd +14 : mPrivRouteEntryAdd () 71c828 mPrivRouteEntryAdd+1d4: rtrequest (1, 1b73dd0, 1b73de0, 1b73df0, 2, 0) 50dfc rtrequest +6d4: 50e50 (1b73dd0, 1b73df0, 1b73de0, 2, 1) 50f18 rtrequest +7f0: pphswi_generic_process_ip_route_change (90be4430, fffffffc, 90be0407, 1) 67fac pphswi_generic_process_ip_route_change+118: PimProcessIpRouteChange (90be4430, fffffffc, 90be0407, 1) 44d1f0 PimProcessIpRouteChange+13c: IpGetAdvancedRouteInfo (90be4430, 1b73cd0, 1b73cc8, 1b73cd4, 1b73ccc) 450b1c IpGetAdvancedRouteInfo+b4 : m2IpRouteTblEntryGet () 719b8c m2IpRouteTblEntryGet+5c : semTake () 75323c semTake +140: semMTake () value = 0 = 0x0 -> -> -> -> -> -> tt 0x167dd98 7a01fc vxTaskEntry +60 : PimTaskMain () 43f044 PimTaskMain +3c4: 440064 () 440064 PimValidateControlMsg+a3c: 46d9a8 () 46d9a8 PimSmBsrMsgHdlr+614: PimGetUnicastRpfNbr () 43d4e8 PimGetUnicastRpfNbr+250: IpGetAdvancedRouteInfo (87c0001, 167db48, 167db4c, 167db50, 167db54) 450b1c IpGetAdvancedRouteInfo+b4 : m2IpRouteTblEntryGet () 719ba4 m2IpRouteTblEntryGet+74 : 719f30 () 71a044 m2IpRouteTblEntrySet+360: splnet () 7110e0 splnet +3c : semTake () 75323c semTake +140: semMTake () value = 0 = 0x0 -> -> -> -> tt 0x3dc13c8 7a01fc vxTaskEntry +60 : netTask () 71ae24 netTask +70 : splnet () 7110e0 splnet +3c : semTake () 75323c semTake +140: semMTake () value = 0 = 0x0 -> semShow( 0x1b82ab0, 1 ) Semaphore Id : 0x1b82ab0 Semaphore Type : MUTEX Task Queuing : PRIORITY Pended Tasks : 1 Owner : 0x167dd98 (PIM) NAME TID PRI TIMEOUT ---------- -------- --- ------- RTM 1b73fb8 1 0 value = 0 = 0x0 -> semShow( 0x97f92c, 1 ) Semaphore Id : 0x97f92c Semaphore Type : MUTEX Task Queuing : PRIORITY Pended Tasks : 10 Owner : 0x1b73fb8 (RTM) NAME TID PRI TIMEOUT ---------- -------- --- ------- tNetTask 3dc13c8 1 0 PIM 167dd98 1 0 ESwiRcvPkt 1e73190 2 0 Unres 22b83e0 25 0 IGMP 16ce7b8 52 0 OS2 167af20 55 0 OS1 1b3d308 55 0 sgslmc_thread 1855318 124 0 sgslmc_thread 1d9a400 124 0 sgscpa_sntp 1d39d48 153 0 value = 0 = 0x0 -> ti tNetTask NAME ENTRY TID PRI STATUS PC SP ERRNO DELAY ---------- ------------ -------- --- ---------- -------- -------- ------- ----- tNetTask netTask 3dc13c8 1 PEND 7541bc 3dc12f8 0 0 stack: base 0x3dc13c8 end 0x3dbecb8 size 9984 high 2544 margin 7440 options: 0x7 VX_SUPERVISOR_MODE VX_UNBREAKABLE VX_DEALLOC_STACK r0 = 0 sp = 3dc12f8 r2 = 0 r3 = 0 r4 = 0 r5 = 0 r6 = 0 r7 = 0 r8 = 0 r9 = 0 r10 = 0 r11 = 0 r12 = 0 r13 = 0 r14 = 0 r15 = 0 r16 = 0 r17 = 0 r18 = 0 r19 = 0 r20 = 0 r21 = 0 r22 = 0 r23 = 0 r24 = 0 r25 = 0 r26 = 0 r27 = 980000 r28 = 900000 r29 = ffffffff r30 = b012 r31 = 97f92c msr = b012 lr = 0 ctr = 0 pc = 7541bc cr = 22000040 xer = 0 value = 0 = 0x0 -> ti RTM NAME ENTRY TID PRI STATUS PC SP ERRNO DELAY ---------- ------------ -------- --- ---------- -------- -------- ------- ----- RTM RtmTaskMain 1b73fb8 1 PEND+I 7541bc 1b73b10 3d0001 0 stack: base 0x1b73fb8 end 0x1b6bfb8 size 32760 high 3976 margin 28784 options: 0x4 VX_DEALLOC_STACK r0 = 20430a4 sp = 1b73b10 r2 = 0 r3 = 0 r4 = 1b73810 r5 = 81 r6 = 0 r7 = 1df r8 = 0 r9 = 6f0000 r10 = ffffffff r11 = 0 r12 = 0 r13 = 0 r14 = 0 r15 = 0 r16 = 0 r17 = 0 r18 = 0 r19 = 0 r20 = 0 r21 = 0 r22 = 0 r23 = 0 r24 = 0 r25 = 51b04 r26 = 758260 r27 = 3dfbe2c r28 = 980000 r29 = ffffffff r30 = b012 r31 = 1b82ab0 msr = b012 lr = 7b58c ctr = 2e pc = 7541bc cr = 22000040 xer = 0 value = 0 = 0x0 -> ti PIM NAME ENTRY TID PRI STATUS PC SP ERRNO DELAY ---------- ------------ -------- --- ---------- -------- -------- ------- ----- PIM PimTaskMain 167dd98 1 PEND+I 7541bc 167d980 3d0001 0 stack: base 0x167dd98 end 0x167b688 size 9992 high 3072 margin 6920 options: 0x4 VX_DEALLOC_STACK r0 = 302e6 sp = 167d980 r2 = 0 r3 = 0 r4 = 4 r5 = a r6 = 167dcac r7 = 167dc78 r8 = 0 r9 = 2 r10 = 167dd98 r11 = 46 r12 = 0 r13 = 0 r14 = 0 r15 = 0 r16 = 0 r17 = 0 r18 = 0 r19 = 0 r20 = 0 r21 = 0 r22 = 0 r23 = 0 r24 = 0 r25 = 0 r26 = 980000 r27 = 64 r28 = 1b82ad8 r29 = ffffffff r30 = b012 r31 = 97f92c msr = b012 lr = 5dd498 ctr = 0 pc = 7541bc cr = 22000040 xer = 20000000 value = 0 = 0x0 NAME ENTRY TID PRI STATUS PC SP ERRNO DELAY ---------- ------------ -------- --- ---------- -------- -------- ------- ----- tExcTask excTask 3edb450 0 PEND 7c7ce0 3edb360 0 0 tNetTask netTask 3dc13c8 1 PEND 7541bc 3dc12f8 0 0 RTM RtmTaskMain 1b73fb8 1 PEND+I 7541bc 1b73b10 3d0001 0 PIM PimTaskMain 167dd98 1 PEND+I 7541bc 167d980 3d0001 0 NAME ENTRY TID PRI STATUS PC SP ERRNO DELAY ---------- ------------ -------- --- ---------- -------- -------- ------- ----- tExcTask excTask 3edb450 0 PEND 7c7ce0 3edb360 0 0 tNetTask netTask 3dc13c8 1 PEND 7526b4 3dc1308 41 0 tRlogind rlogind 3db8c98 2 PEND 7526b4 3db88c8 0 0 . . . RTM RtmTaskMain 1b73fb8 52 PEND 7526b4 1b73eb8 3d0002 0 . . . PIM PimTaskMain 167dd98 62 PEND 7526b4 167dc78 3d0002 0 Eugene Novak <<...OLE_Obj...>> 5555 N. Beach St. M/S 8C Fort Worth, TX 76137 Phone: (817) 245-8232 Eugene.Novak@motorola.com 2-way pager: 2458232@skytel.com From vxwexplo-errs@csg.lbl.gov Thu Jun 6 04:03:13 2002 From: Vxworks Exploder Date: Thu Jun 6 04:03:16 PDT 2002 Subject: comp.os.vxworks newsdigest Comp.Os.Vxworks Daily Digest Thu Jun 6 04:03:09 PDT 2002 Subject: [comp.os.vxworks] FAQ - index Subject: Re: interupts at ppc8260 Subject: Re: VxWorks BootRom Subject: [ot] capturing output of VGA port Subject: Re: PPC750 cache locking? Subject: pipe writes Subject: Re: Interfacing TMS320C54x with Fujitsu flash Subject: Re: WindView with Diab compiler Subject: Re: How can I write four files quickly on a disk at the same time? Subject: Re: how to install multiple simulators in win2000 Subject: Re: interupts at ppc8260 Subject: Re: interupts at ppc8260 Subject: Re: How can I write four files quickly on a disk at the same time? Subject: unresolved symbols Subject: Re: C pointer function to C++ functino member pointer Subject: Re: Detecting corrupt memory list Subject: Re: unresolved symbols Subject: Re: [ot] capturing output of VGA port Subject: Re: pipe writes Subject: Re: pipe writes ------------------------------------------------------- Newsgroups: comp.os.vxworks,comp.realtime,comp.arch.embedded,comp.answers,news.answers Subject: [comp.os.vxworks] FAQ - index Date: 05 Jun 2002 11:17:16 GMT From: johan@borksoft.xs4all.nl (Johan Borkhuis) Organization: Borksoft Message-ID: Followup-To: comp.os.vxworks Archive-name: vxworks-faq/index Posting-Frequency: monthly Last-modified: 2001/12/31 Version: 1.42 URL: http://www.xs4all.nl/~borkhuis/vxworks/vxworks.html Copyright: (c) 1999 - 2002 Johan Borkhuis Maintainer: Johan Borkhuis This is the index of the FAQ for the newsgroup comp.os.vxworks. The FAQ itself can be found at http://www.xs4all.nl/~borkhuis/vxworks/vxworks.html Contents: 1. Tool problems 1.1 Compiler and Linker 1.2 Debugger 1.3 FTP 1.4 Host tools 1.5 Installation 1.6 Make 1.7 Project facility 1.7.1 Hierarchical projects 1.7.2 Super projects 1.8 Target Server 1.9 Target Shell 1.10 Telnet 1.11 Tornado 1.11.1 Tornado (General) 1.11.2 Tornado (Windows) 1.12 Version Control 1.13 Visual Studio integration 1.14 Windsh 1.15 WindView 2. Changes/additions to be made to BSP's 2.1 Different BSP's 2.2 Processor specific issues 2.2.1 Power PC 2.2.2 I960 2.2.3 MIPS 2.2.4 ARM 2.3 Bootstrap 2.4 Adding component to your VxWorks configuration 2.5 VME problems 2.6 VxWorks environment 2.6.1 usrSerial.c 2.6.2 prj_vxworks.tcl 2.7 PCI problems 3. File System problems 3.1 Dos file system 3.2 Flash File system 3.3 Floppy-disk File system 3.4 RAM-disk File system 3.5 General file system questions 4. Network 4.1 Configuration problems 4.2 ARP 4.3 DHCP 4.4 FTP and TFTP 4.5 PPP 4.5.1 PPP on Windows 95 4.5.2 PPP on Windows NT 4.5.3 PPP on Solaris 4.6 Sockets 4.7 Telnet 4.8 Other network related questions 5. VxWorks Questions 5.1 C++ issues 5.2 Communication problems 5.3 Interrupts 5.4 LoadModule problems 5.5 pthreads 5.6 Reboot 5.7 Semaphores 5.8 Simulator (VxSim) 5.9 Task related items 5.10 Time/timer related items 5.11 Wind Web Server related items 5.12 Zinc/windML related items 5.13 Other items 5.14 VxWorks AE issues 6. Extra information 6.1 Hard delay 6.2 Memory leaks 6.3 Corba engines 6.4 Web servers 6.5 NTP usage 6.6 Performace / Benchmarks 6.7 SNMP 6.8 Lint 6.9 Encryption Other Links The News Department Overall question index Overall Sources index Change history - -- o o o o o o o . . . _____J_o_h_a_n___B_o_r_k_h_u_i_s___ o _____ || http://www.xs4all.nl/~borkhuis | .][__n_n_|DD[ ====_____ | johan@borksoft.xs4all.nl | >(________|__|_[_________]_|________________________________| _/oo OOOOO oo` ooo ooo 'o!o!o o!o!o` ==== VxWorks-FAQ: http://www.xs4all.nl/~borkhuis/vxworks/vxworks.html ==== --------------------------- Newsgroups: comp.os.vxworks Subject: Re: interupts at ppc8260 Date: Wed, 5 Jun 2002 11:34:53 -0700 From: "Dan Gold" Organization: Mailgate.ORG Server - http://www.Mailgate.ORG Message-ID: References: Sender: gold@ensemble.com "Achim Zimmer" wrote in message news:adkad6$125dj4$1@ID-102608.news.dfncis.de... > Thanks for the hint, but after changing it to special purpose (you are > right, it should be so) > *M8260_IOP_PCPAR(regBase) &= ~0x01000000; > > the machine boots again at intEnable () In your example (which I snipped) the isr was called xxxInterrupt(), but the intConnect() connected function rtcInterrupt(). Is that ok or is there a typo ? What is connected to your port C pin ? Are you clearing the SIPNR after you service the interrupt (by writing a 1, not a 0) ? I don't have the real 8260 intrCtl.c handy so I can't remember if they do it for you or not. I don't know what you have connected, but can you just generate 1 interrupt and see what happens ? Maybe change the ISR to just increment a global variable that you can read from the shell just to prove everything is ok with the setup ? hth, Dan Gold gold@ensemble.com --------------------------- Newsgroups: comp.os.vxworks Subject: Re: VxWorks BootRom Date: Wed, 05 Jun 2002 19:27:48 GMT From: "Jim" Organization: Magma Communications Ltd. Message-ID: References: Look into ppcboot on sourceforge "News" wrote in message news:adiv5p$hsc$1@news.asu.edu... > Hi All > We have Synergy board with ppc architecture (PPC 750). We have VxWorks > bootrom. If we have to change to Linux2.4 as the OS, > Can we just use the same bootrom to download the Linux image insted of > VxWorks image on to the board. If No, what is the alternative? > Any help is appertiated. > > Thanks > Shesha > > > --------------------------- Newsgroups: comp.os.vxworks Subject: [ot] capturing output of VGA port Date: 5 Jun 2002 21:17:02 GMT From: Denis Perelyubskiy Message-ID: hello, we found that it is a very light-weight thing to do, and a very convenient one as well, to dump some debug output to the VGA port. however, the problem is that the screen is only 80x25, and if we dump lots of output it will scroll off. hence, I am wondering if anyone knows or have used some piece of hardware that we could connect to the VGA port that would help us capture the output? I could think of a fairly low-tech solution: capturing the output with a camera, but this is inconvenient. sorry for the off-topic post, but i figured maybe this is a common thing to do in embedded world :) thanks, denis - -- if you want to reply by mail, please tweak my address in a reasonable way. sorry for the inconvenience. --------------------------- Newsgroups: comp.os.vxworks Subject: Re: PPC750 cache locking? Date: 5 Jun 2002 15:47:49 -0700 From: vloscomp@yahoo.com (Vinh) Organization: http://groups.google.com/ Message-ID: References: <1f1b48b5.0205301014.bce022@posting.google.com> <1f1b48b5.0206041036.6495ef75@posting.google.com> Hi, I think the cacheLock works on the PTE field or the WIMG bits. cache is lock for a particular page in the PTE descriptor. I think it will alows a page boundary locking. (I went through this (PPC manual) MMU along time ago so don't quote me :) Also, If you look into arch/ppc/ there is a ***.h file for this. Vinh Lam jchen@tollbridgetech.com (john c) wrote in message news:<1f1b48b5.0206041036.6495ef75@posting.google.com>... > For us, our cacheLock function does seem to work as well. Its weird, > because from a hardware perspective, the 750 doesn't seem to support > cache lock of certain region. Either you lock the WHOLE L1 > instruction/data cache or you don't. But the cacheLock() function > does take an adrs and # of bytes.... > > any ideas? > > john > > > > vloscomp@yahoo.com (Vinh) wrote in message news:... > > Hi, > > I am not quite sure about the implementation of cacheLock(), but the > > MMU of PPC or the PTE descriptor does allow a page to be lock. You can > > look at this in the sysLib.c and the PPC programing manual. > > We did successfully used cacheLock(). > > > > Gl, > > Vinh Lam > > > > jchen@tollbridgetech.com (john c) wrote in message news:<1f1b48b5.0205301014.bce022@posting.google.com>... > > > Hi all. > > > Quick question about the PPC750. Does anyone know how cacheLock() > > > function works? I've been reading through the 750CXe Manual and there > > > are no instructions that you can use to lock a part of the cache. The > > > 750 provides certain HID[] bits for you to lock or unlock the entire > > > L1 cache (Data and/or instruction cache) but strangely enough, the BSP > > > for PPC750 supports cacheLock() function. > > > > > > Does anyone know how vxWorks does cacheLock()? How do you setup the > > > hardware to lock certain portions of the cache? Or is this purely a > > > software thing? > > > > > > john --------------------------- Newsgroups: comp.os.vxworks Subject: pipe writes Date: Wed, 5 Jun 2002 15:49:52 -0700 From: "MK" Organization: mike_texx@mail.ru Message-ID: Reply-To: "MK" Can writes to pipes be made from the callback function of the watchdog timer (which I believe would be running in interrupt context)... Speaking of that, a few more questions: 1. How do I make pipe writes non-blocking, if possible? 2. Where do I find info on which routines and libraries can or cannot be invoked from interrupt context? --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Interfacing TMS320C54x with Fujitsu flash Date: 5 Jun 2002 18:14:56 -0700 From: mala_tk@yahoo.com (Mala) Organization: http://groups.google.com/ Message-ID: <4d133ac0.0206051714.6c74f305@posting.google.com> References: <4d133ac0.0206021859.30d5fff7@posting.google.com> Hi thanks for the reply Vinh Lam i have done reading the data sheets already.don'tknow how to start the programming.if i could get some souce code or assmembly code that would be really helpful. Thanks in advance. vloscomp@yahoo.com (Vinh) wrote in message news:... > mala_tk@yahoo.com (Mala) wrote in message news:<4d133ac0.0206021859.30d5fff7@posting.google.com>... > > hello to everyone in the group. > > i am trying to interface TMS320VC5416 with Fujistu flash > > MBM29DL400BC.i request u to send me link where i can get source code > > or assembly code for the same.i request u'r guidance if anyone has > > worked with the same. > > thanking u... > > Mala > > > Hi Mala, > I think you may want to start with the device data sheet, then if > you are using TFFS and DosFs reads the socket and MTD section of the > manual. > > Vinh Lam --------------------------- Newsgroups: comp.os.vxworks Subject: Re: WindView with Diab compiler Date: Thu, 06 Jun 2002 02:51:21 GMT From: "drdiags" Organization: AT&T Broadband Message-ID: References: <8d755023.0206042357.37773f37@posting.google.com> Igal, I don't have the *.cdf file in front of me, but there is probably a object missing from your libPPC860diabvx.a which exists in your libPPC860gnuvx.a file (as an example). Your DIAB archive doesn't seem to have the required objects to enable WindView. This may be an oversight which may be resolved by adding the missing obj from the objPPC860gnu/*.o files into your DIAB archive. I guess I do have a *.cdf file: From target\config\comps\vxWorks\00vxWorks.cdf - ----------------------------------------------------- Component INCLUDE_WINDVIEW { NAME windview library SYNOPSIS initialize and control event logging CONFIGLETTES usrWindview.c MODULES wvLib.o evtLogLib.o INIT_RTN windviewConfig (); CFG_PARAMS WV_DEFAULT_BUF_MIN \ WV_DEFAULT_BUF_MAX \ WV_DEFAULT_BUF_SIZE \ WV_DEFAULT_BUF_THRESH \ WV_DEFAULT_BUF_OPTIONS HDR_FILES wvLib.h rBuffLib.h REQUIRES SELECT_TIMESTAMP SELECT_WVUPLOAD SELECT_WV_BUFFER } So make sure the wvLib.o and evtLogLib.o file exist in your archive. "Igal" wrote in message news:8d755023.0206042357.37773f37@posting.google.com... > Does anybody know if this is possible to use windview with the Diab > compiler? > I have Tornado 2.0.2 with windows 2000, two compilers - GNU and Diab. > Projects that run GNU compiler use the windview without any problems, > but if I try to include the component of windview to the project > defined with Diab, it writes that windview is not installed. Does > anybody knows what should I do? > Thanks --------------------------- Newsgroups: comp.os.vxworks Subject: Re: How can I write four files quickly on a disk at the same time? Date: 5 Jun 2002 19:59:25 -0700 From: shyang@netease.com (yang) Organization: http://groups.google.com/ Message-ID: <8446174.0206051859.23a8e270@posting.google.com> References: <8446174.0206041744.46eda55d@posting.google.com> 1. Why are you using the dosFs functions directly ? I use the dosFs functions directly because I want to create 400M large's file in litter time. 2. I create 4 files to write and is sheduled by system. --------------------------- Newsgroups: comp.os.vxworks Subject: Re: how to install multiple simulators in win2000 Date: 5 Jun 2002 20:43:44 -0700 From: overtones@excite.com (Strawberry) Organization: http://groups.google.com/ Message-ID: <41440750.0206051943.5b2a6667@posting.google.com> References: <964e0610.0206022137.7c11fd7e@posting.google.com> Make sure that the installation you have is for Win2k and not for WinNT. You can download the latest prototyper from WRS website. pnumber@hotmail.com (pengtong) wrote in message news:<964e0610.0206022137.7c11fd7e@posting.google.com>... > I've try to install the ULIP driver into my computer,but failed.When > I locate > the driver at../host/x86-w2in32/bin/oemsetup.inf,cann't continue.the > error message is "此文件中不包含所需要的硬件信息" > ,in English this means "This file don't have the information of the > hardware" ,I don't know why. > Regards, > tong --------------------------- Newsgroups: comp.os.vxworks Subject: Re: interupts at ppc8260 Date: Thu, 6 Jun 2002 07:56:49 +0200 From: "Achim Zimmer" Message-ID: References: It is right: intConnect is connected to rtcInterrupt(), the function is also named so, means the real name was rtcInterrupt. I have connected an RealTimeClock IRQ pin to PC7, that should signal an alarm in the RTC. That can be viewed with Logic Analyzer and works fine. The problem happens right before the interrupt occurs. if I disconnect the RTC IRQ pin from the PC7 (no interrupt can occur, the pin is high then) the machine boots at intEnable(). There must be definitly something with the setup ! hth Achim "Dan Gold" schrieb im Newsbeitrag news:adllo0$88i$1@newsreader.mailgate.org... > "Achim Zimmer" wrote in message > news:adkad6$125dj4$1@ID-102608.news.dfncis.de... > > Thanks for the hint, but after changing it to special purpose (you are > > right, it should be so) > > *M8260_IOP_PCPAR(regBase) &= ~0x01000000; > > > > the machine boots again at intEnable () > > In your example (which I snipped) the isr was called xxxInterrupt(), but the > intConnect() connected function rtcInterrupt(). Is that ok or is there a > typo ? What is connected to your port C pin ? Are you clearing the SIPNR > after you service the interrupt (by writing a 1, not a 0) ? I don't have > the real 8260 intrCtl.c handy so I can't remember if they do it for you or > not. I don't know what you have connected, but can you just generate 1 > interrupt and see what happens ? Maybe change the ISR to just increment a > global variable that you can read from the shell just to prove everything is > ok with the setup ? > > hth, > Dan Gold gold@ensemble.com > > --------------------------- Newsgroups: comp.os.vxworks Subject: Re: interupts at ppc8260 Date: Thu, 06 Jun 2002 06:28:42 GMT From: "dgold1" Organization: RoadRunner - West Message-ID: References: Achim Zimmer wrote in message ... >It is right: intConnect is connected to rtcInterrupt(), the function is >also named so, means the real name was rtcInterrupt. >I have connected an RealTimeClock IRQ pin to PC7, that should signal an >alarm in the RTC. That can be viewed with Logic Analyzer and works fine. >The problem happens right before the interrupt occurs. >if I disconnect the RTC IRQ pin from the PC7 (no interrupt can occur, the >pin is high then) the machine boots at intEnable(). Which intEnable() the m8260IntEnable at the bottom of your setup ? Maybe try clearing SIPNR before enabling the interrupt, just in case there's anything left in there. >There must be definitly something with the setup ! Instead of connecting your real rtcInterrupt(), have you tried just connecting a function that increments a global variable you can read ? Is it possible something is already connected to PC7 (intentionally or not) ? Is this your own custom design or an off the shelf board ? What about using a different port c pin other than PC7 ? Maybe the intEnable() isn't doing what you thought it was ? Maybe trying enabling the bit in the SIMR yourself. What frequency are you generating these RTC interrupts ? hth, Dan Gold dgold1@san.rr.com or gold@ensemble.com --------------------------- Newsgroups: comp.os.vxworks Subject: Re: How can I write four files quickly on a disk at the same time? Date: Thu, 06 Jun 2002 07:10:38 GMT From: "Leonid Rosenboim" Organization: Verio Message-ID: References: <8446174.0206041744.46eda55d@posting.google.com> <8446174.0206051859.23a8e270@posting.google.com> You can create files up to 4+GBytes with DosFs 2.0 using standard I/O interface, with the default VFAT directory structure. If you reformat the disk drive with VX_LONG priprietary directory structure, the file size can be up to 1 TeraByte (that is one thousand Giga bytes). The only function of the standard I/O system you wont be able to use with files larger than 2.4 GBytes is lseek(), which uses signed 32-bits offsets, but ioctl command FIOSEEK64 will do the job just fine. You can also create 4 (or more) files up front, and then write each of them at the system's pace, simply using four different file descriptor. The overhead of using the I/O system (versus lower level DosFs is in the order of a few microseconds per operation, as the VxWorks I/O system is very thin, at times too thin. Your problem is either very simple, or I have not well understood it. Good luck, - Leonid "yang" wrote in message news:8446174.0206051859.23a8e270@posting.google.com... > 1. Why are you using the dosFs functions directly ? > I use the dosFs functions directly because I want to create 400M > large's file in litter time. > 2. I create 4 files to write and is sheduled by system. --------------------------- Newsgroups: comp.os.vxworks Subject: unresolved symbols Date: 6 Jun 2002 00:12:09 -0700 From: yh86us@yahoo.com (chc) Organization: http://groups.google.com/ Message-ID: <254be7e.0206052312.1a0c2528@posting.google.com> Hi, I've got two Tornado projects, one contains C files compiled as a library, drivers.a. Another contains CPP files compiled as data.out. The data.out calls two functions DriverInit() and WriteToDriver() from the drivers.a, and the data.out also linked to drivers.a. But, downloading data.out to the target, it still has the following error: Unresolved symbols: DriverInit__FPFPvUl_v WriteToDriver__FiPUlUl As the drivers.a has already been linked in data.out, why the symbols are still unresolved? There is no problem to link other CPP libraries, but just cannot to link C libaries properly. What was I missing here? We use Tornado 2.0.2. Any help is much appreciated. Thank you. --------------------------- Newsgroups: comp.os.vxworks Subject: Re: C pointer function to C++ functino member pointer Date: Thu, 06 Jun 2002 07:21:06 GMT From: "Tri VU KHAC \(Sony\)" Organization: KPNQwest customer news service Message-ID: References: <8bb5523.0206040717.775138fc@posting.google.com> Well, unfortunately C++ does not allow such kind of operations. C++ static method is the only way to do what you need. Tri. "Patrick Boulay" wrote in message news:8bb5523.0206040717.775138fc@posting.google.com... > Hello, > > I need to use WatchDog function for a timeout (wdStart). And I need to > pass a function pointer to say what append on a timeout. But When I > start a timer for a specific class, I want to point a function member, > because it's only this class know what append on timeout. > > Example > > class foo > { > virtual void onTimeOut(); > } > > void foo::onTimeOut() > { > ... > } > > the function wdStart need a function ptr: void (*fnc)(int) > > But, I dont want to use STATIC function... > > The only way I found to use PTR, it's > > void (foo::*f)(int); > f = &A::onTimeOut; > > > So.. I cant put that inside the wdStart parameters.... > > Anyone can help me? > > Thanks > Patrick --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Detecting corrupt memory list Date: Thu, 06 Jun 2002 07:25:59 GMT From: "Tri VU KHAC \(Sony\)" Organization: KPNQwest customer news service Message-ID: References: Many good pratical techniques and tools have been used. LeakTracer is a good free code. goto google search:LeakTracer. Tri "Rene Straub" <_remove_rene.straub@yetnet.ch> wrote in message news:adkd6d$5e0$1@rex.ip-plus.net... > Hello, > > I am tracking down an annoying bug in our software. It causes > the memory list to become invalid, which then triggers the > "memPartFree: invalid block..." message on a subsequent call to > free(). > > In order to isolate the buggy code sequence I'd like to insert > checks for the memory list in my code. Is there any (free) code > available that will go through all memory partitions and check > them for consistency ? > If not is there a description of the VxWorks memory allocator, > so that I can write it myself. > > Yours > - Rene Straub > > > > > --------------------------- Newsgroups: comp.os.vxworks Subject: Re: unresolved symbols Date: Thu, 6 Jun 2002 10:12:20 +0200 From: "Werner Schiendl" Message-ID: <3cff1953@brateggebdc5.br-automation.co.at> References: <254be7e.0206052312.1a0c2528@posting.google.com> Hi, extern "C" is what is missing. You need to declare the functions of the C library as extern "C" in the header file that you include in your "C++" code. The reason is, that C++ uses mangled names to allow for method overloading, while C only uses the function name for the symbol name. e. g. extern "C" void DriverInit(void); or whatever is appropriate hth Werner "chc" wrote in message news:254be7e.0206052312.1a0c2528@posting.google.com... > Hi, > > I've got two Tornado projects, one contains C files compiled as a > library, drivers.a. Another contains CPP files compiled as data.out. > The data.out calls two functions DriverInit() and WriteToDriver() from > the drivers.a, and the data.out also linked to drivers.a. But, > downloading data.out to the target, it still has the following error: > > Unresolved symbols: > DriverInit__FPFPvUl_v > WriteToDriver__FiPUlUl > > As the drivers.a has already been linked in data.out, why the symbols > are still unresolved? There is no problem to link other CPP libraries, > but just cannot to link C libaries properly. What was I missing here? > > We use Tornado 2.0.2. > > Any help is much appreciated. > > Thank you. --------------------------- Newsgroups: comp.os.vxworks Subject: Re: [ot] capturing output of VGA port Date: Thu, 6 Jun 2002 10:17:38 +0200 From: "Werner Schiendl" Message-ID: <3cff1a91$1@brateggebdc5.br-automation.co.at> References: Hi, at what rate do you need to log your information, and how do you actually do the logging? If you are using normal I/O system or logMsg(), using a serial connection is probably the easiest way to get what you want. Connect some terminal emulator that can record a history -> done. Using a telnet client to redirect the target IO is also a reasonable approach. Include telnet server in your target, connect to it and start logging (in the client software). One more possibility is to use a plain file, if this is an option on your target. If you use logMsg(), which is often highly recommendable, see the functions logFdSet and logFdAdd, too. As you see, there are lots of options for logging information with VxWorks. If you think that none of the above will help in your situation, you should tell us what your particular requirements are. Recording pixels on an analog VGA port does not seem a reasonable approach to me. best regards Werner "Denis Perelyubskiy" wrote in message news:slrnafsvue.pm3.denis_newsREMOVE-TO-REPLY@concorde.cs.ucla.edu... > hello, > > we found that it is a very light-weight thing to do, and a > very convenient one as well, to dump some debug output to > the VGA port. > > however, the problem is that the screen is only 80x25, and > if we dump lots of output it will scroll off. > > hence, I am wondering if anyone knows or have used some > piece of hardware that we could connect to the VGA port that > would help us capture the output? I could think of a fairly > low-tech solution: capturing the output with a camera, but > this is inconvenient. > > sorry for the off-topic post, but i figured maybe this is a > common thing to do in embedded world :) > > thanks, > > denis > > -- > if you want to reply by mail, please tweak my > address in a reasonable way. sorry for the > inconvenience. --------------------------- Newsgroups: comp.os.vxworks Subject: Re: pipe writes Date: 6 Jun 2002 01:28:31 -0700 From: john_94501@yahoo.com (John) Organization: http://groups.google.com/ Message-ID: <488e459a.0206060028.37bacb0@posting.google.com> References: "MK" wrote in message news:... > Can writes to pipes be made from the callback function of the watchdog timer > (which I believe would be running in interrupt context)... Yes, the pipe driver supports a special case where it allows writes to the pipe from ISR code, but be warned you can lose messages if the pipe is full. > Speaking of that, a few more questions: > 1. How do I make pipe writes non-blocking, if possible? You cannot (except by writing to it from an ISR). > 2. Where do I find info on which routines and libraries can or cannot be > invoked from interrupt context? The VxWorks Programmer's Guide contains a list of the 'kernel' routines that are allowed to be used in an ISR. Look in the section that talks about interrupts (I'm at home so I don't have a copy handy). HTH, John... --------------------------- Newsgroups: comp.os.vxworks Subject: Re: pipe writes Date: Thu, 06 Jun 2002 08:36:52 GMT From: "Leonid Rosenboim" Organization: Verio Message-ID: References: These are typical RTFM questions: You begin with opening your VxWorks Programmers Guide, in teh section about Interrupts, you will find a half-page table of calls that are allowed from within interrupt context. Pipe or any other write() is not one of the allowed functions. In the I/O section describing pipes, you will find a comparison between pipes and message queues, and one of those differences is that msgQ has a NO_WAIT option, but pipe does not. RTFM "MK" wrote in message news:uft5cmlbqhjh88@corp.supernews.com... > Can writes to pipes be made from the callback function of the watchdog timer > (which I believe would be running in interrupt context)... > > Speaking of that, a few more questions: > 1. How do I make pipe writes non-blocking, if possible? > 2. Where do I find info on which routines and libraries can or cannot be > invoked from interrupt context? > > --------------------------- End of New-News digest ********************** From vxwexplo-errs@csg.lbl.gov Fri Jun 7 04:03:10 2002 From: Vxworks Exploder Date: Fri Jun 7 04:03:12 PDT 2002 Subject: comp.os.vxworks newsdigest Comp.Os.Vxworks Daily Digest Fri Jun 7 04:03:06 PDT 2002 Subject: Re: Detecting corrupt memory list Subject: Re: VxWorks BootRom Subject: Re: pipe writes Subject: Re: JWorks Subject: Strange problem Subject: Re: Strange problem Subject: Re: Multicast Help ? What does it take ... Subject: rngbuf overflow! help me Subject: Re: Post Mortem debugging Subject: Re: network card for ARM Integrator Subject: T2: how to debug only on 1 file but not on all files ------------------------------------------------------- Newsgroups: comp.os.vxworks Subject: Re: Detecting corrupt memory list Date: Thu, 6 Jun 2002 23:22:04 +0000 (UTC) From: David Laight Organization: BT Openworld Message-ID: <3CFFEEF7.3040704@spamm.me.l8s.co.uk> References: > If not is there a description of the VxWorks memory allocator, > so that I can write it myself. It isn't compilacted! From memory each fragment is preceeded by a 32bit word that contains its length (divided by 2) and a bit that indicates whether it is allocated or free. Each fragment has appended to it a pointer to its start. Free items are overlaid with a double-linked free list. A bit of inspection will give the fine details and boundary conditions. David --------------------------- Newsgroups: comp.os.vxworks Subject: Re: VxWorks BootRom Date: Fri, 07 Jun 2002 09:33:45 +0930 From: Tim Shaw Organization: Defence Science and Technology Organisation Message-ID: <3CFFF861.FE1461AA@dsto.defence.gov.au> References: It depends on which Synergy board you use. Synergy have some quite clever boot loading schemes, such as SMON, which allow you to autoboot different kernels. Your best bet would be to go to Synergy's web site and fill in a helpdesk request. They're usually very helpful. Tim News wrote: > Hi All > We have Synergy board with ppc architecture (PPC 750). We have VxWorks > bootrom. If we have to change to Linux2.4 as the OS, > Can we just use the same bootrom to download the Linux image insted of > VxWorks image on to the board. If No, what is the alternative? > Any help is appertiated. > > Thanks > Shesha --------------------------- Newsgroups: comp.os.vxworks Subject: Re: pipe writes Date: Fri, 07 Jun 2002 05:58:37 GMT From: "Leonid Rosenboim" Organization: Verio Message-ID: References: <488e459a.0206060942.2408fb2d@posting.google.com> Yep, it seems my VxWorks becomes rusty, trouble is I dont have the VxWorks manuals around anymore, will try to download one off the web site, if there is one. On the other hand, I have never used pipe writes from ISR, don't think it is a good idea. I/O subsystem and pipe overhead is too much (to my taste) for an ISR code, so I would recommend using message queue directly from an ISR, not pipe, allowed or not. - - Leonid "John" wrote in message news:488e459a.0206060942.2408fb2d@posting.google.com... > "Leonid Rosenboim" wrote in message news:... > > [stuff deleted] > > > Pipe or any other write() is not one of the allowed functions. > > Not true; there is a special exception for write() when it is to a > pipeDrv device (see page 87 of the VxWorks 5.4 Programmer's Guide > where the allowed functions for an ISR are listed). RTFM ;-) > > Rgds, > > John... --------------------------- Newsgroups: comp.os.vxworks Subject: Re: JWorks Date: 6 Jun 2002 23:26:31 -0700 From: john_94501@yahoo.com (John) Organization: http://groups.google.com/ Message-ID: <488e459a.0206062226.5a0b97e8@posting.google.com> References: Hello, > I would like to invoke an java-method within an c-application. Are > there any examples concerning this problem. > Its absolut necessary to use this direction for event-handling from > the c-environment. Don't know if you can do what you want, but if not you could always use a Java thread to wait on a VxWorks message queue (via a suitable native method). Then, your C code just injects the event using the message queue. If you want synchronous behaviour, you can set this up using a semaphore or another message queue (again via native methods for the Java side). HTH, John... --------------------------- Newsgroups: comp.os.vxworks Subject: Strange problem Date: Fri, 07 Jun 2002 07:20:25 GMT From: Glenn Ivar Klausen Message-ID: <3D005E89.D83A0452@oslo.online.no> I am working on a system with a Radstone 603-1a cpu card, TEWS tp816 CAN Bus card and VxWorks 5.3.1. We are now having a rather strange problem. When we are communicating over the CAN Bus to extern devices it sometimes fails, and its our application on the CPU which fails. It seems when we insert some printouts (fprintf to stdout), 3 - 4 places in the code, it works fine. No errors at all. My thought was that it had something to do with timing and that allocated resources havent been released. Due to an errornous installation of Tornado the debugger does not work, so I can use that to help me. If you know in some detail how fprintf works or have any other suggestion solve or where to look for help, dont hesitate to answer. Regards Glenn I. Klausen --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Strange problem Date: Fri, 07 Jun 2002 07:40:24 GMT From: "Leonid Rosenboim" Organization: Verio Message-ID: References: <3D005E89.D83A0452@oslo.online.no> Glenn, Stop worrying about the Tornado debugger, it wouldn't have helped you in a situation like this anyway, it has too much influence on timing. fprintf() has two timing effects: 1. it takes some CPU time (and some stack space) to format your string into its final string format, and unlike fdprintf(), it addes some more overhead. This overhead per call could be in the order of up to a few milliseconds. You can actually measure this with timex. 2. If the actual output is to a serial console, then the overall output rate is limited at the console baud rate, typical 9600 baud means 1,000 bytes per second. When fprintf() or any other output function, detects that the serial output buffer is full, it gets blocked, and waits until the output buffer space frees up, and then continues. This effectively "throttles" any task that periodically prints on the console. Here is an example: Suppose you have one task which is infinite look, and during each loop iteration it: (A) writes 200 bytes to the serial console, and (b) writes 2,000 bytes to CANbus, then as long as the console writes are enabled, this loop will make no more then 5 iterations per second, reaching 1,000 bytes/sec on console, and 10,000 bytes/sec (or 80kbps) on CANbus. If you remove the console print statements from the loop, then the output rate to the CANbus is not bound at 80kbps anymore, and could cause buffer overflow (local or remote) and packet loss, if the local flow control is not very well implemented, or the receiving device is incapable of withstanding higher speeds. You can isolate the two above overhead types, by redirecting the console output to the "/null" device, using ioGlobalStdSet(), leaving the fprintf() statements in place, so you keep the per-call overhead, but remove the "throttling" effect of the serial console. Hope this helps, - - Leonid Rosenboim "Glenn Ivar Klausen" wrote in message news:3D005E89.D83A0452@oslo.online.no... > > > I am working on a system with a Radstone 603-1a cpu card, TEWS tp816 CAN > Bus card and VxWorks 5.3.1. We are now having a rather strange problem. > When we are communicating over the CAN Bus to extern devices it > sometimes fails, and its our application on the CPU which fails. It > seems when we insert some printouts (fprintf to stdout), 3 - 4 places in > the code, it works fine. No errors at all. My thought was that it had > something to do with timing and that allocated resources havent been > released. Due to an errornous installation of Tornado the debugger does > not work, so I can use that to help me. > > If you know in some detail how fprintf works or have any other > suggestion solve or where to look for help, dont hesitate to answer. > > Regards > > Glenn I. Klausen --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Multicast Help ? What does it take ... Date: 7 Jun 2002 01:37:19 -0700 From: liu_xx@sina.com (kent liu) Organization: http://groups.google.com/ Message-ID: References: "Jim" wrote in message news:... > Hello ... > > I am working on a terminal product using vxworks and would like some advice > on the type of work required to implement IP multicast into our product. > > We are currently using vxWorks 5.4 ... > > Thanks in advance, > Jim You should implement a multicast router first. In vxworks, you can include INCLUDE_MULTICASTING_ROUTER. Still you should have a route receive and send task. --------------------------- Newsgroups: comp.os.vxworks Subject: rngbuf overflow! help me Date: 7 Jun 2002 01:42:44 -0700 From: liu_xx@sina.com (kent liu) Organization: http://groups.google.com/ Message-ID: I used 3c905b in PentiumPro tornado2. It works well when send the packets directly, but very bad when bidirectly. It tell me "netJobAdd (el3c90xIntrRx) failed" and "netJobAdd: ring buffer overflow!" Can anyone give me a help! --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Post Mortem debugging Date: Fri, 07 Jun 2002 10:42:02 +0100 From: Phil Ashby Organization: IDL Message-ID: <3D007FEA.ACCD5A80@idl.bt.co.uk> References: <3cff6a33.178721778@news.randori.com> Bryan Schwerer wrote: > > Hello, > > I am looking for tips for doing field (Wind View is out of the > picture) post mortem debugging. I worked at a company that had a neat > setup where the running task id, the PC and a portion of the stack > were saved when the system crashed. Sadly, I never investigated how > this worked. Just my 2p worth on the subject: a colleague and I implemented a post- mortem debug utility on a multi-board VME system, by creating a shared memory area on board 0, and writing debug trace information to it from all other boards on the bus. Each board wrote to its own cyclic buffer so we had the last debug messages up to the point of failure. Since board 0 was also involved in the boot process, it was able to detect board reboots save the contents of the associated trace buffer to a remote store. - -- Phil "Phlash" Ashby (speaking only for himself) Work: http://www.internet-designers.net/ Home: http://www.ashbysoft.com/ --------------------------- Newsgroups: comp.os.vxworks Subject: Re: network card for ARM Integrator Date: 07 Jun 2002 10:06:38 GMT From: no_spam@kpsws.com Message-ID: <3d0085ae$0$225$4d4ebb8e@read-nat.news.nl.uu.net> References: Andray, Only the DEC DC1036A works with the Arm integrator920t BSP... and we had to searched hard for such device... gr niels Greetings, target.nr file in ARM Integrator's BSP says that vxWorks will recognize and work with DEC21x40 based network card. My question is, did anybody tried to use SMC 8432BT/T EtherPower card (based on DEC21041-PB controller) with ARM Integrator. Also, if somebody out there got any network card to work on that board, could you please tell me what card it is. Thanks in advance and regards, Andray --------------------------- Newsgroups: comp.os.vxworks Subject: T2: how to debug only on 1 file but not on all files Date: 07 Jun 2002 10:23:56 GMT From: charly Message-ID: <200267-112356-48895@foorum.com> Hello, I have a big project with 500 files. I would like to debug on 1 (or 5) files only. How to do it? I am able to compile the full project in debug by selecting "include debug info" in the project properties ( that means "-g -O0" for 500 files) Charly - -- Use our news server 'news.foorum.com' from anywhere. More details at: http://nnrpinfo.go.foorum.com/ --------------------------- End of New-News digest ********************** From vxwexplo-errs@csg.lbl.gov Sat Jun 8 01:28:35 2002 From: =?iso-8859-1?q?vivek=20jain?= Date: Sat Jun 8 01:28:37 PDT 2002 Subject: cPCI card driver on vxworks I am writing a device driver for cpci card which supports DMA. The OS is Vxworks. My issue is 1) How to map the board memory to cpu address space. 2) How to allocate the DMA channel to the card. My question may sound stupid. I am new this field . Any help will be greatly appreciated. Thanks in advance Kind Regards Vivek MM Technologies ________________________________________________________________________ Everything you always wanted to know about cars and bikes,now at: http://in.autos.yahoo.com From vxwexplo-errs@csg.lbl.gov Sat Jun 8 04:03:19 2002 From: Vxworks Exploder Date: Sat Jun 8 04:03:22 PDT 2002 Subject: comp.os.vxworks newsdigest Comp.Os.Vxworks Daily Digest Sat Jun 8 04:03:14 PDT 2002 Subject: Problem with two ln97xEnd devices on ARM integrator Subject: Re: how to debug only on 1 file but not on all files Subject: Re: interupts at ppc8260 Subject: Re: rngbuf overflow! help me Subject: Re: T2: how to debug only on 1 file but not on all files Subject: Re: unresolved symbols Subject: Re: hi, what's the matter? Subject: Re: Detecting corrupt memory list Subject: Re: How can I write four files quickly on a disk at the same time? Subject: Re: hi, what's the matter? Subject: Re: T2: how to debug only on 1 file but not on all files Subject: Re: T2: how to debug only on 1 file but not on all files Subject: Re: T2: how to debug only on 1 file but not on all files Subject: Re: hi, what's the matter? Subject: Re: hi, what's the matter? Subject: Re: Post Mortem debugging Subject: Re: network card for ARM Integrator Subject: GDB support for Hitachi SH3 Subject: Re: Post Mortem debugging Subject: Re: Post Mortem debugging Subject: Re: pipe writes Subject: Telnet Task Delayed Subject: Accessing Local Memory Addresses Subject: linking socket library libwsock32.a Subject: Re: WDB-rpc error Subject: Re: Accessing Local Memory Addresses Subject: Re: linking socket library libwsock32.a Subject: launch on Unix Subject: usrBootLineInit is not called !? Subject: Re: Test post Subject: Re: Problem with two ln97xEnd devices on ARM integrator Subject: Re: pipe writes Subject: Re: WDB-rpc error Subject: Re: linking socket library libwsock32.a Subject: What is wrong? Subject: Re: What is wrong? ------------------------------------------------------- Newsgroups: comp.os.vxworks Subject: Problem with two ln97xEnd devices on ARM integrator Date: 07 Jun 2002 11:10:30 GMT From: nospam@kpsws.com Message-ID: <3d0094a6$0$228$4d4ebb8e@read-nat.news.nl.uu.net> I have integrated the ln97xEnd into the integrator920t BSP. It works with one device but the second device fails during the MAC adres read phase (sysLan97xEnetAddrGet) . Pci mapping on integrator board: 0x40000000 (1GB) First device gets 0x40000000 as membase and second device gets 0x40200000 (seems fine to me) I use the function pciAssignResources to configure and allocate the pcimapping. When I get to sysLan97xEnetAddrGet for the second device vxworks fails at copying from 0x40200000 with the following error: Data abort Exception address: 0x00006e24 Current Processor Status Register: 0x00000013 Task: 0x7ffe60 "tRootTask" anyone has any ideas??? second board is not broken because when I switch the boards the situation is the same... regards, niels --------------------------- Newsgroups: comp.os.vxworks Subject: Re: how to debug only on 1 file but not on all files Date: Fri, 7 Jun 2002 13:22:42 +0200 From: "Werner Schiendl" Message-ID: <3d00976d$1@brateggebdc5.br-automation.co.at> References: <200267-112356-48895@foorum.com> Hi, the easiest is to make a separate project for these items. Than you can build and download them separately, of course with their own setting of optimization and debugging symbol support. This will also reduce the time needed for build and link - maybe even on download, depending on which connection you use. hth Werner "charly" wrote in message news:200267-112356-48895@foorum.com... > > Hello, > I have a big project with 500 files. I would like to debug on 1 (or 5) files > only. How to do it? > I am able to compile the full project in debug by selecting "include debug info" > in the project properties ( that means "-g -O0" for 500 files) > > Charly > > > -- > Use our news server 'news.foorum.com' from anywhere. > More details at: http://nnrpinfo.go.foorum.com/ --------------------------- Newsgroups: comp.os.vxworks Subject: Re: interupts at ppc8260 Date: Fri, 07 Jun 2002 07:55:07 -0400 From: Varndell Engineering Organization: Newsfeeds.com http://www.newsfeeds.com 100,000+ UNCENSORED Newsgroups. Message-ID: <3D009F1B.6FD64679@hotmail.com> References: Hello Achim, When you handle this interrupt, you must write a 1 to PC7 in SIPNR_H to clear the interrupt. The BSP code does not do this for you. Also, the PC[0-15] bits in SIPNR_H are undefined at reset. Check if your BSP clears them on initialization. If you're uncertain, do it yourself in syslb.c by writing all 1's to SIPNR_H. Note that the default setting of SIEXR has all the port C bits interrupting on any edge, which is probably not what you want. Re-read the interrupt controller section of the manual. Regards, George Varndell - -- Varndell Engineering, LLC Embedded Systems Expertise http://www.varndellengineering.com --------------------------- Newsgroups: comp.os.vxworks Subject: Re: rngbuf overflow! help me Date: Fri, 07 Jun 2002 12:37:55 GMT From: Mike Anderson Organization: The PTR Group, Inc. Message-ID: References: VxWorks Greetings! On Fri, 07 Jun 2002 04:42:44 -0400, kent liu wrote: > I used 3c905b in PentiumPro tornado2. It works well when send the > packets > directly, but very bad when bidirectly. It tell me "netJobAdd > (el3c90xIntrRx) failed" and "netJobAdd: ring buffer overflow!" Can > anyone give me a help! The tNetTask is run at task level to service the packets once the ISR has finished. The Ethernet ISR will call netJobAdd and that will add a function call to the ring buffer that the tNetTask reads. As it reads one of these entries, it performs the function indicated, then goes and reads the next function call and executes that, etc. Very similar to a deferred procedure call in Win32 or a tasklet/bottom half in Linux. Except that this function call happens at task level. What is happening here is that tNetTask is not getting a chance to run and work the netJobAdd queue off. This typically happens when you have a task running at a priority > tNetTask (usually 50). This high priority task is eating all of the CPU and preventing tNetTask from running, hence the overflow. Look for user tasks with a priority > 50 and lower them. HTH, Mike Anderson - -- ======================================================= T h e P T R G r o u p, I n c. ======================================================= Embedded, Real-Time Solutions and Training Mike Anderson mailto:mike@ThePTRGroup.com Chief Scientist http://www.ThePTRGroup.com C: (703) 585-9384 V: (703) 430-3748 ======================================================= "Software development is like making a baby... You can't make a baby in one month by impregnating nine women. Some things just take time." --------------------------- Newsgroups: comp.os.vxworks Subject: Re: T2: how to debug only on 1 file but not on all files Date: Fri, 07 Jun 2002 12:47:11 GMT From: Mike Anderson Organization: The PTR Group, Inc. Message-ID: References: <200267-112356-48895@foorum.com> VxWorks Greetings! On Fri, 07 Jun 2002 06:23:56 -0400, charly wrote: > Hello, > I have a big project with 500 files. I would like to debug on 1 (or 5) > files only. How to do it? > I am able to compile the full project in debug by selecting "include > debug info" in the project properties ( that means "-g -O0" for 500 > files) > > Charly > > Gee, I'm not sure what the problem is. Do you mean that you don't want to have to trace through all of the rest of the code when you're debugging those few functions? CrossWind is based on GDB, and GDB is function-oriented rather than file oriented. So, by having only a single function in each of the sourcefiles of interest, you can achieve the same effect. Once you've compiled and loaded the project, start the debugger and bring up the GDB command line. Issue a "list " and set a breakpoint on the functions of interest. Then run the code using the "run" command. The code will run until it hits one of your breakpoints. Then while you're steping through the code, if you accidentally step into code you don't want to debug, issue a "finish" command and that will run the non-debug code until it returns back to the code of interest. HTH, Mike - -- ======================================================= T h e P T R G r o u p, I n c. ======================================================= Embedded, Real-Time Solutions and Training Mike Anderson mailto:mike@ThePTRGroup.com Chief Scientist http://www.ThePTRGroup.com C: (703) 585-9384 V: (703) 430-3748 ======================================================= "Software development is like making a baby... You can't make a baby in one month by impregnating nine women. Some things just take time." --------------------------- Newsgroups: comp.os.vxworks Subject: Re: unresolved symbols Date: Fri, 07 Jun 2002 12:51:18 GMT From: Mike Anderson Organization: The PTR Group, Inc. Message-ID: References: <254be7e.0206052312.1a0c2528@posting.google.com> On Thu, 06 Jun 2002 03:12:09 -0400, chc wrote: > Hi, > > I've got two Tornado projects, one contains C files compiled as a > library, drivers.a. Another contains CPP files compiled as data.out. The > data.out calls two functions DriverInit() and WriteToDriver() from the > drivers.a, and the data.out also linked to drivers.a. But, downloading > data.out to the target, it still has the following error: > > Unresolved symbols: > DriverInit__FPFPvUl_v > WriteToDriver__FiPUlUl > > As the drivers.a has already been linked in data.out, why the symbols > are still unresolved? There is no problem to link other CPP libraries, > but just cannot to link C libaries properly. What was I missing here? > > We use Tornado 2.0.2. > > Any help is much appreciated. > > Thank you. Hmm, you don't say what architecture you're using, but these look like C++ mangled symbols. Try declaring these two functions as "export C" functions and see if the error goes away. HTH, Mike - -- ======================================================= T h e P T R G r o u p, I n c. ======================================================= Embedded, Real-Time Solutions and Training Mike Anderson mailto:mike@ThePTRGroup.com Chief Scientist http://www.ThePTRGroup.com C: (703) 585-9384 V: (703) 430-3748 ======================================================= "Software development is like making a baby... You can't make a baby in one month by impregnating nine women. Some things just take time." --------------------------- Newsgroups: comp.os.vxworks Subject: Re: hi, what's the matter? Date: Fri, 07 Jun 2002 12:56:30 GMT From: Mike Anderson Organization: The PTR Group, Inc. Message-ID: References: On Mon, 03 Jun 2002 22:47:20 -0400, zhaoyandong wrote: > I remembered there were so many people here. > > But where are you now? They're all taking cover. A lot of the traffic on this group had shifted to India with all of the outsourcing that was being done. Now, a lot of those folks are getting out of range of the nukes from Pakistan. So, the net has quieted down quite a bit. Regards & keep your heads down, Mike - -- ======================================================= T h e P T R G r o u p, I n c. ======================================================= Embedded, Real-Time Solutions and Training Mike Anderson mailto:mike@ThePTRGroup.com Chief Scientist http://www.ThePTRGroup.com C: (703) 585-9384 V: (703) 430-3748 ======================================================= "Software development is like making a baby... You can't make a baby in one month by impregnating nine women. Some things just take time." --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Detecting corrupt memory list Date: 7 Jun 2002 06:05:15 -0700 From: christian.delez@ascom.ch (Christian Delez) Organization: http://groups.google.com/ Message-ID: References: > "memPartFree: invalid block..." message on a subsequent call to > free(). > Hi, Look at Wind River support web site WindSurf. They have an application note 116: "Heap management". This appnote describes the memory partition manager. It explain how the free list is handle, where the pointers to memory blocks are stored and what can be corrupt. You also get a zip with source files to check a memory partition, navigate between memory blocks, go through the free list,... Regards, Christian. posted through google. --------------------------- Newsgroups: comp.os.vxworks Subject: Re: How can I write four files quickly on a disk at the same time? Date: Fri, 07 Jun 2002 13:13:47 GMT From: Mike Anderson Organization: The PTR Group, Inc. Message-ID: References: <8446174.0206041744.46eda55d@posting.google.com> VxWorks Greetings! On Tue, 04 Jun 2002 21:44:06 -0400, yang wrote: > We want to write four files on a disk at the same time .But we find it > take up too many CPU time. > We have tried to use FIOCONTIG and rename mechanism. > code: > bzero(buf,80); > Can someone give me help ? I'm not sure what your asking for here as your code sample doesn't show you writing to four files. However, there are numerous optimizations that you can do to help speed things up. FIOCONTIG is only one of them. First, the disk is very sensitive to the size of the writes. Small write blocks generally give very poor performance. I've seen a sweet spot at anything > 64KB writes up to 256KB writes, then it starts to taper off again. Increasing the write size will help minimize head movement as well as will having a >= 7200 RPM disk and a large disk cache on the drive itself. Remember, each time you have to do a seek on the drive you have the track-to-track seek time (~ 12ms), head settling time (~2-3ms) plus the rotational latency of the media to contend with (varies on the RPM). So, larger writes will minimize the overhead of all of the disk mechanics. HTH, Mike - -- ======================================================= T h e P T R G r o u p, I n c. ======================================================= Embedded, Real-Time Solutions and Training Mike Anderson mailto:mike@ThePTRGroup.com Chief Scientist http://www.ThePTRGroup.com C: (703) 585-9384 V: (703) 430-3748 ======================================================= "Software development is like making a baby... You can't make a baby in one month by impregnating nine women. Some things just take time." --------------------------- Newsgroups: comp.os.vxworks Subject: Re: hi, what's the matter? Date: Fri, 07 Jun 2002 09:40:39 -0400 From: Varndell Engineering Organization: Newsfeeds.com http://www.newsfeeds.com 100,000+ UNCENSORED Newsgroups. Message-ID: <3D00B7D7.5B1B17E5@hotmail.com> References: Mike Anderson wrote: > > On Mon, 03 Jun 2002 22:47:20 -0400, zhaoyandong wrote: > > > I remembered there were so many people here. > > > > But where are you now? > > They're all taking cover. A lot of the traffic on > this group had shifted to India with all of the outsourcing > that was being done. Now, a lot of those folks are > getting out of range of the nukes from Pakistan. So, > the net has quieted down quite a bit. Yeah, it's been interesting to watch the trend here. The massive surge of elementary questions from 'over there' has now turned to erie silence. Still, there are many factors at play here. I suppose many former 'frequent posters' are occupied trying to find ways to stretch their severance pay until the tech recession ends. Regards, George Varndell - -- Varndell Engineering, LLC Embedded Systems Expertise http://www.varndellengineering.com --------------------------- Newsgroups: comp.os.vxworks Subject: Re: T2: how to debug only on 1 file but not on all files Date: 07 Jun 2002 14:41:51 GMT From: charly Message-ID: <200267-154151-663961@foorum.com> References: <200267-112356-48895@foorum.com> <3d00976d$1@brateggebdc5.br-automation.co.at> Thanks you, I am not able to download a file. The "wxworks.st" must be complete. So I found a solution by creating a "## user defined rules" for the specific files. It is not easy but it works. I try also to use "build..customise" on a modified copy of the automatically generated MAKEFILE but i got error: make.exe: *** No rule to make target `linkedObjs.o', needed by `exe'. Stop. Charly - -- Use our news server 'news.foorum.com' from anywhere. More details at: http://nnrpinfo.go.foorum.com/ --------------------------- Newsgroups: comp.os.vxworks Subject: Re: T2: how to debug only on 1 file but not on all files Date: Fri, 7 Jun 2002 16:56:00 +0200 From: "Werner Schiendl" Message-ID: <3d00c96b@brateggebdc5.br-automation.co.at> References: <200267-112356-48895@foorum.com> <3d00976d$1@brateggebdc5.br-automation.co.at> <200267-154151-663961@foorum.com> Hi, "charly" wrote in message news:200267-154151-663961@foorum.com... > > Thanks you, > I am not able to download a file. The "wxworks.st" must be complete. > What is the exact reason, why you cannot download a thing during development? Don't you use the Tornado Debugger? In that case you would have a online connection to the target which allows to do what I suggested. You don't need a symbol table on the target for that to work! So target memory constraints are not an issue (as long as you _can_ afford having the WDB stuff in the target image, of course). If this is not possible for whatever reason, I expect the problem is that you need a small image but still debugging symbols in some of the object files. In that case I can think of two possible solutions: Build the stuff that you believe is working and does not need debug info into a library and link your image against that library, leaving only stuff you want to have debug info in the main image. To build a library image, select 'Downloadable Image' in the project wizard, but select the .a build target when building it. Add the library that is the result of this satelite project to the main image build under Workspace -> Build tab -> Properties -> Macros -> Macro 'LIBS' . You can also make it the other way round, move the files you wish to debug into a separate project. Build that into a library with debugging info turned on and link it with your main image as described above. I'm not absolutely sure however, if taking the debug info from a library actually works. You could also work with object files (instead of libraries) that you add to the 'EXTRA_MODULES' macro instead the 'LIBS' macro. However, you cannot use the resulting .out file, you would need to use the partialImage.o because otherwise you'd end up with duplicate symbols for the C++ support. hth Werner > So I found a solution by creating a "## user defined rules" for the specific > files. It is not easy but it works. > > I try also to use "build..customise" on a modified copy of the automatically > generated MAKEFILE but i got error: > > make.exe: *** No rule to make target `linkedObjs.o', needed by `exe'. Stop. > > > Charly > > > > > -- > Use our news server 'news.foorum.com' from anywhere. > More details at: http://nnrpinfo.go.foorum.com/ --------------------------- Newsgroups: comp.os.vxworks Subject: Re: T2: how to debug only on 1 file but not on all files Date: 7 Jun 2002 08:02:34 -0700 From: zm0511@sina.com (charming) Organization: http://groups.google.com/ Message-ID: References: <200267-112356-48895@foorum.com> You can take two steps: 1. compile your whole project(call build command) with 'Include debug info' option not be selected. 2. make an update of the file you want to debug. Then build your project again with 'Include debug info' option not be selected. Only the updated file will be recompiled and thus the debug info of this file will be added to the executable image. try it. :-) --------------------------- Newsgroups: comp.os.vxworks Subject: Re: hi, what's the matter? Date: 07 Jun 2002 12:22:41 -0400 From: Bill Pringlemeir Organization: Factory of the mind Message-ID: References: <3D00B7D7.5B1B17E5@hotmail.com> Sender: bpringlemeir@DeadDuck Varndell> Yeah, it's been interesting to watch the trend here. The Varndell> massive surge of elementary questions from 'over there' has Varndell> now turned to erie silence. Still, there are many factors Varndell> at play here. I suppose many former 'frequent posters' are Varndell> occupied trying to find ways to stretch their severance pay Varndell> until the tech recession ends. Or people in the Northern hemisphere might be enjoying the weather! It is Friday everywhere! [I know realize that this doesn't make much sense to the Muslim world as they are off Wednesday and Thursday, but everybody else can be happy]. I will now refrain from being positive again.... Regards, Bill Pringlemeir. - -- vxWorks FAQ, "http://www.xs4all.nl/~borkhuis/vxworks/vxworks.html" --------------------------- Newsgroups: comp.os.vxworks Subject: Re: hi, what's the matter? Date: Fri, 7 Jun 2002 16:42:09 +0000 (UTC) From: David Laight Organization: BT Openworld Message-ID: <3D00E2C1.5000500@spamm.me.l8s.co.uk> References: <3D00B7D7.5B1B17E5@hotmail.com> Varndell Engineering wrote: > I suppose many > former 'frequent posters' are occupied trying to find ways to stretch > their severance pay until the tech recession ends. Or just enjoying the quiet life and being glad we don't have to get blood out of stones (aka wrs support) any more. Favid --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Post Mortem debugging Date: Fri, 7 Jun 2002 12:46:23 -0400 From: "Dave Villeneuve" <(SPAM PROTECTED)vevad@skrowtenletron.moc> Organization: Nortel Message-ID: References: <3cff6a33.178721778@news.randori.com> Reply-To: "Dave Villeneuve" "Bill Pringlemeir" wrote in message news:uhekgqx1i.fsf@sympatico.ca... > > Bryan> Hello, I am looking for tips for doing field (Wind View is out > Bryan> of the picture) post mortem debugging. I worked at a company > > [snip] > > Bryan> to reboot? Or interrupt handlers? Any tips to share? > > You need to provide a `fallow' area in the BSP. Often BSPs will clear > all memory or it will get over-written. The typical way is through a > macro, like USER_RESERVED_MEM (see also sysMemTop()). The bootrom and > what ever else is in control must not write to this area. Look at how > to setup WindView (WV) post-mortem. It will help you with a custom > version. ....snip! Two other things to keep in mind are (a) if using a write-back cache, the reserved memory should be marked as non-cacheable as the cache won't be flushed to it on a reset, and (b) if the bridge chip (or memory device) does not support persistent memory, a reset to the board can on occasion cause corruption of random pages in memory. Otherwise this should do the trick. --------------------------- Newsgroups: comp.os.vxworks Subject: Re: network card for ARM Integrator Date: 7 Jun 2002 10:19:43 -0700 From: john_94501@yahoo.com (John) Organization: http://groups.google.com/ Message-ID: <488e459a.0206070919.545d3d58@posting.google.com> References: <3d0085ae$0$225$4d4ebb8e@read-nat.news.nl.uu.net> Hello, > Only the DEC DC1036A works with the Arm integrator920t BSP... and we had > to searched hard for such device... Wind River now supports the Intel fast ethernet devices (82557/9 or 'fei') on these boards too - ask support, or your local FAE, for the BSP code that allows this to work then you will find it much easier to locate network cards. HTH, John... > gr > > niels > > > Greetings, > > target.nr file in ARM Integrator's BSP says that vxWorks will > recognize and work with DEC21x40 based network card. My question > is, did anybody tried to use SMC 8432BT/T EtherPower card > (based on DEC21041-PB controller) with ARM Integrator. Also, > if somebody out there got any network card to work on that > board, could you please tell me what card it is. > > Thanks in advance and regards, > Andray --------------------------- Newsgroups: comp.os.vxworks Subject: GDB support for Hitachi SH3 Date: 7 Jun 2002 18:45:37 GMT From: Carsten Nitsch Organization: Uni Leipzig Message-ID: Hi all, I want to compile GDB 5.2 as cross debugger. Host is linux, target is a Hitachi SH3 processor board. configure --target=sh-wrs-vxworks throws an errormessage like "Gdb does not support target sh-wrs-vxworks". Does anybody how to compile Gdb with sh3-vxworks support? Regards, Carsten --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Post Mortem debugging Date: Fri, 07 Jun 2002 18:54:57 GMT From: "Leonid Rosenboim" Organization: Verio Message-ID: References: <3cff6a33.178721778@news.randori.com> <3cff7cba.183464768@news.randori.com> There is a very good reason that the VxWorks bootConfig.c insists on zeroing the *entire* physical memory, if the boot is of the "cold" type - if the memory is pritected with Parity (or ECC), all memory must be initialized, or else,an attempt to read a byte which has not been so intialized will have an unpredictable parity value, and has a high probability of trigerring parity error, and therefore system restart. For this reason, reserving part of the main DRAM bank is not such a great idea, unless you have got a hardware register to determine if this was a power-on reset, which would be the only case to initialize all memory. My implementation used the NVRAM available with the RTC chip on the mv162 board, it's small but quite safe, it even keeps pre-crash message and restart reason across power failures (turned out very useful to track field restarts to power failures). - - Leonid "Bill Pringlemeir" wrote in message news:ud6v4qrsi.fsf@sympatico.ca... > > Bryan> We do have Wind View, but I am more interestied in using this > Bryan> to debug field problems. I have never used WindView, but I am > Bryan> assuming that I don't want it turned on in an operational > Bryan> product. > > I believe that it is only activated when you connect the WindView > tools. Ie, the data is not collected (a compare instruction is run, > if(WVActive)... ) There is a code size overhead as the WV code won't > be used in the actual product. > > It is much more important to disable WDB, for the `operational > product', if it is a networked device. > > In addition to the items Leonid mentions, stack traces and memory > regions are often useful to capture, depending on the type of > exception. For instance, on a `BUS ERROR' or `DATA EXCEPTION', you > can examine the instruction and then capture memory around the area > that was referenced. Ie, on an ARM if the opcode was "LDRB r0, [r12, > #32]", you would like to capture the memory area that r12 was loaded > from. This is where the pointer was corrupted. You can enable > specific memory dumps on this area. If a second crash can be > produced, you might look at the memory area and figure out what kind > of data had produced an overwrite. So if R12 was pointing to 0x1234 > on the first crash, I could enable a capture of 0x1210 to 0x1240, and > it would capture this range on the next crash... that is what you > would do with an emulator. > > Regards, > Bill Pringlemeir. > > -- > enforcers afsatcom AIEWS RSA kilo class Majic AVN red noise Ft. Meade > high security Lon Horiuchi Crowell embassy MD5 rail gun > > vxWorks FAQ, "http://www.xs4all.nl/~borkhuis/vxworks/vxworks.html" --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Post Mortem debugging Date: 07 Jun 2002 15:45:58 -0400 From: Bill Pringlemeir Organization: Factory of the mind Message-ID: References: <3cff6a33.178721778@news.randori.com> <3cff7cba.183464768@news.randori.com> Sender: bpringlemeir@DeadDuck Bryan> We do have Wind View, but I am more interestied in using this Bryan> to debug field problems. I have never used WindView, but I am Bryan> assuming that I don't want it turned on in an operational Bryan> product. [snip] Bill> In addition to the items Leonid mentions, stack traces and Bill> memory regions are often useful to capture, depending on the Bill> type of exception. For instance, on a `BUS ERROR' or `DATA Bill> EXCEPTION', you can examine the instruction and then capture Bill> memory around the area that was referenced. Ie, on an ARM if [snip] Leonid> There is a very good reason that the VxWorks bootConfig.c Leonid> insists on zeroing the *entire* physical memory, if the boot Leonid> is of the "cold" type - if the memory is pritected with [snip] `Very good' if you are on a PC perhaps... BUS_ERROR is usually a 68k term. DATA_EXCEPTION is a PowerPC and ARM term (afaik). I also specifically mentioned ARM... but anyways, these CPUs can also have memory with parity. However, the controllers and RAM I have worked with do not have parity bits. This brings us to a recurrent theme in this thread. The post-mortem seems to be hardware dependant. No matter what, you have to modify a BSP to achieve this. However, I think that Bryan already knew that. Regards, Bill Pringlemeir. - -- #define Windows_programmer "Every problem solved with a switch statement" vxWorks FAQ, "http://www.xs4all.nl/~borkhuis/vxworks/vxworks.html" --------------------------- Newsgroups: comp.os.vxworks Subject: Re: pipe writes Date: Fri, 7 Jun 2002 13:19:08 -0700 From: "MK" Organization: mike_texx@mail.ru Message-ID: References: <488e459a.0206060942.2408fb2d@posting.google.com> Reply-To: "MK" Message queues cannot be used with a select() call. I basically have a task waiting in select() on either the arrival of a packet on a socket, or an arrival of a message in the pipe. The write to pipe is performed by the callback function of the watchdog timer. "Leonid Rosenboim" wrote in message news:newscache$b2qbxg$mha$1@lnews.actcom.co.il... > Yep, it seems my VxWorks becomes rusty, trouble is I dont have the VxWorks > manuals around anymore, will try to download one off the web site, if there > is one. > > On the other hand, I have never used pipe writes from ISR, don't think it is > a good idea. I/O subsystem and pipe overhead is too much (to my taste) for > an ISR code, so I would recommend using message queue directly from an ISR, > not pipe, allowed or not. > > - Leonid > > "John" wrote in message > news:488e459a.0206060942.2408fb2d@posting.google.com... > > "Leonid Rosenboim" wrote in message > news:... > > > > [stuff deleted] > > > > > Pipe or any other write() is not one of the allowed functions. > > > > Not true; there is a special exception for write() when it is to a > > pipeDrv device (see page 87 of the VxWorks 5.4 Programmer's Guide > > where the allowed functions for an ISR are listed). RTFM ;-) > > > > Rgds, > > > > John... > > --------------------------- Newsgroups: comp.os.vxworks Subject: Telnet Task Delayed Date: Fri, 7 Jun 2002 13:22:54 -0700 From: Kai Young Organization: University of Southern California Message-ID: Sender: kgy@aludra.usc.edu Hello All, Currently having a problem with a board running VxWorks on a Radstone PPC G4. Before even loading any application code, the telnet task is showing up as delayed. I didn't write the BSP, but it does have INCLUDE_TELNET defined, and I can't spot any taskDelays from cursory examinations. Questions are as follows: Are there any further requirements for telnet to be implemented? What else would cause the task to be delayed other than a taskDelay call from within the task itself? This board differs from other boards (which function properly) in that it lacks a serial port (connecting with Tornado via Ethernet). Is this relevant in any way that I haven't been able to see? TIA - -Kai --------------------------- Newsgroups: comp.os.vxworks Subject: Accessing Local Memory Addresses Date: 7 Jun 2002 13:32:25 -0700 From: DLM55@dcx.com (Debra Meiers) Organization: http://groups.google.com/ Message-ID: <38f8ed1.0206071232.1e9ce466@posting.google.com> Hello, Our host runs Tornado 2.0.2 on a PC with Windows NT Workstation. Our target runs VxWorks 5.4 with a BajaPPC750 CPU Card (PPC603) from Artesyn. Our BSP from Artesyn is successfully mapping VME addresses into local addresses, allowing us to access our hardware. My question concerns some "curious" behavior that we have been seeing. We are able to access local addresses (such as 0xfc000ffc) from WindSh using the VxMemProbe function without any trouble. However, when we try to read the same address from the WindSh using the 'd' function, an error occurs which causes the target to reboot automatically. Similarly, we have no problems accessing the local addresses from our object code. However, when we step through our code using the Debugger, we see 2 problems. The first occurs if we place a variable which references a local memory address into either the Variable or Watch windows. The second occurs if we try to step into a subroutine which is being passed a local memory address. In both cases, the target is rebooted automatically and the host is left in a "less than desirable" state. We figure that these unexpected behaviors are related to a single problem. Any advice on what might be causing this would be appreciated. Thanks in advance for any help. - -Debbie (a newbie) --------------------------- Newsgroups: comp.os.vxworks Subject: linking socket library libwsock32.a Date: 7 Jun 2002 13:32:40 -0700 From: virzak@rogers.com (Victor Irzak) Organization: http://groups.google.com/ Message-ID: Hello, I am trying to build an application that is using socket functions. When I download I get unresolved links: Errors while downloading D:/Tornado/target/proj/ProjectJade/SIMNTgnu/ProjectJade.out: _socket _getsockname _aio_read _recvfrom ... I did include the full path of the libwsock32.a file in PRJ_LIBS, but it didn't help. Am I doing something wrong or is there a problem with Tornado? My Tornado version is 2.0 Thanks in advance Victor --------------------------- Newsgroups: comp.os.vxworks Subject: Re: WDB-rpc error Date: Fri, 07 Jun 2002 15:58:15 -0500 From: Eric Geelen Organization: tellabs Message-ID: <3D011E67.583079F6@tellabs.com> References: <3CFC0BAE.903C816A@tellabs.com> <70d78653.0206041516.17a23802@posting.google.com> I've become quite frustrated with this situation. Usually it is only an issue with Singlestep but this afternoon another developer sent me a log saying that the timeout occurred trying to start the Tornado Browser. This is the output she saw: >>>>>>>>>>>>>>>> Killing this session log viewer will not kill the Target Server. Current session log is available in: /home/tlabas-2/aovermye/.wind/launchLog.GCU_TEST_SW12 Command: tgtsvr 172.17.55.122 -V -n GCU_TEST_SW12 -B wdbrpc -f elf -c /vobs/gu.elf -Root {$HOME/stuff} tgtsvr.ex (GCU_TEST_SW12@sunsw12-121): Fri Jun 7 14:35:10 2002 Connecting to target agent... succeeded. Attaching C++ interface... succeeded. Attaching elf OMF reader for PPC CPU family... succeeded. Warning: Target server cache for agent memory is full. Use the '-m' option to increase the target server cache. Warning: Can't checksum core file, length is not valid. tgtsvr.ex (GCU_TEST_SW12@sunsw12-121): Fri Jun 7 14:37:09 2002 Error: rpccore backend client RPC: Timed out tgtsvr.ex (GCU_TEST_SW12@sunsw12-121): Fri Jun 7 14:37:12 2002 Error: rpccore backend client RPC: Timed out >>>>>>>>>>>>>>>>> Anyone know what the reference to using the '-m' is? I tried adding it to the tgtsvr command line with no effect. Thanks, eh! Eric. BTW, drdiags ( Frederic?) I did try setting a different name for the target, or even just choosing a different IP address. At first I thought it would be a suitable workaround, but it doesn't always work. I'll look into the WDB configuration in the kernel, but if these weren't correctly set, would it work at all? Hsing Yuan wrote: > We have the same problem. From time to time, the target server will > time out, and the connection breaks up. It has never worked well. I > do notice that sometimes the console prints "recv: Error" or something > like that. If anyone has the solution, please let us know too. > > Thanks > > Hsing Yuan > > "drdiags" wrote in message news:... > > Hello Eric, > > > > Not sure, but the version of vxWorks/Tornado you are using could be in > > play. You > > mention that this worked before, so you don't have a DHCP server running, > > which > > could be taking the only available SNARF protocol in pre T2.0.2 for PPC. You > > are > > sure the kernel is using END or Network for the WDB agent. How about the > > target server line? You might want to use the logging for WTX/Backend > > communication > > in case this may shed some light. Do you have a target shell installed? I am > > from the > > pre-GUI days and I absolutely need to have the visibility that the target > > shell gives me. > > Plus, I always will build in the symbol table in case networking goes awry > > during the > > downloadable symbol table load, it is too late to bite me. Are you using the > > target's IP address or a name which is known to your DNS/NIS server? Well, I > > have ran out of the obvious WAGs. (are you building from the IDE or from the > > command line?) Could you put a telnet server on your board to verify the > > networking? Good luck...... > > > > "Eric Geelen" wrote in message > > news:3CFC0BAE.903C816A@tellabs.com... > > > Help! > > > > > > We're developing a PPC8260 application using the tornado tools and > > > Singlestep debugger. When trying to attach the solaris Host-based > > > target-server to the WDBagent running on the target board: > > > > > > > > > tgtsvr.ex (FW17GCU-A@sunx214): Mon Jun 3 19:01:40 2002 > > > Connecting to target agent... > > > Error: rpccore backend client RPC: Timed out > > > failed. > > > Connecting to target agent... > > > Error: rpccore backend client RPC: Timed out > > > failed. > > > > > > > > > I've tried resetting each element of my environment, the target board, > > > the host workstation, and even tried starting a local copy of the > > > tornado_registry... all to no avail. > > > > > > I've been using scripts for my environment and setup, so I'm pretty sure > > > everything is set up as before (when things were working fine). > > > > > > I checked Windriver's dB for similar issues and I found 8 TSR/Forum > > > message chains asking similar questions, only 2 were given any kind of > > > suggested solutions, neither solution helped me. (one was reset > > > everything, the other was a Win/NT based solution). > > > > > > Has anyone out there been able to isolate this issue? Any success making > > > it go away? > > > --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Accessing Local Memory Addresses Date: Fri, 07 Jun 2002 21:03:52 GMT From: "Jeffrey Creem" Organization: ATT Broadband Message-ID: References: <38f8ed1.0206071232.1e9ce466@posting.google.com> This is basically just a guess but is there any chance that the hardware you are trying to access requires 32 bit (D32) accesses. The d command (without an option to specify otherwise) typically does reads with D16 accesses. As for the debugger...No great guesses other than perhaps it has decided to do D8 or D16 accesses as well. If the guess is correct then when you access the hardware incorrectly, you will some sort of "bus error" type event that may be unhandled (or handled poorly) which then causes the reboot...Try some things like m 0x 0xfc000ffc,4 (this will do a 32 bit read) m 0xfc000ffc,2 (this will do a 16 bit read) and see if this is the path to take. "Debra Meiers" wrote in message news:38f8ed1.0206071232.1e9ce466@posting.google.com... > Hello, > > Our host runs Tornado 2.0.2 on a PC with Windows NT Workstation. Our > target runs VxWorks 5.4 with a BajaPPC750 CPU Card (PPC603) from > Artesyn. Our BSP from Artesyn is successfully mapping VME addresses > into local addresses, allowing us to access our hardware. > > My question concerns some "curious" behavior that we have been seeing. > We are able to access local addresses (such as 0xfc000ffc) from > WindSh using the VxMemProbe function without any trouble. However, > when we try to read the same address from the WindSh using the 'd' > function, an error occurs which causes the target to reboot > automatically. > > Similarly, we have no problems accessing the local addresses from our > object code. However, when we step through our code using the > Debugger, we see 2 problems. The first occurs if we place a variable > which references a local memory address into either the Variable or > Watch windows. The second occurs if we try to step into a subroutine > which is being passed a local memory address. In both cases, the > target is rebooted automatically and the host is left in a "less than > desirable" state. > > We figure that these unexpected behaviors are related to a single > problem. Any advice on what might be causing this would be > appreciated. > > Thanks in advance for any help. > > -Debbie (a newbie) --------------------------- Newsgroups: comp.os.vxworks Subject: Re: linking socket library libwsock32.a Date: 07 Jun 2002 17:28:53 -0400 From: Bill Pringlemeir Organization: Factory of the mind Message-ID: References: Sender: bpringlemeir@DeadDuck Victor> Hello, I am trying to build an application that is using Victor> socket functions. When I download I get unresolved links: Victor> Errors while downloading Victor> D:/Tornado/target/proj/ProjectJade/SIMNTgnu/ProjectJade.out: Victor> _socket _getsockname _aio_read _recvfrom ... Victor> I did include the full path of the libwsock32.a file in Victor> PRJ_LIBS, but it didn't help. Am I doing something wrong or Victor> is there a problem with Tornado? The Tornado Simulator is not suppose to be `Mingw'. You need to be linking with the vxWorks libraries. These should define the socket functions. You must configure your simulator image to include the socket() functions. Can you run the shell (using the blue circled "i", which give "->") and type `lkup "socket"' to see if the symbol is in the image. Regards, Bill Pringlemeir. - -- Truth decays into beauty, while beauty soon becomes merely charm. Charm ends up as strangeness, and even that doesn't last, but up and down are forever. - Anonymous vxWorks FAQ, "http://www.xs4all.nl/~borkhuis/vxworks/vxworks.html" --------------------------- Newsgroups: comp.os.vxworks Subject: launch on Unix Date: Fri, 7 Jun 2002 18:55:31 -0400 From: "Zulfikar" Organization: Nortel Message-ID: Newbie: I probably have a dumb question. I have started launch and now trying to create a target server. I would like to know where is my target would it be the actual card or can it be a simulator. Also what all do I need in order to create this target server. TIA Marc --------------------------- Newsgroups: comp.os.vxworks Subject: usrBootLineInit is not called !? Date: Sat, 08 Jun 2002 00:15:11 GMT From: emdezpk@yahoo.ca (Duke Skylurker) Organization: MCOM Message-ID: Hi, In my prjConfig.c there is call "usrBootLineParse(BOOT_LINE_ADRS);" but there is no "usrBootLineInit(sysStartType);" so boot line is not initialized with DEFAULT_.. I have INCLUDE_BOOT_LINE_INIT parameter. What am I missing? Thanks, Duke S --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Test post Date: 8 Jun 2002 01:56:38 GMT From: Jacqueline Organization: 29873 Message-ID: Jacqueline Wang Jacqueline Wang --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Problem with two ln97xEnd devices on ARM integrator Date: Sat, 08 Jun 2002 06:23:42 GMT From: "Paul Iannacito" Organization: AT&T Broadband Message-ID: References: <3d0094a6$0$228$4d4ebb8e@read-nat.news.nl.uu.net> Hello Niels, sorry to answer your question with another, but it seems to me that the exception address and context (tRootTask) do not have an obvious relation to the MAC address routine for the driver. Can you add some detail about how you determined that the sysLan97xEnetAddrGet() routine for a second NIC is responsible for the exception? - -paul wrote in message news:3d0094a6$0$228$4d4ebb8e@read-nat.news.nl.uu.net... > I have integrated the ln97xEnd into the integrator920t BSP. > > It works with one device but the second device fails during the MAC adres > read phase (sysLan97xEnetAddrGet) . > > Pci mapping on integrator board: 0x40000000 (1GB) > > First device gets 0x40000000 as membase and second device gets 0x40200000 (seems fine to me) > > I use the function pciAssignResources to configure and allocate the > pcimapping. > > When I get to sysLan97xEnetAddrGet for the second device vxworks fails at > copying from 0x40200000 with the following error: > > Data abort > Exception address: 0x00006e24 > Current Processor Status Register: 0x00000013 > Task: 0x7ffe60 "tRootTask" > > anyone has any ideas??? second board is not broken because when I switch > the boards the situation is the same... --------------------------- Newsgroups: comp.os.vxworks Subject: Re: pipe writes Date: Sat, 08 Jun 2002 07:07:45 GMT From: "Leonid Rosenboim" Organization: Verio Message-ID: References: <488e459a.0206060942.2408fb2d@posting.google.com> Select() is anoe other VxWorks facility I would not recommend anyone should use, unless they are doing a quick and dirty port of Unix code. Select()'s performance is miserable, and it has got severe limitation wrt number of file descriptors. But if you are in your Unix mood, using select(0 and pipe, then why dont you also use POSIX timers and signal handlers to send that message which needs to be send on timeout ? At lrase if there are higher priority tasks with true RT responssiveness, you wont be holding up the sysClk hander for as long as you do with the pipe write function. "MK" wrote in message news:ug25bnidhqu4ad@corp.supernews.com... > Message queues cannot be used with a select() call. I basically have a task > waiting in select() on either the arrival of a packet on a socket, or an > arrival of a message in the pipe. The write to pipe is performed by the > callback function of the watchdog timer. > > > "Leonid Rosenboim" wrote in message > news:newscache$b2qbxg$mha$1@lnews.actcom.co.il... > > Yep, it seems my VxWorks becomes rusty, trouble is I dont have the VxWorks > > manuals around anymore, will try to download one off the web site, if > there > > is one. > > > > On the other hand, I have never used pipe writes from ISR, don't think it > is > > a good idea. I/O subsystem and pipe overhead is too much (to my taste) for > > an ISR code, so I would recommend using message queue directly from an > ISR, > > not pipe, allowed or not. > > > > - Leonid > > > > "John" wrote in message > > news:488e459a.0206060942.2408fb2d@posting.google.com... > > > "Leonid Rosenboim" wrote in message > > news:... > > > > > > [stuff deleted] > > > > > > > Pipe or any other write() is not one of the allowed functions. > > > > > > Not true; there is a special exception for write() when it is to a > > > pipeDrv device (see page 87 of the VxWorks 5.4 Programmer's Guide > > > where the allowed functions for an ISR are listed). RTFM ;-) > > > > > > Rgds, > > > > > > John... > > > > > > --------------------------- Newsgroups: comp.os.vxworks Subject: Re: WDB-rpc error Date: 8 Jun 2002 00:41:52 -0700 From: john_94501@yahoo.com (John) Organization: http://groups.google.com/ Message-ID: <488e459a.0206072341.28c5510c@posting.google.com> References: <3CFC0BAE.903C816A@tellabs.com> <70d78653.0206041516.17a23802@posting.google.com> <3D011E67.583079F6@tellabs.com> Hello, > Command: tgtsvr 172.17.55.122 -V -n GCU_TEST_SW12 -B wdbrpc -f elf -c /vobs/gu.elf -Root > {$HOME/stuff} Is there some reason why you are specifying all these options? When using the -c option make very sure that the core file you point the target server matches the image on the target... > tgtsvr.ex (GCU_TEST_SW12@sunsw12-121): Fri Jun 7 14:35:10 2002 > Connecting to target agent... succeeded. > Attaching C++ interface... succeeded. > Attaching elf OMF reader for PPC CPU family... succeeded. > Warning: Target server cache for agent memory is full. > Use the '-m' option to increase the target server cache. > Warning: Can't checksum core file, length is not valid. > > tgtsvr.ex (GCU_TEST_SW12@sunsw12-121): Fri Jun 7 14:37:09 2002 > Error: rpccore backend client RPC: Timed out > > tgtsvr.ex (GCU_TEST_SW12@sunsw12-121): Fri Jun 7 14:37:12 2002 > Error: rpccore backend client RPC: Timed out > >>>>>>>>>>>>>>>>> > > Anyone know what the reference to using the '-m' is? I tried adding it to the tgtsvr command > line with no effect. It allows you to increase the size of the target memory cache on the host. If you are using really large images this might need to be increased to get reasonable performance. Try searching previous posts to this group for some hints on sizes. It should never need to be bigger than the physical RAM size on your target, so if in doubt try setting it to that. There are some other guidelines for debugging rpc timout problems, check out this app note for some troubleshooting guidelines: http://web1.windriver.com/cgi-bin/windsurf/techtips/public/viewSum.cgi?372 HTH, John... --------------------------- Newsgroups: comp.os.vxworks Subject: Re: linking socket library libwsock32.a Date: 8 Jun 2002 00:47:12 -0700 From: john_94501@yahoo.com (John) Organization: http://groups.google.com/ Message-ID: <488e459a.0206072347.624dd6a5@posting.google.com> References: Hello [snip] > Victor> Errors while downloading > Victor> D:/Tornado/target/proj/ProjectJade/SIMNTgnu/ProjectJade.out: > Victor> _socket _getsockname _aio_read _recvfrom ... [snip] > The Tornado Simulator is not suppose to be `Mingw'. You need to be > linking with the vxWorks libraries. These should define the socket > functions. You must configure your simulator image to include the > socket() functions. And, as has been said many, many times in this forum, the default simulator does not include networking support, so unless you have purchased the full simulator from Wind River you will not be able to use these functions in simulator images. The AIO functions should be available, just make sure your simulator includes the POSIX AIO support (not in the config by default). HTH, John... --------------------------- Newsgroups: comp.os.vxworks Subject: What is wrong? Date: 8 Jun 2002 01:48:19 -0700 From: zhouzhaohan@yahoo.com (Fred Zhou) Organization: http://groups.google.com/ Message-ID: I met a code in mips-r3000 assembly like this ....... .align 0x0800 ....... I compiled it and the compiler gave such complaints: Alignment too large: 15. assumed. Why is that?Does it mean that the compiler can not bear alignment larger than 15?This code works mell under greenhill's mips compiler. I am using the tool chains provided by Tornado(ccmips and asmips). Anywhere to get the mapping table between machine code and assembly instruction? Thanx a lot. --------------------------- Newsgroups: comp.os.vxworks Subject: Re: What is wrong? Date: Sat, 8 Jun 2002 09:36:29 +0000 (UTC) From: David Laight Organization: BT Openworld Message-ID: <3D01D078.7080108@spamm.me.l8s.co.uk> References: Fred Zhou wrote: > I met a code in mips-r3000 assembly like this > ....... > .align 0x0800 > ....... > > I compiled it and the compiler gave such complaints: > Alignment too large: 15. assumed. > Why is that?Does it mean that the compiler can not bear alignment > larger than 15?This code works mell under greenhill's mips compiler. > I am using the tool chains provided by Tornado(ccmips and asmips). > Anywhere to get the mapping table between machine code and assembly > instruction? > Thanx a lot. IIRC '.align n' requests alignment to a 2^n boundary. '.balign n' resuests alignment to a 'n' boundary (must be power of 2). I guess the assembler decided you didn't have the 10^620 bytes of memory required to make .align 0x0800 'sensible' :-) David --------------------------- End of New-News digest ********************** From vxwexplo-errs@csg.lbl.gov Sun Jun 9 04:03:11 2002 From: Vxworks Exploder Date: Sun Jun 9 04:03:14 PDT 2002 Subject: comp.os.vxworks newsdigest Comp.Os.Vxworks Daily Digest Sun Jun 9 04:03:07 PDT 2002 Subject: porting 82557/8/9 driver from linux to vxworks Subject: Re: rngbuf overflow! help me Subject: Re: Post Mortem debugging Subject: Re: pipe writes Subject: Re: WDB-rpc error Subject: Re: usrBootLineInit is not called !? Subject: Re: Urgent News Flash Subject: Booting and dosFs Subject: Why I can't use the "@cd" command in shell Subject: Tornado compiler for 7410 ??? Subject: Re: Booting and dosFs Subject: Re: pipe writes ------------------------------------------------------- Newsgroups: comp.os.vxworks Subject: porting 82557/8/9 driver from linux to vxworks Date: 8 Jun 2002 06:29:57 -0700 From: sameer_manuja@yahoo.com (Sameer) Organization: http://groups.google.com/ Message-ID: <2df53411.0206080529.5557ac4d@posting.google.com> Hi, I'm trying to port linux driver for 82557/8/9 intel ether express pro network adapter to vxWorks. The problem i'm facing is that i'm getting a flurry of interrupts, the status reads 0x0010, which means RU ready. I set the base address of the RU and the CU as 0, and give the address of the first receive buffer to the card. Am i not supposed to get proper interrups now... I something else to be done... The output is: In eeInterrupt status is 10 In eeInterrupt status is 10 ... ... and the machine restarts... Help me out... TIA, Sameer #include "vxWorks.h" #include "endLib.h" #include "iv.h" #include "net/if.h" #include "netinet/if_ether.h" #include "vmLib.h" #include "drv/pci/pciConfigLib.h" #include "cacheLib.h" #include "etherLib.h" #include "semLib.h" #include "string.h" #include "../pcPentium/config.h" /* copied from linux driver */ /* A few user-configurable values that apply to all boards. First set is undocumented and spelled per Intel recommendations. */ static int congenb = 0; /* Enable congestion control in the DP83840. */ static int txfifo = 8; /* Tx FIFO threshold in 4 byte units, 0-15 */ static int rxfifo = 8; /* Rx FIFO threshold, default 32 bytes. */ /* Tx/Rx DMA burst length, 0-127, 0 == no preemption, tx==128 -> disabled. */ static int txdmacount = 128; static int rxdmacount = 0; static int rx_copybreak = 200; /* Maximum events (Rx packets, etc.) to handle at each interrupt. */ static int max_interrupt_work = 20; /* Maximum number of multicast addresses to filter (vs. rx-all-multicast) */ static int multicast_filter_limit = 64; /* 'options' is used to pass a transceiver override or full-duplex flag e.g. "options=16" for FD, "options=32" for 100mbps-only. */ static int full_duplex [] = {-1, -1, -1, -1, -1, -1, -1, -1}; static int options [] = {-1, -1, -1, -1, -1, -1, -1, -1}; static int debug = -1; /* The debug level */ /* Rx-Tx Ring Buffer sizes: power of 2 for efficiency */ #define RX_RING_SIZE 32 #define TX_RING_SIZE 32 #ifndef SYS_INT_CONNECT #define SYS_INT_CONNECT(pDrvCtrl,rtn,arg,pResult) \ { \ IMPORT STATUS intConnect(); \ *pResult = intConnect ((VOIDFUNCPTR*) INUM_TO_IVEC (INT_VEC_GET (pDrvCtrl->ivec)), \ rtn, (int) arg); \ } #endif /*SYS_INT_CONNECT*/ #ifndef SYS_INT_DISCONNECT #define SYS_INT_DISCONNECT(pDrvCtrl,rtn,arg,pResult) \ { \ *pResult = OK; \ } #endif /*SYS_INT_DISCONNECT*/ #ifndef SYS_INT_ENABLE #define SYS_INT_ENABLE(pDrvCtrl,pResult) \ { \ *pResult = sysIntEnablePIC (pDrvCtrl->ilevel); \ } #endif /*SYS_INT_ENABLE*/ /* register offsets */ #define STATUS_OFFSET 0x00 /* SCB status word */ #define COMMAND_OFFSET 0x02 /* SCB command word */ #define POINTER_OFFSET 0x04 /* SCB pointer */ #define PORT_OFFSET 0x08 /* SCB port register */ #define FLASH_OFFSET 0x0c /* SCB flash control register */ #define EEPROM_OFFSET 0x0e /* SCB eeprom control register */ #define MDICTRL_OFFSET 0x10 /* SCB mdi control register */ #define EARLYRX_OFFSET 0x14 /* SCB early receive byte count */ /* SCB Status Word byte mask definitions */ #define SCB_S_RUMASK 0x3c /* RU status mask */ #define SCB_S_RUIDLE 0x00 /* RU is idle */ #define SCB_S_RUSUSP 0x04 /* RU is suspended */ #define SCB_S_RUNORSR 0x08 /* RU no more resources */ #define SCB_S_RURDY 0x10 /* RU is ready */ #define SCB_S_RUSUSPNR 0x24 /* RU is suspended/no more resources */ #define SCB_S_RUNORSRBD 0x28 /* RU no more resources/no more RBD's */ #define SCB_S_RURDYBD 0x30 /* RU is ready/no more RBD's */ #define SCB_S_CUMASK 0xc0 /* CU status mask */ #define SCB_S_CUIDLE 0x00 /* CU is idle */ #define SCB_S_CUSUSP 0x40 /* CU is suspended */ #define SCB_S_CUACTIVE 0x80 /* CU is active */ #define SCB_S_MASK 0xff /* SCB STAT/ACK byte bit mask definitions */ #define SCB_S_STATMASK 0xfc00 /* stat mask */ #define SCB_S_SWI 0x0400 /* software generated interrupt */ #define SCB_S_MDI 0x0800 /* An MDI read or write cycle is done */ #define SCB_S_RNR 0x1000 /* RU left the ready state */ #define SCB_S_CNA 0x2000 /* CU left the active state */ #define SCB_S_CI 0x2000 /* CU entered the idle state */ #define SCB_S_FR 0x4000 /* RU finished receiveing a frame */ #define SCB_S_CX 0x8000 /* CU finished a cmd with I bit set */ #define SCB_S_TNO 0x8000 /* Tx command ended with not OK */ /* SCB Command byte bit mask definitions */ #define SCB_C_RUMASK 0x07 /* RU Command mask */ #define SCB_C_RUNOP 0x00 /* NOP */ #define SCB_C_RUSTART 0x01 /* RU start reception of frames */ #define SCB_C_RURESUME 0x02 /* RU resume reception of frames */ #define SCB_C_RUABORT 0x04 /* RU abort receiver immediately */ #define SCB_C_RULDHDS 0x05 /* RU load header data size */ #define SCB_C_RULDBASE 0x06 /* load RU base address */ #define SCB_C_RURBDRSM 0x07 /* RBD resume */ #define SCB_C_CUMASK 0x70 /* CU Command mask */ #define SCB_C_CUNOP 0x00 /* NOP */ #define SCB_C_CUSTART 0x10 /* CU start execution */ #define SCB_C_CURESUME 0x20 /* CU resume execution */ #define SCB_C_CULDDUMP 0x40 /* load dump counters address */ #define SCB_C_CUDUMP 0x50 /* dump stat counters */ #define SCB_C_CULDBASE 0x60 /* load CU base address */ #define SCB_C_CUDUMPRST 0x70 /* dump and reset stat counters */ #define SCB_CR_MASK 0xff /* SCB Interrupt Control byte bit mask definitions */ #define SCB_C_MASKALL 0x0100 /* interrupt mask */ #define SCB_C_TRGINTR 0x0200 /* software generated interrupt */ #define SCB_C_FLWCTRL 0x0400 #define SCB_C_EARLYRX 0x0800 #define SCB_C_RXSUSP 0x1000 #define SCB_C_CMDIDLE 0x2000 #define SCB_C_RXDONE 0x4000 #define SCB_C_CMDDONE 0x8000 /* PORT commands */ #define PORT_RESET 0x0 /* PORT reset command */ #define PORT_SELFTEST 0x1 /* PORT selftest command */ #define PORT_SELRESET 0x2 /* PORT selective reset command */ #define PORT_DUMP 0x3 /* PORT dump command */ /* RxFD - Receive Frame Descriptor */ /* Use simplified mode for Rx, i.e. the buffer immediately follows the header */ /* pRBD field is thus unused */ #define EH_SIZE 14 #define END_BUFSIZ EH_SIZE + ETHERMTU #define END_SPEED 10000000 typedef struct rxfd { volatile UINT16 rfdStatus; /* status field */ UINT16 rfdCommand; /* command field */ struct rxfd* link; /* link to next rxfd */ UINT8* pRBD; /* link to rx buffer descriptor */ volatile UINT16 actualCnt; /* actual byte count, filled in by the card */ UINT16 bufSize; /* buffer size */ UINT8 enetHdr [EH_SIZE];/* the ethernet header */ char enetData [ETHERMTU];/* received data */ } RxFD; /* RxFD bit mask definitions */ /* Status */ #define RFD_S_COLL 0x0001 /* collision during reception */ #define RFD_S_IA 0x0002 /* individual address match */ #define RFD_S_RXER 0x0010 /* receive error */ #define RFD_S_LEN 0x0020 /* type/len field designator */ #define RFD_S_SHORT 0x0080 /* frame too short */ #define RFD_S_DMA 0x0100 /* DMA Overrun failure to get bus */ #define RFD_S_RSRC 0x0200 /* received, but ran out of buffers */ #define RFD_S_ALGN 0x0400 /* received misaligned with CRC error */ #define RFD_S_CRC 0x0800 /* received with CRC error */ #define RFD_S_OK 0x2000 /* frame received successfully */ #define RFD_S_B 0x4000 /* RU begins accessing this RFD */ #define RFD_S_COMPLETE 0x8000 /* frame reception complete */ /* Command */ #define RFD_C_FLEX 0x0008 /* flexible mode */ #define RFD_C_HEADER 0x0010 /* frame is a header */ #define RFD_C_SUSP 0x4000 /* suspend RU after receiving frame */ #define RFD_C_EL 0x8000 /* end of RFD list */ /* commands */ typedef struct ac_iasetup /* AC_IASETUP - Individual Address Setup */ { UINT8 ciAddress[6]; /* local ethernet address */ UINT16 ciFill; } AC_IASETUP; typedef struct ac_config /* AC_CONFIG - i82557 Configure */ { UINT8 ccByte0; /* byte count */ UINT8 ccByte1; /* FIFO limits */ UINT8 ccByte2; /* adaptive IFS */ UINT8 ccByte3; /* reserved - set to 0 */ UINT8 ccByte4; /* rx max byte count */ UINT8 ccByte5; /* tx max byte count, byte cnt enable */ UINT8 ccByte6; /* save bf, CI/TNO int, late SCB */ UINT8 ccByte7; /* underrun retry, short discard */ UINT8 ccByte8; /* 503/MII */ UINT8 ccByte9; /* reserved - set to 0 */ UINT8 ccByte10; /* loopback, reamble, NSAI */ UINT8 ccByte11; /* linear priority */ UINT8 ccByte12; /* interframe spacing, L. pri mode */ UINT8 ccByte13; /* reserved - set to 0 */ UINT8 ccByte14; /* reserved - set to 0xf2 */ UINT8 ccByte15; /* CRS+CDT, Broadcast, promisc */ UINT8 ccByte16; /* reserved - set to 0 */ UINT8 ccByte17; /* reserved - set to 0x40 */ UINT8 ccByte18; /* CRC, padding, stripping */ UINT8 ccByte19; /* full duplex, force full duplex */ UINT8 ccByte20; /* multi IA */ UINT8 ccByte21; /* multicast */ } AC_CONFIG; #define CONFIG_DATA_SIZE sizeof (AC_CONFIG) #define N_MCAST 6 typedef struct ac_mcast /* AC_MCAST - Mulitcast Setup */ { UINT16 cmMcCount; /* the number of bytes in MC list */ UINT8 cmAddrList[6 * N_MCAST];/* mulitcast address list */ } AC_MCAST; typedef struct ac_tcb /* AC_TCB - Transmit Control Blocks */ { UINT8* pTBD; /* link to tx buf desc array */ UINT16 count; /* length of data */ UINT8 txThresh; /* tx threshold */ UINT8 tbdNum; /* tx buf desc number */ UINT8 enetHdr [EH_SIZE];/* the ethernet header */ char enetData [ETHERMTU];/* transmit data */ UINT16 ccFill; /* padding */ } AC_TCB; /* special TCB-specific command block bit mask definitions */ #define CFD_S_TX_DMA_U 0x1000 /* DMA underrun */ #define TCB_CNT_EOF 0x8000 /* all data kept in TFD */ #define CFD_C_TX_FLEX 0x0008 /* use flexible mode */ typedef struct ac_dump /* AC_DUMP - Dump */ { UINT32 bufAddr; /* address of dump buffer */ } AC_DUMP; /* special Diag-specific command block bit mask definitions */ #define CFD_S_DIAG_F 0x0800 /* diag failed */ /* CFD - Command Frame Descriptor */ typedef struct cfd { volatile UINT16 cfdStatus; /* command status field */ UINT16 cfdCommand; /* command field */ struct cfd* link; /* address of next cxfd */ union /* command dependent section */ { struct ac_iasetup cfd_iasetup; /* IA setup */ struct ac_config cfd_config; /* config */ struct ac_mcast cfd_mcast; /* multicast setup */ struct ac_tcb cfd_tcb; /* transmit */ struct ac_dump cfd_dump; /* dump */ } cfd_cmd; } CFD; #define cfdIASetup cfd_cmd.cfd_iasetup #define cfdConfig cfd_cmd.cfd_config #define cfdMcast cfd_cmd.cfd_mcast #define cfdTcb cfd_cmd.cfd_tcb #define cfdDump cfd_cmd.cfd_dump /* CFD bit mask definitions */ /* Status */ #define CFD_S_URUN 0x1000 /* Underrun */ #define CFD_S_OK 0x2000 /* Command completed successfully */ #define CFD_S_B 0x4000 /* CU starts access this CFD */ #define CFD_S_COMPLETE 0x8000 /* Command complete */ /* Command */ #define CFD_C_NOP 0x0000 /* No Operation */ #define CFD_C_IASETUP 0x0001 /* Individual Address Setup */ #define CFD_C_CONFIG 0x0002 /* Configure Chip */ #define CFD_C_MASETUP 0x0003 /* Multicast Setup */ #define CFD_C_XMIT 0x0004 /* Transmit (see below too ...) */ #define CFD_C_DUMP 0x0006 /* Dump Registers */ #define CFD_C_DIAG 0x0007 /* Diagnose */ #define CFD_C_INT 0x2000 /* 557 interrupts CPU after execution */ #define CFD_C_SUSP 0x4000 /* CU should suspend after execution */ #define CFD_C_EL 0x8000 /* End of command list */ typedef struct stats /* 82557 statistical counters, must be dword aligned */ { UINT32 txGood; /* tx good frames */ UINT32 txMaxCol; /* tx max collisions errors */ UINT32 txLateCol; /* tx late collisions errors */ UINT32 txUnder; /* tx underrun errors */ UINT32 txCRS; /* tx carrier sense loss */ UINT32 txDefer; /* tx deferred */ UINT32 txSglCol; /* tx single collisions */ UINT32 txMultCol; /* tx multiple collisions */ UINT32 txTotCol; /* tx total collisions */ UINT32 rxGood; /* rx good frames */ UINT32 rxCRC; /* rx CRC errors */ UINT32 rxAllgn; /* rx allignment errors */ UINT32 rxRsr; /* rx resource errors */ UINT32 rxOver; /* rx overrun errors */ UINT32 rxCDT; /* rx collision detect errors */ UINT32 rxShort; /* rx short frame errors */ } STATS; /* configuration command for 82558 (22 bytes) */ AC_CONFIG i82558_config_command ; #define USE_IO /* use IO space access */ #ifndef SYS_OUT_SHORT #ifdef USE_IO #define SYS_OUT_SHORT(addr,value) \ { \ sysOutWord (addr, value) ; \ } #else #define SYS_OUT_SHORT(addr,value) \ { \ *(USHORT *)(addr) = value; \ } #endif #endif /*SYS_OUT_SHORT*/ #ifndef SYS_IN_SHORT #ifdef USE_IO #define SYS_IN_SHORT(addr) \ sysInWord (addr) #else #define SYS_IN_SHORT(addr) \ *(USHORT *)(addr) #endif #endif /*SYS_IN_SHORT*/ #ifndef SYS_OUT_LONG #ifdef USE_IO #define SYS_OUT_LONG(addr,value) \ { \ sysOutLong (addr, value) ; \ } #else #define SYS_OUT_LONG(addr,value) \ { \ *(unsigned long *)(addr) = value; \ } #endif #endif /*SYS_OUT_LONG*/ #ifndef SYS_IN_LONG #ifdef USE_IO #define SYS_IN_LONG(addr) \ sysInLong (addr) #else #define SYS_IN_LONG(addr) \ *(unsigned long *)(addr) #endif #endif /*SYS_IN_LONG*/ #ifndef SYS_OUT_BYTE #ifdef USE_IO #define SYS_OUT_BYTE(addr,value) \ { \ sysOutByte (addr, value) ; \ } #else #define SYS_OUT_BYTE(addr,value) \ { \ *(unsigned char *)(addr) = value; \ } #endif #endif /*SYS_OUT_BYTE*/ #ifndef SYS_IN_BYTE #ifdef USE_IO #define SYS_IN_BYTE(addr) \ sysInByte (addr) #else #define SYS_IN_BYTE(addr) \ *(unsigned char *)(addr) #endif #endif /*SYS_IN_BYTE*/ /* how to wait for the command unit to accept a command. typically this takes 0 ticks. */ LOCAL void wait_for_cmd_done (long addr) { int wait = 1000 ; do { sysDelay() ; } while (SYS_IN_BYTE (addr) && --wait >= 0) ; } /* Size of eeprom */ #define EE_SIZE 0x40 #define EE_CHECKSUM 0xBABA /* EEPROM opcodes */ #define EE_CMD_WRITE 0x05 /* WRITE opcode, 101 */ #define EE_CMD_READ 0x06 /* READ opcode, 110 */ #define EE_CMD_ERASE 0x07 /* ERASE opcode, 111 */ /* number of bits in opcode */ #define EE_CMD_BITS 0x3 /* number of bits in address (for addressing 64 words) */ #define EE_ADDR_BITS 0x6 #define EE_DATA_BITS 0x10 #define EE_SK 0x01 /* shift clock */ #define EE_CS 0x02 /* chip select */ #define EE_DI 0x04 /* chip data in */ #define EE_DO 0x08 /* chip data out */ unsigned short rom_read (unsigned int baseaddr, int location) { int ix ; unsigned short dataval, retval = 0 ; volatile unsigned short dummy ; SYS_OUT_SHORT (baseaddr + EEPROM_OFFSET, EE_CS) ; /* enable EEPROM */ /* write the READ opcode */ for (ix = EE_CMD_BITS - 1; ix >= 0; ix--) { dataval = (EE_CMD_READ & (1 << ix)) ? EE_DI : 0 ; SYS_OUT_SHORT (baseaddr + EEPROM_OFFSET, EE_CS | dataval) ; sysDelay () ; SYS_OUT_SHORT (baseaddr + EEPROM_OFFSET, EE_CS | dataval | EE_SK) ; sysDelay () ; SYS_OUT_SHORT (baseaddr + EEPROM_OFFSET, EE_CS | dataval) ; sysDelay () ; } /* write the location */ for (ix = EE_ADDR_BITS - 1; ix >= 0; ix--) { dataval = (location & (1 << ix)) ? EE_DI : 0 ; SYS_OUT_SHORT (baseaddr + EEPROM_OFFSET, EE_CS | dataval) ; sysDelay () ; SYS_OUT_SHORT (baseaddr + EEPROM_OFFSET, EE_CS | dataval | EE_SK) ; sysDelay () ; SYS_OUT_SHORT (baseaddr + EEPROM_OFFSET, EE_CS | dataval) ; sysDelay () ; dummy = SYS_IN_SHORT (baseaddr + EEPROM_OFFSET) ; } if ((dummy & EE_DO) == 0) /* dummy read */ ; /* read the data */ for (ix = EE_DATA_BITS - 1; ix >= 0; ix--) { SYS_OUT_SHORT (baseaddr + EEPROM_OFFSET, EE_CS | EE_SK) ; sysDelay () ; retval = (retval << 1) | ((SYS_IN_SHORT (baseaddr + EEPROM_OFFSET) & EE_DO) ? 1 : 0) ; SYS_OUT_SHORT (baseaddr + EEPROM_OFFSET, EE_CS) ; sysDelay () ; } SYS_OUT_SHORT (baseaddr + EEPROM_OFFSET, 0x00); /* disable EEPROM */ return retval ; } /* device descriptor */ typedef struct eepro_obj { END_OBJ endObj; UINT32 memBaseCsr; UINT32 ioBaseCsr; INT32 ivec; INT32 ilevel; RxFD* rx_ringp [RX_RING_SIZE] ; CFD* cx_ringp [TX_RING_SIZE] ; UINT16 ee_rom [EE_SIZE] ; INT32 RxIn ; INT32 RxOut ; INT32 RxLast ; INT32 TxIn ; INT32 TxOut ; INT32 rx_mode ; UINT16 phy [2] ; UINT16 advertising ; UINT32 tx_threshold ; } EEPRO_OBJ; #define VENDOR_ID_INTEL 0x8086 #define DEVICE_ID_82259 0x1229 END_OBJ* eeLoad (char* initString) ; STATUS eeStart (EEPRO_OBJ* pCookie) ; LOCAL STATUS eeStop (EEPRO_OBJ* pCookie) ; LOCAL STATUS eeUnload (EEPRO_OBJ* pCookie) ; LOCAL int eeIoctl (EEPRO_OBJ* pCookie, int cmd, caddr_t data) ; LOCAL STATUS eeSend (EEPRO_OBJ* pCookie, M_BLK_ID pMBlk) ; LOCAL STATUS eeMCastAddrAdd (EEPRO_OBJ* pCookie, char* pAddress) ; LOCAL STATUS eeMCastAddrDel (EEPRO_OBJ* pCookie, char* pAddress) ; LOCAL STATUS eeMCastAddrGet (EEPRO_OBJ* pCookie, MULTI_TABLE* pMultiTable) ; LOCAL STATUS eePollSend (EEPRO_OBJ* pCookie, M_BLK_ID pMBlk) ; LOCAL STATUS eePollRcv (EEPRO_OBJ* pCookie, M_BLK_ID pMBlk) ; LOCAL M_BLK_ID eeAddressForm (M_BLK_ID pMBlk, M_BLK_ID pSrcAddress, M_BLK_ID pDstAddress) ; LOCAL STATUS eePacketDataGet (M_BLK_ID pBuff, LL_HDR_INFO* pLinkHdrInfo) ; LOCAL STATUS eePacketAddrGet (M_BLK_ID pMBlk, M_BLK_ID pSrc, M_BLK_ID pDst, M_BLK_ID pESrc, M_BLK_ID pEDst) ; LOCAL void eeResume (EEPRO_OBJ *pCookie) ; LOCAL void eeInterrupt (EEPRO_OBJ* pCookie) ; int mdio_read (long addr, int phy_id, int location) { int val, boguscnt = 64 * 10; /* <64 usec. to complete, typ 27 ticks */ SYS_OUT_LONG (addr + MDICTRL_OFFSET, 0x08000000 | (location << 16) | (phy_id << 21)) ; do { val = SYS_IN_LONG (addr + MDICTRL_OFFSET) ; if (--boguscnt < 0) { printf ("mdio_read() timed out with val = %8.8x.\n", val) ; break ; } } while (! (val & 0x10000000)) ; return val & 0xffff ; } int mdio_write (long addr, int phy_id, int location, int value) { int val, boguscnt = 64 * 10; /* <64 usec. to complete, typ 27 ticks */ SYS_OUT_LONG (addr + MDICTRL_OFFSET, 0x04000000 | (location << 16) | (phy_id << 21) | value) ; do { val = SYS_IN_LONG (addr + MDICTRL_OFFSET) ; if (--boguscnt < 0) { printf ("mdio_write() timed out with val = %8.8x.\n", val) ; break ; } } while (! (val & 0x10000000)) ; return val & 0xffff ; } STATUS eeStart (EEPRO_OBJ* pDrvCtrl) { int result ; long addr = pDrvCtrl->ioBaseCsr ; printf ("In eeStart\n") ; SYS_INT_CONNECT (pDrvCtrl, eeInterrupt, pDrvCtrl, &result) ; if (result == ERROR) { printf ("EEPRO: SYS_INT_CONNECT failed...\n") ; return result ; } SYS_INT_ENABLE (pDrvCtrl, &result) ; if (result == ERROR) { printf ("EEPRO: SYS_INT_ENABLE failed.\n") ; return result ; } /* Set up the Tx queue early.. */ /* sp->cur_tx = 0; sp->dirty_tx = 0; sp->last_cmd = 0; sp->tx_full = 0; spin_lock_init(&sp->lock); sp->in_interrupt = 0; */ /* Fire up the hardware */ SYS_OUT_SHORT (addr + COMMAND_OFFSET, SCB_C_MASKALL) ; eeResume (pDrvCtrl) ; pDrvCtrl->rx_mode = -1 ; /* Invalid -> always reset the mode. */ /* set_rx_mode (pDrvCtrl) ;*/ if ((pDrvCtrl->phy [0] & 0x8000) == 0) pDrvCtrl->advertising = mdio_read (addr, pDrvCtrl->phy [0] & 0x1f, 4) ; /* if (mdio_read (addr, pDrvCtrl->phy [0] & 0x1f, MII_BMSR) & BMSR_LSTATUS) netif_carrier_on (pDrvCtrl) ; else netif_carrier_off (pDrvCtrl) ; */ /* Set the timer. The timer serves a dual purpose: 1) to monitor the media interface (e.g. link beat) and perhaps switch to an alternate media type 2) to monitor Rx activity, and restart the Rx process if the receiver hangs. */ /* sp->timer.expires = RUN_AT((24*HZ)/10); sp->timer.data = (unsigned long)dev; sp->timer.function = &speedo_timer; add_timer(&sp->timer);*/ /* No need to wait for the command unit to accept here. */ if ((pDrvCtrl->phy[0] & 0x8000) == 0) mdio_read (addr, pDrvCtrl->phy[0] & 0x1f, 0) ; return OK ; } LOCAL struct net_funcs EEPRO_FUNCS = { (FUNCPTR) eeStart, (FUNCPTR) eeStop, (FUNCPTR) eeUnload, (FUNCPTR) eeIoctl, (FUNCPTR) eeSend, (FUNCPTR) eeMCastAddrAdd, (FUNCPTR) eeMCastAddrDel, (FUNCPTR) eeMCastAddrGet, (FUNCPTR) eePollSend, (FUNCPTR) eePollRcv, eeAddressForm, eePacketDataGet, eePacketAddrGet } ; END_OBJ* eeLoad (char* initString) { EEPRO_OBJ* eeObj ; int bus ; int dev ; int func ; int *bug; unsigned short ix, iSum ; if (initString == NULL) { return NULL ; } if (initString [0] == 0) { strcpy (initString, "eepro") ; return NULL ; } if (pciFindDevice (VENDOR_ID_INTEL, DEVICE_ID_82259, 1, &bus, &dev, &func) == ERROR) { printf ("EEPRO: Intel EtherExpress Pro NIC not attached...\n") ; return NULL ; } eeObj = (EEPRO_OBJ*) calloc (sizeof (EEPRO_OBJ), 1) ; if (eeObj == NULL) return NULL ; /* initialize the descriptor */ strcpy (eeObj->endObj.devObject.name, "eepro") ; eeObj->endObj.devObject.unit = 0 ; strcpy (eeObj->endObj.devObject.description, "Intel EtherExpress Pro Driver") ; eeObj->endObj.devObject.pDevice = NULL ; eeObj->endObj.pFuncTable = &EEPRO_FUNCS ; /* by default set Promisc. Used in set_rx_mode */ eeObj->endObj.flags |= IFF_PROMISC; /* get the memory mapped csr base address */ pciConfigInLong (bus, dev, func, PCI_CFG_BASE_ADDRESS_0, &eeObj->memBaseCsr) ; eeObj->memBaseCsr &= PCI_MEMBASE_MASK ; /* get the io mapped csr base address */ pciConfigInLong (bus, dev, func, PCI_CFG_BASE_ADDRESS_1, &eeObj->ioBaseCsr) ; eeObj->ioBaseCsr &= PCI_IOBASE_MASK ; /* get the interrupt used */ pciConfigInByte (bus, dev, func, PCI_CFG_DEV_INT_LINE, (UINT8*) &eeObj->ivec) ; eeObj->ilevel = eeObj->ivec ; printf ("MemBase: %x, IOBase: %x, IRQ: %d.\n", eeObj->memBaseCsr, eeObj->ioBaseCsr, eeObj->ivec) ; /* enable mapped memory and io accesses, set as master */ if (pciConfigOutWord (bus, dev, func, PCI_CFG_COMMAND, PCI_CMD_IO_ENABLE | PCI_CMD_MEM_ENABLE | PCI_CMD_MASTER_ENABLE ) == ERROR) { printf ("EEPRO: pciConfigOutWord failed...\n") ; return NULL ; } /* validate the eerom contents and get the mac address */ iSum = 0 ; for (ix = 0; ix < EE_SIZE; ix++) { iSum += eeObj->ee_rom [ix] = rom_read (eeObj->ioBaseCsr, ix) ; } if (iSum != EE_CHECKSUM) { printf ("EEPRO: Checksum match failed. Sum is %X.\n", iSum); return NULL ; } printf ("EEPRO: MACAdd: %.2X-%.2X-%.2X-%.2X-%.2X-%.2X\n", eeObj->ee_rom [0] & 0xFF, eeObj->ee_rom [0] >> 8, eeObj->ee_rom [1] & 0xFF, eeObj->ee_rom [1] >> 8, eeObj->ee_rom [2] & 0xFF, eeObj->ee_rom [2] >> 8) ; if (END_MIB_INIT (&eeObj->endObj, M2_ifType_ethernet_csmacd, (char*) &eeObj->ee_rom [0], 6, END_BUFSIZ, END_SPEED) == ERROR) { printf ("EEPRO: END_MIB_INIT failed.\n") ; return NULL ; } /* eeObj->Sema4 = semBCreate( SEM_Q_FIFO, SEM_FULL ); eeObj->FlagLock = semBCreate( SEM_Q_FIFO, SEM_FULL ); eeObj->Flags = 0; EEPRO_FLAG_SET(eeObj, EEPRO_FLAG_PROMISCUOUS);*/ /* Initialise memory */ if (eeMemInit (eeObj) == ERROR) { printf ("EEPRO: eeMemInit failed.\n") ; return NULL ; } END_OBJ_READY (&eeObj->endObj, IFF_UP | IFF_RUNNING | IFF_NOTRAILERS | IFF_BROADCAST | IFF_MULTICAST | IFF_SIMPLEX | IFF_PROMISC) ; /* parameters for a CmdConfigure operation (82558) */ i82558_config_command.ccByte0 = CONFIG_DATA_SIZE; i82558_config_command.ccByte1 = 8; i82558_config_command.ccByte2 = 0; i82558_config_command.ccByte3 = 1; i82558_config_command.ccByte4 = 0; /* will set this later */ i82558_config_command.ccByte5 = 0; /* will set this later */ i82558_config_command.ccByte6 = 0x32; i82558_config_command.ccByte7 = 0x03; i82558_config_command.ccByte8 = 0x01; i82558_config_command.ccByte9 = 0; i82558_config_command.ccByte10 = 0x2E; i82558_config_command.ccByte11 = 0; i82558_config_command.ccByte12 = 0x60; i82558_config_command.ccByte13 = 0x08; i82558_config_command.ccByte14 = 0x88; i82558_config_command.ccByte15 = 0x68; i82558_config_command.ccByte16 = 0; i82558_config_command.ccByte17 = 0x40; i82558_config_command.ccByte18 = 0xF2; i82558_config_command.ccByte19 = 0x84; i82558_config_command.ccByte20 = 0x31; i82558_config_command.ccByte21 = 0x05; return &eeObj->endObj ; } /* PHY media interface chips. */ enum phy_chips { NonSuchPhy = 0, I82553AB, I82553C, I82503, DP83840, S80C240, S80C24, I82555, DP83840A = 10 } ; M_CL_CONFIG eeMclBlkConfig ; CL_DESC eeClDescTbl ; /* Allocate memory for all buffers */ /* Each cluster will be size of max (sizeof(RxFD), sizeof(CFD)) */ STATUS eeMemInit (EEPRO_OBJ* pDrvCtrl) { int count; RxFD* lst_buf_R; CFD* lst_buf_T; unsigned int size; CL_POOL_ID ClPoolId; char* pMem ; int i ; /* memory for net pool */ if ((pDrvCtrl->endObj.pNetPool = (NET_POOL_ID) malloc (sizeof (NET_POOL))) == NULL) { printf ("EEPRO: malloc for net pool failed...\n") ; return ERROR ; } eeMclBlkConfig.mBlkNum = RX_RING_SIZE + TX_RING_SIZE; eeMclBlkConfig.clBlkNum = eeMclBlkConfig.mBlkNum; /* Calculate the total memory for all the M-Blks and CL-Blks. */ eeMclBlkConfig.memSize = (eeMclBlkConfig.mBlkNum * (M_BLK_SZ + sizeof (long))) + (eeMclBlkConfig.clBlkNum * (CL_BLK_SZ + sizeof(long))); if ((eeMclBlkConfig.memArea = (char*) memalign (sizeof (long), eeMclBlkConfig.memSize)) == NULL) { printf ("EEPRO: memalign for mblks and cblks failed...\n") ; return ERROR; } /* Check if cache coherent memory is available */ if (! CACHE_DMA_IS_WRITE_COHERENT ()) { printf ("EEPRO: cache coherent memory is not there...\n"); return ERROR; } /* Calculate the memory size of the clusters. */ size = (sizeof (RxFD) > sizeof (CFD)) ? sizeof (RxFD) : sizeof (CFD); size = (size + sizeof (long) - 1) & ~(sizeof (long) - 1) ;/* So that cluster you get will be aligned */ eeClDescTbl.clSize = size ; eeClDescTbl.clNum = eeMclBlkConfig.mBlkNum; eeClDescTbl.memSize = eeClDescTbl.clNum * (eeClDescTbl.clSize + sizeof(long)) ; pMem = (char*) cacheDmaMalloc (eeClDescTbl.memSize) ; if (pMem == (char*) NULL) { printf ("EEPRO: cacheDmaMalloc failed...\n") ; return ERROR; } bzero (pMem, eeClDescTbl.memSize) ; eeClDescTbl.memArea = pMem ; /* Initialize the memory pool */ if (netPoolInit (pDrvCtrl->endObj.pNetPool, &eeMclBlkConfig, &eeClDescTbl, 1, NULL) == ERROR) { printf ("EEPRO: netPoolInit failed. size = %d...\n", size) ; return ERROR; } /* form the ring buffers */ if ((ClPoolId = netClPoolIdGet (pDrvCtrl->endObj.pNetPool, size, FALSE)) == NULL) { printf ("EEPRO: Cluster Pool not found...\n") ; return ERROR ; } /* fill up the receive ring buffers */ lst_buf_R = (RxFD*) NULL ; for (count = 0; count < RX_RING_SIZE; count++) { RxFD *pTemp; if ((pTemp = (RxFD*) netClusterGet (pDrvCtrl->endObj.pNetPool, ClPoolId)) == NULL) { printf("EEPRO: netClusterGet failed for receive buffer...\n") ; return ERROR ; } /* fill up the each buffer in ring with initialization */ pDrvCtrl->rx_ringp [count] = pTemp ; pDrvCtrl->rx_ringp [count]->rfdStatus = 0x0000 ; pDrvCtrl->rx_ringp [count]->rfdCommand = 0x0000 ; if (lst_buf_R) { lst_buf_R->link = pDrvCtrl->rx_ringp [count] ; } pDrvCtrl->rx_ringp [count]->pRBD = NULL ; /* Using simplified mode */ pDrvCtrl->rx_ringp [count]->bufSize = EH_SIZE + ETHERMTU ; lst_buf_R = pDrvCtrl->rx_ringp [count] ; } lst_buf_R->rfdCommand = RFD_C_SUSP | RFD_C_EL; /* mark last one as end of list */ lst_buf_R->link = pDrvCtrl->rx_ringp [0]; /* Make it a ring */ pDrvCtrl->RxLast = RX_RING_SIZE - 1 ; pDrvCtrl->RxIn = 0 ; pDrvCtrl->RxOut = 0 ; /* Initialize the transmit ring buffers (we are not filling the packet buffer) */ for (count = 0; count < TX_RING_SIZE; count++) { CFD *pTemp; if ((pTemp = (CFD*) netClusterGet (pDrvCtrl->endObj.pNetPool, ClPoolId)) == NULL) { printf("EEPRO: netClusterGet failed for command buffer...\n"); return ERROR ; } pDrvCtrl->cx_ringp [count] = (CFD*) pTemp ; pDrvCtrl->cx_ringp [count]->cfdStatus = 0x0000 ; /* Should be filled before transmit */ pDrvCtrl->cx_ringp [count]->cfdCommand = 0x0000 ; /* Should be filled before transmit */ if (lst_buf_T) { lst_buf_T->link = pDrvCtrl->cx_ringp [count] ; } lst_buf_T = pDrvCtrl->cx_ringp [count] ; } lst_buf_T->link = pDrvCtrl->cx_ringp [0] ; pDrvCtrl->TxOut = 0 ; pDrvCtrl->TxIn = 0 ; /* perform a reset */ SYS_OUT_LONG (pDrvCtrl->ioBaseCsr + PORT_OFFSET, PORT_RESET) ; SYS_IN_LONG (pDrvCtrl->ioBaseCsr + PORT_OFFSET) ; for (count = 0; count < 10; count++) sysDelay () ; if (pDrvCtrl->ee_rom [3] & 0x0100) printf ("Product: OEM i82557/i82558 10/100 Ethernet\n") ; /* perform a system self-test. */ { volatile long* self_test_results; int option = 0x10 ; /* must be 16 bytes aligned */ pMem = (char*) cacheDmaMalloc (sizeof (long) * 2 + 15) ; if (pMem) { if ((pDrvCtrl->ee_rom [3] & 0x03) != 0x03) printf ("Receiver lock-up bug exists -- enabling work-around.\n") ; if (((pDrvCtrl->ee_rom [6] >> 8) & 0x3f) == DP83840 || ((pDrvCtrl->ee_rom [6] >> 8) & 0x3f) == DP83840A) { int mdi_reg23 = mdio_read (pDrvCtrl->ioBaseCsr, pDrvCtrl->ee_rom [6] & 0x1f, 23) | 0x0422 ; if (congenb) mdi_reg23 |= 0x0100 ; printf ("DP83840 specific setup, setting register 23 to %4.4x.\n", mdi_reg23) ; mdio_write (pDrvCtrl->ioBaseCsr, pDrvCtrl->ee_rom [6] & 0x1f, 23, mdi_reg23) ; } if ((option >= 0) && (option & 0x70)) { printf ("Forcing %d Mbps %s-duplex operation.\n", (option & 0x20 ? 100 : 10), (option & 0x10 ? "full" : "half")) ; mdio_write (pDrvCtrl->ioBaseCsr, pDrvCtrl->ee_rom [6] & 0x1f, 0, ((option & 0x20) ? 0x2000 : 0) | ((option & 0x10) ? 0x0100 : 0)) ; } self_test_results = (long*) ((((long) pMem) + 15) & ~15); self_test_results[0] = 0; self_test_results[1] = -1; SYS_OUT_LONG (pDrvCtrl->ioBaseCsr + PORT_OFFSET, (long) self_test_results | PORT_SELFTEST) ; count = 16000 ; do { for (i = 0; i < 10; i++) sysDelay(); } while (self_test_results[1] == -1 && --count >= 0); if (count < 0) { printf ("EEPRO: Self test failed, status %8.8x...\n" "EEPRO: Failure to initialize the i82557...\n" "EEPRO: Verify that the card is a bus-master...\n" "EEPRO: capable slot...\n", self_test_results[1]); } else { printf ("EEPRO: Self-test: %s...\n" "EEPRO: Serial sub-system: %s...\n" "EEPRO: Internal registers: %s...\n" "EEPRO: ROM checksum: %s (%#8.8x)...\n", self_test_results[1] & 0x1000 ? "FAIL" : "PASS", self_test_results[1] & 0x0020 ? "FAIL" : "PASS", self_test_results[1] & 0x0008 ? "FAIL" : "PASS", self_test_results[1] & 0x0004 ? "FAIL" : "PASS", self_test_results[0]); } cacheDmaFree (pMem) ; } else { printf ("EEPRO: failed to allocate memory for self test...\n") ; } } SYS_OUT_LONG (pDrvCtrl->ioBaseCsr + PORT_OFFSET, PORT_RESET) ; SYS_IN_LONG (pDrvCtrl->ioBaseCsr + PORT_OFFSET) ; for (i = 0; i < 10; i++) sysDelay () ; pDrvCtrl->phy [0] = pDrvCtrl->ee_rom [6] ; pDrvCtrl->phy [1] = pDrvCtrl->ee_rom [7] ; /* init_timer (&sp->timer); sp->rx_bug = (eeprom[3] & 0x03) == 3 ? 0 : 1; if (((pdev->device > 0x1030 && (pdev->device < 0x1039))) || (pdev->device == 0x2449)) { sp->chip_id = 1; } if (sp->rx_bug) printf(" Receiver lock-up workaround activated.\n");*/ return OK; } LOCAL STATUS eeUnload (EEPRO_OBJ* pCookie) { /* release the mBlk, clBlk memory */ free(eeMclBlkConfig.memArea); netPoolDelete(pCookie->endObj.pNetPool); free(pCookie->endObj.pNetPool); free(pCookie); return OK; } LOCAL STATUS eeIoctl (EEPRO_OBJ* pCookie, int cmd, caddr_t data) { int error = 0 ; long value ; EEPRO_OBJ* eeObj = (EEPRO_OBJ*) pCookie ; switch (cmd) { case EIOCSADDR : if (data == NULL) return EINVAL ; /* bcopy ((char*) data, (char *) END_HADDR (&eeObj->endObj), END_HADDR_LEN (&eeObj->endObj)) ;*/ printf ("EEPRO: In ioctl, cmd=EIOCSADDR.\n") ; break ; case EIOCGADDR : if (data == NULL) return EINVAL ; /* bcopy ((char*) END_HADDR (&eeObj->endObj), (char*) data, END_HADDR_LEN (&eeObj->endObj)) ;*/ printf ("EEPRO: In ioctl, cmd=EIOCGADDR.\n") ; break ; case EIOCSFLAGS : value = (long) data ; if (value < 0) { value = -(--value) ; END_FLAGS_CLR (&eeObj->endObj, value) ; } else { END_FLAGS_SET (&eeObj->endObj, value) ; } /* eeConfig (eeObj) ;*/ printf ("EEPRO: In ioctl, cmd=EIOCSFLAGS.\n") ; break ; case EIOCGFLAGS : *(int*) data = END_FLAGS_GET (&eeObj->endObj) ; printf ("EEPRO: In ioctl, cmd=EIOCGFLAGS.\n") ; break ; case EIOCPOLLSTART : printf ("EEPRO: In ioctl, cmd=EIOCPOLLSTART.\n") ; /* return eePollStart (eeObj) ;*/ case EIOCPOLLSTOP : printf ("EEPRO: In ioctl, cmd=EIOCPOLLSTOP.\n") ; /* return eePollStop (eeObj) ;*/ case EIOCGMIB2 : if (data == NULL) return EINVAL ; bcopy ((char*) &eeObj->endObj.mib2Tbl, (char*) data, sizeof (eeObj->endObj.mib2Tbl)) ; printf ("EEPRO: In ioctl, cmd=EIOCGMIB2.\n") ; break ; case EIOCGFBUF : if (data == NULL) return EINVAL ; /* *(int*) data = EEPRO_MIN_FBUF ;*/ printf ("EEPRO: In ioctl, cmd=EIOCGFBUF.\n") ; break ; default : error = EINVAL ; printf ("EEPRO: In ioctl (default), cmd=%x.\n", cmd) ; } return error ; } LOCAL STATUS eeSend (EEPRO_OBJ *pCookie, M_BLK_ID pMBlk) { return OK ; } LOCAL STATUS eeStop (EEPRO_OBJ* pCookie) { int result; SYS_OUT_SHORT (pCookie->ioBaseCsr + COMMAND_OFFSET, SCB_C_MASKALL) ; SYS_INT_DISCONNECT (pCookie, pCookie, eeObj, &result); return OK ; } LOCAL STATUS eePollSend (EEPRO_OBJ* pCookie, M_BLK_ID pMBlk) { printf ("EEPRO: In eePollSend()") ; return ERROR ; } LOCAL int eePollRcv (EEPRO_OBJ* pCookie, M_BLK_ID pMBlk) { printf ("EEPRO: In eePollRcv()") ; return ERROR ; } LOCAL STATUS eeMCastAddrAdd (EEPRO_OBJ* eeObj, char* pAddress) { int error ; /* if ((error = etherMultiAdd (&eeObj->endObj.multiList, (char*) pAddress)) == ENETRESET) eeConfig (eeObj) ;*/ printf ("EEPRO: In eeMCastAddrAdd()\n") ; return error ; } LOCAL STATUS eeMCastAddrDel (EEPRO_OBJ* eeObj, char* pAddress) { int error ; /* if ((error = etherMultiDel (&eeObj->endObj.multiList, (char*) pAddress)) == ENETRESET) eeConfig (eeObj) ;*/ printf ("EEPRO: In eeMCastAddrDel()\n") ; return OK ; } LOCAL STATUS eeMCastAddrGet (EEPRO_OBJ* eeObj, MULTI_TABLE* pMultiTable) { return etherMultiGet (&eeObj->endObj.multiList, pMultiTable) ; } LOCAL M_BLK_ID eeAddressForm (M_BLK_ID pMBlk, M_BLK_ID pSrcAddress, M_BLK_ID pDstAddress) { return OK ; } LOCAL STATUS eePacketDataGet (M_BLK_ID pBuff, LL_HDR_INFO* pLinkHdrInfo) { return OK ; } LOCAL STATUS eePacketAddrGet (M_BLK_ID pMBlk, M_BLK_ID pSrc, M_BLK_ID pDst, M_BLK_ID pESrc, M_BLK_ID pEDst) { return OK ; } LOCAL void eeInterrupt (EEPRO_OBJ* pCookie) { volatile UINT16 status = 0 ; printf ("In eeInterrupt") ; status = SYS_IN_SHORT (pCookie->ioBaseCsr + STATUS_OFFSET) ; /* Acknowledge all of the current interrupt sources ASAP. */ /* Will change from 0xfc00 to 0xff00 when we start handling FCP and ER interrupts */ SYS_OUT_SHORT (pCookie->ioBaseCsr + STATUS_OFFSET, status & 0xFC00) ; /* if ((status & SCB_S_STATMASK) == 0) break ;*/ if (status & SCB_S_FR) /* frame is received */ { printf ("Received a frame...\n") ; } else { printf ("status value is: %X\n", status) ; } } /* Start the chip hardware after a full reset. */ LOCAL void eeResume (EEPRO_OBJ* pCookie) { int i ; long baseaddr = pCookie->ioBaseCsr ; /* Start with a Tx threshold of 256 (0x..20.... 8 byte units). */ pCookie->tx_threshold = 0x01208000 ; wait_for_cmd_done (baseaddr + COMMAND_OFFSET) ; SYS_OUT_LONG (baseaddr + POINTER_OFFSET, 0) ; SYS_IN_LONG (baseaddr + POINTER_OFFSET) ; for (i = 0; i < 10; i++) sysDelay () ; /* RU base address */ SYS_OUT_BYTE (baseaddr + COMMAND_OFFSET, SCB_C_RULDBASE) ; wait_for_cmd_done (baseaddr + COMMAND_OFFSET) ; /* CU base address */ SYS_OUT_BYTE (baseaddr + COMMAND_OFFSET, SCB_C_CULDBASE) ; wait_for_cmd_done (baseaddr + COMMAND_OFFSET) ; /* Load the rx ring address */ SYS_OUT_LONG (baseaddr + POINTER_OFFSET, (long) pCookie->rx_ringp [pCookie->RxIn]) ; wait_for_cmd_done (baseaddr + COMMAND_OFFSET) ; /* start the RU */ SYS_OUT_BYTE (baseaddr + COMMAND_OFFSET, SCB_C_RUSTART) ; wait_for_cmd_done (baseaddr + COMMAND_OFFSET) ; /* { struct descriptor *ias_cmd; ias_cmd = (struct descriptor *)&sp->tx_ring[sp->cur_tx++ % TX_RING_SIZE]; ias_cmd->cmd_status = cpu_to_le32((CmdSuspend | CmdIASetup) | 0xa000); ias_cmd->link = cpu_to_le32(TX_RING_ELEM_DMA(sp, sp->cur_tx % TX_RING_SIZE)); memcpy(ias_cmd->params, dev->dev_addr, 6); sp->last_cmd = ias_cmd; } wait_for_cmd_done(baseaddr + SCBCmd); outl(TX_RING_ELEM_DMA (sp, sp->dirty_tx % TX_RING_SIZE), ioaddr + SCBPointer); */ SYS_OUT_SHORT (baseaddr + COMMAND_OFFSET, SCB_C_EARLYRX | SCB_C_FLWCTRL) ; wait_for_cmd_done (baseaddr + COMMAND_OFFSET) ; } --------------------------- Newsgroups: comp.os.vxworks Subject: Re: rngbuf overflow! help me Date: 8 Jun 2002 07:31:31 -0700 From: liu_xx@sina.com (kent liu) Organization: http://groups.google.com/ Message-ID: References: Mike Anderson wrote in message news:... > VxWorks Greetings! > > On Fri, 07 Jun 2002 04:42:44 -0400, kent liu wrote: > > > I used 3c905b in PentiumPro tornado2. It works well when send the > > packets > > directly, but very bad when bidirectly. It tell me "netJobAdd > > (el3c90xIntrRx) failed" and "netJobAdd: ring buffer overflow!" Can > > anyone give me a help! > > > The tNetTask is run at task level to service the packets once > the ISR has finished. The Ethernet ISR will call netJobAdd and > that will add a function call to the ring buffer that the > tNetTask reads. As it reads one of these entries, it performs > the function indicated, then goes and reads the next function > call and executes that, etc. Very similar to a deferred procedure > call in Win32 or a tasklet/bottom half in Linux. Except that > this function call happens at task level. > > What is happening here is that tNetTask is not getting a chance > to run and work the netJobAdd queue off. This typically happens > when you have a task running at a priority > tNetTask (usually > 50). This high priority task is eating all of the CPU and > preventing tNetTask from running, hence the overflow. > > Look for user tasks with a priority > 50 and lower them. > > HTH, > > Mike Anderson > > -- > > ======================================================= > T h e P T R G r o u p, I n c. > ======================================================= > Embedded, Real-Time Solutions and Training > > Mike Anderson mailto:mike@ThePTRGroup.com > Chief Scientist http://www.ThePTRGroup.com > C: (703) 585-9384 V: (703) 430-3748 > ======================================================= > "Software development is like making a baby... > You can't make a baby in one month by impregnating > nine women. Some things just take time." Thanks in the first. I had checked the other task. There are just a task's priority > 50, and I believe it can't eat too much CPU. I think the network card's drvier isn't so good. When I delete the el3c90xRxKick() in receive interrupt, it seems better. But why is it so? --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Post Mortem debugging Date: Sat, 08 Jun 2002 17:07:19 GMT From: Ricky West Organization: Road Runner - NC Message-ID: <3D02396B.C8B4DB59@nc.rr.com> References: <3cff6a33.178721778@news.randori.com> <3cff7cba.183464768@news.randori.com> On a previous project we hooked into taskSwitchHook() and recorded that incoming and outgoing tcbs and stack back trace for each task. This was kept in a ringbuffer preserving only the last 50 tasks. In addition, we had written our own exception reporting from our software and had hooked into kernel exception handling to record the entire set of tasks into a storage buffer. Upon every system start, this postmortem data was written to disk prior to releasing the system to the application. The memory we used was above sysPhysMemTop(). We told VxWorks via the lcf and the makefiles that it had 2 Mbytes less memory to use. The memory was preserved as long as the unit did not take a loss of power. A valid buffer was identified by a cookie mechanism. We tried the WindView postmortem capability but abandoned it for our application. Our application used dynamic task creation for alot of it services. This resulted in an error being reported after a period of execution when it could no longer record the names in the taskName portion of the postmortem. Also, if you are running a postmortem windview, you cannot also run a manually invoked windview session of any kind at the same time. --------------------------- Newsgroups: comp.os.vxworks Subject: Re: pipe writes Date: 8 Jun 2002 10:58:28 -0700 From: john_94501@yahoo.com (John) Organization: http://groups.google.com/ Message-ID: <488e459a.0206080958.2ace184@posting.google.com> References: <488e459a.0206060942.2408fb2d@posting.google.com> Hello, "Leonid Rosenboim" wrote in message news:... > Select() is anoe other VxWorks facility I would not recommend anyone > should use, unless they are doing a quick and dirty port of Unix code. > Select()'s performance is miserable, and it has got severe limitation wrt > number of file descriptors. This is one of the (many) myths that are perpetuated about VxWorks that simply don't hold up to examination. In what way do you think that the performance of select is "miserable?" The select routine is a very good interface for timing out on reads from fds (something not available with the standard read() interface), and for listening of a few fds, perhaps, as in the original poster's case, a mix of fd types. If the plan is to listen on many fds, then I would suggest reconsidering the design of the system (irrespective of the OS, btw). select() does not scale up well, but for what it was intended it is very useful, and certainly not something that needs to be avoided in VxWorks. For large numbers of fds, there are better alternatives; in the VxWorks case, using separate tasks for each fd generally works well. > But if you are in your Unix mood, using select(0 and pipe, then why dont > you also use POSIX timers and signal handlers to send that message which > needs to be send on timeout ? That's a much more complex design, and for no reason. the original poster's idea of using select will work well. Although, if the watchdog is just being use to time-out the other fds, perhaps it would be better to use the timeout capability in select() directly... > At lrase if there are higher priority tasks with true RT responssiveness, > you wont be holding up the sysClk hander for as long as you do with the > pipe write function. The pipe write is nothing more than a call to msgQSend() with the NO_WAIT timeout. So, as long as the plan is only to write a small amount of data into the pipe, it should show negligible difference to a direct call to msgQSend(). Of course, it will also be giving the select semaphore if there is a task selecting on the pipe fd. HTH, John... > "MK" wrote in message > news:ug25bnidhqu4ad@corp.supernews.com... > > Message queues cannot be used with a select() call. I basically have a > task > > waiting in select() on either the arrival of a packet on a socket, or an > > arrival of a message in the pipe. The write to pipe is performed by the > > callback function of the watchdog timer. > > > > > > "Leonid Rosenboim" wrote in message > > news:newscache$b2qbxg$mha$1@lnews.actcom.co.il... > > > Yep, it seems my VxWorks becomes rusty, trouble is I dont have the > VxWorks > > > manuals around anymore, will try to download one off the web site, if > there > > > is one. > > > > > > On the other hand, I have never used pipe writes from ISR, don't think > it > is > > > a good idea. I/O subsystem and pipe overhead is too much (to my taste) > for > > > an ISR code, so I would recommend using message queue directly from an > ISR, > > > not pipe, allowed or not. > > > > > > - Leonid > > > > > > "John" wrote in message > > > news:488e459a.0206060942.2408fb2d@posting.google.com... > > > > "Leonid Rosenboim" wrote in message > news:... > > > > > > > > [stuff deleted] > > > > > > > > > Pipe or any other write() is not one of the allowed functions. > > > > > > > > Not true; there is a special exception for write() when it is to a > > > > pipeDrv device (see page 87 of the VxWorks 5.4 Programmer's Guide > > > > where the allowed functions for an ISR are listed). RTFM ;-) > > > > > > > > Rgds, > > > > > > > > John... > > > > > > > > > > --------------------------- Newsgroups: comp.os.vxworks Subject: Re: WDB-rpc error Date: Sat, 08 Jun 2002 20:02:59 GMT From: "drdiags" Organization: AT&T Broadband Message-ID: References: <3CFC0BAE.903C816A@tellabs.com> <70d78653.0206041516.17a23802@posting.google.com> <3D011E67.583079F6@tellabs.com> Hello Eric, The reason I said to look at the kernel configuration was to make sure that your target server and kernel configuration agreed. If the kernel was configured to use serial port and the target server END/Network..., but as you state it appears to work sometimes, so that theory doesn't hold water. The -m option can be set from the target server IDE configuration or adding it to your script doing something like this: tgtsvr.exe pcServer -n pcs1 -V -m 4194304 -B wdbrpc -Bt 60 -Br 2 -R e:\ -RW -c E:\proj\pcServer\default\vxWorks The reason I asked about DHCP Server is that this is a problem with T2.0/DHCP Server/WDB Agent using END because of the use of the SNARF method by both and only one SNARF allowed. This changed in T2.0.2. Core files match what's on the target versus what is being pointed to by the target server? What does your target server line look like? Pass the frustration on to your WRS support engineer, maybe he/she can extract a clue that can get you over the hump. Good luck and relax if you can...... "Eric Geelen" wrote in message news:3D011E67.583079F6@tellabs.com... > I've become quite frustrated with this situation. Usually it is only an issue with Singlestep > but this afternoon another developer sent me a log saying that the timeout occurred trying to > start the Tornado Browser. > > This is the output she saw: > >>>>>>>>>>>>>>>> > Killing this session log viewer will not kill the Target Server. > > Current session log is available in: > /home/tlabas-2/aovermye/.wind/launchLog.GCU_TEST_SW12 > > Command: tgtsvr 172.17.55.122 -V -n GCU_TEST_SW12 -B wdbrpc -f elf -c /vobs/gu.elf -Root > {$HOME/stuff} > > tgtsvr.ex (GCU_TEST_SW12@sunsw12-121): Fri Jun 7 14:35:10 2002 > Connecting to target agent... succeeded. > Attaching C++ interface... succeeded. > Attaching elf OMF reader for PPC CPU family... succeeded. > Warning: Target server cache for agent memory is full. > Use the '-m' option to increase the target server cache. > Warning: Can't checksum core file, length is not valid. > > tgtsvr.ex (GCU_TEST_SW12@sunsw12-121): Fri Jun 7 14:37:09 2002 > Error: rpccore backend client RPC: Timed out > > tgtsvr.ex (GCU_TEST_SW12@sunsw12-121): Fri Jun 7 14:37:12 2002 > Error: rpccore backend client RPC: Timed out > >>>>>>>>>>>>>>>>> > > Anyone know what the reference to using the '-m' is? I tried adding it to the tgtsvr command > line with no effect. > > Thanks, eh! > > Eric. > > BTW, drdiags ( Frederic?) I did try setting a different name for the target, or even just > choosing a different IP address. At first I thought it would be a suitable workaround, but it > doesn't always work. I'll look into the WDB configuration in the kernel, but if these weren't > correctly set, would it work at all? > > > Hsing Yuan wrote: > > > We have the same problem. From time to time, the target server will > > time out, and the connection breaks up. It has never worked well. I > > do notice that sometimes the console prints "recv: Error" or something > > like that. If anyone has the solution, please let us know too. > > > > Thanks > > > > Hsing Yuan > > > > "drdiags" wrote in message news:... > > > Hello Eric, > > > > > > Not sure, but the version of vxWorks/Tornado you are using could be in > > > play. You > > > mention that this worked before, so you don't have a DHCP server running, > > > which > > > could be taking the only available SNARF protocol in pre T2.0.2 for PPC. You > > > are > > > sure the kernel is using END or Network for the WDB agent. How about the > > > target server line? You might want to use the logging for WTX/Backend > > > communication > > > in case this may shed some light. Do you have a target shell installed? I am > > > from the > > > pre-GUI days and I absolutely need to have the visibility that the target > > > shell gives me. > > > Plus, I always will build in the symbol table in case networking goes awry > > > during the > > > downloadable symbol table load, it is too late to bite me. Are you using the > > > target's IP address or a name which is known to your DNS/NIS server? Well, I > > > have ran out of the obvious WAGs. (are you building from the IDE or from the > > > command line?) Could you put a telnet server on your board to verify the > > > networking? Good luck...... > > > > > > "Eric Geelen" wrote in message > > > news:3CFC0BAE.903C816A@tellabs.com... > > > > Help! > > > > > > > > We're developing a PPC8260 application using the tornado tools and > > > > Singlestep debugger. When trying to attach the solaris Host-based > > > > target-server to the WDBagent running on the target board: > > > > > > > > > > > > tgtsvr.ex (FW17GCU-A@sunx214): Mon Jun 3 19:01:40 2002 > > > > Connecting to target agent... > > > > Error: rpccore backend client RPC: Timed out > > > > failed. > > > > Connecting to target agent... > > > > Error: rpccore backend client RPC: Timed out > > > > failed. > > > > > > > > > > > > I've tried resetting each element of my environment, the target board, > > > > the host workstation, and even tried starting a local copy of the > > > > tornado_registry... all to no avail. > > > > > > > > I've been using scripts for my environment and setup, so I'm pretty sure > > > > everything is set up as before (when things were working fine). > > > > > > > > I checked Windriver's dB for similar issues and I found 8 TSR/Forum > > > > message chains asking similar questions, only 2 were given any kind of > > > > suggested solutions, neither solution helped me. (one was reset > > > > everything, the other was a Win/NT based solution). > > > > > > > > Has anyone out there been able to isolate this issue? Any success making > > > > it go away? > > > > > --------------------------- Newsgroups: comp.os.vxworks Subject: Re: usrBootLineInit is not called !? Date: Sat, 08 Jun 2002 13:32:10 -0700 From: Rajesh Tripathi Organization: Globix Corp. Message-ID: <3D0269CA.BB0A2931@com21.com> References: " emdezpk@yahoo.ca (Duke Skylurker)" wrote: > Hi, > > In my prjConfig.c > > there is call "usrBootLineParse(BOOT_LINE_ADRS);" > but there is no "usrBootLineInit(sysStartType);" > > so boot line is not initialized with DEFAULT_.. > > I have INCLUDE_BOOT_LINE_INIT parameter. > > What am I missing? > > Thanks, > Duke S usrBootLineInit is called inside useBootLineParse. Look into usrBootLine.c file. DEFAULT_BOOT_LINE is used when startType is BOOT_CLEAR ot bootline is clean and nvram is not present. Rajesh --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Urgent News Flash Date: Sat, 08 Jun 2002 20:14:02 -0400 From: joe durusau Organization: WEBUSENET.com Message-ID: <3D029DC9.DECED07A@bellsouth.net> References: <09060209.2826@novaresponse.com.au> Isn't there any way to get this damn spammer to SHUT UP??? With all the virus-writers available out there, couldn't someone design a virus to attack am sending a msg with the header line " URGENT NEWSFLASH" ??? Adndrew@novaresponse.com.au wrote: > URGENT NEWSFLASH > > The government has installed BLACK BOXES into ISPs to watch your > Internet surfing. > > When you are targeted, the first you will know is the KNOCK AT YOUR > DOOR and the JAIL SENTENCE. > > If you think you have cleaned your computer - you are WRONG. > > They can recover from your PC every single picture or item you have > ever watched on the Internet. > > You need protection. You need an Evidence Eliminator. > > Click Here. > > http://www.geocities.com/teste99ee/clean.html --------------------------- Newsgroups: comp.os.vxworks Subject: Booting and dosFs Date: Sun, 09 Jun 2002 02:29:39 GMT From: "weddick" Organization: AT&T Broadband Message-ID: We switch to the dosFs 2.0 file system (~ 2 year ago). At that time there was no support to format the drive as fat32 and install the boot loader vxsys. Has this been corrected? Or is there another way to get the system to boot vxworks with a fat32 file system. Thanks, --------------------------- Newsgroups: comp.os.vxworks Subject: Why I can't use the "@cd" command in shell Date: 8 Jun 2002 20:10:04 -0700 From: svczjh@sbell.com.cn (Eric) Organization: http://groups.google.com/ Message-ID: I have file system on the target but I can't use "cd" to get to the directory of target so I use the "@cd" but the shell tell me "undefined symbol: cd@" have I forgotten to include something or set something Any message will be appreciated. --------------------------- Newsgroups: comp.os.vxworks Subject: Tornado compiler for 7410 ??? Date: 8 Jun 2002 20:42:31 -0700 From: routerdesign@yahoo.com (James Moor) Organization: http://groups.google.com/ Message-ID: <97126c1a.0206081942.5bba07d@posting.google.com> Hello, We are using Tornado 2.0 for PPC 750 and will change to 7410 soon. If we don't use the Altivec function,is it still necessary for us to buy the new compiler from WRS?And if not,which compile option should we use(PPC604)? Any comments on it would be greately appreciated. Cheers. --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Booting and dosFs Date: Sun, 09 Jun 2002 05:28:17 GMT From: "Leonid Rosenboim" Organization: Verio Message-ID: References: The reason you where not able to boot off a FAT32 partition with VXSYS boot loader is because at the time DosFs2.0 was developed, there where no PC motherboards with BIOS that supported FAT32. The role of VXSYS is to use BIOS to load the boot image into memory. Now most new motherboards have FAT32 support in BIOS, so this should be possible, but I am not aware of anyrecent developments to enable this. - - Leonid Rosenboim "weddick" wrote in message news:m4zM8.141512$cQ3.3809@sccrnsc01... > We switch to the dosFs 2.0 file system (~ 2 year ago). At that time there > was no support to format the drive as fat32 and install the boot loader > vxsys. Has this been corrected? Or is there another way to get the system > to boot vxworks with a fat32 file system. > > Thanks, > > --------------------------- Newsgroups: comp.os.vxworks Subject: Re: pipe writes Date: Sun, 09 Jun 2002 05:36:35 GMT From: "Leonid Rosenboim" Organization: Verio Message-ID: References: <488e459a.0206060942.2408fb2d@posting.google.com> <488e459a.0206080958.2ace184@posting.google.com> My comments regarding performance of select() is due to real benchmarking I had to do, as a result of customers complaining. The customer was a company doing an H.323 stack. This was circa 1995, and I have repeated the test in 1999 for my own purposes. It is not a myth, it is one case of bad implementation of a good idea, and persistent refusal of WRS to admit and correct their mistakes. Just look how many TSRs there where opened about select() performance and support of larger number of file descriptors, and how much could have been saved if instead of denying the issues, they where fixed, e.g. with SENS 1.0 ? "John" wrote in message news:488e459a.0206080958.2ace184@posting.google.com... > Hello, > > "Leonid Rosenboim" wrote in message news:... > > Select() is anoe other VxWorks facility I would not recommend anyone > > should use, unless they are doing a quick and dirty port of Unix code. > > Select()'s performance is miserable, and it has got severe limitation wrt > > number of file descriptors. > > This is one of the (many) myths that are perpetuated about VxWorks > that simply don't hold up to examination. In what way do you think > that the performance of select is "miserable?" > > The select routine is a very good interface for timing out on reads > from fds (something not available with the standard read() interface), > and for listening of a few fds, perhaps, as in the original poster's > case, a mix of fd types. > > If the plan is to listen on many fds, then I would suggest > reconsidering the design of the system (irrespective of the OS, btw). > select() does not scale up well, but for what it was intended it is > very useful, and certainly not something that needs to be avoided in > VxWorks. For large numbers of fds, there are better alternatives; in > the VxWorks case, using separate tasks for each fd generally works > well. > > > But if you are in your Unix mood, using select(0 and pipe, then why dont > > you also use POSIX timers and signal handlers to send that message which > > needs to be send on timeout ? > > That's a much more complex design, and for no reason. the original > poster's idea of using select will work well. Although, if the > watchdog is just being use to time-out the other fds, perhaps it would > be better to use the timeout capability in select() directly... > > > At lrase if there are higher priority tasks with true RT responssiveness, > > you wont be holding up the sysClk hander for as long as you do with the > > pipe write function. > > The pipe write is nothing more than a call to msgQSend() with the > NO_WAIT timeout. So, as long as the plan is only to write a small > amount of data into the pipe, it should show negligible difference to > a direct call to msgQSend(). Of course, it will also be giving the > select semaphore if there is a task selecting on the pipe fd. > > HTH, > > John... > > > "MK" wrote in message > > news:ug25bnidhqu4ad@corp.supernews.com... > > > Message queues cannot be used with a select() call. I basically have a > > task > > > waiting in select() on either the arrival of a packet on a socket, or an > > > arrival of a message in the pipe. The write to pipe is performed by the > > > callback function of the watchdog timer. > > > > > > > > > "Leonid Rosenboim" wrote in message > > > news:newscache$b2qbxg$mha$1@lnews.actcom.co.il... > > > > Yep, it seems my VxWorks becomes rusty, trouble is I dont have the > > VxWorks > > > > manuals around anymore, will try to download one off the web site, if > > there > > > > is one. > > > > > > > > On the other hand, I have never used pipe writes from ISR, don't think > > it > > is > > > > a good idea. I/O subsystem and pipe overhead is too much (to my taste) > > for > > > > an ISR code, so I would recommend using message queue directly from an > > ISR, > > > > not pipe, allowed or not. > > > > > > > > - Leonid > > > > > > > > "John" wrote in message > > > > news:488e459a.0206060942.2408fb2d@posting.google.com... > > > > > "Leonid Rosenboim" wrote in message > > news:... > > > > > > > > > > [stuff deleted] > > > > > > > > > > > Pipe or any other write() is not one of the allowed functions. > > > > > > > > > > Not true; there is a special exception for write() when it is to a > > > > > pipeDrv device (see page 87 of the VxWorks 5.4 Programmer's Guide > > > > > where the allowed functions for an ISR are listed). RTFM ;-) > > > > > > > > > > Rgds, > > > > > > > > > > John... > > > > > > > > > > > > > > --------------------------- End of New-News digest ********************** From vxwexplo-errs@csg.lbl.gov Sun Jun 9 23:09:56 2002 From: =?iso-8859-1?q?vivek=20jain?= Date: Sun Jun 9 23:09:59 PDT 2002 Subject: cPCI card driver Hi pci experts, I am writing a device driver for cpci card which supports DMA. The OS is Vxworks. My issue is 1) How to map the board memory to cpu address space. 2) How to allocate the DMA channel to the card. My question may sound stupid. I am new this field . Any help will be greatly appreciated. Thanks in advance Kind Regards Vivek MM Technologies ________________________________________________________________________ Everything you always wanted to know about cars and bikes,now at: http://in.autos.yahoo.com From vxwexplo-errs@csg.lbl.gov Mon Jun 10 04:03:13 2002 From: Vxworks Exploder Date: Mon Jun 10 04:03:16 PDT 2002 Subject: comp.os.vxworks newsdigest Comp.Os.Vxworks Daily Digest Mon Jun 10 04:03:09 PDT 2002 Subject: Re: Why I can't use the "@cd" command in shell Subject: Re: VxSim-lite & sockets? Subject: using objcopyppc / including generic sw pakets written in C/C++ Subject: MPC8XX ADS860BSP does not support SPI, I2C, Subject: Specific question Subject: Re: visionIce: DriverX vs Win2000 Subject: Re: Specific question Subject: Problem with configuring slip interface Subject: Re: pipe writes Subject: Re: MPC8XX ADS860BSP does not support SPI, I2C, Subject: Re: pipe writes Subject: Re: pipe writes Subject: Re: Accessing Local Memory Addresses Subject: Re: porting 82557/8/9 driver from linux to vxworks Subject: few doubts on networking and multiple targets in VxSim. Subject: Re: Why I can't use the "@cd" command in shell Subject: Re: Telnet Task Delayed Subject: Re: launch on Unix Subject: Re: VxSim-lite & sockets? Subject: to develop the ipv6 router on MPC860 Subject: Re: to develop the ipv6 router on MPC860 Subject: Re: pipe writes Subject: executing tshell commands from custom telnet ------------------------------------------------------- Newsgroups: comp.os.vxworks Subject: Re: Why I can't use the "@cd" command in shell Date: Sun, 09 Jun 2002 17:57:41 +0200 From: Gerald van Kampen Message-ID: <3D037AF5.60204@xs4all.nl> References: Add target\src\usr\usrFsLib.c to your vxWorks build. Gerald Eric wrote: > I have file system on the target > but I can't use "cd" to get to the directory of target > so I use the "@cd" > but the shell tell me "undefined symbol: cd@" > have I forgotten to include something or set something > Any message will be appreciated. --------------------------- Newsgroups: comp.os.vxworks Subject: Re: VxSim-lite & sockets? Date: Sun, 09 Jun 2002 18:08:27 +0200 From: Gerald van Kampen Message-ID: <3D037D7B.1080009@xs4all.nl> References: Yep, The bundled VxSim-lite does not include the network stack. Gerald Deb Briggs wrote: > If I want to use VxWorks' sockLib, do I have to purchase the full VxSim? > > --------------------------- Newsgroups: comp.os.vxworks Subject: using objcopyppc / including generic sw pakets written in C/C++ Date: 9 Jun 2002 09:26:20 -0700 From: r.stelzer@stoye.de (Rainer Stelzer) Organization: http://groups.google.com/ Message-ID: <78a5d372.0206090826.418d2f47@posting.google.com> Hi vxworkers, We include some generic (=written portable, not special for vxworks ) software pakets delivered in C source into our system. We prefer to download these pakets, instead of linking them to the BSP. Examples for these pakets are protocoll stacks (ISDN, CANopen and so on) or picture compression libraries. When these generic pakets are programmed, the programmers don't take care about the special way vxworks links objects dynamicly using one global namespace. So we face the problem, that symbols from this kind of pakets may not be unique when linking with other moduls. (For example: we ported a software paket, that implemented a function called bcopy(). Very funny effects take place) Investigating all symbols in these pakets and compare them with symbol lists from our own and vxworks libraries can't be the way to do this. What I wanted to do is to remove all symbols from the linked paket library and only keep the essential functions to initialize and start the moduls tasks. The goal is to extend the used namespace as less as possible. The further effect that the files get smaller is welcome, but not that important. First question: - - Any other idea to keep the symbols namespace handy ? So I had a look at objcopyppc. We already use objcopyppc in our makefiles to remove debug information from files that are in production state, so I believed that it can't be that hard to archive my plan. A wrong expectation. We run T2 under Windows on a NT4SP6 machine. calling objcopyppc --version tells me that I'm working with version "cygnus-2.6" I'ld like to create an object in elf32-powerpc format without any symbols except the reference to the included functions initCanFSM();startCanFSM();stopCanFSM(); To check if it works i use nmppc. Calling it this way objcopyppc -F elf32-powerpc -K initCanFSM -K startCanFSM -K stopCanFSM canFsmMachineFullSymbol.out canFsmMachine.out causes the dos box to get filled with "bfd assertion fail c:\wpwr\host\src\gnu.cpp\bfd\elf.c:2576" lines. The download of the resulting file causes a WTX Error 2 (no such file or directory). hmm. What followed now was the normal "testing through all parameters given in the manual" game. I lost. Any hint how to call objcopyppc the right way ? Thanks in advance. rgds Rainer objcopyppc vxworks tornado --------------------------- Newsgroups: comp.os.vxworks Subject: MPC8XX ADS860BSP does not support SPI, I2C, Date: Sun, 09 Jun 2002 18:52:11 GMT From: sbuckser@attbi.com (Stephen Buckser) Organization: AT&T Broadband Message-ID: <3d03a596.982686@netnews.attbi.com> We are working on a project using the PowerPC MPC823 processor with VxWorks and the ADS860 Board Support Package. We need to operate the following MPC823 peripherals that are not included as part of the BSP: I2C, SPI. Additionally, the Ethernet parameter space clashes with the SPI parameter space requiring use of a Motorola SPI/I2C patch. Has anyone had any experience trying to implement the Motorola SPI/I2C patch into VxWorks. If so, any suggestions on how to approach it? sbuckser@attbi.com --------------------------- Newsgroups: comp.os.vxworks Subject: Specific question Date: 9 Jun 2002 13:21:26 -0700 From: cristian@gtsgroup.ro (Cristian) Organization: http://groups.google.com/ Message-ID: <66a7592d.0206091221.1ad15bb@posting.google.com> Hello, Does anyone in here knows where I can find BCM3350 specifications? - --- Cristi --------------------------- Newsgroups: comp.os.vxworks Subject: Re: visionIce: DriverX vs Win2000 Date: Sun, 09 Jun 2002 22:54:07 +0200 From: Gerald van Kampen Message-ID: <3D03C06F.4030306@xs4all.nl> References: DriverX is only used if you use the visionProbe. There is an updated version available on WindSurf (Driverx.zip). It corrects Stand-By and Hibernation mode issues. It has no influence on communication with visionICE. Check on WindSurf if you use the latest visionICE firmware for your architecture. HTH, Gerald kdb wrote: > I started noticing problems on my Windows 2000 laptop around the time I > installed the visionClick software (v7.90A) for my visionIce emulator. > Finally tracked it down to the DriverX driver installed by visionClick. > Disabled the driver, Win2000 problems went away. > > The visionClick GUI still seems to work as well as it ever did. Which is to > say, not too well if you want to communicate with the visionIce via > Ethernet. Communications keep dropping out, I have to keep resetting the > unit and reopening the NET port. I can still ping the unit but the GUI > loses its connection to it. Don't have this problem if I use the COM port, > but I need the COM for something else and it's inadequate for downloads > anyway. > > I've seen indication somewhere that driverx.sys is not the correct version > of the DriverX driver for Win2000. Is the correct DriverX version for > Win2000 available and if so how do I get it installed and properly > configured? Also, will this fix the problem with network communications > between the GUI and the visionIce unit? > > thx - K > > --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Specific question Date: Sun, 09 Jun 2002 23:08:05 +0200 From: Gerald van Kampen Message-ID: <3D03C3B5.5030400@xs4all.nl> References: <66a7592d.0206091221.1ad15bb@posting.google.com> http://www.broadcom.com/ HTH, Gerald Cristian wrote: > Hello, > > > Does anyone in here knows where I can find BCM3350 specifications? > > > > > --- > Cristi --------------------------- Newsgroups: comp.os.vxworks Subject: Problem with configuring slip interface Date: Sun, 9 Jun 2002 16:33:40 -0700 From: "Karpur" Organization: Nortel Message-ID: Hi, I wrote a UART driver and it seems to be working ok. I am trying to enable slip over this. I am using slipInit() and it returns success. routeShow() shows the routes correctly. However, I am not able to ping the local or peer address that I configured for the slip interface. What may be the problem ? Does the SIO driver need any modification for supporting slip ? Thanks, Karpur --------------------------- Newsgroups: comp.os.vxworks Subject: Re: pipe writes Date: 9 Jun 2002 21:21:21 -0700 From: john_94501@yahoo.com (John) Organization: http://groups.google.com/ Message-ID: <488e459a.0206092021.6ddb3358@posting.google.com> References: <488e459a.0206060942.2408fb2d@posting.google.com> <488e459a.0206080958.2ace184@posting.google.com> Hello Leonid, "Leonid Rosenboim" wrote in message news:... > My comments regarding performance of select() is due to real > benchmarking I had to do, as a result of customers complaining. What were you benchmarking? In the previous post I asked you what you felt was "miserable" in the performance, yet all you do is tell me you benchmarked select(). What were you measuring, and what was your expectation? > It is not a myth, it is one case of bad implementation of a good > idea, and persistent refusal of WRS to admit and correct their > mistakes. Just look how many TSRs there where opened about > select() performance and support of larger number of file descriptors, I'm not sure of the connection here, but I suspect from the fact that you linked these two together that you are using select() for something more than it was designed for. As I said previously, for a small number of fds, optionally with a timeout, select() is a useful mechanism. For a large number of fds, it is not the way to go (and that, btw, applies to any OS, not just VxWorks). What were you and/or your customers with the performance problems trying to use select() for? Rgds, John... --------------------------- Newsgroups: comp.os.vxworks Subject: Re: MPC8XX ADS860BSP does not support SPI, I2C, Date: Mon, 10 Jun 2002 05:11:28 GMT From: Pete Kockritz Organization: AT&T Broadband Message-ID: References: <3d03a596.982686@netnews.attbi.com> In article <3d03a596.982686@netnews.attbi.com>, sbuckser@attbi.com (Stephen Buckser) wrote: > Additionally, the Ethernet parameter space clashes with the SPI > parameter space requiring use of a Motorola SPI/I2C patch. > > Has anyone had any experience trying to implement the Motorola > SPI/I2C patch into VxWorks. If so, any suggestions on how to > approach it? I worked on a 860 BSP that loaded a CPM patch. It was loaded in sysHwInit (T1). One trick that I learned the hard way; be sure to clear the RCCR strategically. One place I had to do that was in sysToMonitor to allow the board to boot up. (The RCCR is NOT cleared by a CPM reset). Also note that you can only load one patch, and loading a patch makes part of the DPRAM inaccessable. You'll probably have to modify some if the CPM drivers to re-locate their DPRAM usage. - -- Pete Kockritz --------------------------- Newsgroups: comp.os.vxworks Subject: Re: pipe writes Date: Mon, 10 Jun 2002 05:22:30 GMT From: Michael Rice Message-ID: <3D043870.5070205@adelphia.net> References: <488e459a.0206060942.2408fb2d@posting.google.com> <488e459a.0206080958.2ace184@posting.google.com> <488e459a.0206092021.6ddb3358@posting.google.com> John wrote: > Hello Leonid, > > "Leonid Rosenboim" wrote in message news:... > >>My comments regarding performance of select() is due to real >>benchmarking I had to do, as a result of customers complaining. > > > What were you benchmarking? In the previous post I asked you what you > felt was "miserable" in the performance, yet all you do is tell me you > benchmarked select(). What were you measuring, and what was your > expectation? > > >>It is not a myth, it is one case of bad implementation of a good >>idea, and persistent refusal of WRS to admit and correct their >>mistakes. Just look how many TSRs there where opened about >>select() performance and support of larger number of file descriptors, > > > I'm not sure of the connection here, but I suspect from the fact that > you linked these two together that you are using select() for > something more than it was designed for. As I said previously, for a > small number of fds, optionally with a timeout, select() is a useful > mechanism. For a large number of fds, it is not the way to go (and > that, btw, applies to any OS, not just VxWorks). > > What were you and/or your customers with the performance problems > trying to use select() for? > > Rgds, > > John... Just as a point of interest, what do you consider a "small number of fds"? What is considered a "larger number of file descriptors"? I'd think it would depend greatly on CPU bandwidth and maybe, to a lesser extent, on memory bandwidth. What is the alternative? I guess you could split the fds among separate tasks and have each task do a select() on a smaller group. Thanks. Michael --------------------------- Newsgroups: comp.os.vxworks Subject: Re: pipe writes Date: Mon, 10 Jun 2002 06:10:04 GMT From: "Leonid Rosenboim" Organization: Verio Message-ID: References: <488e459a.0206060942.2408fb2d@posting.google.com> <488e459a.0206080958.2ace184@posting.google.com> <488e459a.0206092021.6ddb3358@posting.google.com> For small number of fd's, it is not much trouble to have a separate task for each socket, listening to it. It is when you have many, possibly thousands of fd's is when select(0 could come useful really, and that is where it fails. At the time I benchmarked select() even with a small number of fd's, and compared the total per-packet processing time to dedicated tasks, so the difference is clearly due to select(), and it was in the area of tens of milliseconds on a i960 processor. Later I tested it again on x86, and due to the large number of sockets involved, select() was again avoided at all costs. And it's not like there is no better way, select(0 has evolved tremendously on Unix, and pin particular on Linix, and is being used by most commercial Internet software, e.g. Web servers with very good results. It is only in VxWorks that selectLib has not been changed in any substantial way since before 1993. I think this is qutie enough on this matter, but if you want to continue this discussion, I suggest we take it offline. - - Leonid "John" wrote in message news:488e459a.0206092021.6ddb3358@posting.google.com... > Hello Leonid, > > "Leonid Rosenboim" wrote in message news:... > > My comments regarding performance of select() is due to real > > benchmarking I had to do, as a result of customers complaining. > > What were you benchmarking? In the previous post I asked you what you > felt was "miserable" in the performance, yet all you do is tell me you > benchmarked select(). What were you measuring, and what was your > expectation? > > > It is not a myth, it is one case of bad implementation of a good > > idea, and persistent refusal of WRS to admit and correct their > > mistakes. Just look how many TSRs there where opened about > > select() performance and support of larger number of file descriptors, > > I'm not sure of the connection here, but I suspect from the fact that > you linked these two together that you are using select() for > something more than it was designed for. As I said previously, for a > small number of fds, optionally with a timeout, select() is a useful > mechanism. For a large number of fds, it is not the way to go (and > that, btw, applies to any OS, not just VxWorks). > > What were you and/or your customers with the performance problems > trying to use select() for? > > Rgds, > > John... --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Accessing Local Memory Addresses Date: Mon, 10 Jun 2002 08:51:25 +0200 From: "Michael Lawnick" Organization: Buergernetz Dillingen Message-ID: References: <38f8ed1.0206071232.1e9ce466@posting.google.com> Reply-To: "Michael Lawnick" Sender: mlawnick@p5088f8be.dip.t-dialin.net To extend Jeffrey, if your D16,D8 accesses crash your target, this shows a configuration error of your VME-window or a bad behaviour of your VME-bridge: If your VME H/W isn't capable of 16/8 bit accesses, the window must be configured to 32-bit only. All 8/16-bit accesses will then automatically be translated to 32-bit accesses by your bridge, data is shifted if necessary. "Jeffrey Creem" schrieb im Newsbeitrag news:Yc9M8.47249$KD3.820139@typhoon.ne.ipsvc.net... > This is basically just a guess but is there any chance that the hardware you > are > trying to access requires 32 bit (D32) accesses. The d command (without > an option to specify otherwise) typically does reads with D16 accesses. > > As for the debugger...No great guesses other than perhaps it has decided to > do D8 or D16 accesses as well. > > If the guess is correct then when you access the hardware incorrectly, you > will some sort of "bus error" type event that > may be unhandled (or handled poorly) which then causes the reboot...Try some > things like > > m 0x 0xfc000ffc,4 (this will do a 32 bit read) > m 0xfc000ffc,2 (this will do a 16 bit read) > > and see if this is the path to take. > > > > "Debra Meiers" wrote in message > news:38f8ed1.0206071232.1e9ce466@posting.google.com... > > Hello, > > > > Our host runs Tornado 2.0.2 on a PC with Windows NT Workstation. Our > > target runs VxWorks 5.4 with a BajaPPC750 CPU Card (PPC603) from > > Artesyn. Our BSP from Artesyn is successfully mapping VME addresses > > into local addresses, allowing us to access our hardware. > > > > My question concerns some "curious" behavior that we have been seeing. > > We are able to access local addresses (such as 0xfc000ffc) from > > WindSh using the VxMemProbe function without any trouble. However, > > when we try to read the same address from the WindSh using the 'd' > > function, an error occurs which causes the target to reboot > > automatically. > > > > Similarly, we have no problems accessing the local addresses from our > > object code. However, when we step through our code using the > > Debugger, we see 2 problems. The first occurs if we place a variable > > which references a local memory address into either the Variable or > > Watch windows. The second occurs if we try to step into a subroutine > > which is being passed a local memory address. In both cases, the > > target is rebooted automatically and the host is left in a "less than > > desirable" state. > > > > We figure that these unexpected behaviors are related to a single > > problem. Any advice on what might be causing this would be > > appreciated. > > > > Thanks in advance for any help. > > > > -Debbie (a newbie) > > --------------------------- Newsgroups: comp.os.vxworks Subject: Re: porting 82557/8/9 driver from linux to vxworks Date: Mon, 10 Jun 2002 09:33:54 +0200 From: Markus Organization: T-Online Message-ID: References: <2df53411.0206080529.5557ac4d@posting.google.com> Hi, > I'm trying to port linux driver for 82557/8/9 intel ether express pro > network adapter to vxWorks. The problem i'm facing is that i'm getting > a flurry of interrupts, the status reads 0x0010, which means RU ready. > I set the base address of the RU and the CU as 0, and give the address > of the first receive buffer to the card. Am i not supposed to get > proper interrups now... I something else to be done... The output is: If I remember correctly there already exists one driver for the 8255x series in VxWorks.Using that would save you some pain :-) The other issue is that the linux driver as port of the kernel is GPLed. So you just can't port it and close the source. Donals Becker wouldn't like that, I guess :-/ Bye, Markus --------------------------- Newsgroups: comp.os.vxworks Subject: few doubts on networking and multiple targets in VxSim. Date: 10 Jun 2002 00:48:28 -0700 From: vijay.peshkar@wipro.com (Vijay Peshkar) Organization: http://groups.google.com/ Message-ID: Hi Friends, Am observing some funny stuff while trying networking on VxSim and multiple targets. Have NT machine. ULIP driver is installed with ip 90.0.0.254 and am using WDB-End-Driver connection. Would be great if anyone could suggest some pointers.. 1. On adding routes, the target(90.0.0.1) is able to ping anyone in the PC backbone(192.168.235.X), but is unable to ping itself or another target(90.0.0.2). Also am seeing(ifShow) packet counts increase on both sides. 2. Ping TO any machine in 192.168.235.X suceeds. But ping FROM 192.168.235.X fails. On doing tracereoute on pc, found that the path is OK till the ULIP driver 90.0.0.254, but then on it fails to proceed. 3.Using UDP socket, am able to send packets TO a unix machine on 192.168.235.X, but when the unix machine tried to reply, the sendto fails. Thanks and Regards, Vijay --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Why I can't use the "@cd" command in shell Date: 10 Jun 2002 07:50:55 GMT From: Johan Borkhuis Organization: Agere Systems Message-ID: References: <3D037AF5.60204@xs4all.nl> Gerald van Kampen wrote: > Add target\src\usr\usrFsLib.c to your vxWorks build. You better include the component "File System and Disk Utilities" (Operating System -> IO system -> DOSFS2). This will include this file automatically. (... if you are using T2.1 or have included DosFS2 as a add- on to T2.0.) Groeten, Johan - -- o o o o o o o . . . _____________________________ o _____ || Johan Borkhuis | .][__n_n_|DD[ ====_____ | borkhuis@agere.com | >(________|__|_[_________]_|__________________________| _/oo OOOOO oo` ooo ooo 'o!o!o o!o!o` === VxWorks FAQ: http://www.xs4all.nl/~borkhuis/vxworks/vxworks.html === --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Telnet Task Delayed Date: 10 Jun 2002 08:04:54 GMT From: Johan Borkhuis Organization: Agere Systems Message-ID: References: Kai Young wrote: > Hello All, > Currently having a problem with a board running VxWorks on a Radstone > PPC G4. Before even loading any application code, the telnet task is > showing up as delayed. I didn't write the BSP, but it does have > INCLUDE_TELNET defined, and I can't spot any taskDelays from cursory > examinations. Questions are as follows: > > Are there any further requirements for telnet to be implemented? A network connection. > What else would cause the task to be delayed other than a taskDelay > call from within the task itself? Just do a stack trace (using the tt command) and you will see what is causing the delay. Groeten, Johan - -- o o o o o o o . . . _____________________________ o _____ || Johan Borkhuis | .][__n_n_|DD[ ====_____ | borkhuis@agere.com | >(________|__|_[_________]_|__________________________| _/oo OOOOO oo` ooo ooo 'o!o!o o!o!o` === VxWorks FAQ: http://www.xs4all.nl/~borkhuis/vxworks/vxworks.html === --------------------------- Newsgroups: comp.os.vxworks Subject: Re: launch on Unix Date: 10 Jun 2002 08:08:13 GMT From: Johan Borkhuis Organization: Agere Systems Message-ID: References: "Zulfikar" wrote: > I have started launch and now trying to create a target server. > > I would like to know where is my target would it be the actual card or > can it be a simulator. Yes it can be a simulator. > Also what all do I need in order to create this target server. The target server is a tool, and can be started from Tornado. Groeten, Johan - -- o o o o o o o . . . _____________________________ o _____ || Johan Borkhuis | .][__n_n_|DD[ ====_____ | borkhuis@agere.com | >(________|__|_[_________]_|__________________________| _/oo OOOOO oo` ooo ooo 'o!o!o o!o!o` === VxWorks FAQ: http://www.xs4all.nl/~borkhuis/vxworks/vxworks.html === --------------------------- Newsgroups: comp.os.vxworks Subject: Re: VxSim-lite & sockets? Date: 10 Jun 2002 08:26:05 GMT From: Johan Borkhuis Organization: Agere Systems Message-ID: References: <3D037D7B.1080009@xs4all.nl> Gerald van Kampen wrote: > Yep, > > The bundled VxSim-lite does not include the network stack. > > Gerald > > Deb Briggs wrote: >> If I want to use VxWorks' sockLib, do I have to purchase the full >> VxSim? Instead of the VxSim lite you could also try to use Tornado Protoryper. There is a version available with complete network support. Groeten, Johan - -- o o o o o o o . . . _____________________________ o _____ || Johan Borkhuis | .][__n_n_|DD[ ====_____ | borkhuis@agere.com | >(________|__|_[_________]_|__________________________| _/oo OOOOO oo` ooo ooo 'o!o!o o!o!o` === VxWorks FAQ: http://www.xs4all.nl/~borkhuis/vxworks/vxworks.html === --------------------------- Newsgroups: comp.os.vxworks Subject: to develop the ipv6 router on MPC860 Date: Mon, 10 Jun 2002 16:43:21 +0800 From: "Îâ¾ü" Organization: Bentium Ltd. (CN99) Message-ID: Hi I'm trying to develop the ipv6 router on MPC860, but there is no ipv6 stack for vxworks. Please give me some advices. Cheers --------------------------- Newsgroups: comp.os.vxworks Subject: Re: to develop the ipv6 router on MPC860 Date: 10 Jun 2002 09:28:08 GMT From: Johan Borkhuis Organization: Agere Systems Message-ID: References: "Îâ¾ü" wrote: > Hi > I'm trying to develop the ipv6 router on MPC860, but there is no ipv6 > stack for vxworks. Please give me some advices. WindRiver is working on a ipv6 stack, to be released later this year. Maybe you could try to participate in the beta program. Groeten, Johan - -- o o o o o o o . . . _____________________________ o _____ || Johan Borkhuis | .][__n_n_|DD[ ====_____ | borkhuis@agere.com | >(________|__|_[_________]_|__________________________| _/oo OOOOO oo` ooo ooo 'o!o!o o!o!o` === VxWorks FAQ: http://www.xs4all.nl/~borkhuis/vxworks/vxworks.html === --------------------------- Newsgroups: comp.os.vxworks Subject: Re: pipe writes Date: Mon, 10 Jun 2002 09:44:16 +0000 (UTC) From: David Laight Organization: BT Openworld Message-ID: <3D0474E0.30401@spamm.me.l8s.co.uk> References: <488e459a.0206060942.2408fb2d@posting.google.com> <488e459a.0206080958.2ace184@posting.google.com> <488e459a.0206092021.6ddb3358@posting.google.com> <3D043870.5070205@adelphia.net> > Just as a point of interest, what do you consider a "small number of > fds"? What is considered a "larger number of file descriptors"? I'd > think it would depend greatly on CPU bandwidth and maybe, to a lesser > extent, on memory bandwidth. Select does have to do a fail amount of work attaching small bits of data to each fd and requesting (and later removing) notification requests from each driver. This is usually O(n). It is also a relatively expensive operation - but not stupidely so. However on a Unix system a few years ago we found that poll() (which is what select is implemented in terms of) was actually O(n^2) for large (several thousand) file descriptors..... So getting all the file actives was O(n^3) - and took a VERY long time. That is what I call a 'large number of file descriptors'..... (The critical piece of code was traversing the linked list of blocks of 20 (or so) file structure pointers!) David --------------------------- Newsgroups: comp.os.vxworks Subject: executing tshell commands from custom telnet Date: 10 Jun 2002 03:02:16 -0700 From: ilyasg@yahoo.com (Ilyas G) Organization: http://groups.google.com/ Message-ID: Hi all i have a vxworks target, configured using Rapid Control telnet. it's a seperate telnet server. We need to execute target shell commands from the Rapid control telnet session. is there any command to do so. a rsh will be ok, however, in all the docs rsh is used only for file access. I will need something like for unix rsh (host:command) , while host is localhost. --------------------------- End of New-News digest ********************** From vxwexplo-errs@csg.lbl.gov Tue Jun 11 04:03:13 2002 From: Vxworks Exploder Date: Tue Jun 11 04:03:15 PDT 2002 Subject: comp.os.vxworks newsdigest Comp.Os.Vxworks Daily Digest Tue Jun 11 04:03:09 PDT 2002 Subject: Re: Why I can't use the "@cd" command in shell Subject: Target shell redirection Subject: Re: launch on Unix Subject: 860 Chip Select Troubles Subject: Re: 860 Chip Select Troubles Subject: ATTN Leonid Rosenboim -- RE:Post Mortem Debugging Subject: Re: MPC8XX ADS860BSP does not support SPI, I2C, Subject: asm expressions in C code Subject: How to create a global register for all the tasks in VxWorks? Subject: Re: asm expressions in C code Subject: Re: How to create a global register for all the tasks in VxWorks? Subject: windnet streams with I_SETSIG Subject: Flash memory program Subject: ppp property restart Subject: Re: T2: how to debug only on 1 file but not on all files Subject: Re: T2: how to debug only on 1 file but not on all files ------------------------------------------------------- Newsgroups: comp.os.vxworks Subject: Re: Why I can't use the "@cd" command in shell Date: Mon, 10 Jun 2002 14:13:14 +0200 From: Markus Organization: T-Online Message-ID: References: Eric wrote: > I have file system on the target > but I can't use "cd" to get to the directory of target > so I use the "@cd" > but the shell tell me "undefined symbol: cd@" > have I forgotten to include something or set something > Any message will be appreciated. Are you using the serial console? Then "cd' would be enough. Bye, Markus --------------------------- Newsgroups: comp.os.vxworks Subject: Target shell redirection Date: 10 Jun 2002 05:46:54 -0700 From: ilyasg@yahoo.com (Ilyas G) Organization: http://groups.google.com/ Message-ID: Hi all, I want to redirect the target shell on the console to a specific telnet connection. I use ioGeneralStdSet to set the STD_IN and STD_OUT. these commands are executed in the telnet connection, connected to Rapid control telnet server (for CLI) However, when i call these procedure, nothing seems happens. in reallity, the STD_IN and STD_OUT of the console are redirected, but i need to type a carriage return on the console to have the modification accepted, otherwise i am still in the telnet connection. is there any way to validate the changes, without using the console ? N.B: i know that we can have target shell on a telnet, but this means to have two telnet servers, that we don't like much. regards. --------------------------- Newsgroups: comp.os.vxworks Subject: Re: launch on Unix Date: Mon, 10 Jun 2002 08:52:01 -0500 From: Dinker Charak Organization: Fermi National Accelerator Laboratory Message-ID: <3D04AF01.CDDA7155@fnal.gov> References: > I would like to know where is my target would it be the actual card or can > it > be a simulator. > > Also what all do I need in order to create this target server. Did you get a booklet "Tornado II getting started (unix)"? Or look into documentation, there is a quick start help that will give you sort of step by step guidance on how to create a target server (a real target or simulator) hth, dinker --------------------------- Newsgroups: comp.os.vxworks Subject: 860 Chip Select Troubles Date: Mon, 10 Jun 2002 15:23:29 GMT From: "Jim" Organization: Magma Communications Ltd. Message-ID: Hi I have two bootloaders for a board ... both have a chip select configured to be exactly the same ... however when I run the command *0x09000000=1 From the shell I see 1 cs with load A and 4 cs with load B ... Both OR and BR are set up for Burst inhibit ... What could this be? Where can I look? Cheers, Jim --------------------------- Newsgroups: comp.os.vxworks Subject: Re: 860 Chip Select Troubles Date: Mon, 10 Jun 2002 15:52:30 GMT From: "Jim" Organization: Magma Communications Ltd. Message-ID: <2X3N8.1035$aW1.18885@news> References: Found it ... Ignore this post please ... "Jim" wrote in message news:Rv3N8.1028$aW1.18642@news... > Hi > I have two bootloaders for a board ... both have a chip select configured to > be exactly the same ... however when I run the command > > *0x09000000=1 > > From the shell I see 1 cs with load A and 4 cs with load B ... > > Both OR and BR are set up for Burst inhibit ... > > What could this be? Where can I look? > > Cheers, > Jim > > --------------------------- Newsgroups: comp.os.vxworks Subject: ATTN Leonid Rosenboim -- RE:Post Mortem Debugging Date: Mon, 10 Jun 2002 16:12:02 GMT From: bschwererNO@SPAM.cylink.com (Bryan Schwerer) Organization: Randori News - http://www.randori.com - Try our FREE Usenet Scanner! Message-ID: <3d04d07e.532588051@news.randori.com> Sorry, our mail server keeps saying my reply is undeliverable A very interesting presentation. Quite a bit would be applicable to what I am trying to do. Sadly we have no money and only moderate interest in post mortem debugging. I am working on this in the background because it interests me. Also, our office is based in North Carolina. Thanks for your help. Regards, Bryan Schwerer --------------------------- Newsgroups: comp.os.vxworks Subject: Re: MPC8XX ADS860BSP does not support SPI, I2C, Date: Mon, 10 Jun 2002 09:33:36 -0700 From: "Dan Gold" Organization: Mailgate.ORG Server - http://www.Mailgate.ORG Message-ID: References: <3d03a596.982686@netnews.attbi.com> Sender: gold@ensemble.com "Stephen Buckser" wrote in message news:3d03a596.982686@netnews.attbi.com... > We need to operate the following MPC823 peripherals that are not > included as part of the BSP: I2C, SPI. I thought the mbx860 BSP did include support for I2C, but it's been awhile since I've looked at it... > Additionally, the Ethernet parameter space clashes with the SPI > parameter space requiring use of a Motorola SPI/I2C patch. It sure does - thanks Mot! > Has anyone had any experience trying to implement the Motorola > SPI/I2C patch into VxWorks. If so, any suggestions on how to > approach it? Yes, one of our boards is an 860 design that uses 2 Ethernets (on scc1 and 2) and SPI, thus we use the patch. It's no big deal, you copy it into the desired area of DPRAM, and then make sure you follow the new memory map now that the patch has been loaded. I think all the instructions for loading and using the patch came with it when we downloaded it. hth, Dan Gold gold@ensemble.com --------------------------- Newsgroups: comp.os.vxworks Subject: asm expressions in C code Date: 10 Jun 2002 13:45:23 -0700 From: dave.moore@conexant.com (Dave Moore) Organization: http://groups.google.com/ Message-ID: I am trying to code an asm expression that will store the link register (ARM processor) to a global variable. I tried __asm__ volatile ( "mov %0,r14": "=m" (nis_caller) : : "r14" ); and minor variations thereof. "nis_caller" is a global unsigned int. "r14" does not get modified. Compiling the above i get an AS error C:\DOCUME~1\mooreda\LOCALS~1\Temp/cc001000.s: Assembler messages: C:\DOCUME~1\mooreda\LOCALS~1\Temp/cc001000.s:1507: Error: Register expected Anybody know how to code this up correctly or have a better idea as far as grabbing the link register? Thanks --------------------------- Newsgroups: comp.os.vxworks Subject: How to create a global register for all the tasks in VxWorks? Date: Mon, 10 Jun 2002 14:50:08 -0700 From: "Liang Yang" Organization: RTS-LAB Message-ID: Reply-To: "Liang Yang" Hi, We tried use --ffixed option for ccppc, but we found the reserved register is not a global register. When CPU control switched from the current task to another, the content of reserved register is cleared.And when the CPU control switched backed, the content of reserved register is restored. How can I create a global register for all the tasks? Thanks. Liang --------------------------- Newsgroups: comp.os.vxworks Subject: Re: asm expressions in C code Date: Mon, 10 Jun 2002 23:47:08 +0200 From: "Werner Schiendl" Message-ID: <3d051e3f$1@brateggebdc5.br-automation.co.at> References: Hi, The GNU assembler has a strange syntax for some platforms (compared to their 'native' assemblers). Put shortly, I think you need to prefix the register with %%. The GNU assembler expects registers to be prefixed with % (at least on some platforms) - the second one escapes it to the parameter replacement of the asm-in-C integration. try: __asm__ volatile ( "mov %0,%%r14": "=m" (nis_caller) : : "r14" ); If that does not work, check the manuals for the exact syntax. hth Werner "Dave Moore" wrote in message news:d3619927.0206101245.2858e1af@posting.google.com... > I am trying to code an asm expression that will store the link > register (ARM processor) to a global variable. I tried > > __asm__ volatile ( "mov %0,r14": "=m" (nis_caller) : : "r14" ); > > > and minor variations thereof. "nis_caller" is a global unsigned int. > "r14" does not get modified. Compiling the above i get an AS error > > C:\DOCUME~1\mooreda\LOCALS~1\Temp/cc001000.s: Assembler messages: > C:\DOCUME~1\mooreda\LOCALS~1\Temp/cc001000.s:1507: Error: Register expected > > Anybody know how to code this up correctly or have a better idea as > far as grabbing the link register? > > Thanks --------------------------- Newsgroups: comp.os.vxworks Subject: Re: How to create a global register for all the tasks in VxWorks? Date: Tue, 11 Jun 2002 00:40:23 +0200 From: "Werner Schiendl" Message-ID: <3d052ab9$1@brateggebdc5.br-automation.co.at> References: Hi, Sorry for my ignorance, but what is the reason why you cannot just use a global variable? regards Werner "Liang Yang" wrote in message news:ae36u8$4a2$1@news.asu.edu... > Hi, > > We tried use --ffixed option for ccppc, but we found > the reserved register is not a global register. When > CPU control switched from the current task to another, > the content of reserved register is cleared.And when > the CPU control switched backed, the content of reserved > register is restored. > > How can I create a global register for all the tasks? > > Thanks. > > Liang > > --------------------------- Newsgroups: comp.os.vxworks Subject: windnet streams with I_SETSIG Date: Mon, 10 Jun 2002 19:01:58 -0400 From: "Zhang, Silei [CAR:OM1K:EXCH]" Organization: Nortel Networks Message-ID: <3D052FE6.C7A34BB7@americasm01.nt.com> I'm now poring an application with pSOS to VxWorks. I have problems when trying to convert ioctl(fd, I_SETSIG, ...) to the windnet streams. The vxworks document says the signal handling is not supported by the stream so don't use I_SETSIG and SIGPOLL. I found a lot of places in our code uses this method of notifying the application while the specific events happened on the stream. Is there anyone knows how to get this part ported? thanks --------------------------- Newsgroups: comp.os.vxworks Subject: Flash memory program Date: Tue, 11 Jun 2002 02:03:46 GMT From: "À̽½" Organization: Dacom Message-ID: <6UcN8.37400$nP6.4431789@news.bora.net> Hi, dears. Can I get some sample codes for flash read/write ? I have MVME2604 with "Micron Tech. 28F800B3" flash (8M). Thanks in advance. iiseull --------------------------- Newsgroups: comp.os.vxworks Subject: ppp property restart Date: Tue, 11 Jun 2002 08:52:49 +0200 From: Joachim Wittmann Message-ID: <3D059E41.1060907@spam.de> Hi, when I call pppInfoShow() on an initialized ppp link one property shown is restart. Is this property similar to the restart option you can enable by specifying "persist" as option on e.g. a linux system ? This option isn't documented in the vxworks documentation. Is the vxworks ppp capable of restarting ? How do I switch the restart property ON ? Thanks Joachim - --- - -mail: j.wittmannATstoye.de --------------------------- Newsgroups: comp.os.vxworks Subject: Re: T2: how to debug only on 1 file but not on all files Date: 10 Jun 2002 15:37:53 GMT From: charly Message-ID: <2002610-163753-708486@foorum.com> References: <200267-112356-48895@foorum.com> Thanks all for your help. I appreciate a lot the "charmind" solution Charly - -- Use our news server 'news.foorum.com' from anywhere. More details at: http://nnrpinfo.go.foorum.com/ --------------------------- Newsgroups: comp.os.vxworks Subject: Re: T2: how to debug only on 1 file but not on all files Date: 10 Jun 2002 15:58:00 GMT From: charly Message-ID: <2002610-16580-155111@foorum.com> References: <200267-112356-48895@foorum.com> <3d00976d$1@brateggebdc5.br-automation.co.at> <200267-154151-663961@foorum.com> <3d00c96b@brateggebdc5.br-automation.co.at> Thanks, Here are some arguments to avoid a separate download: "Vxworks" is fastly loaded by ethernet and the tornado debug is done throught serial line. The real time application starts with a ethernet dialog and synchronization. All files are deeply linked to the others. Charly - -- Use our news server 'news.foorum.com' from anywhere. More details at: http://nnrpinfo.go.foorum.com/ --------------------------- End of New-News digest ********************** From vxwexplo-errs@csg.lbl.gov Tue Jun 11 05:45:37 2002 From: "Shah, Ranjana" Date: Tue Jun 11 05:45:40 PDT 2002 Subject: Re:Target shell redirection VxWorks I had done this some time ago. I ended up restarting the target shell after redirection to get around it, as follows: // Save the current setting of std in device Orig_stdin = ioGlobalStdGet (STD_IN); // Redirect the stdin to our pty input device. ioGlobalStdSet(STD_IN, PtyDevSlaveInHandle); // Redirect shell's input to pty input device shellOrigStdSet (STD_IN, PtyDevSlaveInHandle); // Re-start shell to get attention status = taskRestart (taskNameToId("tShell")); Ranjana Shah >I want to redirect the target shell on the console to a specific >telnet connection. >I use ioGeneralStdSet to set the STD_IN and STD_OUT. >these commands are executed in the telnet connection, connected to >Rapid control telnet server (for CLI) >However, when i call these procedure, nothing seems happens. >in reallity, the STD_IN and STD_OUT of the console are redirected, but >i need to type a carriage return on the console to have the >modification accepted, otherwise i am still in the telnet connection. >is there any way to validate the changes, without using the console ? >N.B: i know that we can have target shell on a telnet, but this means >to have two telnet servers, that we don't like much. >regards. From vxwexplo-errs@csg.lbl.gov Tue Jun 11 07:17:45 2002 From: Shiv Date: Tue Jun 11 07:17:47 PDT 2002 Subject: bootrom debugging with VisionClick As the subject implies , my bootrom throws exceptions and I can't effectively breakpoint-debug it given that with my vision probe/click tools , it seems to take forever to copy the data/txt segments from ROM to RAM. I know my downloadable vxworks.bdx works perfectly and gets the kernel up and running and I'm also confident that the rominit.s portion is A-ok , its the bootconfig.c glue that brings them together is where I think there might be a problem. Is there a more efficient way of tracing through a buggy bootrom ? I don't have VisionEvent. > Thanks ! > Shiv > From vxwexplo-errs@csg.lbl.gov Tue Jun 11 07:43:25 2002 From: Mike McCullough Date: Tue Jun 11 07:43:27 PDT 2002 Subject: Fwd: Re: T2: how to debug only on 1 file but not on all files > >Hi Charly, Usually my recommendation is to move "trusted files" ie files >that have already been tested into the bootable VxWorks image and out of >the downloadable application image. This can be done in Project tool via >the ADD_FILES or in old-style via MACH_EXTRA in the BSP Makefile. In >general it is faster to only compile modules for debugging that aren't >tested yet. > >In your case since it is a fairly large number of files, you might want to >consider copying your existing project into a new project (call it >Tested_Code) and removing the files you want to debug. Remove the -g >switch from your build rules for this project. Then go back to your old >project (Untested_Code) and remove the files that are "trusted". > >There are 2 potential problems with this approach: >1) If there are any "interesting" dependencies you may have to leave >certain tested modules with the untested ones that are related. >2) You have to download both projects before you can start debugging. > > >Hope this helps... > >Newsgroups: comp.os.vxworks >Subject: >Date: 07 Jun 2002 10:23:56 GMT >From: charly >Message-ID: <200267-112356-48895@foorum.com> > >Hello, >I have a big project with 500 files. I would like to debug on 1 (or 5) files >only. How to do it? >I am able to compile the full project in debug by selecting "include debug >info" >in the project properties ( that means "-g -O0" for 500 files) >Charly > > >Mike McCullough MCC Engineering >President and CEO 9 Cheshire Court > Londonderry, NH 03053 > >mike@mccengineering.com Tel: 603-537-9593 > Fax: 603-434-9890 >www.mccengineering.com Cell: 603-247-1219 > >*********************************************************************************** > 24x7 VxWorks Support Custom Support Programs > VxWorks Training Embedded Consulting Services > A WindLink Partner >*********************************************************************************** Mike McCullough MCC Engineering President and CEO 9 Cheshire Court Londonderry, NH 03053 mike@mccengineering.com Tel: 603-537-9593 Fax: 603-434-9890 www.mccengineering.com Cell: 603-247-1219 *********************************************************************************** 24x7 VxWorks Support Custom Support Programs VxWorks Training Embedded Consulting Services A WindLink Partner *********************************************************************************** From vxwexplo-errs@csg.lbl.gov Tue Jun 11 07:43:48 2002 From: Mike McCullough Date: Tue Jun 11 07:43:50 PDT 2002 Subject: Fwd: Re: RPC Timeouts > >The most common cause of RPC timeout problems is problems with the >network. This is covered in the Tech Tip already referenced. I usually >recommend doing a direct connect (use a cross-cable) from host to target >without any outside network involved to troubleshoot these. > >The target server config tool also has timeouts and retries settings that >you can increase. There is also a wtxtimeout command that you can call but >I forget the syntax... > >The target server cache size can be set in the target server config tool >under Memory Cache Size. I usually recommend orders of magnitude changes >ie go from default of 1Mb to 4Mb to 8Mb depending on the size of your app. > >Hope this helps... > > >Newsgroups: comp.os.vxworks >Subject: Re: WDB-rpc error >Date: 8 Jun 2002 00:41:52 -0700 >From: john_94501@yahoo.com (John) >Organization: http://groups.google.com/ >Message-ID: <488e459a.0206072341.28c5510c@posting.google.com> >References: <3CFC0BAE.903C816A@tellabs.com> > ><70d78653.0206041516.17a23802@posting.google.com> ><3D011E67.583079F6@tellabs.com> >Hello, > > Command: tgtsvr 172.17.55.122 -V -n GCU_TEST_SW12 -B wdbrpc -f elf -c > /vobs/gu.elf -Root > > {$HOME/stuff} >Is there some reason why you are specifying all these options? When >using the -c option make very sure that the core file you point the >target server matches the image on the target... > > tgtsvr.ex (GCU_TEST_SW12@sunsw12-121): Fri Jun 7 14:35:10 2002 > > Connecting to target agent... succeeded. > > Attaching C++ interface... succeeded. > > Attaching elf OMF reader for PPC CPU family... succeeded. > > Warning: Target server cache for agent memory is full. > > Use the '-m' option to increase the target server cache. > > Warning: Can't checksum core file, length is not valid. > > > > tgtsvr.ex (GCU_TEST_SW12@sunsw12-121): Fri Jun 7 14:37:09 2002 > > Error: rpccore backend client RPC: Timed out > > > > tgtsvr.ex (GCU_TEST_SW12@sunsw12-121): Fri Jun 7 14:37:12 2002 > > Error: rpccore backend client RPC: Timed out > > >>>>>>>>>>>>>>>>> > > > > Anyone know what the reference to using the '-m' is? I tried adding it > to the tgtsvr command > > line with no effect. >It allows you to increase the size of the target memory cache on the >host. If you are using really large images this might need to be >increased to get reasonable performance. Try searching previous posts >to this group for some hints on sizes. It should never need to be >bigger than the physical RAM size on your target, so if in doubt try >setting it to that. >There are some other guidelines for debugging rpc timout problems, >check out this app note for some troubleshooting guidelines: >http://web1.windriver.com/cgi-bin/windsurf/techtips/public/viewSum.cgi?372 >HTH, >John... > > >Mike McCullough MCC Engineering >President and CEO 9 Cheshire Court > Londonderry, NH 03053 > >mike@mccengineering.com Tel: 603-537-9593 > Fax: 603-434-9890 >www.mccengineering.com Cell: 603-247-1219 > >*********************************************************************************** > 24x7 VxWorks Support Custom Support Programs > VxWorks Training Embedded Consulting Services > A WindLink Partner >*********************************************************************************** Mike McCullough MCC Engineering President and CEO 9 Cheshire Court Londonderry, NH 03053 mike@mccengineering.com Tel: 603-537-9593 Fax: 603-434-9890 www.mccengineering.com Cell: 603-247-1219 *********************************************************************************** 24x7 VxWorks Support Custom Support Programs VxWorks Training Embedded Consulting Services A WindLink Partner *********************************************************************************** From vxwexplo-errs@csg.lbl.gov Tue Jun 11 08:27:00 2002 From: "Sinn, Larry" Date: Tue Jun 11 08:27:02 PDT 2002 Subject: Re: Tornado compiler for 7410 ??? James: You don't need a new compiler, just a new bsp (chip initialization is different). You don't even need to recompile any loaded code. gcc doesn't optimize for any particular PPC, it just needs to know that it's generating code for the PPC. Larry. James Moor Wrote: > Hello, > > We are using Tornado 2.0 for PPC 750 and will change to 7410 soon. > If we don't use the Altivec function,is it still necessary for us to buy > the new compiler from WRS?And if not,which compile option should we use(PPC604)? > Any comments on it would be greately appreciated. > > Cheers. Larry Sinn KLA-Tencor MS I-1009 408 875 0247 voice 160 Rio Robles 408 875 6179 fax San Jose, Ca 95134-1809 larry.sinn@kla-tencor.com From vxwexplo-errs@csg.lbl.gov Tue Jun 11 09:18:10 2002 From: Ilia Bosis Date: Tue Jun 11 09:18:13 PDT 2002 Subject: Re: rngbuf overflow! help me It looks that Your Ethernet driver is definitely to blame. The things that may go bad & cause this behavior, as looks out of my head, are: 1. The driver ISR invokes the netJobAdd() BEFORE the tNetTask completed processing of the previous frame(s). The right approach is to raise some flag when invoking the netJobAdd() and let the task-based driver' code down it when the frame(s) processing is done. While the flag is up, no more netJobAdd(), just add the new frame to the queue. In one design I'd take that approach to the extreme, disabling the device interrupts in place of raising the flag. Of course for that trick to work, the device must have enough logic & DMA capabilities to receive/send a number of frames without the CPU intervention. 2. The tNetTask-based part of the driver causes some pretty long waits. Remember, there is only ONE tNetTask for all networking jobs. If some mis-behaving driver waits too long in it, the whole networking subsystem may be choked. By waits here I mean any operations that may cause some remarkable delay: taking a semaphore; receiving a message; sending a message with a non-zero wait time; and the last but not least, some tight loops in waiting for HW to settle. To debug this the first thing to do is to move the tNetTask portion of the driver to some another dedicated task. To do it replace the call to netJobAdd with semGive() and in that task do forever loop that waits on this semaphore and than calls the function You used to supply as the netJobAdd() parameter. That way You can debug the task-based part of the driver in the leisure of a "normal" task where you can set breakpoints and add debugging prints to Your heart. Hope, this helps Ilia. Mike Anderson wrote in message news:... > VxWorks Greetings! > > On Fri, 07 Jun 2002 04:42:44 -0400, kent liu wrote: > > > I used 3c905b in PentiumPro tornado2. It works well when send the > > packets > > directly, but very bad when bidirectly. It tell me "netJobAdd > > (el3c90xIntrRx) failed" and "netJobAdd: ring buffer overflow!" Can > > anyone give me a help! > > > The tNetTask is run at task level to service the packets once > the ISR has finished. The Ethernet ISR will call netJobAdd and > that will add a function call to the ring buffer that the > tNetTask reads. As it reads one of these entries, it performs > the function indicated, then goes and reads the next function > call and executes that, etc. Very similar to a deferred procedure > call in Win32 or a tasklet/bottom half in Linux. Except that > this function call happens at task level. > > What is happening here is that tNetTask is not getting a chance > to run and work the netJobAdd queue off. This typically happens > when you have a task running at a priority > (usually > 50). This high priority task is eating all of the CPU and > preventing tNetTask from running, hence the overflow. > > Look for user tasks with a priority > 50 and lower them. > > HTH, > > Mike Anderson > -------------------------------------------- Ilia Bosis Software Engineer PacketLight Networks E-mail: Ilia_Bosis@packetlight.com Web: www.packetlight.com From vxwexplo-errs@csg.lbl.gov Wed Jun 12 04:03:06 2002 From: Vxworks Exploder Date: Wed Jun 12 04:03:09 PDT 2002 Subject: comp.os.vxworks newsdigest Comp.Os.Vxworks Daily Digest Wed Jun 12 04:03:03 PDT 2002 Subject: Task pending from memPartAlloc() Subject: Re: porting 82557/8/9 driver from linux to vxworks ------------------------------------------------------- Newsgroups: comp.os.vxworks Subject: Task pending from memPartAlloc() Date: 11 Jun 2002 19:19:54 -0700 From: ilyoungkim@hotmail.com (YoungKim) Organization: http://groups.google.com/ Message-ID: Dear, I have a task pending problem whenever I try to allocate memory using memPartAlloc() in a task. I already created a memory pool using memPartCreate() and was successful in allocating memory from that pool before the task is being created. It is sure that the memory pool has enough free space. The task pending occurs when I try to allocate memory in the task for the first time. The task seems to be pended on semaphore(SEM_M) when checked through vxworks shell. Is there any idea for this? I will greatly appreciate for any kind of advice. Thank you. --------------------------- Newsgroups: comp.os.vxworks Subject: Re: porting 82557/8/9 driver from linux to vxworks Date: Wed, 12 Jun 2002 03:18:36 GMT From: "cfk" Organization: Prodigy Internet http://www.prodigy.com Message-ID: References: <2df53411.0206080529.5557ac4d@posting.google.com> I also noticed in reviewing the Linux driver for the 82557 last year that there was a mistake in the register definitions. It didn't cause my project to not work, but it *might* account for an interrupt storm. Try checking the definitions of the bits in the control registers against the Intel source. I believe you will find a few bits in the command register are wrong in the Linux source. Charles "Markus" wrote in message news:ae1kbe$btm$02$1@news.t-online.com... > Hi, > > > I'm trying to port linux driver for 82557/8/9 intel ether express pro > > network adapter to vxWorks. The problem i'm facing is that i'm getting > > a flurry of interrupts, the status reads 0x0010, which means RU ready. > > I set the base address of the RU and the CU as 0, and give the address > > of the first receive buffer to the card. Am i not supposed to get > > proper interrups now... I something else to be done... The output is: > > If I remember correctly there already exists one driver for the 8255x series > in VxWorks.Using that would save you some pain :-) > > The other issue is that the linux driver as port of the kernel is GPLed. So > you just can't port it and close the source. Donals Becker wouldn't like > that, I guess :-/ > > Bye, > Markus > --------------------------- End of New-News digest ********************** From vxwexplo-errs@csg.lbl.gov Wed Jun 12 07:32:24 2002 From: Mike McCullough Date: Wed Jun 12 07:32:26 PDT 2002 Subject: Re:How to create a global register for all the tasks in I think what you need is to set up either task variables (see taskVarLib) or a context switch hook (taskSwitchHookAdd). Task Variables allow you to have one (or more) 32-bit values stored with each task TCB so the task has it every time it gets scheduled. These actually use a taskSwitchHook to work anyway. If you are looking at keeping a single value available for all tasks and allowing multiple tasks to modify it, then you are looking at some kind of global variable. If this is the case I would highly recommend using a mutex semaphore arrangement for access or you risk having one task corrupting the value before another task is done using it. Hope this helps... Newsgroups: comp.os.vxworks Subject: How to create a global register for all the tasks in VxWorks? Date: Mon, 10 Jun 2002 14:50:08 -0700 From: "Liang Yang" Organization: RTS-LAB Message-ID: Reply-To: "Liang Yang" Hi, We tried use --ffixed option for ccppc, but we found the reserved register is not a global register. When CPU control switched from the current task to another, the content of reserved register is cleared.And when the CPU control switched backed, the content of reserved register is restored. How can I create a global register for all the tasks? Thanks. Liang Mike McCullough MCC Engineering President and CEO 9 Cheshire Court Londonderry, NH 03053 mike@mccengineering.com Tel: 603-537-9593 Fax: 603-434-9890 www.mccengineering.com Cell: 603-247-1219 *********************************************************************************** 24x7 VxWorks Support Custom Support Programs VxWorks Training Embedded Consulting Services A WindLink Partner *********************************************************************************** From vxwexplo-errs@csg.lbl.gov Thu Jun 13 02:49:09 2002 From: zhengjingyan Date: Thu Jun 13 02:49:11 PDT 2002 Subject: how to add PF_KEY socket Dear sir: I am now doing IPSec with vxworks. The PFKEY v2 protocal use the PF_KEY socket. But vxworks do not support PF_KEY protocal family. I have tried to use the function sockLibAdd(), but do not success, it returns error in calling function: pSockLibMap->pSockFunc->socketRtn, when calling socreate() in the function, it returns erro number 43.So I can't continue. Can you help me to solve the problem? Thank you very much. best regards zheng jing yan ______________________________________ =================================================================== ÐÂÀËÃâ·Ñµç×ÓÓÊÏä (http://mail.sina.com.cn) ÐÂÀË·ÖÀàÐÅÏ¢£º¶þÊÖÊг¡×ßÒ»×ߣ¬¸Ã³öÊÖʱ¾Í³öÊÖ£¡ (http://classad.sina.com.cn/2shou/) From vxwexplo-errs@csg.lbl.gov Thu Jun 13 04:03:16 2002 From: Vxworks Exploder Date: Thu Jun 13 04:03:18 PDT 2002 Subject: comp.os.vxworks newsdigest Comp.Os.Vxworks Daily Digest Thu Jun 13 04:03:12 PDT 2002 Subject: dosFs2 Problem - lost chains" cross-linked with another chain NEED HELP! Subject: dosFS question/bug??? Subject: DosFs2 file listings over 4 GB Subject: MUX_MAX_BINDS Subject: problem with iosWrite: tasks waiting for printf?? Subject: WindML/UGL PC BIOS with S3 Subject: ifAddrSet() fails for 2nd interface on same subnet Subject: Crosswind problem: breakpoints, sys calls suspend tasks Subject: Re: PSPAN_TARGET_MEM_ADRS Subject: What does "trcStack aborted: error in top frame (fp)" mean? Subject: Re: What does "trcStack aborted: error in top frame (fp)" mean? Subject: Re: ifAddrSet() fails for 2nd interface on same subnet Subject: different between routeCmd and mRouteADD, mRouteDelete Subject: Priority Problem Subject: acces to ethernet frame Subject: Re: MUX_MAX_BINDS Subject: Re: acces to ethernet frame Subject: Re: Fastest VME based processor board? Subject: Re: ifAddrSet() fails for 2nd interface on same subnet Subject: Re: DosFs2 file listings over 4 GB Subject: Memory Management Subject: DMA from PCI slave Subject: Problem booting from Disk On Chip 2000 Subject: Re: DMA from PCI slave Subject: Re: DMA from PCI slave Subject: Re: T2: how to debug only on 1 file but not on all files ------------------------------------------------------- Newsgroups: comp.os.vxworks Subject: dosFs2 Problem - lost chains" cross-linked with another chain NEED HELP! Date: 12 Jun 2002 07:08:49 -0700 From: mgf_julio@lycos.com (Shanan) Organization: http://groups.google.com/ Message-ID: <3818bea1.0206120608.f07831e@posting.google.com> Hi, I am having a major Hard drive problem. I am using a motorola 8260 (PPC603core) and the following problem was seen when chkdsk is run on the hard drive. "/main/Ai" has illegal start cluster "/main/Ai" file larger than its chain of clusters Entry will be deleted. "/main - lost chains" cross-linked with another chain "/main - lost chains" cross-linked with another chain "/main - lost chains" cross-linked with another chain this last message repeats over and over. If the system is rebooted and chkdsk is run again, the "/main - lost chains" cross-linked with another chain message is all that is displayed and continues to displayed over and over (for the last 15 hours). As far as I can tell (after checking extensively) there never was a file named Ai on the /main partition and no one had any files open in write mode on the /main partition. I need to know how this corruption can occur. I do know what the error means, but this corruption should not occur if there were no files open when the power was recycled or the machine was reset. It almost appears as if every cluster on the /main partition is corrupted, the FAT is definited screwed. Does anyone know of any solutions to this problem. KNown causes?? Has anyone seen this problem before???? Any help or info would be greatly appreciated. Thanx in advance. Shanan mgf_julio@lycos.com --------------------------- Newsgroups: comp.os.vxworks Subject: dosFS question/bug??? Date: Wed, 12 Jun 2002 14:26:46 GMT From: "Tri VU KHAC \(Sony\)" Organization: KPNQwest customer news service Message-ID: Hi, I found that calling dosFsVolUnmount on an unformatted disk causes system crash. Is it a dosFS bug? Cheers, Tri. --------------------------- Newsgroups: comp.os.vxworks Subject: DosFs2 file listings over 4 GB Date: 12 Jun 2002 07:43:27 -0700 From: dcooke@orthstar.com (Dan Cooke) Organization: http://groups.google.com/ Message-ID: <4e264d23.0206120643.5f46c77c@posting.google.com> I have a file that is over 4 GB on a DosFs2 FAT32 system with about 9 GB of total space available. Whenever I do a file listing using the "ll" command, the file size reported back is always shown as 4294967295. The volume is formated with the VxLong type as well. Is there anyway to get the actual size of files over the 4 GB limit other than resorting to an ioctl() command? Dan --------------------------- Newsgroups: comp.os.vxworks Subject: MUX_MAX_BINDS Date: 12 Jun 2002 07:47:07 -0700 From: ckrinke@pulselink.net (Charles Krinke) Organization: http://groups.google.com/ Message-ID: I have a puzzling situation with a new employer where we have purchased Tornado for XScale and I can compile the BSP if I open a DOS window on my windows2000 machine, run torvars.bat and "make vxWorks", but if I try to do a build from within Tornado, then I get a funny error message relating to either USR_MAX_LINK_HDR, IP_MAX_UNITS or MUX_MAX_BINDS being undefined. They are defined, but somehow the Tornado tools are not happy. I have discussed this a bit with the local Windriver FAE, but unfortunately, he hasnt had the time to get it correct so I am a bit on my own. Any comments or suggestions would be helpful as I try to understand what is going on. Charles --------------------------- Newsgroups: comp.os.vxworks Subject: problem with iosWrite: tasks waiting for printf?? Date: 12 Jun 2002 07:59:55 -0700 From: akjayant@hss.hns.com (Maverick) Organization: http://groups.google.com/ Message-ID: <253a5f89.0206120659.7c3160ab@posting.google.com> Hello! I have got two tasks "ha_hm" and "ha_tm" which do pinging and I put the traces of ping using a printf. The two tasks continue the pinging for sometime after which the system just hangs and fails to do any write operation. All the tasks show "PEND" state when this happened but all the pingging stops. When I did task trace it gave me logs included. It seems that none of them is able to do any iosWrite at that point. The priority of both the tasks is same. Anybody have any idea as to what might be wrong here! 'd appreciate any replies! TIA - Amogh - -------------------------- - -> tt(taskNameToId("ha_hm")) 1637e1 _sigWrapper +c9 : _ha_hm_hsq_req (e, 18ea9910, 1f7f9998) c17f8f _ha_hm_hsq_req +20b: _printf (c16674, 1f7f98dc) 117b7a _printf +12 : _fioFormatV ([c16676, 1f7f98cc, &_printbuf, 1, 1f7f9968]) 117ef6 _fioFormatV +4e : _printbuf (c16674, 2, 1) 118a28 _printbuf +10 : _write ([1, c16674, 2, 2, 1f7f98a8]) 12dbbf _write +f : _iosWrite ([1, c16674, 2, 1f7f96bc, 118a2d]) 11533c _iosWrite +70 : noSemQPutEvt ([&_pcConDv, c16674, 2, 2, c16674]) value = 0 = 0x0 117b7a _printf +12 : _fioFormatV ([c16676, 1f7f98cc, &_printbuf, 1, 1f7f9968]) 117ef6 _fioFormatV +4e : _printbuf (c16674, 2, 1) 118a28 _printbuf +10 : _write ([1, c16674, 2, 2, 1f7f98a8]) 12dbbf _write +f : _iosWrite ([1, c16674, 2, 1f7f96bc, 118a2d]) 11533c _iosWrite +70 : noSemQPutEvt ([&_pcConDv, c16674, 2, 2, c16674]) value = 0 = 0x0 - -> tt(taskNameToId("ha_tm")) 1637e1 _sigWrapper +c9 : ba8e6c (e, 1f803950, 1f803944) ba8f3c _ha_tm_main +6c0: ba92cc ([1f7bdbd8, 2000, 2000, 1f803938, 1637e3]) ba930c _ha_tm_main +a90: ba937c (1f7bdbd8) ba9418 _ha_tm_main +b9c: ba96dc (1f7bdbe0) ba9714 _ha_tm_main +e98: _ha_udp_socket_write (13, 6ec9a8c0, afc8, 1f7d22a0, 2c) c1b24b _ha_udp_socket_write+7f : _printf (c1b193) 117b7a _printf +12 : _fioFormatV ([c1b1b2, 1f8037cc, &_printbuf, 1, 1f8037f0]) 117ef6 _fioFormatV +4e : _printbuf (c1b193, 1f, 1) 118a28 _printbuf +10 : _write ([1, c1b193, 1f, 1f, 1f8037a8]) 12dbbf _write +f : _iosWrite ([1, c1b193, 1f, 1f8035bc, 118a2d]) 11533c _iosWrite +70 : noSemQPutEvt ([&_pcConDv, c1b193, 1f, 1f, c1b193]) - -> tt(taskNameToId("SSM")) 1aa8a83 _mgc_sysa_main +673: _mgc_timed_recv (&_g_sysa_module_data, 1f772d3c, 1388, 1f772d42) 1a45075 _mgc_timed_recv+1c0d: _sysa_ha_recv_plt_msg (15, 0) 1aa8cfe _sysa_ha_recv_plt_msg+19e: _sysa_ha_process_plt_msg (1d25c79c, 1f7689ce) 1aa8e59 _sysa_ha_process_plt_msg+45 : _sysa_ha_process_reg_resp (1d25c79c, 1f7689ce) 1aaa06c _sysa_ha_process_reg_resp+188: _printf (1aa9df4, a, 5a) 117b7a _printf +12 : _fioFormatV ([1aa9e08, 1f768974, &_printbuf, 1, 1f76899c]) 118900 _fioFormatV +a58: _printbuf (1f76894a, 2, 1) 118a28 _printbuf +10 : _write ([1, 1f76894a, 2, fffffffd, 1f76894c]) 12dbbf _write +f : _iosWrite ([1, 1f76894a, 2, 1f768760, 118a2d]) 11533c _iosWrite +70 : semMQPendQOk ([&_pcConDv, 1f76894a, 2, 2, 1f76894a]) value = 0 = 0x0 - -> i NAME ENTRY TID PRI STATUS PC SP ERRNO DELAY - ---------- ------------ -------- --- ---------- -------- -------- - ------- ----- tExcTask _excTask 1fef2014 0 PEND 1a6a0e 1fef1f84 0 0 tLogTask _logTask 1feef710 0 PEND 117ac4 1feef3f4 0 0 tShell _shell 1fe7ba70 1 PEND 117ac4 1fe7b744 0 0 tRlogind _rlogind 1fe8b844 2 PEND 117ac4 1fe8b514 0 0 tTelnetd _telnetd 1fe89994 2 PEND 117ac4 1fe898c8 0 0 tWdbTask _wdbCmdLoop 1fe7d070 3 READY 117ac4 1fe7cfcc 3d0004 0 t2 _funcCallWra 1fe74c0c 4 PEND 1a6a0e 1fe74868 1c0001 0 tNetTask _netTask 1feaf0d8 50 READY 117a2b 1feaefc4 3d 0 tFtpdTask _ftpdTask 1fe88430 55 PEND 117ac4 1fe88364 0 0 mgctimer _mgc_timer_m 1c2326f8 97 PEND 117ac4 1c231f94 0 0 sf_exe _sf_main 1c1e30dc 97 PEND 117ac4 1c1e2ca4 0 0 mgcmgcpes _mgcpes_main 1c21ea9c 98 PEND 117ac4 1c21e830 0 0 mgcmgcpbc _bc_mgcp_mai 1c214bc0 98 PEND 117ac4 1c2147b4 0 0 mgcrm _mgc_rm_main 1c200f10 98 PEND 117ac4 1c200b00 0 0 mgccmgr _cmgr_main 1c1eceb0 98 PEND 117ac4 1c1eca68 0 0 mgcpotssa _mgc_potssa_ 1c20adec 99 PEND 117ac4 1c20a9e0 0 0 tPortmapd _portmapd 1fe8d6f4 100 PEND 117ac4 1fe8d5c4 16 0 ha_tm _ha_tm_main 1f803b28 100 PEND 117ac4 1f803550 37 0 ha_hm _ha_hm_main 1f7f9d54 100 PEND 117ac4 1f7f9650 0 0 ha_rm _ha_rm_main 1f7eff80 100 PEND 1a6a0e 1f7efd48 0 0 SSM _mgc_sysa_ma 1f772d74 100 PEND 1a64a9 1f7686f4 3d0004 0 mgcccm _mgc_ccm_mai 1c228870 100 PEND 117ac4 1c228320 0 0 HA_DC _ha_rm_dc_ta 1c1997e8 100 PEND 1a6a0e 1c1994c0 0 0 t3 _sctp_eshell 18eae798 100 READY 119a1d 18eae660 3d0002 0 tSnmpd _snmpdMain 1fe85398 150 PEND 117ac4 1fe84a14 0 0 value = 0 = 0x0 - --------------------- --------------------------- Newsgroups: comp.os.vxworks Subject: WindML/UGL PC BIOS with S3 Date: Wed, 12 Jun 2002 15:00:21 GMT From: Tim Allen Organization: Tim Allen Ltd Message-ID: I'm having trouble getting the WindML PC BIOS driver to work with a P3 board with integrated S3 compatible AGP graphics. I'm getting the VBE compatibility message OK, everything is fine except that setting any valid graphics modes causes the board to lock up. x86, and BIOS are not my strong points (!) but I think the problem is that the graphics uses system memory, rather than it's own for the frame buffer. What I'm not sure about is how I know where that is and whether I can change it and/or prevent it being shared with VxWorks. If anyone has any experience in this area I'd be very grateful for some clues. Thanks, Tim. --------------------------- Newsgroups: comp.os.vxworks Subject: ifAddrSet() fails for 2nd interface on same subnet Date: Wed, 12 Jun 2002 15:11:22 +0000 (UTC) From: "Carl Petersen" Organization: Mailgate.ORG Server - http://www.Mailgate.ORG Message-ID: I want to have 2 interfaces on the same subnet. When I call ifAddrSet() for the second NIC, it fails because a route already exists through the first NIC. This has been discussed in the archives but I can't find a definitive answer to whether this is possible. My WIN32 box has 2 interfaces on the same subnet and I can bind() to either one of the interfaces. Thanks Carl Petersen - -- Posted via Mailgate.ORG Server - http://www.Mailgate.ORG --------------------------- Newsgroups: comp.os.vxworks Subject: Crosswind problem: breakpoints, sys calls suspend tasks Date: 12 Jun 2002 08:49:00 -0700 From: bradeew@yahoo.com (William Bradee) Organization: http://groups.google.com/ Message-ID: Whenever I hit a breakpoint in crosswind, I have to go to WindSh to resume the task before it appears in the debugger window. The same thing with system calls - debugged tasks get suspended, and then I have to resume in WindSh. Stepping through source code is fine. This is T2 environment, ppc 750. Has anyone seen/fixed a problem like this? INCLUDE_DEBUG is #undef'd Thanks, - - Bill - --------------------------- Newsgroups: comp.os.vxworks Subject: Re: PSPAN_TARGET_MEM_ADRS Date: Wed, 12 Jun 2002 11:00:05 -0500 From: "Paul Kangil Choi" Organization: Verio Message-ID: References: Hi carlos, I think "PSPAN_TARGET_MEM_ADRS" is related with PCI chip, PowerSPAN. Paul "carlos" wrote in message news:fc419721.0206031334.478112a@posting.google.com... > I'm trying to compile the sysFei82557End.c driver into my VxWorks BSP. > The macro PSPAN_TARGET_MEM_ADRS is not defined. I include > fei82557End.h (which does not define the PSPAN_TARGET_MEM_ADRS macro). > Where and what should this definition be? --------------------------- Newsgroups: comp.os.vxworks Subject: What does "trcStack aborted: error in top frame (fp)" mean? Date: Wed, 12 Jun 2002 09:15:18 -0700 From: "Liang Yang" Organization: RTS-LAB Message-ID: Reply-To: "Liang Yang" Hi, After I download my program to target machine and run it, I get an error prompt as follows: data access program counter: 0xff088 access address: 0xfffffffc machine status: 0x1032 trcStack aborted: error in top frame (fp) ffffffff _dtors +fff0098f: () Exception number 768: Task: 0x17c100 (joyT) What does this mean? Thanks. Liang --------------------------- Newsgroups: comp.os.vxworks Subject: Re: What does "trcStack aborted: error in top frame (fp)" mean? Date: Wed, 12 Jun 2002 16:36:02 GMT From: "Leonid Rosenboim" Organization: Verio Message-ID: References: Put simply, this means your stack is so screwed, nobody can really tell where and how it got to be this way. Namely, the stack pointer got corrupted. This usually happens by sloppy coding, array defined in stack got written out of bounds. Sometimes, this can be caused by stack overflow (try checkStack). "Liang Yang" wrote in message news:ae7rv1$f3l$1@news.asu.edu... > Hi, > > After I download my program to target machine and run it, > I get an error prompt as follows: > > data access > program counter: 0xff088 > access address: 0xfffffffc > machine status: 0x1032 > trcStack aborted: error in top frame (fp) > ffffffff _dtors +fff0098f: () > > Exception number 768: Task: 0x17c100 (joyT) > > What does this mean? > > Thanks. > > Liang > > > > > --------------------------- Newsgroups: comp.os.vxworks Subject: Re: ifAddrSet() fails for 2nd interface on same subnet Date: Wed, 12 Jun 2002 16:39:39 +0000 (UTC) From: David Laight Organization: BT Openworld Message-ID: <3D07793E.6010601@spamm.me.l8s.co.uk> References: Carl Petersen wrote: > I want to have 2 interfaces on the same subnet. This is not (really) a supported configuration for TCP! What are you hoping to achieve by it? Are the two interfaces connected to teh same cable??? > My WIN32 box has 2 interfaces on the same subnet and I can bind() > to either one of the interfaces. Have you ever looked at which interface packets go out of? or which MAC address in give out in ARP responses? Typically all outbound traffic will go out of a single interface. David --------------------------- Newsgroups: comp.os.vxworks Subject: different between routeCmd and mRouteADD, mRouteDelete Date: 12 Jun 2002 09:56:35 -0700 From: jzhang@drs.ca (Jason) Organization: http://groups.google.com/ Message-ID: Hello: Could anybody tell me what is the different between routeCmd and other functions like mRouteAdd, mRouteDelete Regards, --------------------------- Newsgroups: comp.os.vxworks Subject: Priority Problem Date: 12 Jun 2002 10:31:09 -0700 From: vkinger@hotmail.com (Kinger) Organization: http://groups.google.com/ Message-ID: Hi all, I am developing a project with Vxworks 5.4 and Tornado 2.0 for PowerPC, I am facing a problem where the tsnmpd priority is set for 240 and it changes to 50(tNetTask priority)after I make a build and run spy utility. The strange thing I have noticed is this priority inversion takes place when I do a build from the project and it does not happen when I do the 'rebuild all'. I have included the WDB agent in my project for spy utility. Can someone help?? Kinger. --------------------------- Newsgroups: comp.os.vxworks Subject: acces to ethernet frame Date: Wed, 12 Jun 2002 19:55:39 +0200 From: Ferry Djieya Organization: IRISA, Campus de Beaulieu, 35042 Rennes Cedex, FRANCE Message-ID: <3D078B1A.1C13D38C@irisa.fr> Hi all, Could anybody tell how I can acces to incomming ethernet frame when cmp end driver is running and is attached to IP ? Regard, --------------------------- Newsgroups: comp.os.vxworks Subject: Re: MUX_MAX_BINDS Date: Wed, 12 Jun 2002 11:52:34 -0600 From: Rick Moleres Organization: Xilinx, Inc. Message-ID: <3D078A62.968C0E30@xilinx.com> References: This is a multi-part message in MIME format. - --------------4BF2A7F6F60A6747E58E0635 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Not sure if this is the same problem, but we saw a problem with Tornado 2.0.2 for PPC where we got unresolved externals like muxMaxBinds and ipEtherResolveRtn. Installing the spr67953 patch from WindRiver fixed the problem. Charles Krinke wrote: > I have a puzzling situation with a new employer where we have > purchased Tornado for XScale and I can compile the BSP if I open a DOS > window on my windows2000 machine, run torvars.bat and "make vxWorks", > but if I try to do a build from within Tornado, then I get a funny > error message relating to either USR_MAX_LINK_HDR, IP_MAX_UNITS or > MUX_MAX_BINDS being undefined. They are defined, but somehow the > Tornado tools are not happy. I have discussed this a bit with the > local Windriver FAE, but unfortunately, he hasnt had the time to get > it correct so I am a bit on my own. Any comments or suggestions would > be helpful as I try to understand what is going on. > > Charles - --------------4BF2A7F6F60A6747E58E0635 Content-Type: text/x-vcard; charset=us-ascii; name="Rick.Moleres.vcf" Content-Transfer-Encoding: 7bit Content-Description: Card for Rick Moleres Content-Disposition: attachment; filename="Rick.Moleres.vcf" begin:vcard n:Moleres;Rick tel;fax:(505) 798-4809 tel;work:(505) 798-4870 x-mozilla-html:FALSE org:Xilinx, Inc.;IP Solutions Division adr:;;7801 Jefferson St. NE;Albuquerque;New Mexico;87109;USA version:2.1 email;internet:moleres@xilinx.com fn:Rick Moleres end:vcard - --------------4BF2A7F6F60A6747E58E0635-- --------------------------- Newsgroups: comp.os.vxworks Subject: Re: acces to ethernet frame Date: Wed, 12 Jun 2002 11:12:17 -0700 From: "Dan Gold" Organization: Mailgate.ORG Server - http://www.Mailgate.ORG Message-ID: References: <3D078B1A.1C13D38C@irisa.fr> Sender: gold@ensemble.com "Ferry Djieya" wrote in message news:3D078B1A.1C13D38C@irisa.fr... > Hi all, > > Could anybody tell how I can acces to incomming ethernet frame > > when cmp end driver is running and is attached to IP ? What's a cmp end driver ? Should it be cpm (as in PPC 8xx family) ? Look at your vxWorks manuals regarding Ethernet input hooks and MUX_PROTO_SNARF. hth, Dan Gold gold@ensemble.com --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Fastest VME based processor board? Date: Wed, 12 Jun 2002 11:26:20 -0700 From: "Dan Gold" Organization: Mailgate.ORG Server - http://www.Mailgate.ORG Message-ID: References: Sender: gold@ensemble.com "Mark Fanara" wrote in message news:ec724ed9.0206110852.5341cf8f@posting.google.com... > I looking for the three fastest VME based single processor boards > currently available. I have checked the VME industry group web site > but a head to head comparison is not provided. And if it were provided would you believe it ? Do you think VME board manufacturers would compare themselves to others and not come out on top ? Your question is way too open ended. The "fastest" VME board may not be the "fastest" in your application. What area of performance are you looking for ? Arithmetic, I/O, memory, disk, network, etc... ? > Benchmarks (SPECint, SPECfp) would be helpful. Again, what will these tell you ? That some board with a certain memory, I/O, cache, etc... configuration is faster than a different board with a different configuration ? And even then, I've seen plenty of examples where it doesn't matter what board you're on, lousy software will run slow on it. Just look at the Windows box you're probably using right now... hth, Dan Gold gold@ensemble.com --------------------------- Newsgroups: comp.os.vxworks Subject: Re: ifAddrSet() fails for 2nd interface on same subnet Date: Wed, 12 Jun 2002 19:59:21 +0000 (UTC) From: "Carl Petersen" Organization: Mailgate.ORG Server - http://www.Mailgate.ORG Message-ID: <56750affa2c42b605b4659591597fc8b.81221@mygate.mailgate.org> References: <3D07793E.6010601@spamm.me.l8s.co.uk> David, Thanks for your reply. With WIN32 I can bind to either IP addr and send packets out either interface. ARP responses will be sent by the interface that received the ARP request. And if I bind to a particular IP, even for connectionless UDP, my ARP requests get sent by that particular interface. The Solaris experts tell me that Solaris also supports multiple interfaces on the same subnet, similarly. But I not trying to turn this into "Windows can do it, so why can't vxWorks?" As for whether 2 interfaces are absolutely required? Maybe not, but that decision was made long ago. Probably for redundancy. And until now, we have been using our own cut-down TCP-IP stack without a problem. I now want to consider using the vxWorks TCP stack because the requirements of the device have out-grown our stack. I guess I just have a conceptual problem with this. Why can't 2 interfaces that are physically located on the same piece of hardware be considered 2 independent network devices on the same subnet? Maybe what I am trying to do is somewhat nonstandard for TCP because of routing reasons, but it would save me a world of hurt if I could get it to work. I would appreciate your comments. Regards, Carl Petersen "David Laight" wrote in message news:3D07793E.6010601@spamm.me.l8s.co.uk > Carl Petersen wrote: > > I want to have 2 interfaces on the same subnet. > > This is not (really) a supported configuration for TCP! > What are you hoping to achieve by it? > Are the two interfaces connected to teh same cable??? > > > > My WIN32 box has 2 interfaces on the same subnet and I can bind() > > to either one of the interfaces. > > Have you ever looked at which interface packets go out of? > or which MAC address in give out in ARP responses? > > Typically all outbound traffic will go out of a single > interface. > > David - -- Posted via Mailgate.ORG Server - http://www.Mailgate.ORG --------------------------- Newsgroups: comp.os.vxworks Subject: Re: DosFs2 file listings over 4 GB Date: 12 Jun 2002 15:14:46 -0700 From: dcooke@orthstar.com (Dan Cooke) Organization: http://groups.google.com/ Message-ID: <4e264d23.0206121414.239ef85b@posting.google.com> References: <4e264d23.0206120643.5f46c77c@posting.google.com> > What you can do is modify the source for ll() (actually it is ls() > that does all the work) which is in target/src/usr/usrFsLib.c, > run "make" in that directory with your specific CPU on the command > line, and that will install the new version of useFsLib into the library. > > But when you do that, you will encounter another problem - > the VxWorks printf() function has no support for printing > 64-bit integer values. That is why I have not modified > ls() to support FIONREAD64 - I did not want to rewrite > printf() or to add a special print function to usrFsLib, noone > would let me do that, and I have naively expected that > printf will be supporting 64 bit soon enough, and entered > an SPR into the system to ask for it. Bummer. Thanks for the help. I used the FIONREAD64 and printed out the 64 bit result in two 32 bit hex chunks for now. Dan --------------------------- Newsgroups: comp.os.vxworks Subject: Memory Management Date: 12 Jun 2002 15:15:19 -0700 From: gah205@nyu.edu (GAH) Organization: http://groups.google.com/ Message-ID: <7ce21ebb.0206121415.2e206439@posting.google.com> I'm developing on a ppc604 and am concerned that there are some serious memory issues hampering our effort. memShow(), d(), etc... don't really give me enough visibility as to where my data is ACTUALLY sitting. Is there any way to get a more comprehensive view of my memory? The idea is to do a thorough memory check at every stage (start-up, before/after loading the object, after creation/population of a RAM disk, etc) to ensure that nothing is being written over. Thanks. -g --------------------------- Newsgroups: comp.os.vxworks Subject: DMA from PCI slave Date: Thu, 13 Jun 2002 01:08:14 +0200 From: "Johan Bostedt" Organization: A Customer of Tele2 Message-ID: Hello VxWorkers, I'm using Tornado 2.1, VxWorks 5.4, and the mv5100 BSP. I have a MVME-5110 processor board and a ADC (analog-to-digital converter) card in one of the PMC sites. I want to perform DMA when transferring data from the PMC module to the host card. Unfortunately the ADC card does not support DMA mastering on the PCI-bus. But the SDRAM memory on the PMC module is accessible from the PCI interface. So my plan was to instruct the MVME-5110 to do DMA when reading data from the PMC card. However, after reading the MVME-5100 Programmer's Reference Guide, I can't figure out how to do the DMA (or PCI burst transfer). Does anyone know how to setup the Hawk bridge in order to do PCI burst reads from a PCI slave device? Regards, Johan Bostedt, johan.bostedt@racomna.se --------------------------- Newsgroups: comp.os.vxworks Subject: Problem booting from Disk On Chip 2000 Date: Thu, 13 Jun 2002 01:59:22 GMT From: "John Sestak" Organization: Cox Communications Message-ID: <_%SN8.8801$Hn4.200667@news1.east.cox.net> Hi all, I'm having trouble getting my Inova Pentium 3 board to boot from the DiskOnChip 2000 it has on-board. As instructed by the guys at INOVA, I downloaded the latest M-Systems DOC driver and went through the long list of changes to make to the bootConfig.c, config.h, etc. files in order to get things working. After copying the resulting bootrom_uncmp and vxWorks images to the DOC I try to boot and I get to the point where the 'VxLd 1.2' programming is supposed to run and it just hangs. After reading through many posts about problems similar to this, I think (???) the reason it hangs at this point is because my bootrom_uncmp file is too large (it's 646 KB). I remember seeing one post from a person who was having the same problem (the booting process would hang at the end of the 'VxLd 1.2 ...' message). The individual who responded said that the reason that the boot sequence was hanging was probably due to the bootrom not being contiguous. I therefore went and ran the chkdsk.exe on the bootrom and it said it was contiguous so I don't believe that's the problem. I did however notice another post on the Windriver site saying (SPR# 21338) which said that the bootrom_uncmp for some pc[34]86 machines would not boot properly, in part, due to there being a 600 KB limit on the size of a bootrom_uncmp file. I copied a snippet below (or you can check out the URL if you have a Windsurf account): http://web1.windriver.com/cgi-bin/windsurf/kpl/dispSpr.cgi?21338 .... 4.) The VxWorks bootstrap loader, VxLD 1.2, will (in REAL mode) copy the entire bootrom image from the medium it was stored within (a BIOS Extension ROM, FDD or HDD) to the system memory at linear address 0x00008000. (0800:0000 seg:offset) Since the processor is still operating in REAL mode at this stage, the bootstrap loader may only address from 0x0 to 0x00100000 (lower memory). And, since 0x000a0000 to 0x00100000 is reserved for device IO space in a PC-AT system, that means the initial boot image must be able to reside within (fit into) the address space 0x00008000 to 0x000a0000. This limits the boot image size to about 600KB. When VxLD 1.2 has completed copying the boot image to memory, it will jump to 0x00008000. This is the entry point to _romInit, from romInit.s. .... Does the 600 KB limit on the bootrom_uncmp also apply to pentium boards too? I'm assuming that's why my P3 board hangs at the end of 'VxLd' executing. Oh yeah, I forgot to mention that I'm running dosFs 2.0. Any help would be much appreciated. Thank you, John Sestak Raytheon Systems Company john_S_sestak@raytheon.com --------------------------- Newsgroups: comp.os.vxworks Subject: Re: DMA from PCI slave Date: Thu, 13 Jun 2002 08:16:47 +0000 (UTC) From: David Laight Organization: BT Openworld Message-ID: <3D0854E2.4050409@spamm.me.l8s.co.uk> References: > > However, after reading the MVME-5100 Programmer's Reference Guide, I can't > figure out how to do the DMA (or PCI burst transfer). Does anyone know how > to setup the Hawk bridge in order to do PCI burst reads from a PCI slave > device? There are 2 possibilities: 1) Use a cpu instruction that reads multiple words - this MIGHT get left as a burst operation. 2) Enable the cache on the SRAM area. (This probably involves adding cache invalidate instructions in various places.) OTOH are you sure you need to make these bursts? David --------------------------- Newsgroups: comp.os.vxworks Subject: Re: DMA from PCI slave Date: Thu, 13 Jun 2002 10:35:52 +0200 From: "Johan Bostedt" Organization: Mailgate.ORG Server - http://www.Mailgate.ORG Message-ID: References: Sender: johan.bostedt@racomna.se Leonid, Thank you very much for answering. I really do need a DMA engine since I wan't to free up the CPU. I have performed some tests: I collect 10,600 16-bit samples from the SDRAM over the PCI-bus. a) using sysPciRead32() in a for-loop does the job in 2060 us. (10.3 MBytes/sec) b) using bcopy() does the job in 1280 us. (16.6 MBytes/sec) However bcopy() doesn't do the neccesary endian conversion so I guess these methods are comparable. I need to collect such data blocks at a 1250 Hz rate, which corresponds to a PCI-bus transfer rate of 26.5 MBytes/sec (800 us in between acquisitions). I can't let the CPU spend all the time transfering data from the PCI-bus. There must be a way of implementing DMA.... or? Regards, Johan --------------------------- Newsgroups: comp.os.vxworks Subject: Re: T2: how to debug only on 1 file but not on all files Date: 13 Jun 2002 02:14:34 -0700 From: william.yates@marconi.com (Will Yates) Organization: http://groups.google.com/ Message-ID: <6297e87.0206130114.3f38d373@posting.google.com> References: <200267-112356-48895@foorum.com> <2002610-163753-708486@foorum.com> charly wrote in message news:<2002610-163753-708486@foorum.com>... > Thanks all for your help. > I appreciate a lot the "charmind" solution > Charly Hi Charly, This may be a bit late, but I have used the following kind of rule in some common make rules to specify extra debug options for specific files (albeit not under a VxWorks project). DEBUG_EXTRAS = if [ -f ./flags/$(*F).flg ]; \ then cat ./flags/$(*F).flg; fi $(OBJ_DIR)/%.o %.o: $(SRC_DIR)/%.cc @(echo "") @($(MKDIR) -p $(OBJ_DIR)) @(echo "### Compiling C++ File for: $@") $(CC) $(CCFLAGS) $(shell $(DEBUG_EXTRAS)) -c $< -o $@ We have a similar number of files in the project - and for a particular file file1.cc we need extra compiler flags ... $(SRC_DIR)/file1.cc $(SRC_DIR)/file2.cc Adding the file $(SRC_DIR)/flags/file1.flg which contains just '-g' will result in $(OBJ_DIR)/file1.o being compiled with $(CCFLAGS) -g $(OBJ_DIR)/file2.o being compiled with $(CCFLAGS) I guess you may be able to get this kind of thing into the Tornado Project somehow. Cheers, Will --------------------------- End of New-News digest ********************** From vxwexplo-errs@csg.lbl.gov Thu Jun 13 04:20:08 2002 From: "Sabarivel S" Date: Thu Jun 13 04:20:11 PDT 2002 Subject: Vxworks IP: Router Altert Option Hi, Does IP Router Alert option is supported by Vxworks IP ? Please clarify me on this lines thanks sabari *************************************************************************** This message is proprietary to Future Software Limited (FSL) and is intended solely for the use of the individual to whom it is addressed. It may contain privileged or confidential information and should not be circulated or used for any purpose other than for what it is intended. If you have received this message in error, please notify the originator immediately. If you are not the intended recipient, you are notified that you are strictly prohibited from using, copying, altering, or disclosing the contents of this message. FSL accepts no responsibility for loss or damage arising from the use of the information transmitted by this email including damage from virus. *************************************************************************** From vxwexplo-errs@csg.lbl.gov Thu Jun 13 10:04:21 2002 From: Alan K Biocca Date: Thu Jun 13 10:04:23 PDT 2002 Subject: Vx List Change Proposal We are considering changes to the VxWorks User's Group Exploder here. We need to either: 1) proceed with the planned move to a new machine, or, 2) move the list to a commercial list provider on the net Moving to a commercial provider on the net would reduce our (unfunded) workload and increase the feature set of the list. It would probably let a bit more spam in, but some list providers are pretty spam-resistant, and we could set it up for members-only posting. I would like to get comments from list members on this proposed change. Thanks, Alan K Biocca VxWorks User's Group Exploder Manager From vxwexplo-errs@csg.lbl.gov Fri Jun 14 04:03:15 2002 From: Vxworks Exploder Date: Fri Jun 14 04:03:17 PDT 2002 Subject: comp.os.vxworks newsdigest Comp.Os.Vxworks Daily Digest Fri Jun 14 04:03:11 PDT 2002 Subject: Re: DMA from PCI slave Subject: Re: WindML/UGL PC BIOS with S3 Subject: duplicate IP address Clash Subject: Re: Problem booting from Disk On Chip 2000 Subject: Re: duplicate IP address Clash Subject: Re: duplicate IP address Clash Subject: Error message: cpuFamily(44) and architecturedb file. Subject: Re: What does "trcStack aborted: error in top frame (fp)" mean? Subject: Re: porting 82557/8/9 driver from linux to vxworks Subject: Re: Error message: cpuFamily(44) and architecturedb file. Subject: NFS reads taking far too long Subject: How to disable the inherent priority inversion Subject: Re: NFS reads taking far too long Subject: Re: C pointer function to C++ functino member pointer Subject: Re: How to disable the inherent priority inversion Subject: Re: DMA from PCI slave Subject: Re: Priority Problem Subject: vxworks TIMEOUT question Subject: Jus help me solve the problem and request to all geeks and techies Subject: doubts regarding vxworks message queues Subject: Re: doubts regarding vxworks message queues Subject: SV: DMA from PCI slave Subject: Re: duplicate IP address Clash Subject: [Q] 10M Half-Duplex Problem (with 10M dummy HUB) Subject: Compiler options for #include Subject: Re: Compiler options for #include ------------------------------------------------------- Newsgroups: comp.os.vxworks Subject: Re: DMA from PCI slave Date: Thu, 13 Jun 2002 11:14:36 GMT From: "Leonid Rosenboim" Organization: Verio Message-ID: References: Johan, so you need to get 10k samples 1250 times per sec, that would be 12.5 Mega samples per second at 16 bits. That's a lot !! I was wrong to assume that the SRAM-to-memory transfers would run at full PCI bus speed, while your measurement would suggest that the ADC adds wait states when you access SRAM. It would be very useful to add a PCI bus analyzer (e.g. VMETRO) to measure PCI bus utilization during these transfers. I am not sure that DMA will help you in getting this incredible speed out of this particular ADC board. - - Leonid "Johan Bostedt" wrote in message news:ae9lhf$p0o$1@newsreader.mailgate.org... > Leonid, > > Thank you very much for answering. > I really do need a DMA engine since I wan't to free up the CPU. > > I have performed some tests: > I collect 10,600 16-bit samples from the SDRAM over the PCI-bus. > a) using sysPciRead32() in a for-loop does the job in 2060 us. (10.3 > MBytes/sec) > b) using bcopy() does the job in 1280 us. (16.6 MBytes/sec) > However bcopy() doesn't do the neccesary endian conversion so I guess these > methods are comparable. > > I need to collect such data blocks at a 1250 Hz rate, which corresponds to a > PCI-bus transfer rate of 26.5 MBytes/sec (800 us in between acquisitions). I > can't let the CPU spend all the time transfering data from the PCI-bus. > There must be a way of implementing DMA.... or? > > > > Regards, > Johan > > > > --------------------------- Newsgroups: comp.os.vxworks Subject: Re: WindML/UGL PC BIOS with S3 Date: Thu, 13 Jun 2002 13:37:21 +0200 From: "Werner Schiendl" Message-ID: <3d0883d0@brateggebdc5.br-automation.co.at> References: Hi, I'm not very involved in unified memory architecture systems, but I've some ideas that might help you: VxWorks determines the size of the memory automatically by trying to write/read the memory until it finds a region that seems not be present. This is done in the sysLib.c file that is part of your BSP. Lookup the funktion sysPhysMemTop to get a starting point. The problem here is that the BIOS probably excludes the memory range when reporting the available memory - but of course the memory is still physically existent. To make things (much) worse, VxWorks allocates the memory from top to bottom (i. e. it assigns higher addresses of the memory pool first) on x86 architecture. If your UMA memory region is there, you have good chances that this area is used for all kinds of 'important' stuff allocated and assigned during bootup. So you need to exclude this memory region from the available memory that VxWorks detects. If the region is always the same size, this should be easy to accomplish. See the use of USER_RESERVED_MEM in the sysLib.c file (function sysMemTop). It _should_ suffice to set this macro to the desired size. best regards Werner "Tim Allen" wrote in message news:Xns922BA2CA6C060timallenntlworldcom@62.253.162.106... > I'm having trouble getting the WindML PC BIOS driver to work with a P3 > board with integrated S3 compatible AGP graphics. I'm getting the VBE > compatibility message OK, everything is fine except that setting any valid > graphics modes causes the board to lock up. > > x86, and BIOS are not my strong points (!) but I think the problem is that > the graphics uses system memory, rather than it's own for the frame buffer. > What I'm not sure about is how I know where that is and whether I can > change it and/or prevent it being shared with VxWorks. > > If anyone has any experience in this area I'd be very grateful for some > clues. > > Thanks, > Tim. --------------------------- Newsgroups: comp.os.vxworks Subject: duplicate IP address Clash Date: 13 Jun 2002 05:39:26 -0700 From: Dave.Sanderson@transmitton.co.uk (Dave Sanderson) Organization: http://groups.google.com/ Message-ID: Hi, Im new to this, so please be gentle. Does anyone know of a way of trapping the duplicate IP address message (tNetTask): duplicate IP address 0d031418 sent from ethernet address 00:50:24:02:00:33 which appears in a VxWorks console so that an error / warning can be displayed on the front panel of my system. Ivew looked through the archives and found discussion about this message appearing, but not how to use it. the system is Arm SA1110 / VX5.4, and we have a display available for error messages. TIA Dave --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Problem booting from Disk On Chip 2000 Date: Thu, 13 Jun 2002 09:09:25 -0400 From: david lindauer Message-ID: <3D089985.6DBAE729@notifier-is.net> References: <_%SN8.8801$Hn4.200667@news1.east.cox.net> yes it does apply to pentium boards. This is a general problem related to any PC compatible hardware. One possible workaround is to put the VGA card into graphics mode (would have to be done in the boot sector code) then you can blead into the graphics memory, but I'm not sure how this will work in practice. And it has the down side that you cannot see the presentation given by the boot code. Overall your best bet is to find stuff you don't need in the boot code and get rid of it. Another possibility is to rewrite the boot sector code to insert a secondary loader, then rewrite the initial part of bootrom_* so that you could actually load the boot rom into extended memory at the outset. Not for the faint of heart tho... and I'm not sure how it would interact with the image it is about to load. David John Sestak wrote: > Hi all, > I'm having trouble getting my Inova Pentium 3 board to boot from the > DiskOnChip 2000 it > has on-board. As instructed by the guys at INOVA, I downloaded the latest > M-Systems DOC driver > and went through the long list of changes to make to the bootConfig.c, > config.h, etc. files in > order to get things working. After copying the resulting bootrom_uncmp and > vxWorks images to > the DOC I try to boot and I get to the point where the 'VxLd 1.2' > programming is supposed to run > and it just hangs. After reading through many posts about problems similar > to this, I think > (???) the reason it hangs at this point is because my bootrom_uncmp file is > too large (it's 646 > KB). > I remember seeing one post from a person who was having the same problem > (the booting > process would hang at the end of the 'VxLd 1.2 ...' message). The > individual who responded said > that the reason that the boot sequence was hanging was probably due to the > bootrom not being > contiguous. I therefore went and ran the chkdsk.exe on the bootrom and it > said it was > contiguous so I don't believe that's the problem. I did however notice > another post on the > Windriver site saying (SPR# 21338) which said that the bootrom_uncmp for > some pc[34]86 machines > would not boot properly, in part, due to there being a 600 KB limit on the > size of a > bootrom_uncmp file. I copied a snippet below (or you can check out the URL > if you have a Windsurf > account): > > http://web1.windriver.com/cgi-bin/windsurf/kpl/dispSpr.cgi?21338 > > .... > > 4.) The VxWorks bootstrap loader, VxLD 1.2, will (in REAL mode) > copy the entire bootrom image from the medium it was stored > within (a BIOS Extension ROM, FDD or HDD) to the system > memory at linear address 0x00008000. (0800:0000 seg:offset) > Since the processor is still operating in REAL mode at this > stage, the bootstrap loader may only address from 0x0 to > 0x00100000 (lower memory). And, since 0x000a0000 to 0x00100000 > is reserved for device IO space in a PC-AT system, that means > the initial boot image must be able to reside within (fit into) > the address space 0x00008000 to 0x000a0000. This limits the > boot image size to about 600KB. When VxLD 1.2 has completed > copying the boot image to memory, it will jump to 0x00008000. > This is the entry point to _romInit, from romInit.s. > > .... > > Does the 600 KB limit on the bootrom_uncmp also apply to pentium boards too? > I'm assuming that's > why my P3 board hangs at the end of 'VxLd' executing. Oh yeah, I forgot to > mention that I'm > running dosFs 2.0. Any help would be much appreciated. > > Thank you, > John Sestak > Raytheon Systems Company > john_S_sestak@raytheon.com --------------------------- Newsgroups: comp.os.vxworks Subject: Re: duplicate IP address Clash Date: Thu, 13 Jun 2002 15:27:19 +0200 From: "Werner Schiendl" Message-ID: <3d089d94$1@brateggebdc5.br-automation.co.at> References: Hi, I believe this message is output by the tNetTask using logMsg (at least the message format looks as if it were). You can add your own device (or set it as the only one) to the logging facility with logFdAdd (logFdSet). The IO chapter in the VxWorks programmers guide should get you started on how to develop an appropriate device driver to capture the log messages. You may also consider using a socket or pipe for this, but I have not tried to do this. hth Werner "Dave Sanderson" wrote in message news:da06348c.0206130439.380a461@posting.google.com... > Hi, Im new to this, so please be gentle. > Does anyone know of a way of trapping the duplicate IP address message > (tNetTask): duplicate IP address 0d031418 sent from ethernet address > 00:50:24:02:00:33 > which appears in a VxWorks console so that an error / warning can be > displayed on the front panel of my system. Ivew looked through the > archives and found discussion about this message appearing, but not > how to use it. > the system is Arm SA1110 / VX5.4, and we have a display available for > error messages. > > TIA > > Dave --------------------------- Newsgroups: comp.os.vxworks Subject: Re: duplicate IP address Clash Date: Thu, 13 Jun 2002 13:40:50 GMT From: "Leonid Rosenboim" Organization: Verio Message-ID: References: Off the top of my head: you could trap all logMsg messages (incoluding this one) by using logFdAdd(), e.g. to add a file descriptor of your display device as an additional output channel for this and other error messages. "Dave Sanderson" wrote in message news:da06348c.0206130439.380a461@posting.google.com... > Hi, Im new to this, so please be gentle. > Does anyone know of a way of trapping the duplicate IP address message > (tNetTask): duplicate IP address 0d031418 sent from ethernet address > 00:50:24:02:00:33 > which appears in a VxWorks console so that an error / warning can be > displayed on the front panel of my system. Ivew looked through the > archives and found discussion about this message appearing, but not > how to use it. > the system is Arm SA1110 / VX5.4, and we have a display available for > error messages. > > TIA > > Dave --------------------------- Newsgroups: comp.os.vxworks Subject: Error message: cpuFamily(44) and architecturedb file. Date: 13 Jun 2002 08:16:47 -0700 From: rsramkee@mailcity.com (Ramki) Organization: http://groups.google.com/ Message-ID: Folks, I am trying to connect my tornado 2 on Windows NT to a target which is running an pre-built BSP. The target is running a MIPS64 RISC processor. The BSP was built using Tornado 1.0.1 long back and I possibly cannot rebuild it now. I gather that MIPS64 was referred to as R4000 under MIPS64 under tornado 1.0.1. Please correct me if I am wrong. My problem is that, I am not able to connect my target server to the target. The error message I get is that there is no CPU entry in the "architecturedb" file at the CPU_44 position. The target connection is terminated after this. I tried adding an entry in the "architecturedb" file with CPU MIPS64 and CPU Family MIPS. Now I am able to connect to the target but when I open a shell under tornado, I get the error message "No entry in array cpuFamily(44)..." and the shell window is closed. Please help. Any idea where I am going wrong? Thanks in Advance Ram --------------------------- Newsgroups: comp.os.vxworks Subject: Re: What does "trcStack aborted: error in top frame (fp)" mean? Date: Thu, 13 Jun 2002 12:11:35 -0500 From: Chris Richards Organization: Nortel Message-ID: <3D08D247.A7B40857@nortelNOSPAMnetworks.com> References: That's generally an indication that your task stack frame and pointer are corrupt. Could be someone is trampling your tasks control block (TCB) which contains your stack frame pointer and/or your tasks stack memory. HTH. Chris. Liang Yang wrote: > Hi, > > After I download my program to target machine and run it, > I get an error prompt as follows: > > data access > program counter: 0xff088 > access address: 0xfffffffc > machine status: 0x1032 > trcStack aborted: error in top frame (fp) > ffffffff _dtors +fff0098f: () > > Exception number 768: Task: 0x17c100 (joyT) > > What does this mean? > > Thanks. > > Liang --------------------------- Newsgroups: comp.os.vxworks Subject: Re: porting 82557/8/9 driver from linux to vxworks Date: Sat, 08 Jun 2002 09:56:47 -0400 From: Varndell Engineering Organization: Newsfeeds.com http://www.newsfeeds.com 100,000+ UNCENSORED Newsgroups. Message-ID: <3D020D1F.3753979@hotmail.com> References: <2df53411.0206080529.5557ac4d@posting.google.com> Sameer wrote: > I'm trying to port linux driver for 82557/8/9 intel ether express pro > network adapter to vxWorks. The problem i'm facing is that i'm getting > a flurry of interrupts, the status reads 0x0010, which means RU ready. > I set the base address of the RU and the CU as 0, and give the address > of the first receive buffer to the card. Am i not supposed to get > proper interrups now... I something else to be done... The output is: > > In eeInterrupt status is 10 > In eeInterrupt status is 10 > ... > ... > and the machine restarts... Hi Sameer, Try clearing the interrupt. It doesn't go away by itself. I gotta ask. Why are you reinventing the wheel? This is the one chip Wind seems to be actively supporting and maintaining on most architectures. Their driver still, uh, inhales air, but they have one. It's easier to fix theirs; I've done it many times. ;-) Regards, George Varndell - -- Varndell Engineering, LLC Embedded Systems Expertise http://www.varndellengineering.com --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Error message: cpuFamily(44) and architecturedb file. Date: Thu, 13 Jun 2002 18:36:19 GMT From: "Leonid Rosenboim" Organization: Verio Message-ID: References: You probably need to repeat the table modification in a few additional places, just search the entire TCL script directory for this cpuFamily string. CrossWind is probably going to be even harder. "Ramki" wrote in message news:a792e547.0206130716.613ecd8@posting.google.com... > Folks, > > I am trying to connect my tornado 2 on Windows NT to a target which is > running an pre-built BSP. The target is running a MIPS64 RISC > processor. The BSP was built using Tornado 1.0.1 long back and I > possibly cannot rebuild it now. I gather that MIPS64 was referred to > as R4000 under MIPS64 under tornado 1.0.1. Please correct me if I am > wrong. > > My problem is that, I am not able to connect my target server to the > target. The error message I get is that there is no CPU entry in the > "architecturedb" file at the CPU_44 position. The target connection is > terminated after this. > > I tried adding an entry in the "architecturedb" file with CPU MIPS64 > and CPU Family MIPS. Now I am able to connect to the target but when I > open a shell under tornado, I get the error message "No entry in array > cpuFamily(44)..." and the shell window is closed. > > Please help. Any idea where I am going wrong? > Thanks in Advance > Ram --------------------------- Newsgroups: comp.os.vxworks Subject: NFS reads taking far too long Date: Thu, 13 Jun 2002 20:03:03 +0100 From: "Paul Toms" Message-ID: <3d08ec46$1@pull.gecm.com> Hi, My application uses 'fread()' calls to access a dosFS file system on a PCMCIA-based drive. To do this, it uses NFS over a VME shared memory network. I've found however that occassionally an 'fread()' will take 5 or 10 or 15 secs (always a multiple of 5 secs) to complete and what's more, when this happens, it seems more pre-disposed to happen again until eventually the drive becomes virtually inaccessible. Very little is running on the 'local' (where the application is running) and 'remote' (where the NFS server resides) CPU cards and the time spent in the PCMCIA device drivers themselves, never amounts to more than 4 system clock ticks. The 'nfsTimeoutSec' parameter is set to 25 secs so it would appear not to be a timeout. This problem may of course be an obscure hardware problem but I just wondered if anyone else had seen similar behaviour from NFS. Regards, Paul Toms --------------------------- Newsgroups: comp.os.vxworks Subject: How to disable the inherent priority inversion Date: 13 Jun 2002 12:17:25 -0700 From: vkinger@hotmail.com (Kinger) Organization: http://groups.google.com/ Message-ID: Hi all, I am having a problem in my project where the priority of snmp deamon changes from 240 to 50(tNetTask priority) when I run the spy utility with tWdbTask included in the project. It works fine if I don't have the WDB agent included in the project and don't use spy. Can someone help?? --------------------------- Newsgroups: comp.os.vxworks Subject: Re: NFS reads taking far too long Date: Thu, 13 Jun 2002 19:26:22 GMT From: "Leonid Rosenboim" Organization: Verio Message-ID: References: <3d08ec46$1@pull.gecm.com> You are fecing two problems (at least): 1. There is probably a loss pf packet on the shared memory network, and I strongly recommend you do some research of this fenomena, because on a backplane network packet should never be dropped, if all is normal. Begin by verifying that indeed there is packet loss on the backplane, and then find the reason, it could in turn point to another, more serious problem. 2. The NFS sympthom is typical of packet loss and timeout. The timeout is definitely 5 seconds per retry, check teh value of nfsReXmitSec nfsReXmitUSec these are the timeout between retransmits. If you can't get rid of the packetg loss, decrease this ReXmit time to maybe 0 seconds 50000 usec, no packet should take longer than 50 milisec on a backplanet network. Hope this helps, - - Leonid "Paul Toms" wrote in message news:3d08ec46$1@pull.gecm.com... > Hi, > > My application uses 'fread()' calls to access a dosFS file system on a > PCMCIA-based drive. To do this, it uses NFS over a VME shared memory > network. I've found however that occassionally an 'fread()' will take 5 or > 10 or 15 secs (always a multiple of 5 secs) to complete and what's more, > when this happens, it seems more pre-disposed to happen again until > eventually the drive becomes virtually inaccessible. Very little is running > on the 'local' (where the application is running) and 'remote' (where the > NFS server resides) CPU cards and the time spent in the PCMCIA device > drivers themselves, never amounts to more than 4 system clock ticks. The > 'nfsTimeoutSec' parameter is set to 25 secs so it would appear not to be a > timeout. This problem may of course be an obscure hardware problem but I > just wondered if anyone else had seen similar behaviour from NFS. > > Regards, > Paul Toms > > --------------------------- Newsgroups: comp.os.vxworks Subject: Re: C pointer function to C++ functino member pointer Date: Sat, 8 Jun 2002 13:49:35 -0700 From: "Vladimir Vysotsky" Message-ID: <3d0273f0$1_1@nopics.sjc> References: <8bb5523.0206040717.775138fc@posting.google.com> "Patrick Boulay" wrote: > class foo > { > virtual void onTimeOut(); > } > void foo::onTimeOut() > { > ... > } > > the function wdStart need a function ptr: void (*fnc)(int) > But, I dont want to use STATIC function... As others have pointed out, you have to use a static function. But that's rather simple: class foo { public: void StartTimer(int delay); virtual void onTimeOut(); private: WDOG_ID _wdId; static int wdCallback(int arg) { foo* pThis = (foo *)arg; pThis->onTimeOut(); return OK; } }; The pointer to foo::wdCallback can now be passed to wdStart: void foo::StartTimer(int delay) { wdStart(_wdId, delay, (FUNCPTR)&dwCallback, (int)this); } Note that you don't need any static variables. You also don't need to make the callback function extern "C", as that affects only function name mangling, not the calling convention. Be careful, though, because your onTimeOut method will be called in the ISR context. Regards, Vladimir. --------------------------- Newsgroups: comp.os.vxworks Subject: Re: How to disable the inherent priority inversion Date: Thu, 13 Jun 2002 19:28:31 -0400 From: joe durusau Organization: WEBUSENET.com Message-ID: <3D092A9F.122DFFF6@bellsouth.net> References: Kinger wrote: > Hi all, > I am having a problem in my project where the priority of snmp deamon > changes from 240 to 50(tNetTask priority) when I run the spy utility > with tWdbTask included in the project. It works fine if I don't have > the WDB agent included in the project and don't use spy. > Can someone help?? I don't think you can do anything about that. When a MUTEX with inversion-safe is taken, the priorities can jump. It's unfortunate that the pri doesn't reset so long as the task holds any sems, at least in 5.3 and earlier. Speaking only for myself, Joe Durusau --------------------------- Newsgroups: comp.os.vxworks Subject: Re: DMA from PCI slave Date: 13 Jun 2002 17:46:38 -0700 From: john_94501@yahoo.com (John) Organization: http://groups.google.com/ Message-ID: <488e459a.0206131646.2f922539@posting.google.com> References: <3D0854E2.4050409@spamm.me.l8s.co.uk> Hello all, There is a third option that should work on the MVME5100 as long as you are not using the SCSI controller for disks or anything else... The SCSI controller on these boards contains a DMA engine that can DMA between arbitrary PCI addresses. I have used this very effectively for just the task you are talking about in the past: DMA transfers from a PMC module that did not have its own master capability into main memory. You will need to write a small SCRIPT for the SCSI controller that basically sets up the transfer and will generate an interrupt when it is done. Then a small VxWorks routine to initiate this script and pend waiting for the interrupt. The SCSI controller is capable of burst mode transfers, and, IIRC, 64 bit wide transfers too (assuming your PMC is 64 bits wide of course). HTH, John... David Laight wrote in message news:<3D0854E2.4050409@spamm.me.l8s.co.uk>... > > > > However, after reading the MVME-5100 Programmer's Reference Guide, I can't > > figure out how to do the DMA (or PCI burst transfer). Does anyone know how > > to setup the Hawk bridge in order to do PCI burst reads from a PCI slave > > device? > > There are 2 possibilities: > > 1) Use a cpu instruction that reads multiple words - this MIGHT get > left as a burst operation. > > 2) Enable the cache on the SRAM area. > (This probably involves adding cache invalidate instructions > in various places.) > > OTOH are you sure you need to make these bursts? > > David --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Priority Problem Date: 13 Jun 2002 17:50:21 -0700 From: john_94501@yahoo.com (John) Organization: http://groups.google.com/ Message-ID: <488e459a.0206131650.29fbfaeb@posting.google.com> References: Hello, I think you are confused about the connection between the build and the effect you are seeing. It is quite normal for tasks using networking facilities to occasionally run at the priority of tNetTask. This is the priority inversion protection mechanism at work. It implies that the lower priority task is holding a mutex semaphore that tNetTask is pended on. Until the low priority task releases the semaphore it will inherit the priority of tNetTask. For more information I would suggest that you read the VxWorks Programmer's Guide section about mutual exclusion semaphores and the priority inversion safety mechanism. HTH, John... vkinger@hotmail.com (Kinger) wrote in message news:... > Hi all, > I am developing a project with Vxworks 5.4 and Tornado 2.0 for > PowerPC, I am facing a problem where the tsnmpd priority is set for > 240 and it changes to 50(tNetTask priority)after I make a build and > run spy utility. The strange thing I have noticed is this priority > inversion takes place when I do a build from the project and it does > not happen when I do the 'rebuild all'. I have included the WDB agent > in my project for spy utility. > Can someone help?? > > Kinger. --------------------------- Newsgroups: comp.os.vxworks Subject: vxworks TIMEOUT question Date: 13 Jun 2002 19:04:43 -0700 From: essenlee@hanmail.net (LEE MYUNG SUK) Organization: http://groups.google.com/ Message-ID: my environment : vxworks 5.4 tornado 2.0 mpc860board system clock : 50 MHz I have a problem about usrClock(). After booting, TIMEOUT no working.(no decrement) And enter key hit, prompt is done. VxWorks System Boot Copyright 1984-1998 Wind River Systems, Inc. CPU: Motorola ADS - PowerPC 860 Version: 5.4 BSP version: 1.2/4 Creation date: Mar 22 2001, 14:46:31 Press any key to stop auto-boot... 7 <- no decrement(stop) give me a advice, then thank you ver much..^^ --------------------------- Newsgroups: comp.os.vxworks Subject: Jus help me solve the problem and request to all geeks and techies Date: 13 Jun 2002 22:29:17 -0700 From: vxnerd@rediffmail.com (subbarayan) Organization: http://groups.google.com/ Message-ID: hi to all, I am a nerd vxworks programmer jus now getting in touch with it.I am using version-tornado 1.0 target version,my application is to develop a device driver using vxworks for a pci card which is custom made.Currently i have a problem of not knowing how to configure a target from tornado 1.0.I have tried may ways but was not successful.I will be thankful to any one who can help me learn to configure and create a sample target bootable application using tornado1.0 for vxworks as a step by step proceedure.Also if possible i would like to know the settings i have to make while installing tornado1.0 so that i get a target configured from it.I am looking for a mentor who can guide me in this regards also in future in vxworks.Any one interested can mail me at:vxnerd@rediffmail.com and i will be greatful if any sample code is shown to be configured on target on step by step basis as I am new to this type of softwares.Help files from windriver are not helpful to me.sorry for that. Can any one help me by sending some help about developing device driver from vxworks with a sample code. Advanced thanks to the person helping me. Regards, s.subbarayan --------------------------- Newsgroups: comp.os.vxworks Subject: doubts regarding vxworks message queues Date: 13 Jun 2002 22:44:46 -0700 From: vxnerd@rediffmail.com (subbarayan) Organization: http://groups.google.com/ Message-ID: I want to know and clarify the following doubts as i am new to the vxworks os: 1.In the message queues used in vxworks how can it be ensured that the message posted by a task in the q reaches its desired recipient? 2.How does a task ensure that the message recieved by it is the intended message it has to get which is posted by the sending task? 3.Is there any way of broadcasting a message to all the tasks in vxworks? 4.I need some clear definition regarding the usage of binary semophores.Whats the actual difference between binary and a counting semaphore? I will be thankful to the person responding me with the clarifications. regards, subbarayan.s --------------------------- Newsgroups: comp.os.vxworks Subject: Re: doubts regarding vxworks message queues Date: 14 Jun 2002 07:52:39 GMT From: Johan Borkhuis Organization: Agere Systems Message-ID: References: vxnerd@rediffmail.com (subbarayan) wrote: > 1.In the message queues used in vxworks how can it be ensured that the > message posted by a task in the q reaches its desired recipient? No, if you need this you have to build a mechanism yourself. One thing you could do is add a semaphore ID to your message and let the sending task wait for this semaphore (or just check it with a timeout of 0, if the semaphore is not yet given the call will return with an ERROR otherwise it will return OK). When the receiving task receives the message it will give the semaphore. Another solution will be to send an ACK message back, but how do you know if that message is received...... > 2.How does a task ensure that the message recieved by it is the > intended message it has to get which is posted by the sending task? It cannot. You could even have several tasks reading the same message queue. But you could try something with message ID's. > 3.Is there any way of broadcasting a message to all the tasks in > vxworks? No. > 4.I need some clear definition regarding the usage of binary > semophores.Whats the actual difference between binary and a counting > semaphore? A counting semaphore can be given a number of times and also be taken this number of times. A binary semaphore can be given a number of times, but you can only take it one time. You can see it as a counting semaphore, with a maximum count of 1. See the VxWorks programmers guide ch. 2.4.3. for more information. Groeten, Johan - -- o o o o o o o . . . _____________________________ o _____ || Johan Borkhuis | .][__n_n_|DD[ ====_____ | borkhuis@agere.com | >(________|__|_[_________]_|__________________________| _/oo OOOOO oo` ooo ooo 'o!o!o o!o!o` === VxWorks FAQ: http://www.xs4all.nl/~borkhuis/vxworks/vxworks.html === --------------------------- Newsgroups: comp.os.vxworks Subject: SV: DMA from PCI slave Date: Fri, 14 Jun 2002 09:59:35 +0200 From: "Johan Bostedt" Organization: A Customer of Tele2 Message-ID: References: <3D0854E2.4050409@spamm.me.l8s.co.uk> <488e459a.0206131646.2f922539@posting.google.com> John, This option sounds interesting, but is there really a SCSI controller on the MVME-5100? According to the MVME-5100 Programmers Reference Guide SCSI is supported through a dedicated PMC card, the IPMC-761 or the IPMC-712. However, an alternative DMA engine is what I need. I havent found one yet ... Regards, Johan Bostedt John skrev i diskussionsgruppsmeddelandet:488e459a.0206131646.2f922539@posting.google.com ... > Hello all, > > There is a third option that should work on the MVME5100 as long as > you are not using the SCSI controller for disks or anything else... > The SCSI controller on these boards contains a DMA engine that can DMA > between arbitrary PCI addresses. I have used this very effectively for > just the task you are talking about in the past: DMA transfers from a > PMC module that did not have its own master capability into main > memory. > > You will need to write a small SCRIPT for the SCSI controller that > basically sets up the transfer and will generate an interrupt when it > is done. Then a small VxWorks routine to initiate this script and pend > waiting for the interrupt. The SCSI controller is capable of burst > mode transfers, and, IIRC, 64 bit wide transfers too (assuming your > PMC is 64 bits wide of course). > > HTH, > > John... > > David Laight wrote in message news:<3D0854E2.4050409@spamm.me.l8s.co.uk>... > > > > > > However, after reading the MVME-5100 Programmer's Reference Guide, I can't > > > figure out how to do the DMA (or PCI burst transfer). Does anyone know how > > > to setup the Hawk bridge in order to do PCI burst reads from a PCI slave > > > device? > > > > There are 2 possibilities: > > > > 1) Use a cpu instruction that reads multiple words - this MIGHT get > > left as a burst operation. > > > > 2) Enable the cache on the SRAM area. > > (This probably involves adding cache invalidate instructions > > in various places.) > > > > OTOH are you sure you need to make these bursts? > > > > David --------------------------- Newsgroups: comp.os.vxworks Subject: Re: duplicate IP address Clash Date: 14 Jun 2002 01:26:03 -0700 From: Dave.Sanderson@transmitton.co.uk (Dave Sanderson) Organization: http://groups.google.com/ Message-ID: References: Thanks, at least I know where to start looking now Dave "Leonid Rosenboim" wrote in message news:... > Off the top of my head: > you could trap all logMsg messages (incoluding this one) by using > logFdAdd(), > e.g. to add a file descriptor of your display device as an additional output > channel for this and other error messages. > > "Dave Sanderson" wrote in message > news:da06348c.0206130439.380a461@posting.google.com... > > Hi, Im new to this, so please be gentle. > > Does anyone know of a way of trapping the duplicate IP address message > > (tNetTask): duplicate IP address 0d031418 sent from ethernet address > > 00:50:24:02:00:33 > > which appears in a VxWorks console so that an error / warning can be > > displayed on the front panel of my system. Ivew looked through the > > archives and found discussion about this message appearing, but not > > how to use it. > > the system is Arm SA1110 / VX5.4, and we have a display available for > > error messages. > > > > TIA > > > > Dave --------------------------- Newsgroups: comp.os.vxworks Subject: [Q] 10M Half-Duplex Problem (with 10M dummy HUB) Date: 14 Jun 2002 01:50:16 -0700 From: kotaeji@hanmail.net (Kim Tae Hyung) Organization: http://groups.google.com/ Message-ID: Hi, I have a problem with 10M dummy HUB. o My Test Environment (PC1)----(10M dummy HUB)----(PC2) | | | | (NE1)-----(NE2) - PC1/PC2 : Windows XP - NE1/NE2 (Network Equipment) PPC 405GP - PC2 : executing netserver (netperf server) - PC1 : # netperf -H xx.xx.xx.xx -t TCP_STREAM - NE1 and NE2 are connected via cross cable. - Packet Flow : PC1 --> HUB --> NE1 --> NE2 --> HUB --> PC2 - the port which connects HUB and NE is ibmEmac port. o In this configuration, NE1/NE2 dies after about 1~2 miniutes netperf running. But if we change the hub to 100M, everything is fine. The problem occurs only with 10M dummy HUB. o I want to know about where I should check if the environment is changed to 10M dummy HUB (10M half-duplex). As a driver writer, are the two types HUB(10M dummy & 100M switching) so different? Any comments appreciated. Thanks --------------------------- Newsgroups: comp.os.vxworks Subject: Compiler options for #include Date: Fri, 14 Jun 2002 10:07:00 +0100 From: "Martin Dowie" Message-ID: <3d09b12b$1@pull.gecm.com> The compiler can't find files if the #include uses the '\' character within quotes i.e. #include "..\foo.h" Is there an option either within Tornado 2 or a compiler switch to get it to recognise this character as it does '/'? The code is being automatically generated and I'm also searching for options to get the tool to produce '/' instead of '\' but with little luck so far... --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Compiler options for #include Date: Fri, 14 Jun 2002 06:40:21 -0400 From: joe durusau Organization: WEBUSENET.com Message-ID: <3D09C815.861FD801@bellsouth.net> References: <3d09b12b$1@pull.gecm.com> Martin Dowie wrote: > The compiler can't find files if the #include uses the '\' character > within quotes i.e. > > #include "..\foo.h" > > Is there an option either within Tornado 2 or a compiler switch to > get it to recognise this character as it does '/'? > > The code is being automatically generated and I'm also searching > for options to get the tool to produce '/' instead of '\' but with > little luck so far... Not that I know of. Perhaps you could use sed or some such to change the bad filenames?? Speaking only for myself, Joe Durusau --------------------------- End of New-News digest ********************** From vxwexplo-errs@csg.lbl.gov Fri Jun 14 07:15:16 2002 From: =?iso-8859-1?q?ram=20mohan?= Date: Fri Jun 14 07:15:18 PDT 2002 Subject: Re: Vx List Change Proposal Hi aslong it does not put any spokes in our communication and knowledge sharing it is ok Regards Mohan --- the vxWorks Users Group Exploder wrote: > Submitted-by vxwexplo-errs@csg.lbl.gov Thu Jun 13 > 10:04:21 2002 > Submitted-by: Alan K Biocca > > We are considering changes to the VxWorks User's > Group Exploder here. > > We need to either: > > 1) proceed with the planned move to a new machine, > or, > > 2) move the list to a commercial list provider on > the net > > Moving to a commercial provider on the net would > reduce our (unfunded) > workload and increase the feature set of the list. > It would probably let a > bit more spam in, but some list providers are pretty > spam-resistant, and we > could set it up for members-only posting. > > I would like to get comments from list members on > this proposed change. > > Thanks, > > Alan K Biocca > VxWorks User's Group Exploder Manager > > > ********** > > This is a user group mailing list for vxWorks > related topics > see http://www-vxw.lbl.gov/vxworks for posting > and subscription info __________________________________________________ Do You Yahoo!? Yahoo! - Official partner of 2002 FIFA World Cup http://fifaworldcup.yahoo.com From vxwexplo-errs@csg.lbl.gov Sat Jun 15 04:03:16 2002 From: Vxworks Exploder Date: Sat Jun 15 04:03:19 PDT 2002 Subject: comp.os.vxworks newsdigest Comp.Os.Vxworks Daily Digest Sat Jun 15 04:03:12 PDT 2002 Subject: Re: DMA from PCI slave Subject: Re: vxworks TIMEOUT question Subject: Re: DMA from PCI slave Subject: How to assign desired IRQ to my hardware in VxWorks Subject: Re: doubts regarding vxworks message queues Subject: Re: How to assign desired IRQ to my hardware in VxWorks Subject: PPP CHAP "no authentication files accessible" Subject: Re: vxworks TIMEOUT question Subject: Re: [Q] 10M Half-Duplex Problem (with 10M dummy HUB) Subject: Re: NFS reads taking far too long Subject: Re: Jus help me solve the problem and request to all geeks and techies Subject: Re: NFS reads taking far too long Subject: Re: Task pending from memPartAlloc() Subject: VxSim with Windows XP Subject: Re: VxSim with Windows XP Subject: Re: dosFs2 Problem - lost chains" cross-linked with another chain NEED HELP! Subject: Re: DosFs2 file listings over 4 GB Subject: Re: DMA from PCI slave Subject: PPC optimized inflate ? Subject: Re: VxSim with Windows XP Subject: Re: Problem booting from Disk On Chip 2000 Subject: Re: DMA from PCI slave Subject: Spy: 200% total ? Subject: Anybody uses NFSD (server)? Subject: Re: NFS reads taking far too long Subject: Question about sym895 Subject: message queue doubt Subject: Re: PPC optimized inflate ? Subject: Re: PPC optimized inflate ? ------------------------------------------------------- Newsgroups: comp.os.vxworks Subject: Re: DMA from PCI slave Date: Fri, 14 Jun 2002 13:07:18 +0200 From: "Michael Lawnick" Organization: Buergernetz Dillingen Message-ID: References: Reply-To: "Michael Lawnick" Sender: mlawnick@p5088fb9b.dip.t-dialin.net Hi Johan, have you checked, whether you could abuse your PCI2VME-bridge ? If I remember correctly, it's a Tundra UNIVERSE II, which is DMA capable - it even supports a script. But I'm not sure, whether source _and_ destination may be local (i.e. PCI) addresses. Regards, Michael Lawnick >"Johan Bostedt" schrieb im Newsbeitrag news:zvQN8.2854$t4.6413@nntpserver.swip.net... > Hello VxWorkers, > > I'm using Tornado 2.1, VxWorks 5.4, and the mv5100 BSP. > > I have a MVME-5110 processor board and a ADC (analog-to-digital converter) > card in one of the PMC sites. > I want to perform DMA when transferring data from the PMC module to the host > card. > > Unfortunately the ADC card does not support DMA mastering on the PCI-bus. > But the SDRAM memory on the PMC module is accessible from the PCI interface. > So my plan was to instruct the MVME-5110 to do DMA when reading data from > the PMC card. > > However, after reading the MVME-5100 Programmer's Reference Guide, I can't > figure out how to do the DMA (or PCI burst transfer). Does anyone know how > to setup the Hawk bridge in order to do PCI burst reads from a PCI slave > device? > > > Regards, > Johan Bostedt, johan.bostedt@racomna.se > > > > --------------------------- Newsgroups: comp.os.vxworks Subject: Re: vxworks TIMEOUT question Date: Fri, 14 Jun 2002 13:25:28 +0200 From: "Werner Schiendl" Message-ID: <3d09d283$1@brateggebdc5.br-automation.co.at> References: Hi, your bootrom obviously has a problem with your clock. It looks like the taskDelay used for the count down never expires. You need to check your BSPs clock handling code and the configuration of your board to make sure the clock is working properly. Maybe there are jumpers or other means to configure the clock. best regards Werner "LEE MYUNG SUK" wrote in message news:a0405799.0206131804.2715aa89@posting.google.com... > my environment : vxworks 5.4 tornado 2.0 mpc860board > system clock : 50 MHz > > I have a problem about usrClock(). > After booting, TIMEOUT no working.(no decrement) > And enter key hit, prompt is done. > > > VxWorks System Boot > > > Copyright 1984-1998 Wind River Systems, Inc. > > > > CPU: Motorola ADS - PowerPC 860 > Version: 5.4 > BSP version: 1.2/4 > Creation date: Mar 22 2001, 14:46:31 > > > Press any key to stop auto-boot... > 7 <- no decrement(stop) > > > give me a advice, then thank you ver much..^^ --------------------------- Newsgroups: comp.os.vxworks Subject: Re: DMA from PCI slave Date: Fri, 14 Jun 2002 13:38:03 +0200 From: "Michael Lawnick" Organization: Buergernetz Dillingen Message-ID: References: Reply-To: "Michael Lawnick" Sender: mlawnick@p5088fb9b.dip.t-dialin.net Its me again, sorry should have read first, then answer: UNIVERSE will only do PCI<->VME transfers :-( Next I looked into the HAWK section of mv5100 - I couldn't find any DMA-capability ?! Enabling cache on the address window of your external memory will speed up things to the max, but as Leonid already mentioned, the bottle neck might be your SRAM. Regards, Michael Lawnick "Michael Lawnick" schrieb im Newsbeitrag news:aecip5$90i$1@snoopy.bndlg.de... > Hi Johan, > > have you checked, whether you could abuse your PCI2VME-bridge ? If I > remember correctly, it's a Tundra UNIVERSE II, which is DMA capable - it > even supports a script. But I'm not sure, whether source _and_ destination > may be local (i.e. PCI) addresses. > > Regards, > Michael Lawnick > > >"Johan Bostedt" schrieb im Newsbeitrag > news:zvQN8.2854$t4.6413@nntpserver.swip.net... > > Hello VxWorkers, > > > > I'm using Tornado 2.1, VxWorks 5.4, and the mv5100 BSP. > > > > I have a MVME-5110 processor board and a ADC (analog-to-digital converter) > > card in one of the PMC sites. > > I want to perform DMA when transferring data from the PMC module to the > host > > card. > > > > Unfortunately the ADC card does not support DMA mastering on the PCI-bus. > > But the SDRAM memory on the PMC module is accessible from the PCI > interface. > > So my plan was to instruct the MVME-5110 to do DMA when reading data from > > the PMC card. > > > > However, after reading the MVME-5100 Programmer's Reference Guide, I can't > > figure out how to do the DMA (or PCI burst transfer). Does anyone know how > > to setup the Hawk bridge in order to do PCI burst reads from a PCI slave > > device? > > > > > > Regards, > > Johan Bostedt, johan.bostedt@racomna.se > > > > > > > > > > --------------------------- Newsgroups: comp.os.vxworks Subject: How to assign desired IRQ to my hardware in VxWorks Date: 14 Jun 2002 05:41:15 -0700 From: rajesha_n@hotmail.com (Rajesh) Organization: http://groups.google.com/ Message-ID: Dear All, We are facing some problem in VxWorks while interrupt handling. We are using CPCI based Single Board Computer along with IP Carrier boards. On IP Carrier Board we are mounted IP modules (like Timer Counter modules). As soon as Carrier Board interrupt is enabled using drivers of Timer Counter module the system is rebooting. We found the problem,this is because BIOS is assigning the same IRQ for both On-Board ethernet ( Which is on Single Board Computer) as well as the Carrier Board. The driver for the Carrier Board does not support sharable interrupts under VxWorks.Please can any one suggest me how to assign a particular IRQ for a Carrier Board under VxWorks (ie the IRQ which is not assigned to other hardware).Is it possible to manual assign IRQ in BIOS or in VxWorks.The Carrier Board vendor is saying that the driver will work only if the interrupt which is assigned to Carrier Board must not shared with other hardware. Now how to assign the free interrupt to our Carrier Board. looking forward for the reply Thanks and regards Rajesh TridentInfosol Bangalore email: rajesha_n@hotmail.com --------------------------- Newsgroups: comp.os.vxworks Subject: Re: doubts regarding vxworks message queues Date: Fri, 14 Jun 2002 09:10:30 -0400 From: Keith Arner Organization: Marconi Message-ID: References: Reply-To: Keith Arner On 13 Jun 2002, subbarayan wrote: > I want to know and clarify the following doubts as i am new to the > vxworks os: > 1.In the message queues used in vxworks how can it be ensured that the > message posted by a task in the q reaches its desired recipient? When you do a msgQSend(), the return value indicates if the message was successfully queued. OK indicates success, ERROR indicates that something went wrong (probably that the message queue was full). If you want to have reliable transmission, even in the face of the message queue being full, you will need to build that yourself. However, if you have some way to prove that your queue will never overflow (by carefull analysis of the send and recieve rates, and the size of the queue), you could simply use a vanilla message queue. > 2.How does a task ensure that the message recieved by it is the > intended message it has to get which is posted by the sending task? Assuming that msgQSend() returned OK, the message is enqueued. Baring wild memory corruptions, you don't need to worry about messages in a message queue spontaneously disappearing or jumping to a different queue. The message will be delivered to the task that does a msgQReceive(). If you have multiple tasks receiving from the same message queue, there is no (general) way to predict which task will get a particular message. If you only have one task receiving, then you know that the message will go to that task. > 3.Is there any way of broadcasting a message to all the tasks in > vxworks? No. Tasks only receive messages from a message queue if they do a msgQReceive() on the queue. If a task doesn't care to read a message, then it will never receive one. Perhaps you were asking "is there a way to broadcast a message to all tasks waiting on a particular message queue"? Once again, the answer would be no. If you have multiple tasks waiting, there is no way to predict which task will get which message. You could, however, have each task waiting on a seperate queue, and send one message on each queue. But without knowing what you are trying to accomplish, it's not clear what you would need to do. > 4.I need some clear definition regarding the usage of binary > semophores.Whats the actual difference between binary and a counting > semaphore? The difference between the two is what happens when you do two semGive()'s on a semaphore, without an intervening semTake(). For a binary semaphore, semGive() is idempotent: the second semGive() will leave the semaphore in the same state. For a counting semaphore, the second (and third, and fourth, etc.) semGive() will change the state of the semaphore. More specifically, if you do multiple semGive()'s on a counting semaphore, semTake() will succeed an equal number of times (the semaphore "counts" how many times you give it). On the other hand, for a binary semaphore, you can give it many times, but then only take it once (the semaphore only has two states: able_to_be_taken and not_able_to_be_taken). Which you want to use depends on how you want to structure your application. If you want to preserve the number of times the semaphore is given, use a counting semaphore. If just want to signal that it's time to start working (and possibly let the receiving task loop consuming all work), then a binary semaphore is the way to go. Keith - -- mv ~karner /loony/bin --------------------------- Newsgroups: comp.os.vxworks Subject: Re: How to assign desired IRQ to my hardware in VxWorks Date: Fri, 14 Jun 2002 15:23:13 +0200 From: "Werner Schiendl" Message-ID: <3d09ee1c$1@brateggebdc5.br-automation.co.at> References: Hi, 1) your carrier board driver should fix his driver. Shared interrupt support, IIRC, is a precondition for PCI conformance. 2) If your BIOS supports settings for PCI configuration should not be too hard to find out. Your BIOS should come with a tool for configuring it. Check out if there is an option for what you want. 3) As a last resort, you can consider reprogram the IRQ mapping of your board. This requires you to program the PCI controller / bridge and the interrupt controller appropriately. This is hardware specific, you need to find out what chipset is in use and get the documentation for it. Since your board comes with BIOS that initializes the hardware, I doubt that your BSP has support for this built in. But check your BSP documentation anyway - maybe you are lucky. hth Werner "Rajesh" wrote in message news:d3570688.0206140441.336c947f@posting.google.com... > Dear All, > > We are facing some problem in VxWorks while interrupt handling. > We are using CPCI based Single Board Computer along with IP Carrier > boards. > On IP Carrier Board we are mounted IP modules (like Timer Counter > modules). > As soon as Carrier Board interrupt is enabled using drivers of Timer > Counter module the system is rebooting. We found the problem,this is > because BIOS is assigning the same IRQ for both On-Board ethernet ( > Which is on Single Board Computer) as well as the Carrier Board. The > driver for the Carrier Board does not support sharable interrupts > under VxWorks.Please can any one suggest me how to assign a particular > IRQ for a Carrier Board under VxWorks (ie the IRQ which is not > assigned to other hardware).Is it possible to manual assign IRQ in > BIOS or in VxWorks.The Carrier Board vendor is saying that the driver > will work only if the interrupt which is assigned to Carrier Board > must not shared with other hardware. > > Now how to assign the free interrupt to our Carrier Board. > > looking forward for the reply > > Thanks and regards > Rajesh > TridentInfosol > Bangalore > email: rajesha_n@hotmail.com --------------------------- Newsgroups: comp.os.vxworks Subject: PPP CHAP "no authentication files accessible" Date: Fri, 14 Jun 2002 16:03:05 +0200 From: Joachim Wittmann Message-ID: <3D09F799.5080502@spam.de> Hi, I've got a problem to get CHAP authentification with vxWorks5.4 PPP running. My ppp_options file contains the following options silent_mode no_pap ipcp_accept_local ipcp_accept_remote lcp_echo_interval 30 lcp_echo_failure 10 require_chap #require_pap local_auth_name xxx remote_auth_name yyy chap_file /doc0/Versorgung/original/secrets #pap_file /doc0/Versorgung/original/secrets If I call pppInit() with the options above I get an error returning "ppp0: peer authentication required but no authentication files accessible" If I add the require_pap option pppInit() suceeds but then pap authentification is being used instead of chap. I don't have any further clue what's going wrong. For completeness this is the content of secrets xxx yyy PASSWORD1 * yyy xxx PASSWORD2 * Thanks for responses Joachim Wittmann - --- - -mail: j.wittmannATstoye.de --------------------------- Newsgroups: comp.os.vxworks Subject: Re: vxworks TIMEOUT question Date: Fri, 14 Jun 2002 10:27:34 -0700 From: Joe Durusau Organization: Lockheed Martin Corporation Message-ID: <3D0A2786.5240E993@lmco.com> References: <3d09d283$1@brateggebdc5.br-automation.co.at> Werner Schiendl wrote: > > Hi, > > your bootrom obviously has a problem with your clock. > It looks like the taskDelay used for the count down never expires. > > You need to check your BSPs clock handling code and the configuration of > your board to make sure the clock is working properly. Maybe there are > jumpers or other means to configure the clock. > > best regards > Werner > > "LEE MYUNG SUK" wrote in message > news:a0405799.0206131804.2715aa89@posting.google.com... > > my environment : vxworks 5.4 tornado 2.0 mpc860board > > system clock : 50 MHz > > > > I have a problem about usrClock(). > > After booting, TIMEOUT no working.(no decrement) > > And enter key hit, prompt is done. > > > > > > VxWorks System Boot > > > > > > Copyright 1984-1998 Wind River Systems, Inc. > > > > > > > > CPU: Motorola ADS - PowerPC 860 > > Version: 5.4 > > BSP version: 1.2/4 > > Creation date: Mar 22 2001, 14:46:31 > > > > > > Press any key to stop auto-boot... > > 7 <- no decrement(stop) > > > > > > give me a advice, then thank you ver much..^^ On the off-chance that the board is brand new, many MOTO dvices have an option that turns off the internal clock oscillator. Check the docs for the board. Speaking only for myself, Joe Durusau --------------------------- Newsgroups: comp.os.vxworks Subject: Re: [Q] 10M Half-Duplex Problem (with 10M dummy HUB) Date: Fri, 14 Jun 2002 15:48:41 GMT From: "Leonid Rosenboim" Organization: Verio Message-ID: References: "Kim Tae Hyung" wrote in message news:b1b90dae.0206140050.424309d9@posting.google.com... [snip] > As a driver writer, are the two types HUB(10M dummy & 100M switching) > so different? Yes, my dear Kim, they are very different. First, the throughput of a Hub is 20 times smaller than a L2 Switch, because the Switch is 100Mbps and is full-duplex. In fact the ratio is way above 1:20 because the Hub is a shared medium, and only one node can tramit at any given time, the others trying to tansmit will get a "collision", but in a switch, all the nodes can transmit at the same time if they whish, as long as no two transmitters are targetting the same receiver. So far for the networking backgrounder ;-) The problem with yout driver is because at 10Mbps Half duplex, the packets are not transmitted out of the NE2 box as fast as they arrive into it with the cross cable, and probably one of your VxWorks systems is running out of buffer space, and freeze as a result. This I beleive to be a serious bug, but you can usually circumvent this bug by inreasing the network buffers. HTH, - Leonid --------------------------- Newsgroups: comp.os.vxworks Subject: Re: NFS reads taking far too long Date: Fri, 14 Jun 2002 18:35:15 +0100 From: "Paul Toms" Message-ID: <3d0a2932$1@pull.gecm.com> References: <3d08ec46$1@pull.gecm.com> Thanks for that. I have now set the nfsReXmitSec/nfsReXmitUSec values as you suggested (via the target shell) but found no change to the problem ie. occassional freads are still taking a multiple of 5 secs to complete. I have also now noticed that the start-up, FTP boot of my vxworks image to the remote card will also timeout occassionally. Both these symptoms tend to show up after the card has been powered up a while and dissappear if the card is allowed to cool. I'm not sure why the '5 secs' continues to figure in the symptoms but I'm beginning to suspect a temperature-related hardware problem. "Leonid Rosenboim" wrote in message news:newscache$livnxg$eqn$1@lnews.actcom.co.il... > You are fecing two problems (at least): > > 1. There is probably a loss pf packet on the shared memory network, > and I strongly recommend you do some research of this fenomena, because > on a backplane network packet should never be dropped, if all is normal. > Begin by verifying that indeed there is packet loss on the backplane, > and then find the reason, it could in turn point to another, more serious > problem. > > 2. The NFS sympthom is typical of packet loss and timeout. The timeout > is definitely 5 seconds per retry, check teh value of > > nfsReXmitSec > nfsReXmitUSec > > these are the timeout between retransmits. If you can't get rid of the > packetg loss, decrease this ReXmit time to maybe 0 seconds 50000 usec, > no packet should take longer than 50 milisec on a backplanet network. > > Hope this helps, > - Leonid > > "Paul Toms" wrote in message > news:3d08ec46$1@pull.gecm.com... > > Hi, > > > > My application uses 'fread()' calls to access a dosFS file system on a > > PCMCIA-based drive. To do this, it uses NFS over a VME shared memory > > network. I've found however that occassionally an 'fread()' will take 5 or > > 10 or 15 secs (always a multiple of 5 secs) to complete and what's more, > > when this happens, it seems more pre-disposed to happen again until > > eventually the drive becomes virtually inaccessible. Very little is > running > > on the 'local' (where the application is running) and 'remote' (where the > > NFS server resides) CPU cards and the time spent in the PCMCIA device > > drivers themselves, never amounts to more than 4 system clock ticks. The > > 'nfsTimeoutSec' parameter is set to 25 secs so it would appear not to be a > > timeout. This problem may of course be an obscure hardware problem but I > > just wondered if anyone else had seen similar behaviour from NFS. > > > > Regards, > > Paul Toms > > > > > > --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Jus help me solve the problem and request to all geeks and techies Date: Fri, 14 Jun 2002 18:08:29 GMT From: "cfk" Organization: Prodigy Internet http://www.prodigy.com Message-ID: References: Dear Subbarayan: I would suspect the first thing you need to do is to study existing implementations of PCI driver software in vxWorks. There are several. Personally, I find that the network drivers are very useful for understanding how to do PCI configuration, reads and writes. The Tornado documentation is quite useful. All of the subroutines including the ones used for pci find, reading and writing configuration space, setting up DMA if required are shown as examples in the END network driver source. If you dont have that source, contact your Windriver FAE. If you do have it, look in target/src/drv/pci for pciConfigLib.c, pciConfigShow.c and other interesting files. You will also find ln7990End.c to be interesting, as this is a functional END driver for a PCI device that works just fine, thank you very much. Also, there is a templateEnd.c file that is quite useful for developing new PCI network drivers. If your custom chip is not a network driver, there is still quite a bit of useful information in the network driver files (including the header files, which everyone has) to help you on your quest. Charles "subbarayan" wrote in message news:f81c4277.0206132129.be85829@posting.google.com... > hi to all, > I am a nerd vxworks programmer jus now getting in touch with it.I am > using version-tornado 1.0 target version,my application is to develop > a device driver using vxworks for a pci card which is custom > made.Currently i have a problem of not knowing how to configure a > target from tornado 1.0.I have tried may ways but was not successful.I > will be thankful to any one who can help me learn to configure and > create a sample target bootable application using tornado1.0 for > vxworks as a step by step proceedure.Also if possible i would like to > know the settings i have to make while installing tornado1.0 so that i > get a target configured from it.I am looking for a mentor who can > guide me in this regards also in future in vxworks.Any one interested > can mail me at:vxnerd@rediffmail.com and i will be greatful if any > sample code is shown to be configured on target on step by step basis > as I am new to this type of softwares.Help files from windriver are > not helpful to me.sorry for that. > Can any one help me by sending some help about developing device > driver from vxworks with a sample code. > Advanced thanks to the person helping me. > Regards, > s.subbarayan --------------------------- Newsgroups: comp.os.vxworks Subject: Re: NFS reads taking far too long Date: Fri, 14 Jun 2002 18:29:39 GMT From: "Leonid Rosenboim" Organization: Verio Message-ID: References: <3d08ec46$1@pull.gecm.com> <3d0a2932$1@pull.gecm.com> Once gaian, Paul, you are dealing with TWO PROBLEMS rather than one. The packet loss problem would cause both NFS and FTP to timeout, and I have suggested previously that the packet loss on a backplane should be seriously investigated. Temperature or other hardware problems could be the cause of this packet loss, and inspecting the network driver counters can reveal the character of this problem. The other problem you have is you don't seem to ba bale to effectively reduce the NFS client timeout. The reason is that the global variables that I have previously mentioned, are used only during INITIALIZATION of the NFS client, therefore changing them on-the-fly has no effect. There are many ways to change this, I would probably set these variables in usrConfig.c or usrNetwork.c and make sure the statements I add come before the NFS client is initialized. Hope this helps, - - Leonid "Paul Toms" wrote in message news:3d0a2932$1@pull.gecm.com... > Thanks for that. I have now set the nfsReXmitSec/nfsReXmitUSec values as you > suggested (via the target shell) but found no change to the problem ie. > occassional freads are still taking a multiple of 5 secs to complete. I have > also now noticed that the start-up, FTP boot of my vxworks image to the > remote card will also timeout occassionally. Both these symptoms tend to > show up after the card has been powered up a while and dissappear if the > card is allowed to cool. I'm not sure why the '5 secs' continues to figure > in the symptoms but I'm beginning to suspect a temperature-related hardware > problem. > > > > "Leonid Rosenboim" wrote in message > news:newscache$livnxg$eqn$1@lnews.actcom.co.il... > > You are fecing two problems (at least): > > > > 1. There is probably a loss pf packet on the shared memory network, > > and I strongly recommend you do some research of this fenomena, because > > on a backplane network packet should never be dropped, if all is normal. > > Begin by verifying that indeed there is packet loss on the backplane, > > and then find the reason, it could in turn point to another, more serious > > problem. > > > > 2. The NFS sympthom is typical of packet loss and timeout. The timeout > > is definitely 5 seconds per retry, check teh value of > > > > nfsReXmitSec > > nfsReXmitUSec > > > > these are the timeout between retransmits. If you can't get rid of the > > packetg loss, decrease this ReXmit time to maybe 0 seconds 50000 usec, > > no packet should take longer than 50 milisec on a backplanet network. > > > > Hope this helps, > > - Leonid > > > > "Paul Toms" wrote in message > > news:3d08ec46$1@pull.gecm.com... > > > Hi, > > > > > > My application uses 'fread()' calls to access a dosFS file system on a > > > PCMCIA-based drive. To do this, it uses NFS over a VME shared memory > > > network. I've found however that occassionally an 'fread()' will take 5 > or > > > 10 or 15 secs (always a multiple of 5 secs) to complete and what's more, > > > when this happens, it seems more pre-disposed to happen again until > > > eventually the drive becomes virtually inaccessible. Very little is > > running > > > on the 'local' (where the application is running) and 'remote' (where > the > > > NFS server resides) CPU cards and the time spent in the PCMCIA device > > > drivers themselves, never amounts to more than 4 system clock ticks. The > > > 'nfsTimeoutSec' parameter is set to 25 secs so it would appear not to be > a > > > timeout. This problem may of course be an obscure hardware problem but I > > > just wondered if anyone else had seen similar behaviour from NFS. > > > > > > Regards, > > > Paul Toms > > > > > > > > > > > > --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Task pending from memPartAlloc() Date: Wed, 12 Jun 2002 07:06:30 GMT From: "Leonid Rosenboim" Organization: Verio Message-ID: References: The pending task is waiting on the Mutex semaphore that protects the memory pool (partition) from race conditions. It looks like another task has called a function to access this pool, and then crashed (task suspended, deleted, restarted), and thus "foregot" to give back the Mutex semaphore. I have seen something like this once, when an application had some of its tasks restarted regularly sometimes would restart a task at a time it owns a Mutex, and this would never give that Mutex back. Every Mutex has e field that contains the current Mutex owner, i.e. the last one that succesfully got access to the Mutex, but it never checks if the owner is alive or not. - - Leonid "YoungKim" wrote in message news:ab0ec0b1.0206111819.6612c2ec@posting.google.com... > Dear, > > I have a task pending problem whenever I try to allocate memory using > memPartAlloc() in a task. > I already created a memory pool using memPartCreate() and was successful > in allocating memory from that pool before the task is being created. > It is sure that the memory pool has enough free space. The task pending > occurs when I try to allocate memory in the task for the first time. > The task seems to be pended on semaphore(SEM_M) when checked through vxworks > shell. > Is there any idea for this? > I will greatly appreciate for any kind of advice. > Thank you. --------------------------- Newsgroups: comp.os.vxworks Subject: VxSim with Windows XP Date: Fri, 14 Jun 2002 19:46:26 GMT From: "Stefan Schurman" Message-ID: Has anyone gotten the ULIP drivers working with Windows XP and VxSim? My machine crashes when I try installing the drivers. Any advice would be appreciated. Thanks! Stef --------------------------- Newsgroups: comp.os.vxworks Subject: Re: VxSim with Windows XP Date: Fri, 14 Jun 2002 21:59:40 +0200 From: "Martin Raabe" Organization: 1&1 Internet AG Message-ID: References: ello Stef, did you follow the Windows2000 instructions for installing and use of VxSim/ULIP? Just my 2 Euro Cents! - -- Martin Raabe E: Martin.Raabe@BaSystemNoSpAm.de "Stefan Schurman" schrieb im Newsbeitrag news:mKrO8.3047$uX3.1510@nwrddc01.gnilink.net... > Has anyone gotten the ULIP drivers working with Windows XP and VxSim? My > machine crashes when I try installing the drivers. > > Any advice would be appreciated. > > Thanks! > Stef > > --------------------------- Newsgroups: comp.os.vxworks Subject: Re: dosFs2 Problem - lost chains" cross-linked with another chain NEED HELP! Date: Wed, 12 Jun 2002 14:47:22 GMT From: "Leonid Rosenboim" Organization: Verio Message-ID: References: <3818bea1.0206120608.f07831e@posting.google.com> Shanan, This sympthom suggests that you have got a problem with the hard disk block driver, the file system is getting bogus data from the disk, or fails to write any data to the disk, or both. The file system code is taking a rather naive approach towards the block driver and all the interface circuity, assuming they perform its commands perfectly. If that is not the case, hell breaks loose, as it did for you. What I would suggest to do in this situation, is take one step at a time, run a series of tests on the hard disk block driver. There are many things that could be wrong, but most frequently the psoblems have to do with DMA and Cache coherency. Then of course you can mount the file system on a RAM drive, in order to test the file system code without the hard disk interface and driver. Lastly, some time ago I have informed this newsgroup about a bug in PowerPC version of DosFs2.0, arising from the PowerPC use of floating point registers when generating 64-bit integer arithmetic. See the group archives. Hope this helps, - - Leonid Rosenboim "Shanan" wrote in message news:3818bea1.0206120608.f07831e@posting.google.com... > Hi, > > I am having a major Hard drive problem. I am using a motorola 8260 > (PPC603core) and the following problem was seen when chkdsk is run on > the hard drive. > > "/main/Ai" has illegal start cluster > "/main/Ai" file larger than its chain of clusters Entry will be > deleted. > > "/main - lost chains" cross-linked with another chain > "/main - lost chains" cross-linked with another chain > "/main - lost chains" cross-linked with another chain > > this last message repeats over and over. If the system is rebooted and > chkdsk is run again, the "/main - lost chains" cross-linked with > another chain message is all that is displayed and continues to > displayed over and over (for the last 15 hours). > > As far as I can tell (after checking extensively) there never was a > file named Ai on the /main partition and no one had any files open in > write mode on the /main partition. > > I need to know how this corruption can occur. I do know what the error > means, but this corruption should not occur if there were no files > open when the power was recycled or the machine was reset. It almost > appears as if every cluster on the /main partition is corrupted, the > FAT is definited screwed. > > Does anyone know of any solutions to this problem. KNown causes?? Has > anyone seen this problem before???? > > > Any help or info would be greatly appreciated. > > Thanx in advance. > > Shanan > > mgf_julio@lycos.com --------------------------- Newsgroups: comp.os.vxworks Subject: Re: DosFs2 file listings over 4 GB Date: Wed, 12 Jun 2002 15:04:56 GMT From: "Leonid Rosenboim" Organization: Verio Message-ID: References: <4e264d23.0206120643.5f46c77c@posting.google.com> Danny, the problem with ll() is that it uses the standard 32-bit ioctl commands, and whenever a returned value can not be represented in a 32-bit variable, a special value is returned, so the application knows it should use the 64-bit codes instead. What you can do is modify the source for ll() (actually it is ls() that does all the work) which is in target/src/usr/usrFsLib.c, run "make" in that directory with your specific CPU on the command line, and that will install the new version of useFsLib into the library. But when you do that, you will encounter another problem - the VxWorks printf() function has no support for printing 64-bit integer values. That is why I have not modified ls() to support FIONREAD64 - I did not want to rewrite printf() or to add a special print function to usrFsLib, noone would let me do that, and I have naively expected that printf will be supporting 64 bit soon enough, and entered an SPR into the system to ask for it. Bummer. Let me know if you need additional help. - - Leonid Rosenboim "Dan Cooke" wrote in message news:4e264d23.0206120643.5f46c77c@posting.google.com... > I have a file that is over 4 GB on a DosFs2 FAT32 system > with about 9 GB of total space available. Whenever I do > a file listing using the "ll" command, the file size > reported back is always shown as 4294967295. > > The volume is formated with the VxLong type as well. > Is there anyway to get the actual size of files over > the 4 GB limit other than resorting to an ioctl() command? > > Dan --------------------------- Newsgroups: comp.os.vxworks Subject: Re: DMA from PCI slave Date: 14 Jun 2002 14:09:20 -0700 From: john_94501@yahoo.com (John) Organization: http://groups.google.com/ Message-ID: <488e459a.0206141309.5fd97fbd@posting.google.com> References: <3D0854E2.4050409@spamm.me.l8s.co.uk> <488e459a.0206131646.2f922539@posting.google.com> Hello, > This option sounds interesting, but is there really a SCSI controller on the > MVME-5100? > According to the MVME-5100 Programmers Reference Guide SCSI is supported > through a dedicated PMC card, the IPMC-761 or the IPMC-712. Indeed; sorry - I've always been using the 26xx and 36xx boards and they always had at least one SCSI controller on them. > However, an alternative DMA engine is what I need. I havent found one yet > ... The SCSI controller was the only one I found when I was looking for something that would support generic DMA xfers. All the other devices would only support DMA between their own space and a PCI address. If you have a spare PMC slot, perhaps adding the SCSI card is the way to go (or getting a friendly hardware guy to make you up a simple DMA engine - they were starting to have FPGA PCI interface designs a few years back, so this might not be too tough to do now). Sorry, John... > John skrev i > diskussionsgruppsmeddelandet:488e459a.0206131646.2f922539@posting.google.com > ... > > Hello all, > > > > There is a third option that should work on the MVME5100 as long as > > you are not using the SCSI controller for disks or anything else... > > The SCSI controller on these boards contains a DMA engine that can DMA > > between arbitrary PCI addresses. I have used this very effectively for > > just the task you are talking about in the past: DMA transfers from a > > PMC module that did not have its own master capability into main > > memory. > > > > You will need to write a small SCRIPT for the SCSI controller that > > basically sets up the transfer and will generate an interrupt when it > > is done. Then a small VxWorks routine to initiate this script and pend > > waiting for the interrupt. The SCSI controller is capable of burst > > mode transfers, and, IIRC, 64 bit wide transfers too (assuming your > > PMC is 64 bits wide of course). > > > > HTH, > > > > John... > > > > David Laight wrote in message > news:<3D0854E2.4050409@spamm.me.l8s.co.uk>... > > > > > > > > However, after reading the MVME-5100 Programmer's Reference Guide, I > can't > > > > figure out how to do the DMA (or PCI burst transfer). Does anyone know > how > > > > to setup the Hawk bridge in order to do PCI burst reads from a PCI > slave > > > > device? > > > > > > There are 2 possibilities: > > > > > > 1) Use a cpu instruction that reads multiple words - this MIGHT get > > > left as a burst operation. > > > > > > 2) Enable the cache on the SRAM area. > > > (This probably involves adding cache invalidate instructions > > > in various places.) > > > > > > OTOH are you sure you need to make these bursts? > > > > > > David --------------------------- Newsgroups: comp.os.vxworks Subject: PPC optimized inflate ? Date: Fri, 14 Jun 2002 23:35:41 +0200 From: "Rene Straub" <_remove_rene.straub@yetnet.ch> Organization: Swisscom IP+ (post doesn't reflect views of Swisscom) Message-ID: Folks, has anyone made an attempt to optimize the inflate function (as used in inflateLib) for a PPC 850/860 target. Maybe some tricky optimizations or the use of assembly code could help speed up the slow thing. Cheers - - Rene Straub --------------------------- Newsgroups: comp.os.vxworks Subject: Re: VxSim with Windows XP Date: Fri, 14 Jun 2002 23:34:12 +0200 From: "Martin Raabe" Organization: 1&1 Internet AG Message-ID: References: Hello Stef, take a look at: http://www.xs4all.nl/~borkhuis/vxworks/vxw_pt5.html#5.8 - -- Martin Raabe E: Martin.Raabe@BaSystemnospam.de "Stefan Schurman" schrieb im Newsbeitrag news:mKrO8.3047$uX3.1510@nwrddc01.gnilink.net... > Has anyone gotten the ULIP drivers working with Windows XP and VxSim? My > machine crashes when I try installing the drivers. > > Any advice would be appreciated. > > Thanks! > Stef > > --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Problem booting from Disk On Chip 2000 Date: Thu, 13 Jun 2002 07:13:39 GMT From: "Leonid Rosenboim" Organization: Verio Message-ID: References: <_%SN8.8801$Hn4.200667@news1.east.cox.net> John, Your problem is definitely due to the size being more than 600KB. ANy x86 board, including Pentium, Celeron, Xeon, Athlon, ... all share the same real-mode limitations, which is not in the CPU per se, but in the BIOS and system architecture. VxLd uses real-mode and BIOS calls to access disk drive to get the boot image. Because you use DOC, your max image size is probably more like 500KB, need to leave room for the DOC BIOS redirector too. One way I can suggest you to reduce memory consumption is customize your configuration of DosFs 2.0 to include only the modules you really need. DosFs 2.0 is a modular component, and some of its sub-components are optional. You probably can do without FAT32, VFAT, Disk Cache, Consistency checker (aka chkdsk), formatter. You only need FAT16, 8.3 directory handler and maybe the partition manager. HTH, - - Leonid Rosenboim "John Sestak" wrote in message news:_%SN8.8801$Hn4.200667@news1.east.cox.net... > Hi all, > I'm having trouble getting my Inova Pentium 3 board to boot from the > DiskOnChip 2000 it > has on-board. As instructed by the guys at INOVA, I downloaded the latest > M-Systems DOC driver > and went through the long list of changes to make to the bootConfig.c, > config.h, etc. files in > order to get things working. After copying the resulting bootrom_uncmp and > vxWorks images to > the DOC I try to boot and I get to the point where the 'VxLd 1.2' > programming is supposed to run > and it just hangs. After reading through many posts about problems similar > to this, I think > (???) the reason it hangs at this point is because my bootrom_uncmp file is > too large (it's 646 > KB). > I remember seeing one post from a person who was having the same problem > (the booting > process would hang at the end of the 'VxLd 1.2 ...' message). The > individual who responded said > that the reason that the boot sequence was hanging was probably due to the > bootrom not being > contiguous. I therefore went and ran the chkdsk.exe on the bootrom and it > said it was > contiguous so I don't believe that's the problem. I did however notice > another post on the > Windriver site saying (SPR# 21338) which said that the bootrom_uncmp for > some pc[34]86 machines > would not boot properly, in part, due to there being a 600 KB limit on the > size of a > bootrom_uncmp file. I copied a snippet below (or you can check out the URL > if you have a Windsurf > account): > > http://web1.windriver.com/cgi-bin/windsurf/kpl/dispSpr.cgi?21338 > > .... > > 4.) The VxWorks bootstrap loader, VxLD 1.2, will (in REAL mode) > copy the entire bootrom image from the medium it was stored > within (a BIOS Extension ROM, FDD or HDD) to the system > memory at linear address 0x00008000. (0800:0000 seg:offset) > Since the processor is still operating in REAL mode at this > stage, the bootstrap loader may only address from 0x0 to > 0x00100000 (lower memory). And, since 0x000a0000 to 0x00100000 > is reserved for device IO space in a PC-AT system, that means > the initial boot image must be able to reside within (fit into) > the address space 0x00008000 to 0x000a0000. This limits the > boot image size to about 600KB. When VxLD 1.2 has completed > copying the boot image to memory, it will jump to 0x00008000. > This is the entry point to _romInit, from romInit.s. > > .... > > Does the 600 KB limit on the bootrom_uncmp also apply to pentium boards too? > I'm assuming that's > why my P3 board hangs at the end of 'VxLd' executing. Oh yeah, I forgot to > mention that I'm > running dosFs 2.0. Any help would be much appreciated. > > Thank you, > John Sestak > Raytheon Systems Company > john_S_sestak@raytheon.com > > --------------------------- Newsgroups: comp.os.vxworks Subject: Re: DMA from PCI slave Date: Thu, 13 Jun 2002 07:22:12 GMT From: "Leonid Rosenboim" Organization: Verio Message-ID: References: Johan, I do not have any particular experience with the DMA engine of your VME board, but here is an advise I hope you will find useful: It is indeed too bad that the ADC board eint got the Bus Master support, cause that the coolest way to transfer data. On the other hand, the fact that its got on-board SRAM, pretty much takes care of your problem, really. The really nasty performance is when data is getting from A/D into memory (SRAM in your case), cause then it has to work in sync with the A/D clock, which is probably much slower than PCI et al. To transfer your data from on board SRAM to your CPU RAM is probably going to be fast enough using simple bcopy() routine by the CPU. The speed of doing this with DMA is going to be almost the same, as in both cases the speed will be limitted by the PCI bus only (except that the DMA could use advanced PCI cycles, e.g. page mode, if the PMC card supports them). To your advantage is the fact that you wont need to deal with cache coherency issues, and save the time to set up and terminate (interrupt) the DMA operation. HTH, - Leonid "Johan Bostedt" wrote in message news:zvQN8.2854$t4.6413@nntpserver.swip.net... > Hello VxWorkers, > > I'm using Tornado 2.1, VxWorks 5.4, and the mv5100 BSP. > > I have a MVME-5110 processor board and a ADC (analog-to-digital converter) > card in one of the PMC sites. > I want to perform DMA when transferring data from the PMC module to the host > card. > > Unfortunately the ADC card does not support DMA mastering on the PCI-bus. > But the SDRAM memory on the PMC module is accessible from the PCI interface. > So my plan was to instruct the MVME-5110 to do DMA when reading data from > the PMC card. > > However, after reading the MVME-5100 Programmer's Reference Guide, I can't > figure out how to do the DMA (or PCI burst transfer). Does anyone know how > to setup the Hawk bridge in order to do PCI burst reads from a PCI slave > device? > > > Regards, > Johan Bostedt, johan.bostedt@racomna.se > > > > --------------------------- Newsgroups: comp.os.vxworks Subject: Spy: 200% total ? Date: Sat, 15 Jun 2002 01:14:43 GMT From: emdezpk@yahoo.ca (Duke Skylurker) Organization: MCOM Message-ID: Hi, Spy shows me statistics with some tasks > 100% and with 200% total. What could it be? May be I am running the timer at twice the speed of sysClkRateGet ?? Thanks, Duke S. --------------------------- Newsgroups: comp.os.vxworks Subject: Anybody uses NFSD (server)? Date: Sat, 15 Jun 2002 01:21:54 GMT From: emdezpk@yahoo.ca (Duke Skylurker) Organization: MCOM Message-ID: Hi, Just to test the system, I tried RamDrv -> DosFs -> NfsExport It works, but some NFS clients for Windows (all I have seen so far) have problems with it. Some can not write files longer than 4K, others sporadically fail in directory creation or listing, etc. a) Is there a way to change some parameters, to make NFSD compatible? b) Do you know of any Windows client that is stable and works without problems? c) The damn thing is SLOW. Way slower than my regular drive sharing. Is it normal? Thanks, Duke S. --------------------------- Newsgroups: comp.os.vxworks Subject: Re: NFS reads taking far too long Date: 14 Jun 2002 18:58:34 -0700 From: john_94501@yahoo.com (John) Organization: http://groups.google.com/ Message-ID: <488e459a.0206141758.14637c43@posting.google.com> References: <3d08ec46$1@pull.gecm.com> Hello, How many cards do you have on your backplane network? If more than two (i.e. one master, and one slave), try reducing it to just the two and see if the problem still exists. If it doesn't, then the problem probably relates to bus arbitration timeouts when releasing packets in the master (the slaves need to "own" the bus to do this, but if they timout several times they used to just give up and that would result in a packet buffer being effectively lost). This is a very old SPR (#9312) for which you should be able to get the fix if you don't already have it (you didn't mention a version of VxWorks). There are a few things that you can try however, depending on the version of VxWorks you have: For 5.3(.x): ============ From a shell, set the global variable smPktTasTries to be a large number (I used 100,000). It is probably set to 5000 in your current system. For 5.4 & later (incl. AE): ========================== The documentation for smLib will explain how to make the same changes. There are three variables documented, smLockTakeDelayMin, smLockTakeDelayMax and smLockTakeTriesMin. The last one, smLockTaskTriesMin, contains the value 5000 by default; change this to see if it improves your performance. HTH, John... "Paul Toms" wrote in message news:<3d08ec46$1@pull.gecm.com>... > Hi, > > My application uses 'fread()' calls to access a dosFS file system on a > PCMCIA-based drive. To do this, it uses NFS over a VME shared memory > network. I've found however that occassionally an 'fread()' will take 5 or > 10 or 15 secs (always a multiple of 5 secs) to complete and what's more, > when this happens, it seems more pre-disposed to happen again until > eventually the drive becomes virtually inaccessible. Very little is running > on the 'local' (where the application is running) and 'remote' (where the > NFS server resides) CPU cards and the time spent in the PCMCIA device > drivers themselves, never amounts to more than 4 system clock ticks. The > 'nfsTimeoutSec' parameter is set to 25 secs so it would appear not to be a > timeout. This problem may of course be an obscure hardware problem but I > just wondered if anyone else had seen similar behaviour from NFS. > > Regards, > Paul Toms --------------------------- Newsgroups: comp.os.vxworks Subject: Question about sym895 Date: Sat, 15 Jun 2002 12:28:58 +0900 From: "bigfire" Organization: Inet Internet Services Message-ID: Hi all, my SCSI card is pmc895 manufactured by Concurrent Technologines, which uses syn895 SCSI controller and card type is PMC. I used vxWorks driver ncr810.o and define device type as NCR810_DEVICE_ID. When my CPU board boot, the board hang up after "intEnable (SCSI_INT_LVL);" When iterrupt requested the registers was as vellow istat = 0x01, SCSI status0 = 0x00, SCSI status1 = 0x00 DMA status = 0xa0. ncr810: bus fault (DSPS = 0x00000000) DBC = (0x000deaf0) Why did bus fault occured? A reply is greatly appreciated. ___________________________________________________ ncr810DelayCount = NCR810_DELAY_MULT; /* Create the SCSI controller */ if ((pSysScsiCtrl = (SCSI_CTRL *) ncr810CtrlCreate ( (UINT8 *) baseAddr, (UINT) NCR810_40MHZ, (UINT16) devType )) == NULL) { return (ERROR); } /* connect the SCSI controller's interrupt service routine */ if (intConnect (INUM_TO_IVEC (SCSI_INT_VEC), ncr810Intr_DS, (int) pSysScsiCtrl) == ERROR) { return (ERROR); } /* Enable SCSI interrupts */ intEnable (SCSI_INT_LVL); --------------------------- Newsgroups: comp.os.vxworks Subject: message queue doubt Date: 14 Jun 2002 21:51:15 -0700 From: vxnerd@rediffmail.com (subbarayan) Organization: http://groups.google.com/ Message-ID: hi to everyone, thanks to the mentors who replied me earlier and the mentors who r going to reply to this query. Can any one clarify my doubt? The situation is like this: Theres a single message queue setup in my project.Taska posts a message in it.The same message has to reach taskb and taskc.Taskb has high priority than taskc. Now my doubt is if task b takes the message from the queue,is there any chance that task c can get the message from the same queue?becos my understanding about message queue is that a message once posted in a queue if at all taken by first task waiting for it,that message disappears from the queue.Now what should I do inorder to make task c get the message after task b takes it from the same message queue?Also tell me if my understanding of message queue as mentioned above is correct or not? note:i have only one message queue in my project and no space for another and other than taskb reposting the same message again to the same queue so that taskc takes it is there any other way?Further i don't want to change the priority of taskb and taskc. sorry if my question looks silly.But u mentors have to take some pain in making me understand this(a request plz). any mentors replying can send me mail at vxnerd@rediffmail.com --------------------------- Newsgroups: comp.os.vxworks Subject: Re: PPC optimized inflate ? Date: Sat, 15 Jun 2002 05:30:16 GMT From: "Gary M" Organization: AT&T Broadband Message-ID: References: I haven't, but since it is based on public domain software, you could always take a crack at it. Is the problem with deflashing the rom? If so, make sure RAM cache is enabled, and you have set the optimal wait states for the ROM. If you are really ambitious, migrate from a 8-bit wide ROM array to 32-bit. That will cut ROM accesses by 75%. "Rene Straub" <_remove_rene.straub@yetnet.ch> wrote in message news:aednfn$6ae$1@rex.ip-plus.net... > Folks, > > has anyone made an attempt to optimize the inflate > function (as used in inflateLib) for a PPC 850/860 > target. > Maybe some tricky optimizations or the use of > assembly code could help speed up the slow > thing. > > Cheers > - Rene Straub > > > > --------------------------- Newsgroups: comp.os.vxworks Subject: Re: PPC optimized inflate ? Date: Sat, 15 Jun 2002 09:44:40 +0000 (UTC) From: David Laight Organization: BT Openworld Message-ID: <3D0B0C81.7020906@spamm.me.l8s.co.uk> References: Gary M wrote: > I haven't, but since it is based on public domain software, you could always > take a crack at it. > > Is the problem with deflashing the rom? If so, make sure RAM cache is > enabled, and you have set the optimal wait states for the ROM. You can (probably) also cache ROM accesses - Helped on my system. (Of course, if you want to write to the ROMs you will need them mapped twice...) David --------------------------- End of New-News digest ********************** From vxwexplo-errs@csg.lbl.gov Mon Jun 17 02:08:40 2002 From: manuvdp@manuvdp.mbox.media.kyoto-u.ac.jp Date: Mon Jun 17 02:08:42 PDT 2002 Subject: linker problem > multiple definition of ... Hello, i am troubled with following problem. i use cc386 compiler on Tornado 1.0.1. and try to compile and link about 10 files together... compiling is no problem, its the linking which doesn't work... This is a part of what i get, doing it: .. cc386 -BC:\Tornado/host/x86-win32/lib/gcc-lib/ -m486 -ansi -nostdinc -O -fvolatile -nostdl ib -fno-builtin -fno-defer-pop -Wall -I/h -I. -IC:\Tornado\target\config\all -IC:\Tornado\target/h -IC:\Tornado\target/src/config -IC:\Tornado\target/src/drv -DCPU=I80486 -g -I C:\Tornado\target\h -fno-builtin -O -fno-defer-pop -nostdinc -c -Iclasses\h -Istable\h PCIfiles\pciio.cpp -o pciio.vxo cc386 -BC:\Tornado/host/x86-win32/lib/gcc-lib/ -m486 -ansi -nostdinc -O -fvolatile -nostdl ib -fno-builtin -fno-defer-pop -Wall -I/h -I. -IC:\Tornado\target\config\all -IC:\Tornado\target/h -IC:\Tornado\target/src/config -IC:\Tornado\target/src/drv -DCPU=I80486 -g -I C:\Tornado\target\h -fno-builtin -O -fno-defer-pop -nostdinc -c -Iclasses\h -Istable\h PCIfiles\pciIomapLib.c -o pciIomapLib.vxo ... > compiling seems OK ! but linking ... ld386 -o VR.vxw -r VR1.vxo misc.vxo isamisc.vxo isaio.vxo ieio.vxo readcfg.vxo virtualworld.vxo pciio.vxo pciIomapLib.vxo misc.vxo(.data+0x0):C:\Tornado\target\src\manu\vworld/misc.cpp: multiple definition of `ERRFLAG' VR1.vxo(.data+0x13c):C:\Tornado\target\src\manu\vworld/VR1.cpp: first defined here misc.vxo(.data+0x4):C:\Tornado\target\src\manu\vworld/misc.cpp: multiple definition of `sysAuxClkRateOrg' VR1.vxo(.data+0x140):C:\Tornado\target\src\manu\vworld/VR1.cpp: first defined here .. and it goes on and on. Now, i dont understand why i get this message. The variables which are considered to be multiply defined or only present in the main file, which is VR1.cpp and not in the other files... For some reason they get into the object files of these other files and cause a multiple definition ? How can i solve this problem ? Whats the reason of this problem. Is it indeed the linker? Or what do i do wrong ? thanks very much for any advice. ps: the make file i use to compile and link is pasted at the end of this message... Emmanuel Vander Poorten, Kyoto University, Yoshikawa Lab, Katholieke Universiteit Leuven, # Makefile - makefile skeleton for time_test.c # # Copyright (C) 1996 Wind River Systems, Inc. # # This file was generated via the Tornado Project Facility. # CPU = I80486 TOOL = gnu ADDED_CFLAGS = -g -I$(WIND_BASE)\target\h -fno-builtin -O -fno-defer-pop -nostdinc -c -Iclasses\h -Istable\h OBJECTS = VR1.vxo misc.vxo isamisc.vxo isaio.vxo ieio.vxo readcfg.vxo virtualworld.vxo pciio.vxo pciIomapLib.vxo include $(WIND_BASE)/target/h/make/defs.bsp include $(WIND_BASE)/target/h/make/make.$(CPU)$(TOOL) include $(WIND_BASE)/target/h/make/defs.$(WIND_HOST_TYPE) include $(WIND_BASE)/target/h/make/rules.bsp VR.vxw: $(OBJECTS) $(LD) -o VR.vxw -r $(OBJECTS) VR1.vxo: VR1.cpp $(CC) $(CFLAGS) VR1.cpp -o VR1.vxo misc.vxo: misc.cpp $(CC) $(CFLAGS) misc.cpp -o misc.vxo virtualworld.vxo: virtualworld.cpp $(CC) $(CFLAGS) virtualworld.cpp -o virtualworld.vxo isamisc.vxo: ISAfiles\isamisc.cpp $(CC) $(CFLAGS) ISAfiles\isamisc.cpp -o isamisc.vxo isaio.vxo: ISAfiles\isaio.cpp $(CC) $(CFLAGS) ISAfiles\isaio.cpp -o isaio.vxo ieio.vxo: ISAfiles\ieio.c $(CC) $(CFLAGS) ISAfiles\ieio.c -o ieio.vxo readcfg.vxo: ISAfiles\readcfg.c $(CC) $(CFLAGS) ISAfiles\readcfg.c -o readcfg.vxo pciio.vxo: PCIfiles\pciio.cpp $(CC) $(CFLAGS) PCIfiles\pciio.cpp -o pciio.vxo pciIomapLib.vxo: PCIfiles\pciIomapLib.c $(CC) $(CFLAGS) PCIfiles\pciIomapLib.c -o pciIomapLib.vxo VR1.vxo: structures.h CleanObjects: vxrm -f *.vxo From vxwexplo-errs@csg.lbl.gov Mon Jun 17 04:03:10 2002 From: Vxworks Exploder Date: Mon Jun 17 04:03:13 PDT 2002 Subject: comp.os.vxworks newsdigest Comp.Os.Vxworks Daily Digest Mon Jun 17 04:03:07 PDT 2002 Subject: please help Subject: FAT32 Dos tools Subject: Re: VxSim with Windows XP Subject: Help for configuring vxworks bootable target for standard pc architecture Subject: Size of dynamically allocated memory Subject: Re: FAT32 Dos tools Subject: semTake with NO_WAIT causes unexpected errno Subject: 860 Interrupts Subject: Re: Help for configuring vxworks bootable target for standard pc architecture Subject: Re: semTake with NO_WAIT causes unexpected errno Subject: Table with OID as Index Subject: Re: Help for configuring vxworks bootable target for standard pc architecture Subject: Re: 860 Interrupts Subject: Re: how to install multiple simulators in win2000 ------------------------------------------------------- Newsgroups: comp.os.vxworks Subject: please help Date: 16 Jun 2002 19:36:40 -0700 From: wangwz@chinatopglobal.com (wangwz) Organization: http://groups.google.com/ Message-ID: <72c0062e.0206161836.184bab07@posting.google.com> When I want to build a bootable vxwork image, the tornado tell me that "list must have an even number of elements". What does it means? and how to solve it? Please tell me how to do nest. Thanks. --------------------------- Newsgroups: comp.os.vxworks Subject: FAT32 Dos tools Date: 16 Jun 2002 19:45:07 -0700 From: mgf_julio@lycos.com (Shanan) Organization: http://groups.google.com/ Message-ID: <3818bea1.0206161845.5fca0294@posting.google.com> Does anybody know of any tools or code that can be used to dump or view the FAT. I am using the vxWorks dosFs2.0 and an 8260 processor and would like to view the FAT table and compare the 2 copies. Thanx in advance mgf_julio@lycos.com --------------------------- Newsgroups: comp.os.vxworks Subject: Re: VxSim with Windows XP Date: 16 Jun 2002 21:11:53 -0700 From: rajaismyname@yahoo.com (Raja Ganesan) Organization: http://groups.google.com/ Message-ID: <1a047b5a.0206162011.3366b8b0@posting.google.com> References: Hi, ULIP driver doesnt seem to work in XP. Probablly Windriver may be provid some updates on this regards in the near feature. However it works well in NT and 2000. it would be better if you try in 2000 or NT. Regards, Raja Ganesan G DATEC Systems (P) Ltd. "Stefan Schurman" wrote in message news:... > Has anyone gotten the ULIP drivers working with Windows XP and VxSim? My > machine crashes when I try installing the drivers. > > Any advice would be appreciated. > > Thanks! > Stef --------------------------- Newsgroups: comp.os.vxworks Subject: Help for configuring vxworks bootable target for standard pc architecture Date: 16 Jun 2002 22:22:25 -0700 From: vxnerd@rediffmail.com (subbarayan) Organization: http://groups.google.com/ Message-ID: hi to all mentors, I have a problem in configuring my target(bootable from floppy)for a standard pc architecture device.I use tornado1.0 version.Can any one help me in knowing the steps for configuring a target from tornado1.0-i mean step by step proceedure.I followed the steps ment in documentation of tornado1.0 but was unsuccessful in making one.I followed the steps in building a sample called vxcolor.c a sample mentioned in it and followed the steps said in it.but when i built the file and tried to make a file the following error appears: makefile:37: C:\Tornado/target/h/make/make.Intelx86gnu: No such file or directory make.exe: *** No rule to make target `C:\Tornado/target/h/make/make.Intelx86gnu'. Stop.Done. Now i don't understand what the error is and need help from u mentors in understanding it and a solution to rectify the error and successfully configure a target. Any sample will be of great help to me as i am new to this sort of project. Thanks in advance to the person helping me. Incase any one has a soln can contact me at:vxnerd@rediffmail.com --------------------------- Newsgroups: comp.os.vxworks Subject: Size of dynamically allocated memory Date: 16 Jun 2002 22:56:05 -0700 From: pritamganguly@hotmail.com (Pritam) Organization: http://groups.google.com/ Message-ID: <166770ed.0206162156.3c8e7487@posting.google.com> Hi all I wanted to know is there any function in vxworks that allows you to find the the size of the memory block allocated by a call to 'malloc/new'. Something similar to _msize in WinNT. If not is there any way to figure out the same. Thanks in advance. Pritam --------------------------- Newsgroups: comp.os.vxworks Subject: Re: FAT32 Dos tools Date: Mon, 17 Jun 2002 06:53:44 GMT From: "Leonid Rosenboim" Organization: Verio Message-ID: References: <3818bea1.0206161845.5fca0294@posting.google.com> Shanan, The only way you can access the raw content of FAT table, is by directly using the block device driver, which will provide raw disk data, without even caching. DosFs 2.0 performs a comparison of the two FAT copies when the disk is mounted, if the consistency checking is enabled, and if one (or more) sectors of the primary FAT copy sectors can not be retreived due to read error. Diferrence between the two copies means that the system has crashed in the midst of an update, but if the FAT copies are completely identical it does not mean the file system has been shut down properly. SO depending on what you really need to do, this may or may not be useful to you. - - Leonid Rosenboim "Shanan" wrote in message news:3818bea1.0206161845.5fca0294@posting.google.com... > Does anybody know of any tools or code that can be used to dump or > view the FAT. I am using the vxWorks dosFs2.0 and an 8260 processor > and would like to view the FAT table and compare the 2 copies. > > Thanx in advance > > mgf_julio@lycos.com --------------------------- Newsgroups: comp.os.vxworks Subject: semTake with NO_WAIT causes unexpected errno Date: Mon, 17 Jun 2002 09:45:06 +0200 From: Arjan Message-ID: <3D0D9382.2060604@freemail.nl> Hi I'm calling semTake() on a semaphore that has been created, but is not released in the meantime, therefore I'm expecting a timeout. semTake(semId, NO_WAIT) errno turns out to be S_objLib_OBJ_UNAVAILABLE (???) Although when I replace NO_WAIT with e.g. 1, errno is S_objLib_OBJ_TIMEOUT as expected can someone explain? regards, Arjan --------------------------- Newsgroups: comp.os.vxworks Subject: 860 Interrupts Date: Mon, 17 Jun 2002 09:42:11 +0100 From: Paul Caswell Organization: Land & Sea Systems Message-ID: <3D0DA0E3.C4E5C4FA@baesystems.com> Hello vxWorks world, OK, I have to admit that I'm now a bit confused with 860 interrupts. Here's why and so perhaps someone could explain or clarify: I've just received our bespoke 860 based board and it has a memory map as follows: - ----FFF07FFF 860 Internal registers - ----FFF00000 - ---- 012B7FFF All devices and memory on board etc - CS1 to CS6 - ---- 001F4000 - ---- 001F3FFF Flash PROM (2Mb - 512K x 32) - ---- 00000000 I'm building a rom resident image and downloading it to the flash using a Vision ICE 2. The text segment (ie code) of the image therefore resides at address 00000100 (restart vector for 860) and 00xxxxxx (depending on the size of the image). My confusion lies in the fact that the 9860 exception vector is 00000500 or FFF00500 (selectable in the MSR register). My understanding of vxWorks interrupts on the PPC860 was that the exception vector is attached to an interrupt demultiplexor (call ppcIntrDemux) and it determines what caused the interrupts and which handler to call (see ppc860Intr.c). OK, now the crux of the problem. As you'll see from the above memory map address FFF00500 is used by internal 860 registers and 00000500 contains the rommed code so when an exception occurs HOW do we get to ppcIntrDemux(...). Hope this is clear and that someone can either clarify what goes on or point out where I'm making a mistake. Regards Paul --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Help for configuring vxworks bootable target for standard pc architecture Date: Mon, 17 Jun 2002 08:58:39 GMT From: "Leonid Rosenboim" Organization: Verio Message-ID: References: This file you are missing is perhaps because you did not purchase a full version of Tornado that supports x86 architecture targets. If you did purchase it, you have got the wrong installation CD, and you need to call your account manager or sales assistant. "subbarayan" wrote in message news:f81c4277.0206162122.18e3f1fe@posting.google.com... > hi to all mentors, > I have a problem in configuring my target(bootable from floppy)for a > standard pc architecture device.I use tornado1.0 version.Can any one > help me in knowing the steps for configuring a target from > tornado1.0-i mean step by step proceedure.I followed the steps ment in > documentation of tornado1.0 but was unsuccessful in making one.I > followed the steps in building a sample called vxcolor.c a sample > mentioned in it and followed the steps said in it.but when i built the > file and tried to make a file the following error appears: > makefile:37: C:\Tornado/target/h/make/make.Intelx86gnu: No such file > or directory > make.exe: *** No rule to make target > `C:\Tornado/target/h/make/make.Intelx86gnu'. Stop.Done. > > Now i don't understand what the error is and need help from u mentors > in understanding it and a solution to rectify the error and > successfully configure a target. > Any sample will be of great help to me as i am new to this sort of > project. > > Thanks in advance to the person helping me. > > Incase any one has a soln can contact me at:vxnerd@rediffmail.com --------------------------- Newsgroups: comp.os.vxworks Subject: Re: semTake with NO_WAIT causes unexpected errno Date: Mon, 17 Jun 2002 08:55:40 GMT From: "Leonid Rosenboim" Organization: Verio Message-ID: References: <3D0D9382.2060604@freemail.nl> This is the EXPECTED behaviour. NO_WAIT is different than any timeout, therefore the errno value for traying to take an unavailable semaphore without waiting is different than a timeout error during waiting for a semaphore. NO_WAIT is NOT simply a 0 timeout. RTFM "Arjan" wrote in message news:3D0D9382.2060604@freemail.nl... > Hi > > I'm calling semTake() on a semaphore that has been created, but is not > released in the meantime, therefore I'm expecting a timeout. > > semTake(semId, NO_WAIT) > > errno turns out to be S_objLib_OBJ_UNAVAILABLE (???) > Although when I replace NO_WAIT with e.g. 1, errno is > S_objLib_OBJ_TIMEOUT as expected > can someone explain? > > regards, > Arjan > --------------------------- Newsgroups: comp.os.vxworks Subject: Table with OID as Index Date: 17 Jun 2002 02:28:50 -0700 From: seemvk@yahoo.com (Seem) Organization: http://groups.google.com/ Message-ID: Say, the index of a table A in mib A is an object identifier. And we are implementing snmp agent. 1. how would the agent know what are the possible values of the index which is in table A. 2. if the object identifier (which is the index of this table A in the mib A) is actually the columnar variable of another table B in mib B, then can the agent identify that when it is accessing the index ( in pt 1) , that the oid is another columnar variable of mib B and can it give the actual name of the column in mib B --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Help for configuring vxworks bootable target for standard pc architecture Date: 17 Jun 2002 11:40:35 +0200 From: Reinhold Wirth Organization: WEB.DE Message-ID: <3d0dae93$1@netnews.web.de> References: hi check in your Makefile: is CPU = Intelx86 ???? change it to CPU = I80386 or CPU = I80486 or ... vxnerd@rediffmail.com (subbarayan) wrote: >hi to all mentors, >I have a problem in configuring my target(bootable from floppy)for a >standard pc architecture device.I use tornado1.0 version.Can any one >help me in knowing the steps for configuring a target from >tornado1.0-i mean step by step proceedure.I followed the steps ment in >documentation of tornado1.0 but was unsuccessful in making one.I >followed the steps in building a sample called vxcolor.c a sample >mentioned in it and followed the steps said in it.but when i built the >file and tried to make a file the following error appears: >makefile:37: C:\Tornado/target/h/make/make.Intelx86gnu: No such file >or directory >make.exe: *** No rule to make target >`C:\Tornado/target/h/make/make.Intelx86gnu'. Stop.Done. > > Now i don't understand what the error is and need help from u mentors >in understanding it and a solution to rectify the error and >successfully configure a target. >Any sample will be of great help to me as i am new to this sort of >project. > >Thanks in advance to the person helping me. > >Incase any one has a soln can contact me at:vxnerd@rediffmail.com - -- __________________________________________________________ News suchen, lesen, schreiben mit http://newsgroups.web.de --------------------------- Newsgroups: comp.os.vxworks Subject: Re: 860 Interrupts Date: Mon, 17 Jun 2002 09:42:27 +0000 (UTC) From: "Graham Baxter" Organization: Graham Baxter (Software) Limited Message-ID: References: <3D0DA0E3.C4E5C4FA@baesystems.com> Paul, All the VxWorks BSPs that I have worked on have had the Vectors in RAM. The vectors are built using executable code. A small program is copied into the vector locations which will call your interrupt e.g. ppcIntrDemux(). If you want to run from flash you would need to code this small program at the absolute address 0x500 in romInit.s. Don't forget that you can relocate the flash to some other address if you prefer to have RAM at address. In this case the start of romInit.s would operate using position independent code until chip select zero is moved. The example I followed was the Motorola ADS 8260 BSP from Wind River. I hope this helps. - -- Regards, Graham Baxter Freelance Software Engineer VxWorks and pSOS BSPs (available shortly for a new assignment) EMAIL: gbaxter@NOSPAMbcs.org.uk "Paul Caswell" wrote in message news:3D0DA0E3.C4E5C4FA@baesystems.com... > Hello vxWorks world, > OK, I have to admit that I'm now a bit confused with 860 interrupts. > Here's why and so perhaps someone could explain or clarify: > I've just received our bespoke 860 based board and it has a memory map > as follows: > > ----FFF07FFF > 860 Internal registers > ----FFF00000 > > ---- 012B7FFF > All devices and memory on board etc - CS1 to > CS6 > ---- 001F4000 > > ---- 001F3FFF > Flash PROM (2Mb - 512K x 32) > ---- 00000000 > > I'm building a rom resident image and downloading it to the flash using > a Vision ICE 2. The text segment (ie code) of the image therefore > resides at address 00000100 (restart vector for 860) and 00xxxxxx > (depending on the size of the image). My confusion lies in the fact > that the 9860 exception vector is 00000500 or FFF00500 (selectable in > the MSR register). > > My understanding of vxWorks interrupts on the PPC860 was that the > exception vector is attached to an interrupt demultiplexor (call > ppcIntrDemux) and it determines what caused the interrupts and which > handler to call (see ppc860Intr.c). OK, now the crux of the problem. > As you'll see from the above memory map address FFF00500 is used by > internal 860 registers and 00000500 contains the rommed code so when an > exception occurs HOW do we get to ppcIntrDemux(...). Hope this is clear > and that someone can either clarify what goes on or point out where I'm > making a mistake. > > Regards > Paul > > --------------------------- Newsgroups: comp.os.vxworks Subject: Re: how to install multiple simulators in win2000 Date: 17 Jun 2002 03:35:32 -0700 From: rajaismyname@yahoo.com (Raja Ganesan) Organization: http://groups.google.com/ Message-ID: <1a047b5a.0206170235.3e1105b5@posting.google.com> References: <964e0610.0206022137.7c11fd7e@posting.google.com> <41440750.0206051943.5b2a6667@posting.google.com> Hi, the driver is at ../host/x86-w2in32/bin/netULIP.inf in WinXP it doesnt seem to work. But installs fine in 2000/NT Regards, Raja Ganesan G Datec Systems (P) Ltd. overtones@excite.com (Strawberry) wrote in message news:<41440750.0206051943.5b2a6667@posting.google.com>... > Make sure that the installation you have is for Win2k and not for > WinNT. You can download the latest prototyper from WRS website. > > pnumber@hotmail.com (pengtong) wrote in message news:<964e0610.0206022137.7c11fd7e@posting.google.com>... > > I've try to install the ULIP driver into my computer,but failed.When > > I locate > > the driver at../host/x86-w2in32/bin/oemsetup.inf,cann't continue.the > > error message is "此文件中不包含所需要的硬件信息" > > ,in English this means "This file don't have the information of the > > hardware" ,I don't know why. > > Regards, > > tong --------------------------- End of New-News digest ********************** From vxwexplo-errs@csg.lbl.gov Mon Jun 17 22:28:18 2002 From: askon@mailru.com Date: Mon Jun 17 22:28:20 PDT 2002 Subject: dosFs2.0 patch for Tornado 2.0.2 Hi all, Where can I find patch for Tornado 2.0.2 for using dosFs 2.0 ? Thanks a lot, Andrei. From vxwexplo-errs@csg.lbl.gov Mon Jun 17 23:09:59 2002 From: "Oh, Soonam" Date: Mon Jun 17 23:10:03 PDT 2002 Subject: [Q]Shell problem Regards I'm a beginner of the "VxWorks" and need your help. I've been working with the "MVME2604" board and without "Tornado". I compiled vxworks with target-shell-option(INCLUDE_SHELL) and downloaded to target. And shell prompt loaded successfully. But I couldn't use any commands. I was faced with the error messages that "undefined symbol". What's wrong? From vxwexplo-errs@csg.lbl.gov Tue Jun 18 01:30:31 2002 From: Ilia Bosis Date: Tue Jun 18 01:30:33 PDT 2002 Subject: RE: [Q]Shell problem It happens when there is no symbol table on the target. Verify that You have the "include symbol table" and "standalone symbol table" options in Your config.h and/or configAll.h. Hope, this helps. Ilia. -------------------------------------------- Ilia Bosis Software Engineer PacketLight Networks E-mail: Ilia_Bosis@packetlight.com Web: www.packetlight.com > -----Original Message----- > From: vxwexplo@lbl.gov [mailto:vxwexplo@lbl.gov] > Sent: Tuesday, June 18, 2002 8:12 AM > To: vxworks_users@csg.lbl.gov > Subject: [Q]Shell problem > > > Submitted-by vxwexplo-errs@csg.lbl.gov Mon Jun 17 23:09:59 2002 > Submitted-by: "Oh, Soonam" > > Regards > > I'm a beginner of the "VxWorks" and need your help. I've been > working with the "MVME2604" board and without "Tornado". > I compiled vxworks with target-shell-option(INCLUDE_SHELL) > and downloaded to target. And shell prompt loaded > successfully. But I couldn't use any commands. I was faced > with the error messages that "undefined symbol". > What's wrong? From vxwexplo-errs@csg.lbl.gov Tue Jun 18 04:03:15 2002 From: Vxworks Exploder Date: Tue Jun 18 04:03:18 PDT 2002 Subject: comp.os.vxworks newsdigest Comp.Os.Vxworks Daily Digest Tue Jun 18 04:03:11 PDT 2002 Subject: Re: Help for configuring vxworks bootable target for standard pc architecture Subject: post mortem..... Subject: need 64 microseconds accurate timing.... Subject: Re: Jus help me solve the problem and request to all geeks and techies Subject: Help required in learning device driver development for pci cards from vxworks Subject: Re: post mortem..... Subject: Re: Jus help me solve the problem and request to all geeks and techies Subject: Re: message queue doubt Subject: Re: Jus help me solve the problem and request to all geeks and techies Subject: Re: VxSim with Windows XP Subject: Is there a good book on programming in multitask environment? Subject: Re: need 64 microseconds accurate timing.... Subject: [OT] Programmable Logic survey Subject: Re: message queue doubt Subject: Re: Jus help me solve the problem and request to all geeks and techies Subject: Re: Tornado make fails to parse /bin/sh commands but cygwin and linux make do it Subject: Re: Size of dynamically allocated memory Subject: vxworks hex download (question) Subject: How to use Acqiris DC270 under vxworks? Subject: Re: please help Subject: Re: Help for configuring vxworks bootable target for standard pc architecture Subject: vxworks target configuration problem from tornado1.0 Subject: Re: need 64 microseconds accurate timing.... Subject: Re: message queue doubt Subject: Re: please help Subject: Re: Size of dynamically allocated memory Subject: SNMP Subject: Re: need 64 microseconds accurate timing.... ------------------------------------------------------- Newsgroups: comp.os.vxworks Subject: Re: Help for configuring vxworks bootable target for standard pc architecture Date: Mon, 17 Jun 2002 11:23:17 GMT From: "Leonid Rosenboim" Organization: Verio Message-ID: References: On a second look, the file you are "missing" does not exist, the file that does exist is "make.x86gnu" The file name is derived from the CPU_FAMILY configuration variable, which should be "x86" in your case. CPU_FAMILY is a Makefile, Project and environment variable somehow you managed to set to" intelx86", strange. "Leonid Rosenboim" wrote in message news:newscache$h5huxg$hzb$1@lnews.actcom.co.il... > This file you are missing is perhaps because you did not purchase > a full version of Tornado that supports x86 architecture targets. > If you did purchase it, you have got the wrong installation CD, > and you need to call your account manager or sales assistant. > > "subbarayan" wrote in message > news:f81c4277.0206162122.18e3f1fe@posting.google.com... > > hi to all mentors, > > I have a problem in configuring my target(bootable from floppy)for a > > standard pc architecture device.I use tornado1.0 version.Can any one > > help me in knowing the steps for configuring a target from > > tornado1.0-i mean step by step proceedure.I followed the steps ment in > > documentation of tornado1.0 but was unsuccessful in making one.I > > followed the steps in building a sample called vxcolor.c a sample > > mentioned in it and followed the steps said in it.but when i built the > > file and tried to make a file the following error appears: > > makefile:37: C:\Tornado/target/h/make/make.Intelx86gnu: No such file > > or directory > > make.exe: *** No rule to make target > > `C:\Tornado/target/h/make/make.Intelx86gnu'. Stop.Done. > > > > Now i don't understand what the error is and need help from u mentors > > in understanding it and a solution to rectify the error and > > successfully configure a target. > > Any sample will be of great help to me as i am new to this sort of > > project. > > > > Thanks in advance to the person helping me. > > > > Incase any one has a soln can contact me at:vxnerd@rediffmail.com > > --------------------------- Newsgroups: comp.os.vxworks Subject: post mortem..... Date: 17 Jun 2002 04:26:53 -0700 From: be_gyus@yahoo.com (james) Organization: http://groups.google.com/ Message-ID: hi vxWorkers, I have a problem in postmortem mode of event logging. I have specified USER_RESERVED_MEMORY in the config.h and its' gettin' reflected in the property control window, correctly.. Then i start logging and stop and do a warm reboot and click on the properties button on the control dialog box..no messages occur. also if i try to click the upload button, after warm reboot directly, i get a message "no buffers created on target"........has anyone worked on this???? any sort of help is appreciated... thank u in antecipation --------------------------- Newsgroups: comp.os.vxworks Subject: need 64 microseconds accurate timing.... Date: 17 Jun 2002 04:33:11 -0700 From: forvxworks@rediffmail.com (Anand) Organization: http://groups.google.com/ Message-ID: Hi All, I have the folowing problems, please help me. 1) I need a clock with an accuracy of 64 microseconds without consuming much of the processor time, because i have to be running 2-3 tasks in parallel.how do i do it?? 2) I want a task to be running at a rate of 1 millisecond (after i spawn it). by any means ,can i specify the repetition/execution rate of the task at the time of spawning? using period and periodRun i can give the task repetition rate in seconds,but i need the repetition rate in milliseconds. how do i do it?? Thanks in advance. Regards. Anand.V.Mathapati. --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Jus help me solve the problem and request to all geeks and techies Date: 17 Jun 2002 04:42:43 -0700 From: vxnerd@rediffmail.com (subbarayan) Organization: http://groups.google.com/ Message-ID: References: Dear cfk, Thanks for your help by your reply.It was really useful to me.But to my dismay i am unable to find the files u said in ur reply like: i don't have a folder of pci in my path of:C:\Tornado\target\src\drv. or any other place in my system.I was also unable to get it from net.If possible it would be great and helpful for me if u could send me the above said folder along with the files u said in ur reply like: pciconfigLib.c Pciconfigshow.c Templateend.c ln7790end.c as an attachment to me to vxnerd@rediffmail.com or jus suggest me where exactly can i find source code for above said files so that it would be helpful for a nerd like me who is in the learning stage and is going to get involved in pci project with in a couple of days. Expecting your reply, s.subbarayan --------------------------- Newsgroups: comp.os.vxworks Subject: Help required in learning device driver development for pci cards from vxworks Date: 17 Jun 2002 04:52:08 -0700 From: vxnerd@rediffmail.com (subbarayan) Organization: http://groups.google.com/ Message-ID: Dear mentors, Can any one suggest me where to look for tutorial kind of stuff for developing devicedrivers for pci cards from vxworks?I am a nerd and looking for sample code if avaialable.I have searched for driver directory in my machine for tornado but to my dismay it contains all the driver files except the one for pcicards.I heard that the following files will help me learn it: pciconfigLib.c Pciconfigshow.c Templateend.c ln7790end.c but i am unable to get these files.If any one has the above said files if possible send me as an attachment to to vxnerd@rediffmail.com or jus suggest me where exactly can i find source code for above said files so that it would be helpful for a nerd like me who is in the learning stage and is going to get involved in pci project with in a couple of days.I am having tornado version1.0 and where can i get vxworks5.4 network programmers guide in net as free download? Expecting your reply, s.subbarayan --------------------------- Newsgroups: comp.os.vxworks Subject: Re: post mortem..... Date: 17 Jun 2002 13:52:34 +0200 From: Reinhold Wirth Organization: WEB.DE Message-ID: <3d0dcd82$1@netnews.web.de> References: Hi, your problem may be caused: * differnt USER_RESERVED_MEMORY, defined in your target bootloader * memory test during startup (may be PC-BIOS) >hi vxWorkers, >I have a problem in postmortem mode of event logging. >I have specified USER_RESERVED_MEMORY in the config.h and its' gettin' >reflected in the property control window, correctly.. >Then i start logging and stop and do a warm reboot and click on the >properties button on the control dialog box..no messages occur. >also if i try to click the upload button, after warm reboot directly, >i get a message "no buffers created on target"........has anyone >worked on this???? >any sort of help is appreciated... >thank u in antecipation - -- __________________________________________________________ News suchen, lesen, schreiben mit http://newsgroups.web.de --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Jus help me solve the problem and request to all geeks and techies Date: Mon, 17 Jun 2002 12:43:06 GMT From: "Ofer Goren" Organization: Verio Message-ID: References: Hi. Do you have Tornado installed on your system? If so, the path specified is under /target/src/drv/ "subbarayan" wrote in message news:f81c4277.0206170342.fcc3c8e@posting.google.com... > Dear cfk, > Thanks for your help by your reply.It was really useful to me.But to > my dismay i am unable to find the files u said in ur reply like: > i don't have a folder of pci in my path of:C:\Tornado\target\src\drv. > or any other place in my system.I was also unable to get it from > net.If possible it would be great and helpful for me if u could send > me the above said folder along with the files u said in ur reply like: > pciconfigLib.c > Pciconfigshow.c > Templateend.c > ln7790end.c > as an attachment to me to vxnerd@rediffmail.com or jus suggest me > where exactly can i find source code for above said files so that it > would be helpful for a nerd like me who is in the learning stage and > is going to get involved in pci project with in a couple of days. > Expecting your reply, > s.subbarayan --------------------------- Newsgroups: comp.os.vxworks Subject: Re: message queue doubt Date: Mon, 17 Jun 2002 08:49:59 -0700 From: Joe Durusau Organization: Lockheed Martin Corporation Message-ID: <3D0E0527.36BA027A@lmco.com> References: subbarayan wrote: > > hi to everyone, > thanks to the mentors who replied me earlier and the mentors who r > going to reply to this query. > Can any one clarify my doubt? > The situation is like this: > Theres a single message queue setup in my project.Taska posts a > message in it.The same message has to reach taskb and taskc.Taskb has > high priority than taskc. > Now my doubt is if task b takes the message from the queue,is there > any chance that task c can get the message from the same queue?becos > my understanding about message queue is that a message once posted in > a queue if at all taken by first task waiting for it,that message > disappears from the queue.Now what should I do inorder to make task c > get the message after task b takes it from the same message queue?Also > tell me if my understanding of message queue as mentioned above is > correct or not? <> It would seem so, at least up to 5.3. You probably should try something else to handle this problem. If you really have no space for another mq, you need to get some more memory. You could do something tircky, like set up a buffer for the msgs with a count of incoming msgs and a count for each removing task to use, but I would think that more memory would be the right solution, if any. Speaking only for myself, Joe Durusau --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Jus help me solve the problem and request to all geeks and techies Date: Mon, 17 Jun 2002 14:59:45 +0200 From: "Michael Lawnick" Organization: Buergernetz Dillingen Message-ID: References: Reply-To: "Michael Lawnick" Sender: mlawnick@pd9e65320.dip.t-dialin.net May be the problem is your outdated VxWorks/Tornado. I've looked into an old PPC Tornado 1.0.1 an only found target/src/drv/pci/pciLocalBus.c. Solution: goto http://www.windriver.com/protoplus/index.html and download the current Version of Simulator. Might be the missing files are part of it. "subbarayan" schrieb im Newsbeitrag news:f81c4277.0206170342.fcc3c8e@posting.google.com... > Dear cfk, > Thanks for your help by your reply.It was really useful to me.But to > my dismay i am unable to find the files u said in ur reply like: > i don't have a folder of pci in my path of:C:\Tornado\target\src\drv. > or any other place in my system.I was also unable to get it from > net.If possible it would be great and helpful for me if u could send > me the above said folder along with the files u said in ur reply like: > pciconfigLib.c > Pciconfigshow.c > Templateend.c > ln7790end.c > as an attachment to me to vxnerd@rediffmail.com or jus suggest me > where exactly can i find source code for above said files so that it > would be helpful for a nerd like me who is in the learning stage and > is going to get involved in pci project with in a couple of days. > Expecting your reply, > s.subbarayan --------------------------- Newsgroups: comp.os.vxworks Subject: Re: VxSim with Windows XP Date: Mon, 17 Jun 2002 13:26:06 GMT From: "Stefan Schurman" Message-ID: References: Yes, I have tried using the Win2K ULIP drivers on XP. Unfortunately, my machine blue screens during the driver installation. It looks like I will have to wait for WindRiver to come out with a separate XP driver :( Stef "Martin Raabe" wrote in message news:aedhv8$ui2$1@news.online.de... > ello Stef, > did you follow the Windows2000 instructions for installing and use of > VxSim/ULIP? > > Just my 2 Euro Cents! > > -- > Martin Raabe > E: Martin.Raabe@BaSystemNoSpAm.de > > "Stefan Schurman" schrieb im Newsbeitrag > news:mKrO8.3047$uX3.1510@nwrddc01.gnilink.net... > > Has anyone gotten the ULIP drivers working with Windows XP and VxSim? My > > machine crashes when I try installing the drivers. > > > > Any advice would be appreciated. > > > > Thanks! > > Stef > > > > > > --------------------------- Newsgroups: comp.os.vxworks Subject: Is there a good book on programming in multitask environment? Date: 17 Jun 2002 07:29:48 -0700 From: people@micro-web.co.kr (JinSoo Kim) Organization: http://groups.google.com/ Message-ID: Hello, I feel difficulty these days while my multitask programming on VxWorks becomes larger. There are many convenient resources like mutex, message, semaphore ... etc, in RTOS. But the larger the program size becomes using these resources, the more difficult to maintain the code in multitask environment. Is there a good book to guide in multitask programming? That is, guide book to how to design tasks and communication method so that it is easy to maintain the code. Thanks for your advice in advance. --------------------------- Newsgroups: comp.os.vxworks Subject: Re: need 64 microseconds accurate timing.... Date: Mon, 17 Jun 2002 17:03:40 +0200 From: Emmanuel Herbreteau Organization: SEPRO Robotique (BEP) Message-ID: <3D0DFA4C.3C87F4D6@sepro-robotique.com> References: Anand wrote: > 1) I need a clock with an accuracy of 64 microseconds > without consuming much of the processor time, Hi, IMHO, you certainly needs a specific hardware component to do this (FPGA) or, at least, an external microcontroller (ie: a ST7 or PIC working in parallel with the main CPU). > 2) I want a task to be running at a rate of 1 millisecond > (after i spawn it). by any means ,can i specify the > repetition/execution rate of the task at the time of spawning? using > period and periodRun You will have to set the system tick rate to 1000 (sysClkRateSet) and then run the task (an infinite loop) with a "taskDelay(1)" between each loop. Beware : fast context switches like this will slow down your CPU. Regards Emmanuel. --------------------------- Newsgroups: comp.software-eng,comp.realtime,comp.os.linux.realtime,comp.arch.embedded,comp.arch.fpga,comp.dsp,comp.os.vxworks,comp.os.qnx,comp.os.os9,comp.robotics Subject: [OT] Programmable Logic survey Date: 17 Jun 2002 14:43:48 GMT From: Kalynnda.Berens@grc.nasa.gov (Kalynnda Berens) Organization: NASA Glenn Research Center Message-ID: Seeking: NASA employees or contractors who use programmable logic devices (FPGA, System-on-a-chip, CPLD, EPLD, etc.) or programmable logic controllers (PLC) in their work. Purpose: To take a survey on where programmable logic is used throughout NASA, and what assurance activities are performed on it. The survey can be found at: http://osat-ext.grc.nasa.gov/rmo/nasa/plcsurvey Feel free to complete the survey, even if you do not work for NASA. Contrasting assurance practices between NASA and industry could be enlightening. If you are outside the nasa.gov domain and the website still has not been approved for external access, you can email the researcher at Kalynnda.Berens@grc.nasa.gov for a copy of the survey questionnaire. Thank you! Kalynnda Berens --------------------------- Newsgroups: comp.os.vxworks Subject: Re: message queue doubt Date: Mon, 17 Jun 2002 14:20:15 -0400 From: Keith Arner Organization: Marconi Message-ID: References: Reply-To: Keith Arner On 14 Jun 2002, subbarayan wrote: > Now my doubt is if task b takes the message from the queue,is there > any chance that task c can get the message from the same queue?becos > my understanding about message queue is that a message once posted in > a queue if at all taken by first task waiting for it,that message > disappears from the queue.Now what should I do inorder to make task c > get the message after task b takes it from the same message queue?Also > tell me if my understanding of message queue as mentioned above is > correct or not? Your understanding of message queues seems to be correct. However, if you want to make sure that one task (and not any other) receives a particular message off of a particular message queue, then you have to ensure that that task is the *only* task reading from the queue. To state this another way: so long as you have two tasks reading from a queue, you can't make any garauntees about which message will be recieved by which task. Keith - -- mv ~karner /loony/bin --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Jus help me solve the problem and request to all geeks and techies Date: Mon, 17 Jun 2002 14:41:22 -0700 From: Joe Durusau Organization: Lockheed Martin Corporation Message-ID: <3D0E5782.14F24921@lmco.com> References: It sounds more like he is trying to prog. for a REAL target with the sim. You can't do that. Send a large bag of money to WRS and they will send you the real stuff, which has a lot more than the sim in it. Speaking only for myself, Joe Durusau Michael Lawnick wrote: > > May be the problem is your outdated VxWorks/Tornado. I've looked into an old > PPC Tornado 1.0.1 an only found target/src/drv/pci/pciLocalBus.c. > > Solution: goto http://www.windriver.com/protoplus/index.html and download > the current Version of Simulator. Might be the missing files are part of it. > > "subbarayan" schrieb im Newsbeitrag > news:f81c4277.0206170342.fcc3c8e@posting.google.com... > > Dear cfk, > > Thanks for your help by your reply.It was really useful to me.But to > > my dismay i am unable to find the files u said in ur reply like: > > i don't have a folder of pci in my path of:C:\Tornado\target\src\drv. > > or any other place in my system.I was also unable to get it from > > net.If possible it would be great and helpful for me if u could send > > me the above said folder along with the files u said in ur reply like: > > pciconfigLib.c > > Pciconfigshow.c > > Templateend.c > > ln7790end.c > > as an attachment to me to vxnerd@rediffmail.com or jus suggest me > > where exactly can i find source code for above said files so that it > > would be helpful for a nerd like me who is in the learning stage and > > is going to get involved in pci project with in a couple of days. > > Expecting your reply, > > s.subbarayan --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Tornado make fails to parse /bin/sh commands but cygwin and linux make do it Date: 17 Jun 2002 15:48:15 -0700 From: earl.mitchell@accetnetwork.com (Earl Mitchell) Organization: http://groups.google.com/ Message-ID: <558a531.0206171448.76107b44@posting.google.com> References: <558a531.0206152111.531bda45@posting.google.com> <59ohea.gsf.ln@gonzo.cybermuppet.co.uk> molochai wrote in message news:<59ohea.gsf.ln@gonzo.cybermuppet.co.uk>... > Earl Mitchell wrote: > > > Need help with following problem. > > I have very simple makefile with following > > test rule: > > > > test: > > @echo "this is a test" > > @if [ "1" = "1" ] ; then \ > > echo "working" ; \ > > fi ; > > > > If I do a make on linux I correctly see ... > > > > this is a test > > working > > > > But in cygwin when I make using same makefile with > > the make.exe from Tornado tree I see this ... > > > > "this is a test" > > "1" was unexpected at this time. > > make.exe: *** [test] Error 0x1 > > > > The MAKE_MODE is set to unix. Now if I install > > cygwin make.exe it works with this makefile but > > now I get errors when I use the cygwin make.exe > > with the Tornado makefile? Does anyone know why > > my Tornado make.exe is failing to parse /bin/sh > > commands in makefiles? > > Make doesn't 'parse' shell commands - it passes the commands a line at a > time to a shell to execute after expanding macros. The WRS supplied GNU > Make uses cmd32.exe on Windoze platforms (the windows command shell). As > anybody who's tried to do serious work with it knows, this is seriously > sub-standard - although it apparently got better (not hard) in Win2k. > There's of course nothing to stop you running /bin/sh (or surely /bin/bash?) > from the make rule. How do you do this? I'm not familiar with interaction between make an the shell programs. Also the fact that WRS's make.exe does not process /bin/sh commands even when running in DOS shell (i.e. not cygwin shell) is just plain wrong since the GNU make manual says it should support it. I'd prefer not to modify my makefiles if I don't have to. But it gets worse ... I should be able to replace WRS's make.exe with the one the works from Cygnus but when I try this it does not work with WRS's makefiles? It works with my test makefile but not WRS's makefiles? For example, if I say "make clean" with WRS's make.exe in use I get this ... $ make clean vxrm *.o vxrm *.rpo vxrm vxWorks* vxrm bootrom* vxrm ctdt.c vxrm symTbl.c vxrm depend.TGV5261 Now I put Cygnus' make.exe in the search path before WRS's make.exe. This should still work right? But instead I see these errors ... $ make clean vxrm *.o vxrm: not found make: [clean] Error 127 (ignored) vxrm *.rpo vxrm: not found make: [clean] Error 127 (ignored) vxrm vxWorks* vxrm: not found make: [clean] Error 127 (ignored) vxrm bootrom* vxrm: not found make: [clean] Error 127 (ignored) vxrm ctdt.c make: vxrm: Command not found make: [clean] Error 127 (ignored) vxrm symTbl.c make: vxrm: Command not found make: [clean] Error 127 (ignored) vxrm depend.TGV5261 make: vxrm: Command not found make: [clean] Error 127 (ignored) The only change I made here was to move make.exe.OLD to make.exe in c:cygwin/bin so that it would appear in search path before WRS's make.exe. I've used WRS's makefiles on UNIX before with no problems using /bin/sh commands in makefiles. But latest project I'm working on now is doing makes under Windoze and I'm running into these problems. So two questions: 1. How to get WRS's make.exe to handle /bin/sh commands in makefiles. 2. Why doesn't cygnus's make.exe work with WRS's makefiles? Answers to these two questions would be greatly appeciated. - -earlm --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Size of dynamically allocated memory Date: Mon, 17 Jun 2002 15:53:42 -0700 From: M Lang Organization: Jet Propulsion Laboratory - Pasadena CA Message-ID: <3D0E6876.87795628@jpl.nasa.gov> References: <166770ed.0206162156.3c8e7487@posting.google.com> Reply-To: Minh.Lang@jpl.nasa.gov Pritam wrote: > > Hi all > I wanted to know is there any function in vxworks that allows you to > find the the size of the memory block allocated by a call to > 'malloc/new'. Something similar to _msize in WinNT. If not is there > any way to figure out the same. > Thanks in advance. > Pritam Take a look at $(WIND_BASE)/target/private/memPartLibP.h. There is a data structure called BLOCK_HDR. When you call "malloc", it returns an address that is immediately followed this header. So when you go back 32-bit from what malloc returned, you'll find the size in there. That's how "free()" can determine the size to free. =Minh= --------------------------- Newsgroups: comp.os.vxworks Subject: vxworks hex download (question) Date: 17 Jun 2002 17:02:11 -0700 From: essenlee@hanmail.net (LEE MYUNG SUK) Organization: http://groups.google.com/ Message-ID: I want to download vxworks.hex without ethernet(console download). 1. how to download ? Do you have source about console download? or advice for me. 2. vxworks.hex size is 2M. time is long. baudrate is not changed to 115200 bps or 57400.( changed less than 38400) I did below. if (arg >= 50 && arg <= 115200) #define CONSOLE_BAUD_RATE 115200 #define WDB_TTY_BAUD 115200 How to extend baudrate 115200 bps or 57600 bps? help me.. vxworker! --------------------------- Newsgroups: comp.os.vxworks Subject: How to use Acqiris DC270 under vxworks? Date: 17 Jun 2002 17:47:59 -0700 From: zuodq@mei29.scgb.com (zzz) Organization: http://groups.google.com/ Message-ID: <86950793.0206171647.25006bf@posting.google.com> hi,all vxworks.I want to build a bootable applications,because I am using the DC270 card in an embedded environment base x86(CPCI ).I am using the Tornado 2.0 as our development environment and I want to know how to add the driver(dc270 supported) to vxWorks.But now i can't open the getStart.wsp and getStart.wpj that Acqiris distributed with the IDE(Tornado 2.0 ). May be who can help me. Best regards, zuodq --------------------------- Newsgroups: comp.os.vxworks Subject: Re: please help Date: Tue, 18 Jun 2002 02:53:11 GMT From: "drdiags" Organization: AT&T Broadband Message-ID: References: <72c0062e.0206161836.184bab07@posting.google.com> I have seen this error before when trying to build tornado bootable kernels from BSPs that define PCMCIA. So the "workaround" was to build your bootrom first with PCMCIA defined, then undefine it, create a bootable project and use the IDE to add PCMCIA back. That is the only instance I know of seeing this error. There could be more..... "wangwz" wrote in message news:72c0062e.0206161836.184bab07@posting.google.com... > When I want to build a bootable vxwork image, the tornado tell me that > "list must have an even number of elements". What does it means? and > how to solve it? Please tell me how to do nest. Thanks. --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Help for configuring vxworks bootable target for standard pc architecture Date: 17 Jun 2002 22:20:51 -0700 From: vxnerd@rediffmail.com (subbarayan) Organization: http://groups.google.com/ Message-ID: References: <3d0dae93$1@netnews.web.de> Thanks for all the mentors who replied me and mentors who r going to help me. Any how I successfully built the file as said i gave CPU=I80386 and built it.Now the problem is like: 1.How to configure the target for making a bootable vxworks from floppy from tornado1.0 and i followed the steps given in tornado manual to make a boot from it but was unsuccessful.The problem is like this:After configuring the target when ever i launch it the target server first starts but when i try to access it or access the shell the target server exits automatically and my machine hangs until i quit the tornado.After that my shell is unable to load since lack of targetserver.Can anyone help me know where the problem lies and how to successfully launch a targetserver and configure it so that it works well with my shell and i can successfully debug it?Astep by step proceedure of configuring a target will be of great help to me. Anyone with a solution can contact me at:vxnerd@rediffmail.com --------------------------- Newsgroups: comp.os.vxworks Subject: vxworks target configuration problem from tornado1.0 Date: 17 Jun 2002 22:52:54 -0700 From: vxnerd@rediffmail.com (subbarayan) Organization: http://groups.google.com/ Message-ID: Thanks for all the mentors who replied me and mentors who r going to help me. Any now I successfully built the file named vxcolor.c as said in manual and by my mentors who replied me earlier i gave CPU=I80386 and built it.Now the problem is like: 1.How to configure the target for making a bootable vxworks from floppy from tornado1.0 and i followed the steps given in tornado manual to make a boot from it but was unsuccessful.The problem is like this:After configuring the target when ever i launch , the target server first starts but when i try to access it or access the shell the target server exits automatically and my machine hangs until i quit the tornado.After that my shell is unable to load since lack of targetserver.Can anyone help me know where the problem lies and how to successfully launch a targetserver and configure it so that it works well with my shell and i can successfully debug it?Astep by step proceedure of configuring a target will be of great help to me. Anyone with a solution can contact me at:vxnerd@rediffmail.com note:i built the vxcolor.c file mentioned in the tornado manual.I built it but was not able to make it. The following r the error messages i get when i try to make the file: makefile:37: C:\Tornado/target/h/make/make.MC68060gnu: No such file or directory make.exe: *** No rule to make target `C:\Tornado/target/h/make/make.MC68060gnu'. Stop.Done. Then when i launch the target server it happens like this: The target server exe says this: connecting to target agent.... RPCcore backend client timed out. Now wheres the error?whats the error due to?how to clear it?Any solution for the above problem can be given to me at:vxnerd@rediffmail.com. One more thing: I am unable to understand which type of target to use for which application.Becos under tornado1.0 i see a lot of target configuration submenus inside the project menu.like: 1.Make current source file 2.Then MakeEPC100-common target,bootrom target,vxworks target in all these submenus i again get some more submenus.which should i use for what sort of application? like this again the same submenus repeated for makepc386,makepc486,makeEV386ex. Any help will be appreciated as I am new to this environment. --------------------------- Newsgroups: comp.os.vxworks Subject: Re: need 64 microseconds accurate timing.... Date: 18 Jun 2002 01:40:41 -0700 From: forvxworks@rediffmail.com (Anand) Organization: http://groups.google.com/ Message-ID: References: <3D0DFA4C.3C87F4D6@sepro-robotique.com> Hi Emmanuel, IMHO, you certainly needs a specific hardware component to > do this (FPGA) or, at least, an external microcontroller > (ie: a ST7 or PIC working in parallel with the main CPU). > tell me what is the maximum accuracy i can get without the specific hardware component mentioned by you. > You will have to set the system tick rate to 1000 (sysClkRateSet) > and then run the task (an infinite loop) with a "taskDelay(1)" > between each loop. Beware : fast context switches like this > will slow down your CPU. I believe taskDelay(1) will suspend the task for 1 tick .so, can i use sysClkConnect to achieve the same functionality without suspending the task?? Thank You, Anand. Emmanuel Herbreteau wrote in message news:<3D0DFA4C.3C87F4D6@sepro-robotique.com>... > Anand wrote: > > 1) I need a clock with an accuracy of 64 microseconds > > without consuming much of the processor time, > > Hi, > > IMHO, you certainly needs a specific hardware component to > do this (FPGA) or, at least, an external microcontroller > (ie: a ST7 or PIC working in parallel with the main CPU). > > > 2) I want a task to be running at a rate of 1 millisecond > > (after i spawn it). by any means ,can i specify the > > repetition/execution rate of the task at the time of spawning? using > > period and periodRun > > You will have to set the system tick rate to 1000 (sysClkRateSet) > and then run the task (an infinite loop) with a "taskDelay(1)" > between each loop. Beware : fast context switches like this > will slow down your CPU. > > Regards > Emmanuel. --------------------------- Newsgroups: comp.os.vxworks Subject: Re: message queue doubt Date: 18 Jun 2002 01:57:09 -0700 From: mohasin.zaki@wipro.com (Mohasin) Organization: http://groups.google.com/ Message-ID: References: vxnerd@rediffmail.com (subbarayan) wrote in message news:... > hi to everyone, > thanks to the mentors who replied me earlier and the mentors who r > going to reply to this query. > Can any one clarify my doubt? > The situation is like this: > Theres a single message queue setup in my project.Taska posts a > message in it.The same message has to reach taskb and taskc.Taskb has > high priority than taskc. > Now my doubt is if task b takes the message from the queue,is there > any chance that task c can get the message from the same queue?becos > my understanding about message queue is that a message once posted in > a queue if at all taken by first task waiting for it,that message > disappears from the queue.Now what should I do inorder to make task c > get the message after task b takes it from the same message queue?Also > tell me if my understanding of message queue as mentioned above is > correct or not? > note:i have only one message queue in my project and no space for > another and other than taskb reposting the same message again to the > same queue so that taskc takes it is there any other way?Further i > don't want to change the priority of taskb and taskc. > > sorry if my question looks silly.But u mentors have to take some pain > in making me understand this(a request plz). > any mentors replying can send me mail at vxnerd@rediffmail.com Hi, From you query I see that only one task needs to read from the message Q. If thats the case, then you can as well remove one msgQReceive from one of the task. But, if both task need to receive some message but on some condition, then you can use a global flag to alter the flow. You can always have a global flag which can act as a gate between two msgQRecvs. Before you do a msgQSend, set the flag accordingly, such that any one msgQRecv is activated in any one of the task. You can also consider a semaphore for task sync. Regards, MOhasin --------------------------- Newsgroups: comp.os.vxworks Subject: Re: please help Date: Tue, 18 Jun 2002 09:06:52 +0000 (UTC) From: David Laight Organization: BT Openworld Message-ID: <3D0EF829.6030401@spamm.me.l8s.co.uk> References: <72c0062e.0206161836.184bab07@posting.google.com> > That is the only instance I know of seeing this error. There could be > more..... Indeed there are - I have (had 'cos I don't work there any more) an SPR open on this. Nothing happened (as usual), I didn't ever try the project stuff. I suspect that there are some scripts that are desparately trying to parse all the #defines in some of the BSP header files - and failing miserably. Made me decide that the project was probably keeping some of that information lurking elsewhere - which means it might not pick up later changes to the files :-( I did track down the bug that stops you installing patches from directory trees that have 'wind' in the name - showed some VERY sloppy coding. David --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Size of dynamically allocated memory Date: Tue, 18 Jun 2002 09:08:53 +0000 (UTC) From: David Laight Organization: BT Openworld Message-ID: <3D0EF8A3.70803@spamm.me.l8s.co.uk> References: <166770ed.0206162156.3c8e7487@posting.google.com> <3D0E6876.87795628@jpl.nasa.gov> M Lang wrote: > Pritam wrote: > >>Hi all >>I wanted to know is there any function in vxworks that allows you to >>find the the size of the memory block allocated by a call to >>'malloc/new'. Something similar to _msize in WinNT. If not is there >>any way to figure out the same. >>Thanks in advance. >>Pritam > > > Take a look at $(WIND_BASE)/target/private/memPartLibP.h. > There is a data structure called BLOCK_HDR. When > you call "malloc", it returns an address that is immediately > followed this header. So when you go back 32-bit from what > malloc returned, > you'll find the size in there. That's how "free()" can > determine the size to free. However if you use it for anything other that analising the data heap you are asking for trouble - the layout of that header could easily change. David --------------------------- Newsgroups: comp.protocols.snmp,comp.os.vxworks Subject: SNMP Date: 18 Jun 2002 02:27:44 -0700 From: rammohancv@yahoo.com (ram mohan) Organization: http://groups.google.com/ Message-ID: Hi.. I divide my question to two parts. PART I: i would like to know how the snmp table creation is handled by the windnet snmp agent. (My probl: i have a table and i should create entries which are static (not created by user). I understand that I should do a set operation with all the column values for each entry. for this , i should write the code at a place when the table gets created. In the mibcomp generated code, routines for get/next/set are given. In the scenario that I face, I dont know where to write the code. PART II: Assuming that now I know where to code, i would like to know if any sample code is available for row creation and deletion for SNMP V1. (the porting guide gives a partial example for v3). I would like to have a complete example if possible. Regards, Madhavi --------------------------- Newsgroups: comp.os.vxworks Subject: Re: need 64 microseconds accurate timing.... Date: Tue, 18 Jun 2002 12:06:35 +0200 From: "Michael Lawnick" Organization: Buergernetz Dillingen Message-ID: References: <3D0DFA4C.3C87F4D6@sepro-robotique.com> Reply-To: "Michael Lawnick" Sender: mlawnick@pd9524762.dip.t-dialin.net Hi Anand, "Anand" schrieb im Newsbeitrag news:f14c07cb.0206180040.350f5eb3@posting.google.com... > Hi Emmanuel, > > IMHO, you certainly needs a specific hardware component to > > do this (FPGA) or, at least, an external microcontroller > > (ie: a ST7 or PIC working in parallel with the main CPU). > > > > tell me what is the maximum accuracy i can get without the specific > hardware component mentioned by you. > What do you want ? - - Every 64 us an interrupt -> you need a fast processor, otherwise it won't do much more than acknowledging your timer interrupts - - A periodic interrupt (e.g. every ms) with an guaranteed latency <64us -> use e.g. standard PC and remove networking, as this might add intLock()-periods. - - A periodic interrupt that will occure with a maximum drift/jitter -> use special timer H/W You see, the answer depends on the exact question! > I believe taskDelay(1) will suspend the task for 1 tick .so, can i use > sysClkConnect to achieve the same functionality without suspending the > task?? > Thank You, > Anand. No, taskDelay does not *suspend the task*, but the task will *pend until next timer tick*. This is a big difference. A task in state suspend indicates a system error or debug session. taskDelay(1) and sysClkRateSet() are a common way to achieve a periodical execution of a task. Its execution time must be smaller than one tick-time of course. Otherwise it will run only every other tick. You may do a sysClkConnect of an ISR that gives a semaphore and let your task pend on this sema. This mechanism will let your task run continuosly if it needs longer than a timer tick. --------------------------- End of New-News digest ********************** From vxwexplo-errs@csg.lbl.gov Tue Jun 18 17:26:23 2002 From: Bruce Wilson Date: Tue Jun 18 17:26:26 PDT 2002 Subject: VxWorks loading unreliable We have been suffering from unreliable loading of VxWorks (over 10 Mb ethernet) on our Bright Star Engineering nanoEngine (SA-1110) board. It hangs after printing the text segment size ("Loading .. 514648 +"), more often than it succeeds. Whenever it fully loads the vxWorks image ("Loading .. 514648 + 9528 + 32972"), it boots up completely and runs fine. Reading and writing files over the ethernet works fine without hanging, once it's fully booted. We have 4 MB of flash on the nanoEngine, so the vxWorks image would fit there. Can anyone describe how to make that vxWorks image load from flash, instead of over the ethernet, so we can avoid the erratic ethernet load phase? Can the bootrom code be modified to load from flash? Is there a better way to avoid the unreliable load phase? -- Bruce A. Wilson U.C. Lawrence Livermore National Lab P.O. Box 808 (L-278) Livermore, CA 94550 voice: (925) 422-4145 fax: (925) 423-1243 From vxwexplo-errs@csg.lbl.gov Wed Jun 19 04:03:16 2002 From: Vxworks Exploder Date: Wed Jun 19 04:03:18 PDT 2002 Subject: comp.os.vxworks newsdigest Comp.Os.Vxworks Daily Digest Wed Jun 19 04:03:12 PDT 2002 Subject: snmpinitfinish Subject: unload function without target shell Subject: Re: Is there a good book on programming in multitask environment? Subject: DISK_NOT_PRESENT error with DOSFS2 Subject: Re: unload function without target shell Subject: Re: Compiler options for #include Subject: change IP addr without reboot. Subject: Re: DISK_NOT_PRESENT error with DOSFS2 Subject: Re: unload function without target shell Subject: Re: unload function without target shell Subject: Re: DMA from PCI slave Subject: Re: need 64 microseconds accurate timing.... Subject: dhcpcParamsGet in hook Subject: loading an application image from flash Subject: Re: change IP addr without reboot. Subject: Re: DMA from PCI slave Subject: Run Time Message - Seen this Before? Subject: snmp table creation / Static Entry Creation Subject: Re: Run Time Message - Seen this Before? Subject: Re: loading an application image from flash Subject: Re: loading an application image from flash Subject: filename.C not recognized, only filename.cpp Subject: Help on posix message queue Subject: Tornado dependency generation Subject: Re: Run Time Message - Seen this Before? Subject: Re: need 64 microseconds accurate timing.... Subject: Re: DISK_NOT_PRESENT error with DOSFS2 Subject: Re: DMA from PCI slave Subject: unknown MUX driver ioctls Subject: how to R/W a large file(>4Gb) in FAT32 ------------------------------------------------------- Newsgroups: comp.os.vxworks Subject: snmpinitfinish Date: Tue, 18 Jun 2002 08:56:59 -0400 From: "RonnoBonno" Message-ID: I would like to use the Pre-Set and Post-Set Hooks for SNMP. I know the function to register the hooks is: void snmpdInitFinish ( VOIDFUNCPTR pPrivRlse, /* user's privare release routine */ FUNCPTR pSetPduVldt, /* user's set pdu validate routine */ FUNCPTR pPreSet, /* user's pre set routine */ FUNCPTR pPostSet, /* user's post set routine */ FUNCPTR pSetFailed /* user's set failed routine */ ) but my question is, what parameters will be sent to the hooks? I cannot find this definition in the online or printed SNMP manual. Can someone who has used the hooks let me know the parameters that the agent gives to the hooks. Thanks Ron Naismith --------------------------- Newsgroups: comp.os.vxworks Subject: unload function without target shell Date: Tue, 18 Jun 2002 15:08:11 +0200 From: "H.J.W. Gevers" Organization: Oce Technologies B.V. Message-ID: <3D0F30BB.9895834F@oce.nl> Hi, Is there somebody who has an answer to the following questions, because I I can't solve the problem? (I tried the Project facility.) Is it possible to configure the vxWorks with the unldLib functionality, but without the target shell? ( using T2.02) If not, is it possible to configure the target shell to the /null device? Thanks a lot in advance, Bart Gevers --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Is there a good book on programming in multitask environment? Date: 18 Jun 2002 06:16:47 -0700 From: Dave.Sanderson@transmitton.co.uk (Dave Sanderson) Organization: http://groups.google.com/ Message-ID: References: try: Real Time Software Systems J E Cooling ISBN 1-85032-274-0 covers structured and object oriented design for real time systems. good book, and very "real world" Dave people@micro-web.co.kr (JinSoo Kim) wrote in message news:... > Hello, > > I feel difficulty these days while my multitask programming on VxWorks > becomes larger. > There are many convenient resources like mutex, message, semaphore ... etc, > in RTOS. > But the larger the program size becomes using these resources, the more > difficult to maintain the code in multitask environment. > Is there a good book to guide in multitask programming? > That is, guide book to how to design tasks and communication method so that it > is easy to maintain the code. > > Thanks for your advice in advance. --------------------------- Newsgroups: comp.os.vxworks Subject: DISK_NOT_PRESENT error with DOSFS2 Date: 18 Jun 2002 06:51:55 -0700 From: dcooke@orthstar.com (Dan Cooke) Organization: http://groups.google.com/ Message-ID: <4e264d23.0206180551.1a4f8a0c@posting.google.com> My application writes about 64k bytes to a binary file every 1.5 seconds (not a whole lot). The app writes to this file continuously and wraps to the beginning when it reaches a 6GB limit. I have been using the ioctl() 64 bit commands to seek into the file to begin the write. Once while executing the FIOSEEK64 command, I received an error (errno = 0xc0006) of S_ioLib_DISK_NOT_PRESENT. However, the open() command previous to this was successful. I am using DosFs2 on a RAID device and have installed the spr patch for dosFs2 (spr 71089). Anyone know what could cause this type of error to occur? Dan --------------------------- Newsgroups: comp.os.vxworks Subject: Re: unload function without target shell Date: 18 Jun 2002 14:37:22 GMT From: Johan Borkhuis Organization: Agere Systems Message-ID: References: <3D0F30BB.9895834F@oce.nl> "H.J.W. Gevers" wrote: > Hi, > > Is there somebody who has an answer to the following questions, > because I I can't solve the problem? (I tried the Project facility.) > > Is it possible to configure the vxWorks with > the unldLib functionality, but without the target shell? ( using > T2.02) > > > If not, is it possible to configure the target shell to the /null > device? You could define the shell to use a non existing serial port (change CONSOLE_TTY to a number >= NUM_TTY) . Groeten, Johan - -- o o o o o o o . . . _____________________________ o _____ || Johan Borkhuis | .][__n_n_|DD[ ====_____ | borkhuis@agere.com | >(________|__|_[_________]_|__________________________| _/oo OOOOO oo` ooo ooo 'o!o!o o!o!o` === VxWorks FAQ: http://www.xs4all.nl/~borkhuis/vxworks/vxworks.html === --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Compiler options for #include Date: 18 Jun 2002 07:52:03 -0700 From: Dave.Sanderson@transmitton.co.uk (Dave Sanderson) Organization: http://groups.google.com/ Message-ID: References: <3d09b12b$1@pull.gecm.com> <3D09C815.861FD801@bellsouth.net> we use (code snippet) #include "..\fastflex32\peripherals.h" in our code with no problems, so it is possible, but i dont know where it would be set. we also seem to use / and \ fairly interchangably in the compiler options for the -I switch. i.e. - -IC:/Tornado/target/h and -I\Tornado\target\proj\fastflex32 are both in the compiler tab of one librarys build spec. we are using t2.0 for arm. could you use the -I to set the include path in the settings? HTH Dave joe durusau wrote in message news:<3D09C815.861FD801@bellsouth.net>... > Martin Dowie wrote: > > > The compiler can't find files if the #include uses the '\' character > > within quotes i.e. > > > > #include "..\foo.h" > > > > Is there an option either within Tornado 2 or a compiler switch to > > get it to recognise this character as it does '/'? > > > > The code is being automatically generated and I'm also searching > > for options to get the tool to produce '/' instead of '\' but with > > little luck so far... > > Not that I know of. Perhaps you could use sed or some such to > change the bad filenames?? > > Speaking only for myself, > > Joe Durusau --------------------------- Newsgroups: comp.os.vxworks Subject: change IP addr without reboot. Date: Tue, 18 Jun 2002 23:21:40 +0800 From: TheOne Organization: ETHOME InterNetNews site Message-ID: Can Vxworks change ip addr without reboot the system ? If possible, can anyone tell me the procedures ? Eric --------------------------- Newsgroups: comp.os.vxworks Subject: Re: DISK_NOT_PRESENT error with DOSFS2 Date: Tue, 18 Jun 2002 15:37:00 GMT From: "Leonid Rosenboim" Organization: Verio Message-ID: References: <4e264d23.0206180551.1a4f8a0c@posting.google.com> Dan, DISK_NOT_PRESENT is the result of DosFs detection of disk removal. A cause for disk removal can be 1) unexpected change of content of block 0, or 2) a command error from block driver, which could not be recovered. Of course this could be a bug in DosFs2 that has not been patched yet. When DISK_NOT_PRESENT appears, all the current file descriptors become invalid, and need to be closed, then the files can be opened, and on the first call to open, DosFs2 will mount the disk. There should be a way to get more dtail about this event, e.g. are there any logMsg at the time of this failure? "Dan Cooke" wrote in message news:4e264d23.0206180551.1a4f8a0c@posting.google.com... > My application writes about 64k bytes to a binary > file every 1.5 seconds (not a whole lot). The app > writes to this file continuously and wraps to the > beginning when it reaches a 6GB limit. I have been > using the ioctl() 64 bit commands to seek into the > file to begin the write. Once while executing the > FIOSEEK64 command, I received an error (errno = 0xc0006) > of S_ioLib_DISK_NOT_PRESENT. However, the open() command > previous to this was successful. I am using DosFs2 on > a RAID device and have installed the spr patch for > dosFs2 (spr 71089). Anyone know what could cause this > type of error to occur? > > Dan --------------------------- Newsgroups: comp.os.vxworks Subject: Re: unload function without target shell Date: Tue, 18 Jun 2002 16:28:35 +0000 (UTC) From: David Laight Organization: BT Openworld Message-ID: <3D0F5FB0.2090409@spamm.me.l8s.co.uk> References: <3D0F30BB.9895834F@oce.nl> > > Is it possible to configure the vxWorks with > the unldLib functionality, but without the target shell? ( using T2.02) Just include some (object) file that calls unld() into a BSP build and the relevant code ought to get included. David --------------------------- Newsgroups: comp.os.vxworks Subject: Re: unload function without target shell Date: Tue, 18 Jun 2002 16:34:47 GMT From: "Leonid Rosenboim" Organization: Verio Message-ID: References: <3D0F30BB.9895834F@oce.nl> For unldLib there is really no need for target shell, but you definitely need target-resident symbol table for that, and loadLib is needed too. I have not used the Project manager much, but with the conventional method (i.e. modifying configAll.h or overriding it in target/config.h, you need to define INCLUDE_LOADER, INCLUDE_UNLOADER, INCLUDE_SYM_TBL, and also select the method to initialize the target symbol table, by either loading the symbol table same way you boot, or by building a "standalone" image. "H.J.W. Gevers" wrote in message news:3D0F30BB.9895834F@oce.nl... > Hi, > > Is there somebody who has an answer to the following questions, because I > I can't solve the problem? (I tried the Project facility.) > > Is it possible to configure the vxWorks with > the unldLib functionality, but without the target shell? ( using T2.02) > > > If not, is it possible to configure the target shell to the /null device? > > Thanks a lot in advance, > > Bart Gevers --------------------------- Newsgroups: comp.os.vxworks Subject: Re: DMA from PCI slave Date: Tue, 18 Jun 2002 18:38:00 +0200 From: "Johan Bostedt" Organization: Mailgate.ORG Server - http://www.Mailgate.ORG Message-ID: References: <3D0854E2.4050409@spamm.me.l8s.co.uk> Sender: johan.bostedt@racomna.se Hello David, Thanks for very good suggestions. Enabling cache on the PCI Memory address window gave me much better performance. It seems like cache usage leads to PCI burst transfers. Now the test results are: I collect 10,600 16-bit samples from the SDRAM over the PCI-bus. a) using sysPciRead32() in a for-loop does the job in 533 us (2060 us without cache). b) using bcopy() does the job in 60 us (1280 us without cache). However bcopy() doesn't do the neccesary endian conversion so I guess these methods are comparable. The CPU is still involved in the data transfers and there doesn't seem exist a DMA engine for the PCI-bus on the MVME-5100!!! Johan "David Laight" wrote in message news:3D0854E2.4050409@spamm.me.l8s.co.uk... > There are 2 possibilities: > > 1) Use a cpu instruction that reads multiple words - this MIGHT get > left as a burst operation. > > 2) Enable the cache on the SRAM area. > (This probably involves adding cache invalidate instructions > in various places.) > > OTOH are you sure you need to make these bursts? > > David > --------------------------- Newsgroups: comp.os.vxworks Subject: Re: need 64 microseconds accurate timing.... Date: Tue, 18 Jun 2002 09:37:32 -0700 From: M Lang Organization: Jet Propulsion Laboratory - Pasadena CA Message-ID: <3D0F61CC.D2C49367@jpl.nasa.gov> References: <3D0DFA4C.3C87F4D6@sepro-robotique.com> Reply-To: Minh.Lang@jpl.nasa.gov Emmanuel Herbreteau wrote: > > Anand wrote: > > 1) I need a clock with an accuracy of 64 microseconds > > without consuming much of the processor time, > > Hi, > > IMHO, you certainly needs a specific hardware component to > do this (FPGA) or, at least, an external microcontroller > (ie: a ST7 or PIC working in parallel with the main CPU). What cpu are you using? Some have on-chip decrementer that gives microsecond time. > > 2) I want a task to be running at a rate of 1 millisecond > > (after i spawn it). by any means ,can i specify the > > repetition/execution rate of the task at the time of spawning? using > > period and periodRun > > You will have to set the system tick rate to 1000 (sysClkRateSet) > and then run the task (an infinite loop) with a "taskDelay(1)" > between each loop. Beware : fast context switches like this > will slow down your CPU. > taskDelay(1) never gives you 1 tick delay. What it does is to delay from the time you call "taskDelay()" until the next clock tick so it can vary from "almost no delay" to "almost 1 tick". =Minh= > Regards > Emmanuel. --------------------------- Newsgroups: comp.os.vxworks Subject: dhcpcParamsGet in hook Date: 18 Jun 2002 13:02:53 -0700 From: thiru@colorcanvas.com (Thiru) Organization: http://groups.google.com/ Message-ID: <3e5110c6.0206181202.42c96afc@posting.google.com> Hello, In my DHCP client, dhcpcParamsGet fails in the hook routine. (It works fine if it is called in the main routine). It does not matter whether it is aync or sync. I am using T2.02 with patch #68322 Any ideas? Regards Thiru --------------------------- Newsgroups: comp.os.vxworks Subject: loading an application image from flash Date: 18 Jun 2002 13:17:34 -0700 From: marinijj@aol.com (joseph j marini) Organization: http://groups.google.com/ Message-ID: <319b48d7.0206181217.378c7b4a@posting.google.com> hi, I am trying to load an application image from a raw flash file system. I first load the application image into memory via a tftp server. During the read process I read the elf header and determine the size of the application image to load. I then write the image to the raw flash file system. I then try to load the image from flash by doing a byte for byte copy to ram starting the load at offset 10,000. When I try to load the application image from flash it either hangs or crashes. To test the image was read in correctly, after the read process, I write the read image to disk. I have loaded this image successfully. I have also compare the image on disk to the image in flash and it looks ok. Any help with this would greatly be appriciated. /joe --------------------------- Newsgroups: comp.os.vxworks Subject: Re: change IP addr without reboot. Date: 18 Jun 2002 15:44:15 -0700 From: john_94501@yahoo.com (John) Organization: http://groups.google.com/ Message-ID: <488e459a.0206181444.26e74cd4@posting.google.com> References: Hello, This is a FAQ. Searching on google comes up with a few matches. Here's a couple that have worked for people: 1. From raghuram (techsoul2001@yahoo.com): ifFlagChange("dc0", IFF_UP, FALSE); /* take interface down */ ifAddrSet("dc0", "nnn.nnn.nnn.nnn"); /* change IP address */ ifFlagChange("dc0", IFF_UP, TRUE); /* bring interface up */ 2. From myself a while back: ifRouteDelete "dc", 0 ipDetach 0, "dc" ipAttach 0, "dc" ifMaskSet "dc0", 0xffffff00 <- change mask as needed ifAddrSet "dc0", "" I prefer the second simply because it handles the route information too (and I don't believe that the first solution will, though it will depend on how big a change in the address you make I suspect as to what impact that will have). Obviously, in both cases substitute dc0 for the name of the network interface you want to change. HTH, John... TheOne wrote in message news:... > Can Vxworks change ip addr without reboot the system ? > If possible, can anyone tell me the procedures ? > > Eric --------------------------- Newsgroups: comp.os.vxworks Subject: Re: DMA from PCI slave Date: Tue, 18 Jun 2002 23:31:42 +0000 (UTC) From: David Laight Organization: BT Openworld Message-ID: <3D0FC2D7.1000702@spamm.me.l8s.co.uk> References: <3D0854E2.4050409@spamm.me.l8s.co.uk> > The CPU is still involved in the data transfers and there doesn't seem exist > a DMA engine for the PCI-bus on the MVME-5100!!! Given the transfers are largely PCI bus limited, having a DMA engine would probably make little difference. Maybe the cpu could execute code out of its data cache, but anything else would start hitting the same resources. Additionally you would have all the setup and interrupt costs on the cpu anyway. Can you do the byteswap at a later stage? David --------------------------- Newsgroups: comp.os.vxworks,comp.lang.c++ Subject: Run Time Message - Seen this Before? Date: 18 Jun 2002 16:47:33 -0700 From: juttu@yahoo.com (Girish Chandraiah) Organization: http://groups.google.com/ Message-ID: We are seeing this message on our console at runtime. None of our modules are printing this message. Has anybody out there seen anything like this ??? Our development is done is C++(PPC). It looks like one of our inherited classes is invoking a method which is a pure virtual method(C++) in the parent class. Could this be a potential bug in the cross compiler that we are using? Thank you for your time. - - Girish mmi-bpp-1-5 > 0x464f840 (SDF_L3CC): 0x464f840 (SDF_L3CC): Task called pure virtual function for which there is no definition Task called pure virtual function for which there is no definition --------------------------- Newsgroups: comp.os.vxworks,comp.protocols.snmp Subject: snmp table creation / Static Entry Creation Date: 18 Jun 2002 20:43:20 -0700 From: rammohancv@yahoo.com (ram mohan) Organization: http://groups.google.com/ Message-ID: Hi.. I divide my question to two parts. PART I: i would like to know how the snmp table creation is handled by the windnet snmp agent. (My probl: i have a table and i should create entries which are static (not created by user). I understand that I should do a set operation with all the column values for each entry. for this , i should write the code at a place when the table gets created. In the mibcomp generated code, routines for get/next/set are given. In the scenario that I face, I dont know where to write the code. PART II: Assuming that now I know where to code, i would like to know if any sample code is available for row creation and deletion for SNMP V1. (the porting guide gives a partial example for v3). I would like to have a complete example if possible. Regards, Madhavi --------------------------- Newsgroups: comp.os.vxworks,comp.lang.c++ Subject: Re: Run Time Message - Seen this Before? Date: Wed, 19 Jun 2002 04:02:32 GMT From: Derek Thomson Organization: Optus Customer - reports relating to abuse should be sent to abuse@optus.net.au Message-ID: <3D100257.50108@wedgetail.com> References: Girish Chandraiah wrote: > We are seeing this message on our console at runtime. None of our > modules are printing this message. Has anybody out there seen > anything like this ??? Our development is done is C++(PPC). It looks > like one of our inherited classes is invoking a method which is a pure > virtual method(C++) in the parent class. > > Could this be a potential bug in the cross compiler that we are using? > > Thank you for your time. > - Girish > > mmi-bpp-1-5 > 0x464f840 (SDF_L3CC): 0x464f840 (SDF_L3CC): Task called > pure virtual function for which there is no definition > Task called pure virtual function for which there is no definition It could simply be that you haven't linked in the object file that contains the code for the function that the call dispatches to. Regards, Derek. --------------------------- Newsgroups: comp.os.vxworks Subject: Re: loading an application image from flash Date: Wed, 19 Jun 2002 04:25:04 GMT From: Pete Kockritz Organization: AT&T Broadband Message-ID: References: <319b48d7.0206181217.378c7b4a@posting.google.com> In article <319b48d7.0206181217.378c7b4a@posting.google.com>, marinijj@aol.com (joseph j marini) wrote: > hi, > I am trying to load an application image from a raw flash file > system. > I first load the application image into memory via a tftp server. > During the read process I read the elf header and determine the size > of the application image to load. I then write the image to the raw > flash file system. > I then try to load the image from flash by doing a byte for byte copy > to ram starting the load at offset 10,000. > When I try to load the application image from flash it either hangs or > crashes. > To test the image was read in correctly, after the read process, I > write the read image to disk. I have loaded this image successfully. > I have also compare the image on disk to the image in flash and it > looks ok. > Any help with this would greatly be appriciated. > > /joe Some of this will be architecture dependent; what is your target architecture? To what address are you jumping after you load the image? The execution address may not be the lowest address in the image. (I'm assuming that your image is a staticly linked kernel+application image). You are copying the TEXT section from the elf file? Are you zeroing out the BSS section and copying the initialized DATA section(s) to the correct address? - -- Pete Kockritz --------------------------- Newsgroups: comp.os.vxworks Subject: Re: loading an application image from flash Date: 18 Jun 2002 21:53:15 -0700 From: john_94501@yahoo.com (John) Organization: http://groups.google.com/ Message-ID: <488e459a.0206182053.7da0a7b6@posting.google.com> References: <319b48d7.0206181217.378c7b4a@posting.google.com> Hello, You cannot just copy the ELF format file directly to memory. When you load from a real file system, or from the network, there is a loader (actually a cut down version of the full target loader) in the bootrom that extracts the real image from the ELF format file. Now, you can do this on the host if you need to - depending on your version of Tornado, you should find one or both of elfToBin and objcopyppc (I'm guessing that you are using PPC since you said 10000 and ELF, if the arch is something else substitute ppc with the correct arch suffix). Both of these tools are able to generate a binary image, without all the ELF trimmings, that is suitable for just copying into RAM. Try placing that in your flash, copying to RAM, flushing the cache if applicable and then jumping to 0x10000 to start the kernel running. HTH, John... marinijj@aol.com (joseph j marini) wrote in message news:<319b48d7.0206181217.378c7b4a@posting.google.com>... > hi, > I am trying to load an application image from a raw flash file > system. > I first load the application image into memory via a tftp server. > During the read process I read the elf header and determine the size > of the application image to load. I then write the image to the raw > flash file system. > I then try to load the image from flash by doing a byte for byte copy > to ram > starting the load at offset 10,000. > When I try to load the application image from flash it either hangs or > crashes. > To test the image was read in correctly, after the read process, I > write the > read image to disk. I have loaded this image successfully. I have also > compare > the image on disk to the image in flash and it looks ok. > Any help with this would greatly be appriciated. > > /joe --------------------------- Newsgroups: comp.os.vxworks Subject: filename.C not recognized, only filename.cpp Date: Wed, 19 Jun 2002 05:41:56 GMT From: "Kevin Lay" Organization: EarthLink Inc. -- http://www.EarthLink.net Message-ID: I'm porting a bulk of Unix code to VxWorks. It has a mix of .C and .cpp file extensions for C++ files. Tornado only understands ".cpp". I've tried adding an extra rule into the various building blocks T2 uses to make a makefile, to no avail. Thanks for your help. Kevin Lay --------------------------- Newsgroups: comp.os.vxworks Subject: Help on posix message queue Date: 18 Jun 2002 22:54:29 -0700 From: rajneesh@logiceastern.com (Rajneeah) Organization: http://groups.google.com/ Message-ID: <144122d1.0206182154.69128e0e@posting.google.com> Hi all.. I need a help... I am in the process of building up a software where the software down time can not be afforded. I am using posix message queues for inter task communication. Here I am having some queries. 1. In the software we are continuously monitoring the health of all the tasks and bringing them UP as soon any of the task die due to some mis hap in the system. Here I want to know that in such a system is it advisable to monitor the health of the queues as well. What can be different possible reasons of message queue deletions in the system. Can I rely on the system that the probability of message queues being deleted is very less? Thx Rajneesh --------------------------- Newsgroups: comp.os.vxworks Subject: Tornado dependency generation Date: Wed, 19 Jun 2002 05:58:04 GMT From: "Kevin Lay" Organization: EarthLink Inc. -- http://www.EarthLink.net Message-ID: I'm having trouble getting Tornado to generate sensible dependencies for applications where the implementation files (C++) and their headers are external to the Tornado directory. Using PPC. What am I missing? I can't find the tool that generates these. I tried simply "g++ppc -M" but it doesn't generate any output from the command line, let alone dependencies... Thank you. Kevin Lay --------------------------- Newsgroups: comp.os.vxworks,comp.lang.c++ Subject: Re: Run Time Message - Seen this Before? Date: Wed, 19 Jun 2002 16:29:29 +1000 From: "Geoff Field" Organization: Follow the path if you *must* know Message-ID: <1024468173.246048@cswreg.cos.agilent.com> References: <3D100257.50108@wedgetail.com> Reply-To: "Geoff Field" "Derek Thomson" wrote in message news:3D100257.50108@wedgetail.com... > Girish Chandraiah wrote: > > We are seeing this message on our console at runtime. None of our > > modules are printing this message. Has anybody out there seen > > anything like this ??? Our development is done is C++(PPC). It looks > > like one of our inherited classes is invoking a method which is a pure > > virtual method(C++) in the parent class. > > > > Could this be a potential bug in the cross compiler that we are using? *Always* suspect your own code before the compiler. That said, I've run across plenty of dodgy compilers with clearly faulty behaviour (unexpected resets, bad handling of complex conditionals, etc). However, in this case, I suspect it's your code. > > Thank you for your time. > > - Girish > > > > mmi-bpp-1-5 > 0x464f840 (SDF_L3CC): 0x464f840 (SDF_L3CC): Task called > > pure virtual function for which there is no definition > > Task called pure virtual function for which there is no definition > > It could simply be that you haven't linked in the object file that > contains the code for the function that the call dispatches to. More likely, you've inherited from a class containing a pure virtual member function and haven't defined the overriding function in the derived class. Thus: class Base { public: virtual void PureVirtualFunction() = 0; }; class Derived : public Base { // Needs an overriding definition of PureVirtualFunction() here. }; Somewhere - either at the declaration point, in a separate inline section or in a source file - you'll have to define some real code for the function as well. I've omitted constructors, destructors, etc for clarity. I must say that the error message isn't massively useful for tracking down exactly *which* pure virtual function is missing, or even where it's called from. If there's a fault in your compiler, it's that it didn't alert you to the missing definition before it got to runtime. Geoff - -- Geoff Field, Professional geek, amateur stage-levelling gauge. Spamtraps: geoff_field@suespammers.org, geofffield@hotmail.com or geoff_field@great-atuin.co.uk; Real Email: gcfield at optusnet dot com dot au The suespammers.org mail server is located in California; do not send unsolicited bulk e-mail or unsolicited commercial e-mail to my suespammers.org address --------------------------- Newsgroups: comp.os.vxworks Subject: Re: need 64 microseconds accurate timing.... Date: Wed, 19 Jun 2002 08:49:14 +0200 From: Emmanuel Herbreteau Organization: SEPRO Robotique (BEP) Message-ID: <3D10296A.FCBD05F0@sepro-robotique.com> References: <3D0DFA4C.3C87F4D6@sepro-robotique.com> <3D0F61CC.D2C49367@jpl.nasa.gov> M Lang wrote: > > IMHO, you certainly needs a specific hardware component to > > do this (FPGA) or, at least, an external microcontroller > What cpu are you using? Some have on-chip decrementer > that gives microsecond time. Ooops, I misunderstood the question... Of course, a lot of industrial processor (MPC, 683xx, etc...) have external device to do this (TPU). Not sure, but industrial PCs (x86) probably don't have such hardware (?). > > > 2) I want a task to be running at a rate of 1 millisecond > > You will have to set the system tick rate to 1000 (sysClkRateSet) > > and then run the task (an infinite loop) with a "taskDelay(1)" > taskDelay(1) never gives you 1 tick delay. What it does is > to delay from the time you call "taskDelay()" until the next > clock tick so it can vary from "almost no delay" to "almost > 1 tick". AFAIK, the task (an infinite loop) will be perform each tick. Of course, the loop have to be done in less than 1 tick. It seems to be a periodic task with a 1 tick period, isn't it ? (probably, Anand will have to use a faster tick rate to get an accurate period) (ie : 5000 ticks/s and taskdelay(5) ) Regards Emmanuel. --------------------------- Newsgroups: comp.os.vxworks Subject: Re: DISK_NOT_PRESENT error with DOSFS2 Date: Wed, 19 Jun 2002 09:02:37 +0200 From: "Michael Lawnick" Organization: Buergernetz Dillingen Message-ID: References: <4e264d23.0206180551.1a4f8a0c@posting.google.com> Reply-To: "Michael Lawnick" Sender: mlawnick@p5088e951.dip.t-dialin.net Hi Dan, yesterday support patched for us cbio-lib. It comes into conflict with tffs, as tffs sets the disk-change indicator to implement an O/S independant mutex. This leads to a problem on premption of the task that already uses tffs, if the second task now tries to access tffs too. Support moved cbio mutex from taking before blockRead/blockWrite to a place before mount check. Could be the same problem on other block devices too. You may reference to TSR 281243/SPR 78766 HTH Michael "Dan Cooke" schrieb im Newsbeitrag news:4e264d23.0206180551.1a4f8a0c@posting.google.com... > My application writes about 64k bytes to a binary > file every 1.5 seconds (not a whole lot). The app > writes to this file continuously and wraps to the > beginning when it reaches a 6GB limit. I have been > using the ioctl() 64 bit commands to seek into the > file to begin the write. Once while executing the > FIOSEEK64 command, I received an error (errno = 0xc0006) > of S_ioLib_DISK_NOT_PRESENT. However, the open() command > previous to this was successful. I am using DosFs2 on > a RAID device and have installed the spr patch for > dosFs2 (spr 71089). Anyone know what could cause this > type of error to occur? > > Dan --------------------------- Newsgroups: comp.os.vxworks Subject: Re: DMA from PCI slave Date: Wed, 19 Jun 2002 09:16:21 +0200 From: "Michael Lawnick" Organization: Buergernetz Dillingen Message-ID: References: <3D0854E2.4050409@spamm.me.l8s.co.uk> <3D0FC2D7.1000702@spamm.me.l8s.co.uk> Reply-To: "Michael Lawnick" Sender: mlawnick@p5088e951.dip.t-dialin.net Byteswap shouldn't be the problem. Using a simple copy routine using lwbrx r3,r0,r3 or lhbrx r3,r0,r3 and a sync as the very first and very last instruction should do the trick. sysPciRead32() in a loop is slower than bcopy, as the function does a sync on _every_ access, what isn't needed here. Michael "David Laight" schrieb im Newsbeitrag news:3D0FC2D7.1000702@spamm.me.l8s.co.uk... > > The CPU is still involved in the data transfers and there doesn't seem exist > > a DMA engine for the PCI-bus on the MVME-5100!!! > > Given the transfers are largely PCI bus limited, having a DMA engine > would probably make little difference. > Maybe the cpu could execute code out of its data cache, but anything > else would start hitting the same resources. > Additionally you would have all the setup and interrupt costs on the > cpu anyway. > > Can you do the byteswap at a later stage? > > David > --------------------------- Newsgroups: comp.os.vxworks Subject: unknown MUX driver ioctls Date: Wed, 19 Jun 2002 09:39:42 +0200 From: Sebastien Fauris Organization: Nortel Networks Message-ID: <3D10353E.9D315E2@europem01.nt.com> Hi Folks, while I was reading the "VxWorks Network Protocol Toolkit Programmers Guide Edition 4", I discovered these 3 ioctls: EIOCGNPT EIOCQUERY EIOCGMIB2233 Does somebody know in which WindRiver file these ioctls are defined ? They are not defined in my version of the end.h file (last modification 01s,29sep98,fle). If somebody could eventually send me the updated file or just the value of these ioctls. Thanks. I ask this because I get the foolowing ioctls on my MUX driver that I don't identify: unknown ioctl 0x40046514 called unknown ioctl 0x40046912 called unknown ioctl 0x40046909 called Thanks for your help, Sebastien. --------------------------- Newsgroups: comp.os.vxworks Subject: how to R/W a large file(>4Gb) in FAT32 Date: 19 Jun 2002 00:58:08 -0700 From: jameschen@tpe.destiny.com.tw (james) Organization: http://groups.google.com/ Message-ID: Does anyone can tell me how can write a large file (>4Gb) in FAT32? I research iolib.h. /* 64-bit ioctl codes, "long long *" expected as 3rd argument */ #define FIOCHKDSK (100 | 6400 ) /* salvage file system */ #define FIOCONTIG64 (FIOCONTIG | 6400) #define FIONCONTIG64 (FIONCONTIG | 6400) #define FIONFREE64 (FIONFREE | 6400) #define FIONREAD64 (FIONREAD | 6400) #define FIOSEEK64 (FIOSEEK | 6400) #define FIOWHERE64 (FIOWHERE | 6400) #define FIOTRUNC64 (FIOTRUNC | 6400) Best Regards James --------------------------- End of New-News digest ********************** From vxwexplo-errs@csg.lbl.gov Wed Jun 19 06:41:32 2002 From: Morris John M DLVA Date: Wed Jun 19 06:41:34 PDT 2002 Subject: Migrating From VADS And VxWorks 5.1 We are in the preliminary stages of upgrading from VxWorks 5.1 to 5.4. We are also looking at GNAT (ADA compiler), UNDERSTAND for ADA (metrics/SDD), and CLEARCASE (CM). Does anyone have any helpful hints (or horror stories) about going from 5.1 to 5.4? Also, does anyone have some thoughts they'd like to share on the aforementioned tools? Thanks for you help, John From vxwexplo-errs@csg.lbl.gov Wed Jun 19 17:39:44 2002 From: "John W Cosgrove" Date: Wed Jun 19 17:39:46 PDT 2002 Subject: Select and UDP sockets Hi, vxWorks gurus, I am trying to figure out the vxWorks flavor of select. The code I am running is a multi machine (all vxWorks 5.4) port. The select is being used on a UDP socket that is reading from INADDR_ANY. The first port works fine is on a SVME-179 board (DY-4 on a PPC7400). The timeout works fine. I am now trying to run the same select on the Ixthos (Now DY-4 Leesburg(sp?)) IXA7 board's 8240 processor (this board also has 4 PPC7410's). It actually causes the board to reset. Pertainent code except here: int sfd; fd_set recv_sock_fd; [snip!] while (not_done) { FD_ZERO(&recv_sock_fd); FD_ZERO(&dummy_fd); FD_SET(sfd, &recv_sock_fd); timeOutValue.tv_sec = BOOTP_TMO / 1000; timeOutValue.tv_usec = (BOOTP_TMO - (timeOutValue.tv_sec * 1000)) * 1000; printf("before the select(%d)\n",sfd); fflush(stdout); rc = select(FD_SETSIZE, &recv_sock_fd, (fd_set *) NULL, (fd_set *) NULL, &timeOutValue); printf("returned from select() %d\n", rc); fflush(stdout); if (rc < 0) [snip!] Any clues what I have done wrong? John Cosgrove Electronic Systems Division Raytheon Company jwc@ssd.ray.com (401)842-4167 From vxwexplo-errs@csg.lbl.gov Thu Jun 20 04:03:19 2002 From: Vxworks Exploder Date: Thu Jun 20 04:03:22 PDT 2002 Subject: comp.os.vxworks newsdigest Comp.Os.Vxworks Daily Digest Thu Jun 20 04:03:15 PDT 2002 Subject: MV5100 serial port Subject: Re: Run Time Message - Seen this Before? Subject: webserver and TIME_WAIT Subject: Enabling telnet/ftp mystery Subject: Re: DISK_NOT_PRESENT error with DOSFS2 Subject: Re: Run Time Message - Seen this Before? Subject: Re: Enabling telnet/ftp mystery Subject: Getting an unused fd Subject: cpu to cpu communication without using vxMP Subject: Re: Run Time Message - Seen this Before? Subject: Re: Tornado dependency generation Subject: Re: Getting an unused fd Subject: [AE] VME Driver Subject: Re: cpu to cpu communication without using vxMP Subject: Re: webserver and TIME_WAIT Subject: Re: filename.C not recognized, only filename.cpp Subject: Re: how to R/W a large file(>4Gb) in FAT32 Subject: Re: Tornado dependency generation Subject: VxWorks 5.4 ATM driver undefined symbols Subject: Re: filename.C not recognized, only filename.cpp Subject: Re: cpu to cpu communication without using vxMP Subject: Re: [AE] VME Driver Subject: WDB exception - what's the deal? Subject: Can not download a module (??) Subject: Migrating From VADS And VxWorks 5.1 Subject: Re: [AE] VME Driver Subject: Re: filename.C not recognized, only filename.cpp Subject: object module format Subject: Does vxworks supplies the socket that directly get network data from datalink like linux? Subject: Re: filename.C not recognized, only filename.cpp Subject: Tornado hanging help Subject: GCC for PowerPC bug Subject: Re: GCC for PowerPC bug Subject: Re: DISK_NOT_PRESENT error with DOSFS2 Subject: Forcing 10BASE-T network speed ------------------------------------------------------- Newsgroups: comp.os.vxworks Subject: MV5100 serial port Date: Wed, 19 Jun 2002 12:58:13 +0100 From: Paul Message-ID: <3D1071D5.D630A1E5@here.com> I have an application running on a MV5100 PowerPC (VxWorks 5.4) that reads the serial port, the source data for this port is an 8 byte stream, configured as 7 data bits, 1 stop bit, even parity. The PowerPC / VxWorks port is configured for 7 data bits (as setting parity mode using ioctl does not seem to make any difference). For initial testing I connected the system to a standard terminal and sent single characters to check that the parity was working, whenever a byte is sent that contains an even number of bits (e.g number 3), an extra byte appears on the PowerPC / VxWorks port, which needs to be read, before the next valid byte can be read. The work around for this was simple (i.e read the extra byte) and this works fine when the data is sent a single byte at a time . If however I send a burst of data (8 bytes) all at the same time (file transfer from a terminal) and a byte of the data contains data with an even number of bits (e.g. number 3), the data I get from the port is completly rubbish. Question is, does any one have any idea why sending a burst of data bytes with even parity enabled (on the source) should cause problems with reading the data on the PowerPC ? --------------------------- Newsgroups: comp.os.vxworks,comp.lang.c++ Subject: Re: Run Time Message - Seen this Before? Date: Wed, 19 Jun 2002 20:01:38 +0800 From: "Wang Tianxing" Organization: Another Netscape Collabra Server User Message-ID: References: "Girish Chandraiah" wrote in message news:cfc612dd.0206181547.118d665a@posting.google.com... > Task called pure virtual function for which there is no definition Some thing like this will surely cause a virtual function call: struct Base { ~Base() { cleanup(); } void cleanup() { vf(); } virtual void vf() = 0; }; struct Derived : Base { void vf() {} }; Derived d; When Base::~Base() is called, the type of the object being destructed is Base, which defines no vf(). Calling vf() at that time is surely a bad thing. Regards, t.x. --------------------------- Newsgroups: comp.os.vxworks,comp.realtime,comp.arch.embedded Subject: webserver and TIME_WAIT Date: 19 Jun 2002 06:12:03 -0700 From: hema@comneti.com (hema) Organization: http://groups.google.com/ Message-ID: <7d240511.0206190512.55318693@posting.google.com> hai, i m in the process of designing the web server for our application. i hope to get a early reply regarding my problem as it is quiet urgent my problem is......... after spawning a task and opening my browser .i m able to see the active internet connection. inetstatShow Active Internet connections (including servers) PCB Proto Recv-Q Send-Q Local Address Foreign Address (state) - -------- ----- ------ ------ ------------------ ------------------ - ------- fc4524 TCP 0 0 xxx.xxx.xxx.xxx.80 yyy.yyy.yyy.yyy.11 TIME_WAIT fc44a0 TCP 0 0 xxx.xxx.xxx.xxx.80 yyy.yyy.yyy.yyy.11 TIME_WAIT fc441c TCP 0 0 0.0.0.0.80 0.0.0.0.0 LISTEN fc4314 TCP 0 0 0.0.0.0.23 0.0.0.0.0 LISTEN fc4080 TCP 0 0 0.0.0.0.21 0.0.0.0.0 LISTEN fc4398 UDP 0 0 0.0.0.0.520 0.0.0.0.0 fc4290 UDP 0 0 127.0.0.1.1024 127.0.0.1.17185 fc420c UDP 0 0 0.0.0.0.17185 0.0.0.0.0 value = 0 = 0x0 xxx is my target board i/p yyy is my host machine i/p and my first page was loded sucessfully(the password verification page) .i then redirected to another page where images(.gif) are to be loded. now,in the shell when i did a inetstatShow Active Internet connections (including servers) PCB Proto Recv-Q Send-Q Local Address Foreign Address (state) - -------- ----- ------ ------ ------------------ ------------------ - ------- fc44a0 TCP 231 0 xxx.xxx.xxx.xxx.80 yyy.yyy.yyy.yyy.11 ESTABLISHED fc4524 TCP 0 0 xxx.xxx.xxx.xxx.80 yyy.yyy.yyy.yyy.11 TIME_WAIT fc441c TCP 0 0 0.0.0.0.80 0.0.0.0.0 LISTEN fc4314 TCP 0 0 0.0.0.0.23 0.0.0.0.0 LISTEN fc4080 TCP 0 0 0.0.0.0.21 0.0.0.0.0 LISTEN fc4398 UDP 0 0 0.0.0.0.520 0.0.0.0.0 fc4290 UDP 0 0 127.0.0.1.1024 127.0.0.1.17185 fc420c UDP 0 0 0.0.0.0.17185 0.0.0.0.0 value = 0 = 0x0 few months ago i saw a message in the forum regarding rcvQ pending with +e messages and the netStackSysPoolShow value to be changed if free cluster value is 0 but when i executed "netStackDataPoolShow" free cluster:396. the problem is my image would never load in the browser and system reboots. and if i open more than 3 sessions (5 can listen isint it??) it really takes a long time for the first page to load. and sometime when i wait for the status to change from "time_wait" to close andd then load the image,some time rarely(say 1 out of twenty times),the images are loded. i m not sure why this problem exists!!! do lemme know if u came across a similler problem. BTW, my second page is a .cgi,will that have any concern??ofcourse headers r defined properly!!!! thanx in advance, hema --------------------------- Newsgroups: comp.os.vxworks Subject: Enabling telnet/ftp mystery Date: 19 Jun 2002 06:46:51 -0700 From: qcontinuum1701@yahoo.com (quentin) Organization: http://groups.google.com/ Message-ID: I'm trying to build a vxWorks kernel for the Mv2604 BSP and for some reason the telnet and ftp tasks aren't getting spawned. This only happens when I copy the vxWorks and vxWorks.sym file to target and use bootChange to configure it to boot from the harddrive(scsi=0,0). When I configure the target to boot from the network, pointing it to the same kernel as the one on the target it works fine: telnet and ftp respond normally. I looks like I've got the configAll.h file setup correctly since telnet/ftp are responding in one configuration. Any help would be greatly appreciated. Quentin --------------------------- Newsgroups: comp.os.vxworks Subject: Re: DISK_NOT_PRESENT error with DOSFS2 Date: Wed, 19 Jun 2002 13:51:18 GMT From: "Leonid Rosenboim" Organization: Verio Message-ID: References: <4e264d23.0206180551.1a4f8a0c@posting.google.com> Mike, Coild you elaborate on HOW does TFFS use readyChange for so called "O/S independent Mutex". It sounds strange. Also the readyChange field in blkIo is vxWorks specific. - - Leonid "Michael Lawnick" wrote in message news:aepaac$n4a$1@snoopy.bndlg.de... > Hi Dan, > > yesterday support patched for us cbio-lib. It comes into conflict with tffs, > as tffs sets the disk-change indicator to implement an O/S independant > mutex. This leads to a problem on premption of the task that already uses > tffs, if the second task now tries to access tffs too. > Support moved cbio mutex from taking before blockRead/blockWrite to a place > before mount check. Could be the same problem on other block devices too. > > You may reference to TSR 281243/SPR 78766 > > HTH > Michael > > "Dan Cooke" schrieb im Newsbeitrag > news:4e264d23.0206180551.1a4f8a0c@posting.google.com... > > My application writes about 64k bytes to a binary > > file every 1.5 seconds (not a whole lot). The app > > writes to this file continuously and wraps to the > > beginning when it reaches a 6GB limit. I have been > > using the ioctl() 64 bit commands to seek into the > > file to begin the write. Once while executing the > > FIOSEEK64 command, I received an error (errno = 0xc0006) > > of S_ioLib_DISK_NOT_PRESENT. However, the open() command > > previous to this was successful. I am using DosFs2 on > > a RAID device and have installed the spr patch for > > dosFs2 (spr 71089). Anyone know what could cause this > > type of error to occur? > > > > Dan > > --------------------------- Newsgroups: comp.os.vxworks,comp.lang.c++ Subject: Re: Run Time Message - Seen this Before? Date: 19 Jun 2002 06:52:36 -0700 From: gbayles2001@yahoo.com (gbayles) Organization: http://groups.google.com/ Message-ID: <82ebdb39.0206190552.4d4f2d13@posting.google.com> References: <3D100257.50108@wedgetail.com> <1024468173.246048@cswreg.cos.agilent.com> "Geoff Field" wrote in message news:<1024468173.246048@cswreg.cos.agilent.com>... [snip] > If there's a fault in your compiler, it's that it didn't alert you to the > missing definition before it got to runtime. I've seen this happen when compiling class code into DLLs. I think what happens is that when the executable is compiled the compiler can't tell that the class is actually abstract. The missing definition would normally be discovered by the linker, but with a DLL that isn't going to happen until runtime. So, perhaps it isn't any fault of the compiler but a limitation (or pitfall) of using DLLs. --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Enabling telnet/ftp mystery Date: Wed, 19 Jun 2002 15:54:18 +0200 From: "Michael Lawnick" Organization: Buergernetz Dillingen Message-ID: References: Reply-To: "Michael Lawnick" Sender: mlawnick@p5088e951.dip.t-dialin.net Hi quentin, set the 'others' parameter in your bootline to 'dc', then your network will be mounted after boot. HTH Michael "quentin" schrieb im Newsbeitrag news:d90dccff.0206190546.15bdcfc1@posting.google.com... > I'm trying to build a vxWorks kernel for the Mv2604 BSP and for some > reason the telnet and ftp tasks aren't getting spawned. This only > happens when I copy the vxWorks and vxWorks.sym file to target and use > bootChange to configure it to boot from the harddrive(scsi=0,0). When > I configure the target to boot from the network, pointing it to the > same kernel as the one on the target it works fine: telnet and ftp > respond normally. I looks like I've got the configAll.h file setup > correctly since telnet/ftp are responding in one configuration. Any > help would be greatly appreciated. > > > Quentin --------------------------- Newsgroups: comp.os.vxworks Subject: Getting an unused fd Date: 19 Jun 2002 07:05:11 -0700 From: silvano.cirujano@gmx.net (scc) Organization: http://groups.google.com/ Message-ID: <99630f8e.0206190605.21b1eb7f@posting.google.com> Does anybody could tell me which function should I use in order to get an unused file descriptor? --------------------------- Newsgroups: comp.os.vxworks Subject: cpu to cpu communication without using vxMP Date: 19 Jun 2002 07:13:49 -0700 From: rajesh_vr@rediffmail.com (rajesh vr) Organization: http://groups.google.com/ Message-ID: hi Iam working on a multi processor board. Is there any way , two processors communicate on a common area, without using vxMP. the two proceesors are loaded with vxWorks individually. regards rajesh --------------------------- Newsgroups: comp.os.vxworks,comp.lang.c++ Subject: Re: Run Time Message - Seen this Before? Date: Wed, 19 Jun 2002 08:46:46 -0600 From: "Homer Meyer" Organization: Posted via Supernews, http://www.supernews.com Message-ID: References: "Girish Chandraiah" wrote in message news:cfc612dd.0206181547.118d665a@posting.google.com... > We are seeing this message on our console at runtime. None of our > modules are printing this message. Has anybody out there seen > anything like this ??? Our development is done is C++(PPC). It looks > like one of our inherited classes is invoking a method which is a pure > virtual method(C++) in the parent class. > > Could this be a potential bug in the cross compiler that we are using? > > Thank you for your time. You get this sort of thing when a pure virtual function is called within a constructor or destructor. Most compilers that I have used are unable to catch it and warn you at compile time, so they compile in a stub that prints something like "pure virtual function called" in case the pure virutal function is called. Here's an example: #include class Base { public: virtual void foo() = 0; Base() { foo(); } virtual ~Base() {} }; class Derived : public Base { public: void foo() { std::cout << "Derived::foo\n"; } }; int main() { Derived d; } You can get the same effect by moving the call to foo() from the constructor to the destructor. Always remember that virtual calls in a destructor or constructor are never polymorphic. This is probably what's happening somewhere in your code. --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Tornado dependency generation Date: 19 Jun 2002 11:09:44 -0400 From: Bill Pringlemeir Organization: Factory of the mind Message-ID: References: Sender: bpringlemeir@DeadDuck >>>>> "Kevin" == Kevin Lay writes: Kevin> I'm having trouble getting Tornado to generate sensible Kevin> dependencies for applications where the implementation files Kevin> (C++) and their headers are external to the Tornado directory. Kevin> Using PPC. What am I missing? I can't find the tool that Kevin> generates these. I tried simply "g++ppc -M" but it doesn't Kevin> generate any output from the command line, let alone Kevin> dependencies... The dependencies are generated by a tcl script. It is somewhere in your $(WIND_BASE)/host/resource/tcl directory. Possibly "$(WIND_BASE)/host/resource/tcl/app-config/Project/Dep*.tcl". You can grep for "elegant" as I see to recall the implementer putting a comment like this in the algorithm. hth, Bill Pringlemeir. $(WIND_BASE) == %WIND_BASE% == C:/Tornado == C:\Tornado (usually). - -- Have you ever tried to become one with someone you saw at a party while staring at lightbulbs? Or been given two Teletypes(tm) made out of boxes of Borax? You will. And the company that will bring it to you: Agere. vxWorks FAQ, "http://www.xs4all.nl/~borkhuis/vxworks/vxworks.html" --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Getting an unused fd Date: Wed, 19 Jun 2002 11:20:20 -0400 From: Keith Arner Organization: Marconi Message-ID: References: <99630f8e.0206190605.21b1eb7f@posting.google.com> Reply-To: Keith Arner On 19 Jun 2002, scc wrote: > Does anybody could tell me which function should I use in order to get > an unused file descriptor? open() Or, if you are writing a driver that is not going to go through open() (like the socket driver), then iosFdNew() Keith - -- mv ~karner /loony/bin --------------------------- Newsgroups: comp.os.vxworks Subject: [AE] VME Driver Date: 19 Jun 2002 08:40:41 -0700 From: strick@hiwaay.net (BS) Organization: http://groups.google.com/ Message-ID: I have an X86 based processor that uses the Universe II to interface with the VME bus. I have a working Tornado 2 BSP for this processor and I am trying to test a recently developed BSP for Tornado AE. In the T2 BSP after I init the univ2 and add the memory regions into the MMU I can use the shell to dump the memory regions where the VME windows have been programmed. However, when I perform these same steps with the TAE BSP I get a message that the memory is not readable. I wrote a test program for AE that goes out and gets the address of my VME boards which I can then use to read/write to the VME board. This part tells me that I have the univ2 programmed correctly, however I don't understand why I can't view the data from the shell. Inside the 00region.sdf file I have increased the number of dummy regions so that I have enough memory regions for all of my devices. During the boot process I go out to all of the PCI devices and add the appropriate MMU entries. I am able to use 'memCfgTblShow' to view each of the memory regions I added. I can dump all of the memory regions that I manually added except the windows that I have programmed in the univ2. I would like to know why I am unable to dump these memory regions? Can anyone help? I added some information below. Thanks, - --------------------------------------------------- memCfgTblShow PoolName Logical Virtual Size PgSize MMU Attr Flags - -------------------- -------- -------- -------- ------ -------- - -------- kernelMemPool 00000000 00000000 00000000 00000 00000000 00080431 lowMemKernelMemPool 00000000 00000000 00000000 00000 00000000 00080431 globalPgPool 00000000 00000000 00000000 00000 00000000 000803f1 kernelPgPool 00000000 00000000 00000000 00000 00000000 00080331 reservedPgPool 00000000 00000000 00000000 00000 00000000 00080341 kernelIoPool 00000000 00000000 00000000 00000 00000000 00100231 virtPool 00000000 00000000 00000000 00000 00000000 00200111 kernelMemPool 00100000 00100000 00600000 00000 00000103 08000002 lowMemKernelMemPool 00000000 00000000 00100000 00000 00000103 08000002 globalPgPool 00700000 00000000 00900000 00000 00000000 08000002 kernelPgPool 00700000 00000000 00000000 00000 00000000 08000002 reservedPgPool 00700000 00000000 00000000 00000 00000000 08000002 kernelIoPool f4100000 f4100000 00008000 01000 00000083 08000002 kernelIoPool f4109000 f4109000 00001000 01000 00000083 08000002 kernelIoPool f4108000 f4108000 00001000 01000 00000083 08000002 kernelIoPool f410a000 f410a000 00001000 01000 00000083 08000002 kernelIoPool f3ff0000 f3ff0000 00010000 01000 00000083 08000002 kernelIoPool f3fe0000 f3fe0000 00010000 01000 00000083 08000002 kernelIoPool f2fe0000 f2fe0000 01000000 01000 00000083 08000002 kernelIoPool f1fe0000 f1fe0000 01000000 01000 00000083 08000002 kernelIoPool f1bd0000 f1bd0000 00400000 01000 00000083 08000002 kernelIoPool f410b000 f410b000 00001000 01000 00000083 08000002 kernelIoPool f410c000 f410c000 00001000 01000 00000083 08000002 kernelIoPool ffffffff ffffffff 00000000 01000 00000083 48000002 kernelIoPool ffffffff ffffffff 00000000 01000 00000083 48000002 virtPool ffffffff fd000000 00800000 00000 00000000 08000006 value = 1 = 0x1 [vxKernel] -> d 0xf3ff0000 Dump memory for vxKernel (PD ID 0x204d58) 0xf3ff0000: Error: Memory at address 0xf3ff0000 not readable. value = 0 = 0x0 [vxKernel] -> d 0xf3fe0000 Dump memory for vxKernel (PD ID 0x204d58) 0xf3fe0000: Error: Memory at address 0xf3fe0000 not readable. value = 0 = 0x0 [vxKernel] -> d 0xf2fe0000 Dump memory for vxKernel (PD ID 0x204d58) 0xf2fe0000: Error: Memory at address 0xf2fe0000 not readable. value = 0 = 0x0 [vxKernel] -> d 0xf1fe0000 Dump memory for vxKernel (PD ID 0x204d58) 0xf1fe0000: Error: Memory at address 0xf1fe0000 not readable. value = 0 = 0x0 [vxKernel] -> d 0xf410a000 Dump memory for vxKernel (PD ID 0x204d58) 0xf410a000: 0000 0000 0039 0000 0000 0000 0000 0000 *....9...........* 0xf410a010: 0000 0000 0039 0000 0000 0000 0000 0000 *....9...........* 0xf410a020: 0000 0000 0039 0000 0000 0000 0000 0000 *....9...........* 0xf410a030: 0000 0000 0039 0000 0000 0000 0000 0000 *....9...........* 0xf410a040: 0000 0000 0039 0000 0000 0000 0000 0000 *....9...........* 0xf410a050: 0000 0000 0039 0000 0000 0000 0000 0000 *....9...........* 0xf410a060: 0000 0000 0039 0000 0000 0000 0000 0000 *....9...........* 0xf410a070: 0000 0000 0039 0000 0000 0000 0000 0000 *....9...........* 0xf410a080: 0000 0000 0039 0000 0000 0000 0000 0000 *....9...........* 0xf410a090: 0000 0000 0039 0000 0000 0000 0000 0000 *....9...........* 0xf410a0a0: 0000 0000 0039 0000 0000 0000 0000 0000 *....9...........* 0xf410a0b0: 0000 0000 0039 0000 0000 0000 0000 0000 *....9...........* 0xf410a0c0: 0000 0000 0039 0000 0000 0000 0000 0000 *....9...........* 0xf410a0d0: 0000 0000 0039 0000 0000 0000 0000 0000 *....9...........* 0xf410a0e0: 0000 0000 0039 0000 0000 0000 0000 0000 *....9...........* 0xf410a0f0: 0000 0000 0039 0000 0000 0000 0000 0000 *....9...........* value = 0 = 0x0 [vxKernel] -> [vxKernel] -> [vxKernel] -> sysVmeWindowsShow default A16 window base address is 0xf3ff0000 default A16 window bound address is 0xf4000000 default A16 window translation offset is 0xc010000 default A16 window #2 base address is 0xf3fe0000 default A16 window #2 bound address is 0xf3ff0000 default A16 window #2 translation offset is 0xc020000 default A24 window base address is 0xf2fe0000 default A24 window bound address is 0xf3fe0000 default A24 window translation offset is 0xd020000 default A24 window #2 base address is 0xf1fe0000 default A24 window #2 bound address is 0xf2fe0000 default A24 window #2 translation offset is 0xe020000 default Dynamic window base address is 0xf1bd0000 default Dynamic window bound address is 0xf1fd0000 default Dynamic window translation offset is 0x8e430000 special PCI target image data ...SLSI value is 0x0 value = 18 = 0x12 [vxKernel] -> --------------------------- Newsgroups: comp.os.vxworks Subject: Re: cpu to cpu communication without using vxMP Date: Wed, 19 Jun 2002 11:46:16 -0700 From: Joe Durusau Organization: Lockheed Martin Corporation Message-ID: <3D10D178.A9EDD712@lmco.com> References: rajesh vr wrote: > > hi > Iam working on a multi processor board. > Is there any way , two processors communicate on a common area, > without using vxMP. > the two proceesors are loaded with vxWorks individually. > > regards > rajesh I can't tell you anything specific, but if they have access to the same memory, you should be able to set up a comm. buffer in the memory. If they don't share access to memory, they could communicate over IO ports is they have access to private IO ports, or there are various other ways. Sorry, but this question is much too general for a good answer. Speaking only for myself, Joe Durusau --------------------------- Newsgroups: comp.os.vxworks Subject: Re: webserver and TIME_WAIT Date: Wed, 19 Jun 2002 10:59:50 -0500 From: Dinker Charak Organization: Fermi National Accelerator Laboratory Message-ID: <3D10AA76.32E5FE9B@fnal.gov> References: <7d240511.0206190512.55318693@posting.google.com> hema, what is the value of NUM_FILES? try increasing it ... you can try iosFdShow - -> iosFdShow fd name drv 3 /tyCo/0 1 in out err 6 (socket) 2 7 (socket) 2 8 (socket) 2 10 (socket) 2 value = 32 = 0x20 = ' ' it will show you the number of the descriptors out of NUM_FILES are used ... hth, dinker hema wrote: > > hai, > > i m in the process of designing the web server for our application. > i hope to get a early reply regarding my problem as it is quiet urgent > > my problem is......... > > after spawning a task and opening my browser .i m able to see the > active internet connection. > > inetstatShow > Active Internet connections (including servers) > PCB Proto Recv-Q Send-Q Local Address Foreign Address > (state) > -------- ----- ------ ------ ------------------ ------------------ > ------- > fc4524 TCP 0 0 xxx.xxx.xxx.xxx.80 yyy.yyy.yyy.yyy.11 > TIME_WAIT > fc44a0 TCP 0 0 xxx.xxx.xxx.xxx.80 yyy.yyy.yyy.yyy.11 > TIME_WAIT > fc441c TCP 0 0 0.0.0.0.80 0.0.0.0.0 > LISTEN > fc4314 TCP 0 0 0.0.0.0.23 0.0.0.0.0 > LISTEN > fc4080 TCP 0 0 0.0.0.0.21 0.0.0.0.0 > LISTEN > fc4398 UDP 0 0 0.0.0.0.520 0.0.0.0.0 > fc4290 UDP 0 0 127.0.0.1.1024 127.0.0.1.17185 > fc420c UDP 0 0 0.0.0.0.17185 0.0.0.0.0 > value = 0 = 0x0 > xxx is my target board i/p > yyy is my host machine i/p > and my first page was loded sucessfully(the password verification > page) .i then redirected to another page where images(.gif) are to be > loded. > > now,in the shell when i did a inetstatShow > > Active Internet connections (including servers) > PCB Proto Recv-Q Send-Q Local Address Foreign Address > (state) > -------- ----- ------ ------ ------------------ ------------------ > ------- > fc44a0 TCP 231 0 xxx.xxx.xxx.xxx.80 yyy.yyy.yyy.yyy.11 > ESTABLISHED > fc4524 TCP 0 0 xxx.xxx.xxx.xxx.80 yyy.yyy.yyy.yyy.11 > TIME_WAIT > fc441c TCP 0 0 0.0.0.0.80 0.0.0.0.0 > LISTEN > fc4314 TCP 0 0 0.0.0.0.23 0.0.0.0.0 > LISTEN > fc4080 TCP 0 0 0.0.0.0.21 0.0.0.0.0 > LISTEN > fc4398 UDP 0 0 0.0.0.0.520 0.0.0.0.0 > fc4290 UDP 0 0 127.0.0.1.1024 127.0.0.1.17185 > fc420c UDP 0 0 0.0.0.0.17185 0.0.0.0.0 > value = 0 = 0x0 > few months ago i saw a message in the forum regarding rcvQ pending > with +e messages and the netStackSysPoolShow value to be changed if > free cluster value is 0 > but when i executed "netStackDataPoolShow" free cluster:396. > the problem is my image would never load in the browser and system > reboots. > > and if i open more than 3 sessions (5 can listen isint it??) > it really takes a long time for the first page to load. > > and sometime when i wait for the status to change from "time_wait" to > close andd then load the image,some time rarely(say 1 out of twenty > times),the images are loded. > i m not sure why this problem exists!!! > do lemme know if u came across a similler problem. > > BTW, > my second page is a .cgi,will that have any concern??ofcourse headers > r defined properly!!!! > > thanx in advance, > hema --------------------------- Newsgroups: comp.os.vxworks Subject: Re: filename.C not recognized, only filename.cpp Date: Wed, 19 Jun 2002 11:49:50 -0700 From: Joe Durusau Organization: Lockheed Martin Corporation Message-ID: <3D10D24E.6CD31257@lmco.com> References: Kevin Lay wrote: > > I'm porting a bulk of Unix code to VxWorks. It has a mix of .C and .cpp > file extensions for C++ files. Tornado only understands ".cpp". I've tried > adding an extra rule into the various building blocks T2 uses to make a > makefile, to no avail. Thanks for your help. > > Kevin Lay The easy way is probably to remame the .C files to .cpp. Whe you added a rule, did you add a rule for .C .o ?? That would most likely work, unless you are running on windows, in which case all bets are off. Speaking only for myself, Joe Durusau --------------------------- Newsgroups: comp.os.vxworks Subject: Re: how to R/W a large file(>4Gb) in FAT32 Date: 19 Jun 2002 12:19:35 -0700 From: dcooke@orthstar.com (Dan Cooke) Organization: http://groups.google.com/ Message-ID: <4e264d23.0206191119.139c419e@posting.google.com> References: jameschen@tpe.destiny.com.tw (james) wrote in message news:... > Does anyone can tell me how can write a large file (>4Gb) in FAT32? > I research iolib.h. > Define the following: long long endLogFilePtr; After opening the file and you know where you want to write to the file: if (ERROR == ioctl (openFileDesL, FIOSEEK64, (int) & endLogFilePtr)) { printf(" error seeking to end ptr, errno = 0x%X, end ptr = 0x%08X%08X\n", errno, (uint32)(endLogFilePtr>>32), (uint32)(endLogFilePtr&0x0ffffffff)); } else if (ERROR == write(openFileDesL, (char*) &buffer, sizeof(buffer))) { printf(" error WRITING, errno = 0x%X at position 0x%08X%08X \n", errno, (uint32)(endLogFilePtr>>32), (uint32)(endLogFilePtr&0x0ffffffff)); } You could also use the FIONREAD64 after opening to determine the end of the file and then write to that location: ioctl (openFileDesL, FIONREAD64, (int) & endLogFilePtr); Dan --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Tornado dependency generation Date: Wed, 19 Jun 2002 21:05:50 GMT From: "Kevin Lay" Organization: EarthLink Inc. -- http://www.EarthLink.net Message-ID: References: Bill, I found that I can make the dependencies work by using both VPATH MACRO setting and explicitly putting in the -I to the C++ rule at the same time in the project's build spec. Duh. Now the only wierdness is that starg.h and stdef.h are supposedly required by every single file, which is ludicrous, but tolerable. Thanks for your suggestion. Kevin "Bill Pringlemeir" wrote in message news:uy9dbs3t3.fsf@sympatico.ca... > >>>>> "Kevin" == Kevin Lay writes: > > Kevin> I'm having trouble getting Tornado to generate sensible > Kevin> dependencies for applications where the implementation files > Kevin> (C++) and their headers are external to the Tornado directory. > Kevin> Using PPC. What am I missing? I can't find the tool that > Kevin> generates these. I tried simply "g++ppc -M" but it doesn't > Kevin> generate any output from the command line, let alone > Kevin> dependencies... > > The dependencies are generated by a tcl script. It is somewhere in > your $(WIND_BASE)/host/resource/tcl directory. Possibly > "$(WIND_BASE)/host/resource/tcl/app-config/Project/Dep*.tcl". You can > grep for "elegant" as I see to recall the implementer putting a > comment like this in the algorithm. > > hth, > Bill Pringlemeir. > > $(WIND_BASE) == %WIND_BASE% == C:/Tornado == C:\Tornado (usually). > > -- > Have you ever tried to become one with someone you saw at a party > while staring at lightbulbs? Or been given two Teletypes(tm) made out > of boxes of Borax? You will. And the company that will bring it to > you: Agere. > > vxWorks FAQ, "http://www.xs4all.nl/~borkhuis/vxworks/vxworks.html" > --------------------------- Newsgroups: comp.os.vxworks Subject: VxWorks 5.4 ATM driver undefined symbols Date: Wed, 19 Jun 2002 16:12:15 -0500 From: Tedd Organization: Raytheon Company Message-ID: <3D10F3AF.684411E0@raytheon.com> Reply-To: Tetsuya_Griswold@raytheon.com Hi y'all, I was trying to load an ATM driver from Radstone and I get the following undefine symbols: m_freem arpinput clusterConfig mclfree mbstat m_free mbufSem m_more mfree m_copy m_clalloc m_get m_want arptab rtnet rthashsize arptab_size ipforwarding rthost tcp_ttl Does anybody have any ideas? Radstone said to use BSD 4.4, which I am. I don't know what other information I can give you. Thanks for any help you can give me --------------------------- Newsgroups: comp.os.vxworks Subject: Re: filename.C not recognized, only filename.cpp Date: Wed, 19 Jun 2002 21:42:45 GMT From: "Kevin Lay" Organization: EarthLink Inc. -- http://www.EarthLink.net Message-ID: References: <3D10D24E.6CD31257@lmco.com> I added the .C rule whereever I saw existing .cpp rules ( to /include/make rules.bsp, defs.bsp, and defs.project), to no effect. The auto-generated project makefile does not contain general rules. I can only guess how it is put together. Yes I'm using windows - which makes it doubly incomprehensible. The code I'm porting already runs on dozens of other platforms which are OK with .C and .cpp. I'm contracted only to port to VxWorks and do not have access to the other implementations. I have to give the bad news to my client that Tornado's shortcomings may affect his existing production process. Perhaps I can talk them out of using Tornado projects and use straight makefiles... Thanks anyway, Kevin "Joe Durusau" wrote in message news:3D10D24E.6CD31257@lmco.com... > > > Kevin Lay wrote: > > > > I'm porting a bulk of Unix code to VxWorks. It has a mix of .C and .cpp > > file extensions for C++ files. Tornado only understands ".cpp". I've tried > > adding an extra rule into the various building blocks T2 uses to make a > > makefile, to no avail. Thanks for your help. > > > > Kevin Lay > > The easy way is probably to remame the .C files to .cpp. Whe you added > a > rule, did you add a rule for .C .o ?? That would most likely work, > unless > you are running on windows, in which case all bets are off. > > Speaking only for myself, > > Joe Durusau > --------------------------- Newsgroups: comp.os.vxworks Subject: Re: cpu to cpu communication without using vxMP Date: Wed, 19 Jun 2002 21:48:54 GMT From: "Kevin Lay" Organization: EarthLink Inc. -- http://www.EarthLink.net Message-ID: References: Try using the shared memory network interface (SNMI). The two procs could communicate over sockets similar to Unix Domain sockets, using IP addresses. Another way is to set up one way circular queues, where each queue is a memory space one proc writes to and the other proc only reads from. Kevin "rajesh vr" wrote in message news:cfdebec6.0206190613.7e75b88f@posting.google.com... > hi > Iam working on a multi processor board. > Is there any way , two processors communicate on a common area, > without using vxMP. > the two proceesors are loaded with vxWorks individually. > > regards > rajesh --------------------------- Newsgroups: comp.os.vxworks Subject: Re: [AE] VME Driver Date: Wed, 19 Jun 2002 22:08:17 GMT From: "Kevin Lay" Organization: EarthLink Inc. -- http://www.EarthLink.net Message-ID: References: Try selecting various bus widths of VME data using the "m" commands ( "m 0xf3fe0000,2") for two bytes wide, etc. For a little more data, if your BSP supports the sysLocalToBusAddr() and sysBusToLocalAddr( ) calls, try them from the shell and see if they make sense. You should be able to put in the local address (PCI) and it return the VME address on the VME bus, and vice versa. If these work, try finding out if your're getting a VME bus error when you access them from the shell. The UnivII has a register which sets a bit for the VME bus errors (and PCI errors for that matter.) See the UM. Perhaps there is an alignment problem or a bus timeout. Kevin "BS" wrote in message news:d64227b2.0206190740.2ccef8e3@posting.google.com... > I have an X86 based processor that uses the Universe II to interface > with the VME bus. I have a working Tornado 2 BSP for this processor > and I am trying to test a recently developed BSP for Tornado AE. > > In the T2 BSP after I init the univ2 and add the memory regions into > the MMU I can use the shell to dump the memory regions where the VME > windows have been programmed. However, when I perform these same steps > with the TAE BSP I get a message that the memory is not readable. I > wrote a test program for AE that goes out and gets the address of my > VME boards which I can then use to read/write to the VME board. This > part tells me that I have the univ2 programmed correctly, however I > don't understand why I can't view the data from the shell. > > Inside the 00region.sdf file I have increased the number of dummy > regions so that I have enough memory regions for all of my devices. > During the boot process I go out to all of the PCI devices and add the > appropriate MMU entries. I am able to use 'memCfgTblShow' to view each > of the memory regions I added. I can dump all of the memory regions > that I manually added except the windows that I have programmed in the > univ2. > > I would like to know why I am unable to dump these memory regions? Can > anyone help? > > I added some information below. > > Thanks, > > --------------------------------------------------- > memCfgTblShow > > PoolName Logical Virtual Size PgSize MMU Attr > Flags > -------------------- -------- -------- -------- ------ -------- > -------- > kernelMemPool 00000000 00000000 00000000 00000 00000000 > 00080431 > lowMemKernelMemPool 00000000 00000000 00000000 00000 00000000 > 00080431 > globalPgPool 00000000 00000000 00000000 00000 00000000 > 000803f1 > kernelPgPool 00000000 00000000 00000000 00000 00000000 > 00080331 > reservedPgPool 00000000 00000000 00000000 00000 00000000 > 00080341 > kernelIoPool 00000000 00000000 00000000 00000 00000000 > 00100231 > virtPool 00000000 00000000 00000000 00000 00000000 > 00200111 > kernelMemPool 00100000 00100000 00600000 00000 00000103 > 08000002 > lowMemKernelMemPool 00000000 00000000 00100000 00000 00000103 > 08000002 > globalPgPool 00700000 00000000 00900000 00000 00000000 > 08000002 > kernelPgPool 00700000 00000000 00000000 00000 00000000 > 08000002 > reservedPgPool 00700000 00000000 00000000 00000 00000000 > 08000002 > kernelIoPool f4100000 f4100000 00008000 01000 00000083 > 08000002 > kernelIoPool f4109000 f4109000 00001000 01000 00000083 > 08000002 > kernelIoPool f4108000 f4108000 00001000 01000 00000083 > 08000002 > kernelIoPool f410a000 f410a000 00001000 01000 00000083 > 08000002 > kernelIoPool f3ff0000 f3ff0000 00010000 01000 00000083 > 08000002 > kernelIoPool f3fe0000 f3fe0000 00010000 01000 00000083 > 08000002 > kernelIoPool f2fe0000 f2fe0000 01000000 01000 00000083 > 08000002 > kernelIoPool f1fe0000 f1fe0000 01000000 01000 00000083 > 08000002 > kernelIoPool f1bd0000 f1bd0000 00400000 01000 00000083 > 08000002 > kernelIoPool f410b000 f410b000 00001000 01000 00000083 > 08000002 > kernelIoPool f410c000 f410c000 00001000 01000 00000083 > 08000002 > kernelIoPool ffffffff ffffffff 00000000 01000 00000083 > 48000002 > kernelIoPool ffffffff ffffffff 00000000 01000 00000083 > 48000002 > virtPool ffffffff fd000000 00800000 00000 00000000 > 08000006 > > value = 1 = 0x1 > [vxKernel] -> d 0xf3ff0000 > Dump memory for vxKernel (PD ID 0x204d58) > 0xf3ff0000: > Error: Memory at address 0xf3ff0000 not readable. > value = 0 = 0x0 > [vxKernel] -> d 0xf3fe0000 > Dump memory for vxKernel (PD ID 0x204d58) > 0xf3fe0000: > Error: Memory at address 0xf3fe0000 not readable. > value = 0 = 0x0 > [vxKernel] -> d 0xf2fe0000 > Dump memory for vxKernel (PD ID 0x204d58) > 0xf2fe0000: > Error: Memory at address 0xf2fe0000 not readable. > value = 0 = 0x0 > [vxKernel] -> d 0xf1fe0000 > Dump memory for vxKernel (PD ID 0x204d58) > 0xf1fe0000: > Error: Memory at address 0xf1fe0000 not readable. > value = 0 = 0x0 > [vxKernel] -> d 0xf410a000 > Dump memory for vxKernel (PD ID 0x204d58) > 0xf410a000: 0000 0000 0039 0000 0000 0000 0000 0000 > *....9...........* > 0xf410a010: 0000 0000 0039 0000 0000 0000 0000 0000 > *....9...........* > 0xf410a020: 0000 0000 0039 0000 0000 0000 0000 0000 > *....9...........* > 0xf410a030: 0000 0000 0039 0000 0000 0000 0000 0000 > *....9...........* > 0xf410a040: 0000 0000 0039 0000 0000 0000 0000 0000 > *....9...........* > 0xf410a050: 0000 0000 0039 0000 0000 0000 0000 0000 > *....9...........* > 0xf410a060: 0000 0000 0039 0000 0000 0000 0000 0000 > *....9...........* > 0xf410a070: 0000 0000 0039 0000 0000 0000 0000 0000 > *....9...........* > 0xf410a080: 0000 0000 0039 0000 0000 0000 0000 0000 > *....9...........* > 0xf410a090: 0000 0000 0039 0000 0000 0000 0000 0000 > *....9...........* > 0xf410a0a0: 0000 0000 0039 0000 0000 0000 0000 0000 > *....9...........* > 0xf410a0b0: 0000 0000 0039 0000 0000 0000 0000 0000 > *....9...........* > 0xf410a0c0: 0000 0000 0039 0000 0000 0000 0000 0000 > *....9...........* > 0xf410a0d0: 0000 0000 0039 0000 0000 0000 0000 0000 > *....9...........* > 0xf410a0e0: 0000 0000 0039 0000 0000 0000 0000 0000 > *....9...........* > 0xf410a0f0: 0000 0000 0039 0000 0000 0000 0000 0000 > *....9...........* > value = 0 = 0x0 > [vxKernel] -> > [vxKernel] -> > [vxKernel] -> sysVmeWindowsShow > > default A16 window base address is 0xf3ff0000 > default A16 window bound address is 0xf4000000 > default A16 window translation offset is 0xc010000 > > default A16 window #2 base address is 0xf3fe0000 > default A16 window #2 bound address is 0xf3ff0000 > default A16 window #2 translation offset is 0xc020000 > > default A24 window base address is 0xf2fe0000 > default A24 window bound address is 0xf3fe0000 > default A24 window translation offset is 0xd020000 > > default A24 window #2 base address is 0xf1fe0000 > default A24 window #2 bound address is 0xf2fe0000 > default A24 window #2 translation offset is 0xe020000 > > default Dynamic window base address is 0xf1bd0000 > default Dynamic window bound address is 0xf1fd0000 > default Dynamic window translation offset is 0x8e430000 > special PCI target image data ...SLSI value is 0x0 > value = 18 = 0x12 > [vxKernel] -> --------------------------- Newsgroups: comp.os.vxworks Subject: WDB exception - what's the deal? Date: Wed, 19 Jun 2002 21:54:43 GMT From: emdezpk@yahoo.ca (Duke Skylurker) Organization: MCOM Message-ID: Hi, If I include FTPD into the project, I invariably get WDB exception when I try to connect to the target server. What is the reason? Any workaround? Thanks, Duke S. --------------------------- Newsgroups: comp.os.vxworks Subject: Can not download a module (??) Date: Wed, 19 Jun 2002 21:58:18 GMT From: emdezpk@yahoo.ca (Duke Skylurker) Organization: MCOM Message-ID: Hi The platform runs OK, target server fine, shell and browser look normal. I can not download a stand-alone module! It says "Error downloading .... No target server selected" The target server is running fine at that time. Where should I select it?? Can I download a module using the debugger? Thanks, Duke S. --------------------------- Newsgroups: comp.os.vxworks Subject: Migrating From VADS And VxWorks 5.1 Date: 20 Jun 2002 01:02:03 GMT From: hokienerd@aol.com (HOKIE NERD) Organization: AOL http://www.aol.com Message-ID: <20020619210203.09573.00001890@mb-mb.aol.com> We are in the preliminary stages of upgrading from VxWorks 5.1 to 5.4. We are also looking at GNAT (ADA compiler), UNDERSTAND for ADA (metrics/SDD), and CLEARCASE (CM). Does anyone have any helpful hints (or horror stories) about going from 5.1 to 5.4? Also, does anyone have some thoughts they'd like to share on the aforementioned tools? (Or similar tools that they think are better.) Also, I'd like to apologize to those of you on the list who receive this post twice. I decided that I'd better post to the news group as well. Thanks for you help, John --------------------------- Newsgroups: comp.os.vxworks Subject: Re: [AE] VME Driver Date: 19 Jun 2002 18:54:13 -0700 From: john_94501@yahoo.com (John) Organization: http://groups.google.com/ Message-ID: <488e459a.0206191754.e1be0f0@posting.google.com> References: Hello, There are a couple of possible causes of the error you are seeing. The first is that the vm context does not contain the correct mappings. Check this as follows: 1) Build a system with the target tools and target show routines included in the kernel (just add those two component bundles). 2) From the target shell, type vmContextShow 3) Check in the output from that to see if the addresses you are trying to access are visible in the VM context, and mapped to the correct locations. The second possibility is that the hardware is generating an error for some reason (the location is probed with vxMemProbe before it is accessed). Check this by setting a pointer to the address of the 32 bit wide space, and then dereferencing it from the target shell. When you were using the d() command, did you set the width to match the width of the VME space you were reading btw; sometimes, that can cause the validation of the address to fail as the underlying hardware rejects the incorrect width transactions on the bus. HTH, John... > I have an X86 based processor that uses the Universe II to interface > with the VME bus. I have a working Tornado 2 BSP for this processor > and I am trying to test a recently developed BSP for Tornado AE. > > In the T2 BSP after I init the univ2 and add the memory regions into > the MMU I can use the shell to dump the memory regions where the VME > windows have been programmed. However, when I perform these same steps > with the TAE BSP I get a message that the memory is not readable. I > wrote a test program for AE that goes out and gets the address of my > VME boards which I can then use to read/write to the VME board. This > part tells me that I have the univ2 programmed correctly, however I > don't understand why I can't view the data from the shell. > > Inside the 00region.sdf file I have increased the number of dummy > regions so that I have enough memory regions for all of my devices. > During the boot process I go out to all of the PCI devices and add the > appropriate MMU entries. I am able to use 'memCfgTblShow' to view each > of the memory regions I added. I can dump all of the memory regions > that I manually added except the windows that I have programmed in the > univ2. > > I would like to know why I am unable to dump these memory regions? Can > anyone help? > > I added some information below. > > Thanks, > > --------------------------------------------------- > memCfgTblShow > > PoolName Logical Virtual Size PgSize MMU Attr > Flags > -------------------- -------- -------- -------- ------ -------- > -------- > kernelMemPool 00000000 00000000 00000000 00000 00000000 > 00080431 > lowMemKernelMemPool 00000000 00000000 00000000 00000 00000000 > 00080431 > globalPgPool 00000000 00000000 00000000 00000 00000000 > 000803f1 > kernelPgPool 00000000 00000000 00000000 00000 00000000 > 00080331 > reservedPgPool 00000000 00000000 00000000 00000 00000000 > 00080341 > kernelIoPool 00000000 00000000 00000000 00000 00000000 > 00100231 > virtPool 00000000 00000000 00000000 00000 00000000 > 00200111 > kernelMemPool 00100000 00100000 00600000 00000 00000103 > 08000002 > lowMemKernelMemPool 00000000 00000000 00100000 00000 00000103 > 08000002 > globalPgPool 00700000 00000000 00900000 00000 00000000 > 08000002 > kernelPgPool 00700000 00000000 00000000 00000 00000000 > 08000002 > reservedPgPool 00700000 00000000 00000000 00000 00000000 > 08000002 > kernelIoPool f4100000 f4100000 00008000 01000 00000083 > 08000002 > kernelIoPool f4109000 f4109000 00001000 01000 00000083 > 08000002 > kernelIoPool f4108000 f4108000 00001000 01000 00000083 > 08000002 > kernelIoPool f410a000 f410a000 00001000 01000 00000083 > 08000002 > kernelIoPool f3ff0000 f3ff0000 00010000 01000 00000083 > 08000002 > kernelIoPool f3fe0000 f3fe0000 00010000 01000 00000083 > 08000002 > kernelIoPool f2fe0000 f2fe0000 01000000 01000 00000083 > 08000002 > kernelIoPool f1fe0000 f1fe0000 01000000 01000 00000083 > 08000002 > kernelIoPool f1bd0000 f1bd0000 00400000 01000 00000083 > 08000002 > kernelIoPool f410b000 f410b000 00001000 01000 00000083 > 08000002 > kernelIoPool f410c000 f410c000 00001000 01000 00000083 > 08000002 > kernelIoPool ffffffff ffffffff 00000000 01000 00000083 > 48000002 > kernelIoPool ffffffff ffffffff 00000000 01000 00000083 > 48000002 > virtPool ffffffff fd000000 00800000 00000 00000000 > 08000006 > > value = 1 = 0x1 > [vxKernel] -> d 0xf3ff0000 > Dump memory for vxKernel (PD ID 0x204d58) > 0xf3ff0000: > Error: Memory at address 0xf3ff0000 not readable. > value = 0 = 0x0 > [vxKernel] -> d 0xf3fe0000 > Dump memory for vxKernel (PD ID 0x204d58) > 0xf3fe0000: > Error: Memory at address 0xf3fe0000 not readable. > value = 0 = 0x0 > [vxKernel] -> d 0xf2fe0000 > Dump memory for vxKernel (PD ID 0x204d58) > 0xf2fe0000: > Error: Memory at address 0xf2fe0000 not readable. > value = 0 = 0x0 > [vxKernel] -> d 0xf1fe0000 > Dump memory for vxKernel (PD ID 0x204d58) > 0xf1fe0000: > Error: Memory at address 0xf1fe0000 not readable. > value = 0 = 0x0 > [vxKernel] -> d 0xf410a000 > Dump memory for vxKernel (PD ID 0x204d58) > 0xf410a000: 0000 0000 0039 0000 0000 0000 0000 0000 > *....9...........* > 0xf410a010: 0000 0000 0039 0000 0000 0000 0000 0000 > *....9...........* > 0xf410a020: 0000 0000 0039 0000 0000 0000 0000 0000 > *....9...........* > 0xf410a030: 0000 0000 0039 0000 0000 0000 0000 0000 > *....9...........* > 0xf410a040: 0000 0000 0039 0000 0000 0000 0000 0000 > *....9...........* > 0xf410a050: 0000 0000 0039 0000 0000 0000 0000 0000 > *....9...........* > 0xf410a060: 0000 0000 0039 0000 0000 0000 0000 0000 > *....9...........* > 0xf410a070: 0000 0000 0039 0000 0000 0000 0000 0000 > *....9...........* > 0xf410a080: 0000 0000 0039 0000 0000 0000 0000 0000 > *....9...........* > 0xf410a090: 0000 0000 0039 0000 0000 0000 0000 0000 > *....9...........* > 0xf410a0a0: 0000 0000 0039 0000 0000 0000 0000 0000 > *....9...........* > 0xf410a0b0: 0000 0000 0039 0000 0000 0000 0000 0000 > *....9...........* > 0xf410a0c0: 0000 0000 0039 0000 0000 0000 0000 0000 > *....9...........* > 0xf410a0d0: 0000 0000 0039 0000 0000 0000 0000 0000 > *....9...........* > 0xf410a0e0: 0000 0000 0039 0000 0000 0000 0000 0000 > *....9...........* > 0xf410a0f0: 0000 0000 0039 0000 0000 0000 0000 0000 > *....9...........* > value = 0 = 0x0 > [vxKernel] -> > [vxKernel] -> > [vxKernel] -> sysVmeWindowsShow > > default A16 window base address is 0xf3ff0000 > default A16 window bound address is 0xf4000000 > default A16 window translation offset is 0xc010000 > > default A16 window #2 base address is 0xf3fe0000 > default A16 window #2 bound address is 0xf3ff0000 > default A16 window #2 translation offset is 0xc020000 > > default A24 window base address is 0xf2fe0000 > default A24 window bound address is 0xf3fe0000 > default A24 window translation offset is 0xd020000 > > default A24 window #2 base address is 0xf1fe0000 > default A24 window #2 bound address is 0xf2fe0000 > default A24 window #2 translation offset is 0xe020000 > > default Dynamic window base address is 0xf1bd0000 > default Dynamic window bound address is 0xf1fd0000 > default Dynamic window translation offset is 0x8e430000 > special PCI target image data ...SLSI value is 0x0 > value = 18 = 0x12 > [vxKernel] -> --------------------------- Newsgroups: comp.os.vxworks Subject: Re: filename.C not recognized, only filename.cpp Date: 19 Jun 2002 22:00:06 -0400 From: Bill Pringlemeir Organization: Factory of the mind Message-ID: References: <3D10D24E.6CD31257@lmco.com> Sender: bpringlemeir@DeadDuck >>>>> "Kevin" == Kevin Lay writes: Kevin> I added the .C rule whereever I saw existing .cpp rules ( to Kevin> /include/make rules.bsp, defs.bsp, and defs.project), to no Kevin> effect. The auto-generated project makefile does not contain Kevin> general rules. I can only guess how it is put together. Yes Kevin> I'm using windows - which makes it doubly incomprehensible. See an earlier message I wrote today. The subject is "Tornado dependency generation"... Hey, it is addressed to you. The Tornado project facilities. Use TCL scripts. Read the file, "/Tornado/host/resource/tcl/app-config/Project/README.txt" The code that you could modify is, "/Tornado/host/resource/tcl/app-config/Project/tc_cplus.tcl" Search for the tcl function called `InputSuffixes'. The TCL scripts are used on *nix platform to keep the Tornado tool functionality the same on all platforms. Kevin> The code I'm porting already runs on dozens of other platforms Kevin> which are OK with .C and .cpp. I'm contracted only to port to Kevin> VxWorks and do not have access to the other implementations. Kevin> I have to give the bad news to my client that Tornado's Kevin> shortcomings may affect his existing production process. Kevin> Perhaps I can talk them out of using Tornado projects and use Kevin> straight makefiles... Makefile are usually much easier to do funky stuff with. It is difficult to get programmers that understand them though. Click and drool Windows types do appreciate the Tornado projects. You really can do quite a bit with the TCL stuff. I am not sure that I really understand your original question (I missed it). The project facilities should think that ".c", ".cxx", ".cpp" and ".cc" are valid files. The gcc determines the source type by examining the extention. That is `regular'. What exactly are the filesnames that are involved? fwiw, Bill Pringlemeir. - -- I firmly believe that most young people have dogs . I don't want to hear about your venereal disease. vxWorks FAQ, "http://www.xs4all.nl/~borkhuis/vxworks/vxworks.html" --------------------------- Newsgroups: comp.os.vxworks Subject: object module format Date: Wed, 19 Jun 2002 22:25:13 -0400 From: raina zhang Organization: Bell Sympatico Message-ID: <3D113D09.90791EDD@sympatico.ca> I have following object module format: a.out elf coff pecoff som What's the advantage/disadvantage of these formats and their typical application scenarios? Thanks Jim --------------------------- Newsgroups: comp.arch.embedded,comp.os.vxworks Subject: Does vxworks supplies the socket that directly get network data from datalink like linux? Date: Thu, 20 Jun 2002 11:15:45 +0800 From: "auger" Organization: Bentium Ltd. (CN99) Message-ID: Does vxworks supplies the socket that can directly get network data from datalink like linux? I want to monitor the ethernet. For example, we can create the socket using int sockfd=socket(AF_INET,SOCK_PACKET,htons(ETH_P_IP))) cheers --------------------------- Newsgroups: comp.os.vxworks Subject: Re: filename.C not recognized, only filename.cpp Date: 19 Jun 2002 21:14:37 -0700 From: john_94501@yahoo.com (John) Organization: http://groups.google.com/ Message-ID: <488e459a.0206192014.7db0d9be@posting.google.com> References: <3D10D24E.6CD31257@lmco.com> Hello, > I added the .C rule whereever I saw existing .cpp rules ( to /include/make > rules.bsp, defs.bsp, and defs.project), to no effect. The auto-generated > project makefile does not contain general rules. I can only guess how it is > put together. Yes I'm using windows - which makes it doubly > incomprehensible. The rules are under target/h/make in a file that is based on the name of the CPU and compiler you are using, and the type of build being performed (in your case a project, so it should have 'proj' in the name IIRC). > The code I'm porting already runs on dozens of other platforms which are OK > with .C and .cpp. I'm contracted only to port to VxWorks and do not have > access to the other implementations. I have to give the bad news to my > client that Tornado's shortcomings may affect his existing production > process. Actually, to be fair, I don't think you'll find it is Tornado that is the cause of the problem; on a unix host OS the .C extension will work OK. Unfortunately, long long ago, somebody decided that the DOS file system would be case insensitive. So .c and .C are the same to a PC, even today - try it from a DOS prompt window - even on a long name (e.g. "c:\my documents" and "c:\My Documents" will both work). So, on a Windows box you have the choice of .cc, .cxx and .cpp for C++ sources. On Solaris (and Linux for AE) you get all of those and also .C. > Perhaps I can talk them out of using Tornado projects and use > straight makefiles... I'm not sure that it will make much difference. Can you tell the difference between the upper and lower case extensions on a PC? HTH, John... > > > Thanks anyway, > Kevin > > > "Joe Durusau" wrote in message > news:3D10D24E.6CD31257@lmco.com... > > > > > > Kevin Lay wrote: > > > > > > I'm porting a bulk of Unix code to VxWorks. It has a mix of .C and .cpp > > > file extensions for C++ files. Tornado only understands ".cpp". I've > tried > > > adding an extra rule into the various building blocks T2 uses to make a > > > makefile, to no avail. Thanks for your help. > > > > > > Kevin Lay > > > > The easy way is probably to remame the .C files to .cpp. Whe you added > > a > > rule, did you add a rule for .C .o ?? That would most likely work, > > unless > > you are running on windows, in which case all bets are off. > > > > Speaking only for myself, > > > > Joe Durusau > > --------------------------- Newsgroups: comp.os.vxworks Subject: Tornado hanging help Date: 19 Jun 2002 21:39:40 -0700 From: vxnerd@rediffmail.com (subbarayan) Organization: http://groups.google.com/ Message-ID: Thanks for all the mentors who replied me and mentors who r going to help me. Any How I successfully built the file named vxcolor.c as said in manual and by my mentors who replied me earlier i gave CPU=I80386 and built it.Now the problem is like: 1.How to configure the target for making a bootable vxworks from floppy from tornado1.0 and i followed the steps given in tornado manual to make a boot from it but was unsuccessful i mean a bootable floppy.The problem is like this: After configuring the target when ever i launch , the target server first starts but when i try to access it or access the shell the target server exits automatically and my machine hangs until i quit the tornado.After that my shell is unable to load since lack of targetserver.Can anyone help me know where the problem lies and how to successfully launch a targetserver and configure it so that it works well with my shell and i can successfully debug it?Astep by step proceedure of configuring a target will be of great help to me. Anyone with a solution can contact me at:vxnerd@rediffmail.com note: when i launch the target server it happens like this: The target server exe says this: connecting to target agent.... RPCcore backend client timed out.i increased the time out option in target configuration dialog box but its of no use. Now wheres the error?whats the error due to?how to clear it?Any solution for the above problem can be given to me at:vxnerd@rediffmail.com. One more thing: I am unable to understand which type of target to use for which application.Becos under tornado1.0 i see a lot of target configuration submenus inside the project menu.like: 1.Make current source file 2.Then MakeEPC100-common target,bootrom target,vxworks target in all these submenus i again get some more submenus.which should i use for what sort of application? like this again the same submenus repeated for makepc386,makepc486,makeEV386ex. Any help will be appreciated as I am new to this environment. --------------------------- Newsgroups: comp.os.vxworks,comp.sys.powerpc.tech Subject: GCC for PowerPC bug Date: Thu, 20 Jun 2002 10:50:17 +0200 From: Emmanuel Herbreteau Organization: SEPRO Robotique (BEP) Message-ID: <3D119749.C0F892F8@sepro-robotique.com> Followup-To: comp.os.vxworks Hi, We are working on powerPC (MPC 860/823) target. We can compile our VxWorks project using the optimization settings "-O0" (no optimization) and "-O1" with GCC. ( gcc driver version cygnus-2.7.2-960126 egcs-971225 tornado 2.0 executing gcc version cygnus-2.7.2-960126 ) Nevertheless, if we try to compile it with the "-O2" or "-O3" settings, the compiler crashs (Dr Watson !). We are using VxWorks/Tornado 2.0 CP4 with Windows NT4 (latest service pack). Does anyone know how to solve this problem ???? Best regards Emmanuel. --------------------------- Newsgroups: comp.os.vxworks Subject: Re: GCC for PowerPC bug Date: Thu, 20 Jun 2002 10:16:05 +0100 From: Danny Chapman Organization: Lucent Technologies, Columbus, Ohio Message-ID: References: <3D119749.C0F892F8@sepro-robotique.com> On Thu, 20 Jun 2002, Emmanuel Herbreteau wrote: > ( gcc driver version cygnus-2.7.2-960126 egcs-971225 tornado 2.0 > executing gcc version cygnus-2.7.2-960126 ) ... > Does anyone know how to solve this problem ???? The real answer is to use a more recent compiler (2.7.2 is very very old, and has many known bugs). > Nevertheless, if we try to compile it with the "-O2" or "-O3" settings, > the compiler crashs (Dr Watson !). We are using VxWorks/Tornado 2.0 CP4 > with Windows NT4 (latest service pack). I have also come across various compiler bugs with a similar compiler version but under Solaris. Workarounds include: 1. modifying the makefile so that just the offending source file is compiled with -O1 - everything else is -O2 or -O3 2. tweaking the source file to try and get the compiler to accept it (depends on the particular compiler error - there is a compiler option that gives you info about how far the compiler has got through the source file, I think). 3. specifying the optimisations individually, rather than with the -O[123] option. The main (speed) benefits will (I expect) be obtained from just one or two options - in particular enabling inlining (-finline and - -finline-functions). It may be that -O2 is breaking things because the compiler is trying to do something fancy with an optimisation that would only gain you 0.01% anyway... I suspect that "-O1 -finline - -finline-functions" would provide you with most of the effect of -O3. Hope this helps - Danny --------------------------- Newsgroups: comp.os.vxworks Subject: Re: DISK_NOT_PRESENT error with DOSFS2 Date: Thu, 20 Jun 2002 11:41:21 +0200 From: "Michael Lawnick" Organization: Buergernetz Dillingen Message-ID: References: <4e264d23.0206180551.1a4f8a0c@posting.google.com> Reply-To: "Michael Lawnick" Sender: mlawnick@p5088f229.dip.t-dialin.net Leonid, I fear I can't post code (--> source code license agreement), but I'll try to describe: in tffsDrv.c, functions tffsBlkRd() and tffsBlkWrt(), the code sets the variable tffsBlkdev.bd_readyChanged to TRUE. The variable is set back to FALSE on successful read. This is what I called an "O/S independent Mutex", as I can't find any other sense in such a construction. Support told us, that bd_readyChanged is the same bool that is checked in cbioLib for disk presence *before* cbio-mutex is taken. As I haven't got the code for cbioLib, I have to believe them. Given that, the situation arises, that a read/write call may block within tffs (e.g. because of a sector-erase or preemption). If another task now tries a blockRead, it finds bd_readyChanged ==TRUE and returns S_ioLib_DISK_NOT_PRESENT. For this situation moving the semTake before the test of bd_readyChanged solves the problem on concurrent accesses for us. I don't know anything about side effects. OK? Michael "Leonid Rosenboim" schrieb im Newsbeitrag news:newscache$x1kyxg$gwh$1@lnews.actcom.co.il... > Mike, > > Coild you elaborate on HOW does TFFS use readyChange > for so called "O/S independent Mutex". It sounds strange. > Also the readyChange field in blkIo is vxWorks specific. > > - Leonid > > "Michael Lawnick" wrote in message > news:aepaac$n4a$1@snoopy.bndlg.de... > > Hi Dan, > > > > yesterday support patched for us cbio-lib. It comes into conflict with > tffs, > > as tffs sets the disk-change indicator to implement an O/S independant > > mutex. This leads to a problem on premption of the task that already uses > > tffs, if the second task now tries to access tffs too. > > Support moved cbio mutex from taking before blockRead/blockWrite to a > place > > before mount check. Could be the same problem on other block devices too. > > > > You may reference to TSR 281243/SPR 78766 > > > > HTH > > Michael > > > > "Dan Cooke" schrieb im Newsbeitrag > > news:4e264d23.0206180551.1a4f8a0c@posting.google.com... > > > My application writes about 64k bytes to a binary > > > file every 1.5 seconds (not a whole lot). The app > > > writes to this file continuously and wraps to the > > > beginning when it reaches a 6GB limit. I have been > > > using the ioctl() 64 bit commands to seek into the > > > file to begin the write. Once while executing the > > > FIOSEEK64 command, I received an error (errno = 0xc0006) > > > of S_ioLib_DISK_NOT_PRESENT. However, the open() command > > > previous to this was successful. I am using DosFs2 on > > > a RAID device and have installed the spr patch for > > > dosFs2 (spr 71089). Anyone know what could cause this > > > type of error to occur? > > > > > > Dan > > > > > > --------------------------- Newsgroups: comp.os.vxworks Subject: Forcing 10BASE-T network speed Date: Thu, 20 Jun 2002 11:22:41 +0100 From: "Dean Turpin" Organization: Thales Message-ID: Hello I'm running VxWorks 5.4 on a Motorola mv2700, and I'd like to force the network speed to 10BASE-T. It appears auto-negation is the default, but I can't find any references to this or 10BASE-T Any suggestions? Regards Dean --------------------------- End of New-News digest ********************** From vxwexplo-errs@csg.lbl.gov Fri Jun 21 04:03:14 2002 From: Vxworks Exploder Date: Fri Jun 21 04:03:16 PDT 2002 Subject: comp.os.vxworks newsdigest Comp.Os.Vxworks Daily Digest Fri Jun 21 04:03:11 PDT 2002 Subject: Re: Enabling telnet/ftp mystery Subject: Re: GCC for PowerPC bug Subject: Re: object module format Subject: Re: GCC for PowerPC bug Subject: ftp server for vxworks Subject: Re: Does vxworks supplies the socket that directly get network data from Subject: Re: Can not download a module (??) Subject: Real Tek 8139 Problems Subject: Re: Forcing 10BASE-T network speed Subject: Re: object module format Subject: How big can USER_RESERVED_MEM be? Subject: a big vxworks image downlaod Subject: re: WTX Error 0x100de (AGENT_COMMUNICATION_ERROR) Subject: C/ Assembly Programmers (VxWorks/WinCE/Linux) Subject: do you think so? Subject: Re: please help Subject: out of environment space question Subject: Re: How big can USER_RESERVED_MEM be? Subject: Re: ftp server for vxworks Subject: VxWorks System Layout Subject: Ethernet - Where to start Subject: Re: out of environment space question Subject: send return value ------------------------------------------------------- Newsgroups: comp.os.vxworks Subject: Re: Enabling telnet/ftp mystery Date: 20 Jun 2002 05:13:09 -0700 From: qcontinuum1701@yahoo.com (quentin) Organization: http://groups.google.com/ Message-ID: References: That was it. Thanks. I was setting it to dc0 and not dc. "Michael Lawnick" wrote in message news:... > Hi quentin, > > set the 'others' parameter in your bootline to 'dc', then your network will > be mounted after boot. > > HTH > Michael > > "quentin" schrieb im Newsbeitrag > news:d90dccff.0206190546.15bdcfc1@posting.google.com... > > I'm trying to build a vxWorks kernel for the Mv2604 BSP and for some > > reason the telnet and ftp tasks aren't getting spawned. This only > > happens when I copy the vxWorks and vxWorks.sym file to target and use > > bootChange to configure it to boot from the harddrive(scsi=0,0). When > > I configure the target to boot from the network, pointing it to the > > same kernel as the one on the target it works fine: telnet and ftp > > respond normally. I looks like I've got the configAll.h file setup > > correctly since telnet/ftp are responding in one configuration. Any > > help would be greatly appreciated. > > > > > > Quentin --------------------------- Newsgroups: comp.os.vxworks Subject: Re: GCC for PowerPC bug Date: Thu, 20 Jun 2002 15:50:11 +0200 From: "Lanfranco Salinari" Organization: Siemens Inc. Message-ID: References: <3D119749.C0F892F8@sepro-robotique.com> "Emmanuel Herbreteau" wrote in message news:3D119749.C0F892F8@sepro-robotique.com... > Hi, > > We are working on powerPC (MPC 860/823) target. > > We can compile our VxWorks project using the optimization settings > "-O0" (no optimization) and "-O1" with GCC. > > ( gcc driver version cygnus-2.7.2-960126 egcs-971225 tornado 2.0 > executing gcc version cygnus-2.7.2-960126 ) > > Nevertheless, if we try to compile it with the "-O2" or "-O3" settings, > the compiler crashs (Dr Watson !). We are using VxWorks/Tornado 2.0 CP4 > with Windows NT4 (latest service pack). > > Does anyone know how to solve this problem ???? > > Best regards > Emmanuel. Hello, I had a similar problem some time ago with the same compiler version. The gcc compiler crashed with -O2, and this was caused by a very long function with a lot of if/else statements. The workaround I applied was to split that function in two, and after that it worked fine. I can't tell you more without having other informations about the code. WindRiver does not give the most recent version of gcc away with its products, so probably the bug has already been found and corrected. Hope it helps. Best regards, Lanfranco --------------------------- Newsgroups: comp.os.vxworks Subject: Re: object module format Date: Thu, 20 Jun 2002 14:00:27 GMT From: bill@woola.qswtools.com Organization: EarthLink Inc. -- http://www.EarthLink.net Message-ID: <%dlQ8.7233$Fv1.747334@newsread2.prod.itd.earthlink.net> References: <3D113D09.90791EDD@sympatico.ca> In article <3D113D09.90791EDD@sympatico.ca>, raina zhang writes: > I have following object module format: The best book I know forthis info is Levine's "Linkers and Loaders". If I disagree with him, below, I'm wrong. > a.out Oldest format. Only three sections: text for code and read-only data, data for read/write data and bss for uninitialized data. Debug info originally not supported, added with STABS later. > elf Most recent. As many sections as you like. DWARF or STABS debug info available. No size limitations except that counts, pointers are either 32- or 64-bits long. > coff Second quasi-standard. Many sections available. Serious limitations on the number of relocations per section, the number of line-number debug records. Hard to use for large binaries, say about 4 Mb and up due to these limitations. STABs and COFF debugging info available. > pecoff Microsoft's updating of COFF, adding better debugging support (pro- prietary, I think). > som I don't know. > What's the advantage/disadvantage of these formats and their typical > application scenarios? > Thanks > Jim > --------------------------- Newsgroups: comp.os.vxworks Subject: Re: GCC for PowerPC bug Date: Thu, 20 Jun 2002 14:03:12 GMT From: bill@woola.qswtools.com Organization: EarthLink Inc. -- http://www.EarthLink.net Message-ID: References: <3D119749.C0F892F8@sepro-robotique.com> In article , Danny Chapman writes: > > > On Thu, 20 Jun 2002, Emmanuel Herbreteau wrote: > >> ( gcc driver version cygnus-2.7.2-960126 egcs-971225 tornado 2.0 >> executing gcc version cygnus-2.7.2-960126 ) > ... >> Does anyone know how to solve this problem ???? > In Tornado 2.0, the C++ compilers are much more recent. You could try to compile the troublesome module with the PPC C++ compiler. > The real answer is to use a more recent compiler (2.7.2 is very very old, > and has many known bugs). > >> Nevertheless, if we try to compile it with the "-O2" or "-O3" settings, >> the compiler crashs (Dr Watson !). We are using VxWorks/Tornado 2.0 CP4 >> with Windows NT4 (latest service pack). > > I have also come across various compiler bugs with a similar compiler > version but under Solaris. Workarounds include: > > 1. modifying the makefile so that just the offending source file is > compiled with -O1 - everything else is -O2 or -O3 > > 2. tweaking the source file to try and get the compiler to accept it > (depends on the particular compiler error - there is a compiler option > that gives you info about how far the compiler has got through the source > file, I think). > > 3. specifying the optimisations individually, rather than with the -O[123] > option. The main (speed) benefits will (I expect) be obtained from just > one or two options - in particular enabling inlining (-finline and > -finline-functions). It may be that -O2 is breaking things because the > compiler is trying to do something fancy with an optimisation that would > only gain you 0.01% anyway... I suspect that "-O1 -finline > -finline-functions" would provide you with most of the effect of -O3. > > Hope this helps - Danny > --------------------------- Newsgroups: comp.os.vxworks Subject: ftp server for vxworks Date: Thu, 20 Jun 2002 16:55:42 +0200 From: "Jens Pechmann" Message-ID: hello, does anybody know if there's an update/replacement for the vxworks ftp server? i want to use a standard ftp client (like wsftp). unfortunately the vxworks ftp server uses a special windriver directory format. this really sucks! thanx jens --------------------------- Newsgroups: comp.arch.embedded,comp.os.vxworks Subject: Re: Does vxworks supplies the socket that directly get network data from datalink like linux? Date: Thu, 20 Jun 2002 12:26:22 -0400 From: david lindauer Message-ID: <3D12022E.1F800804@notifier-is.net> References: there are a couple of minor differences so ported code needs to be thought through a little bit, but basically vxworks presents the same sort of sockets interface found in linux. David auger wrote: > Does vxworks supplies the socket that can directly get network data from > datalink like linux? > I want to monitor the ethernet. > For example, we can create the socket using > int > sockfd=socket(AF_INET,SOCK_PACKET,htons(ETH_P_IP))) > cheers --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Can not download a module (??) Date: Thu, 20 Jun 2002 12:32:44 -0400 From: david lindauer Message-ID: <3D1203AC.846A226A@notifier-is.net> References: there is a text box up in the control bars, you select it there once you have it running. David " emdezpk@yahoo.ca (Duke Skylurker)" wrote: > Hi > > The platform runs OK, target server fine, > shell and browser look normal. > > I can not download a stand-alone module! > It says "Error downloading .... No target server selected" > The target server is running fine at that time. > Where should I select it?? > > Can I download a module using the debugger? > > Thanks, > Duke S. --------------------------- Newsgroups: comp.os.vxworks Subject: Real Tek 8139 Problems Date: Thu, 20 Jun 2002 13:10:11 -0500 From: "Joel Hannah" Message-ID: I am trying to use VxWorks 5.4 with a single board computer from Advantech. It uses and RTL8139 ethernet controller. I have the "unofficial" release of the this driver as I understand that WindRiver does not really support this chip. That driver really has some problems with network "slowdowns" and it looks like a memory allocation problem that I can not find. Is there an updated version of a driver for the Real Tek 8139 controller that I can use?? The readme.txt file says the driver is RELEASE 1.0/EA3 of the END driver for the RTL8139 controller. Any help would be greatly appreciated.... Joel - -- ****** S. Joel Hannah Software Engineering Manager Advanced Optical Systems 6767 Old Madison Pike, Suite 410 Huntsville, AL 35806 (256) 971-0036 (voice) (256) 971-0010 (fax) (256) 580-8947 (page) hannah@aos-inc.com (internet) --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Forcing 10BASE-T network speed Date: Thu, 20 Jun 2002 13:17:48 -0500 From: Andrew Johnson Organization: APS, Argonne National Laboratory Message-ID: <3D121C4C.2060507@aps.anl.gov> References: Dean Turpin wrote: > > I'm running VxWorks 5.4 on a Motorola mv2700, and I'd like to force the > network speed to 10BASE-T. It appears auto-negation is the default, but I > can't find any references to this or 10BASE-T If you look at the vxWorks Reference Manual entry for the dec21x40End library it mentions the userFlags field, and points you to the drv/end/dec21x40End.h file for the meaning of the bits. The *latest* version of that driver, available as an upgrade patch from WindSurf, has been updated and revised the meanings of those bits slightly, and one of them appears to be meant to enable another flag field that can be used to set up the MII autonegotiation, including which options are acceptable. However I've fiddled with this a bit and can't get it to work for me. Unfortunately WRS haven't documented this change, or at least the drivers update didn't update my online documentation files, so it might be worth asking your WRS FAE for the source to the driver to see if you can work out how to use it. Please let me know if you do work it out... HTH, - - Andrew - -- Larry McVoy: Learn how to think in C++ but don't ever program in it. --------------------------- Newsgroups: comp.os.vxworks Subject: Re: object module format Date: Fri, 21 Jun 2002 05:20:08 +0900 From: Toshitaka Kumano Organization: Mailgate.ORG Server - http://www.Mailgate.ORG Message-ID: References: <3D113D09.90791EDD@sympatico.ca> <%dlQ8.7233$Fv1.747334@newsread2.prod.itd.earthlink.net> Sender: kumano@cl.cilas.net Hi, bill@woola.qswtools.com wrote: > > som > I don't know. Hewlett-Packard's too uniq and obsolete format. - -- Toshitaka Kumano Kamakura Japan --------------------------- Newsgroups: comp.os.vxworks Subject: How big can USER_RESERVED_MEM be? Date: 20 Jun 2002 15:40:13 -0700 From: ryeung@earthlink.net (Raymond Yeung) Organization: http://groups.google.com/ Message-ID: All, I'm thinking of configuring a small amount of memory as USER_RESERVED_MEM. We've 16MB of contiguous memory. RAM_HI is at bottom of 14th MB. ROM space is 1MB. Other than the 1MB of space, does ROM code need any additional RAM space for execution? I suppose its text, BSS and DATA segments are all from this allocated 1MB space? What about its stack? Would it be from the "initial stack" at the low memory (lower than RAM_LO)? The bottom line question is: Is it true that maximum size for USER_RESERVED_MEM is 1MB (i.e. without causing any troubles)? I want the boot code to write some info. to this area and get read by application (linked with vxWorks) subsequently. Thanks, Raymond --------------------------- Newsgroups: comp.os.vxworks Subject: a big vxworks image downlaod Date: 20 Jun 2002 17:48:23 -0700 From: zuodq@mei29.scgb.com (zzz) Organization: http://groups.google.com/ Message-ID: <86950793.0206201648.58645319@posting.google.com> hi,all vxworks. when a big vxworks image downlaod via network,it failed. in the ftp window show that the client close the connect,transfer abort. or timeout.how to solve it? someone can help me? zzz --------------------------- Newsgroups: comp.os.vxworks Subject: re: WTX Error 0x100de (AGENT_COMMUNICATION_ERROR) Date: Fri, 21 Jun 2002 02:17:38 GMT From: Tim Sohacki Organization: Road Runner - NC Message-ID: <3D128D78.E4E1DBF@nc.rr.com> A couple of posts have gone unanswered over the past year regarding "WTX Error 0x100de (AGENT_COMMUNICATION_ERROR)." I had been encountering this problem sporadically, usually when attempting to dynamically download a perfectly good object file to my target. Turns out the problem was that my VPN client software had changed the MTU size (to account for IPSec encapsulation, I understand). A workaround is to rebuild the target image with a new value for WDB_MTU (in configAll.h) that matches the MTU size, e.g., change WDB_MTU from 1500 to 1400. Cheers, Tim. --------------------------- Newsgroups: comp.os.vxworks Subject: C/ Assembly Programmers (VxWorks/WinCE/Linux) Date: Fri, 21 Jun 2002 11:11:06 +0800 From: "Cornerstone Career Consultancy Pte Ltd" Organization: StarHub Internet Pte Ltd Message-ID: <3d129897@news.starhub.net.sg> Our Client Our client's is listed on the Stock Exchange of Singapore. Their principal activities are the design, development and distribution of telecommunication equipment and related products; marketing and business promotion; and investment holding. PS: Resumes in Word format will be processed faster. The Job - - Practical design and implementation of device drivers and applications using WinCE/Linux/Vxworks. - - Programming in 'C' and assembly language. Requirements: - - Minimum Bachelor Degree in Electronics/Computer Engineering or related field with good experience. Diploma holders with substantial related experience are also welcomed. - - Expereince in practical design and Implementation of device drivers and applications using WinCE/Linux/Vxworks. - - Programming experience in 'C' and assembly language. - - Experience with processors like ARM7/StrongARM/Hitachi SH3/SH4 will be an added advantage Application: Interested candidates are encouraged to send their detailed resume stating : - - Detailed current remuneration. - - Detailed expected salary remuneration. - - Notice period required to leave current job. - - Reason for leaving current and previous employment to : jobs@cornerstone-career.com We regret that only shortlisted candidates will be notified. --------------------------- Newsgroups: comp.os.vxworks Subject: do you think so? Date: 20 Jun 2002 22:00:45 -0700 From: haoyu_tang@hotmail.com (haoyu) Organization: http://groups.google.com/ Message-ID: i feel more and more that WindRiver will be M$ in RTOS. --------------------------- Newsgroups: comp.os.vxworks Subject: Re: please help Date: 20 Jun 2002 22:49:36 -0700 From: wangwz@chinatopglobal.com (wangwz) Organization: http://groups.google.com/ Message-ID: <72c0062e.0206202149.9125fde@posting.google.com> References: <72c0062e.0206161836.184bab07@posting.google.com> Thank you. Now I can solve this problem. and does it means that if I want to creat a bootrom, I use one config.h, and if I want to build a project, I should use another config.h? "drdiags" wrote in message news:... > I have seen this error before when trying to build tornado bootable kernels > from BSPs that > define PCMCIA. So the "workaround" was to build your bootrom first with > PCMCIA > defined, then undefine it, create a bootable project and use the IDE to add > PCMCIA back. > That is the only instance I know of seeing this error. There could be > more..... > > "wangwz" wrote in message > news:72c0062e.0206161836.184bab07@posting.google.com... > > When I want to build a bootable vxwork image, the tornado tell me that > > "list must have an even number of elements". What does it means? and > > how to solve it? Please tell me how to do nest. Thanks. --------------------------- Newsgroups: comp.os.vxworks Subject: out of environment space question Date: 20 Jun 2002 23:02:23 -0700 From: wangwz@chinatopglobal.com (wangwz) Organization: http://groups.google.com/ Message-ID: <72c0062e.0206202202.181a9db2@posting.google.com> I install Tornado 2.0 on win98, and run "make CPU=...", it appears "out of environment space", I add a line in config.sys "shell=c:\command.com /E:4096 /P", and run make again, it told me "invalid command.com". How to solve this question? Thanks. --------------------------- Newsgroups: comp.os.vxworks Subject: Re: How big can USER_RESERVED_MEM be? Date: Fri, 21 Jun 2002 08:45:26 +0200 From: "Michael Lawnick" Organization: Buergernetz Dillingen Message-ID: References: Reply-To: "Michael Lawnick" Sender: mlawnick@pd9e65631.dip.t-dialin.net Hi Raymond, "Raymond Yeung" schrieb im Newsbeitrag news:d83bb8e3.0206201440.1a91ddc9@posting.google.com... > All, > > I'm thinking of configuring a small amount of memory as USER_RESERVED_MEM. > We've 16MB of contiguous memory. RAM_HI is at bottom of 14th MB. Aren't you able to lower, e.g. to 8MB ? Standard limit: RAM_LOW + vxWorks_Image_Size + security. > ROM space > is 1MB. Other than the 1MB of space, does ROM code need any additional > RAM space for execution? I suppose its text, BSS and DATA segments are all > from this allocated 1MB space? What about its stack? Would it be from > the "initial stack" at the low memory (lower than RAM_LO)? _All_ must fit into memory above RAM_HI, i.e. if you download vxWorks via FTP, the temporary copy of image must fit too. > > The bottom line question is: Is it true that maximum size for USER_RESERVED_MEM > is 1MB (i.e. without causing any troubles)? I want the boot code to write > some info. to this area and get read by application (linked with vxWorks) > subsequently. That's not true, size is unlimited, if you leave enough for rest of the world. Its just the amount you reserve, which may not be touched automatically by bootrom and vxWorks. Regards, Michael --------------------------- Newsgroups: comp.os.vxworks Subject: Re: ftp server for vxworks Date: Fri, 21 Jun 2002 09:17:41 +0200 From: "Michael Lawnick" Organization: Buergernetz Dillingen Message-ID: References: Reply-To: "Michael Lawnick" Sender: mlawnick@pd9e65631.dip.t-dialin.net Hi Jens, I'm using WS_FTP V5.08 and it works with standard vxWorks ftp-server. You have to take care to set the initial remote directory to a device that is not the network connection you are using for FTP. Michael "Jens Pechmann" schrieb im Newsbeitrag news:aesq9q$9drhd$1@ID-147254.news.dfncis.de... > hello, > > > does anybody know if there's an update/replacement for the vxworks ftp > server? > i want to use a standard ftp client (like wsftp). unfortunately the vxworks > ftp server uses a special windriver directory format. this really sucks! > > > thanx > jens > > --------------------------- Newsgroups: comp.os.vxworks Subject: VxWorks System Layout Date: 21 Jun 2002 00:45:28 -0700 From: charles_giudicelli@yahoo.fr (Charles) Organization: http://groups.google.com/ Message-ID: Hi, I have to modify my vxWorks System Layout (PowerPC) I need to use the adresses from 0x4000 to 0x5000, but from 0x3000 to 0x4100 that is reserved. Can I move Interrupt Vector Table and this reserved area ? Can I resize the reserved area (from 0x3000 to 0x4000)? And above all ... what is his utility. Thanks a lot, Charles. --------------------------- Newsgroups: comp.os.vxworks Subject: Ethernet - Where to start Date: Fri, 21 Jun 2002 09:39:53 +0100 From: Paul Caswell Organization: Land & Sea Systems Message-ID: <3D12E659.8DBF8F4E@baesystems.com> Hello vxWorks people, I've just got our target hardware and am writing a bespoke BSP for it - I can get vxWorks to boot (romResident) and now I'd like to get ethernet up and running. The board has a 860 processor on it and a motorola 68160 ethernet chip (among other things). The ethernet chip is connected in hardware to SCC1 as described in the MPC860 Users Manual Chapter 28 Figure 28-3. I've not set one of these up before but I've noticed there are a number of tornado files (ie motCpmEnd, motFecEnd etc) that seem to be associated with ethernet setup. Can I use these ??? I don't have too much of an idea where to start at the moment so any help would be greatly appreciated. Regards Paul --------------------------- Newsgroups: comp.os.vxworks Subject: Re: out of environment space question Date: Fri, 21 Jun 2002 10:55:30 +0200 From: "Martin Raabe" Organization: 1&1 Internet AG Message-ID: References: <72c0062e.0206202202.181a9db2@posting.google.com> Hello wangwz, obciously the path of command.com is wrong. Take a loot at COMSPEC variable. Ciao - -- Martin Raabe E: Martin.RaabeATNOSPAMBaSystem.de "wangwz" schrieb im Newsbeitrag news:72c0062e.0206202202.181a9db2@posting.google.com... > I install Tornado 2.0 on win98, and run "make CPU=...", it appears > "out of environment space", I add a line in config.sys > "shell=c:\command.com /E:4096 /P", and run make again, it told me > "invalid command.com". How to solve this question? > > Thanks. --------------------------- Newsgroups: comp.os.vxworks Subject: send return value Date: Fri, 21 Jun 2002 10:54:07 +0100 From: Danny Chapman Organization: Lucent Technologies, Columbus, Ohio Message-ID: I don't have access to a target just at the moment, but I need to find out whether it is possible for send(...) to return 0 when attempting to write to a (blocking) TCP socket. This is on a PPC755 target with VxWorks 5.4. In particular what happens when the remove end has closed its socket? (Under Solaris I get a return value of -1 and SIGPIPE, but I suspect VxWorks may be different...?). Thanks - Danny --------------------------- End of New-News digest ********************** From vxwexplo-errs@csg.lbl.gov Fri Jun 21 05:48:02 2002 From: Mike McCullough Date: Fri Jun 21 05:48:04 PDT 2002 Subject: Fwd: Re: Jus help me solve the problem and request to all >Date: Fri, 21 Jun 2002 08:47:32 -0400 >To: vxnerd@rediffmail.com >From: Mike McCullough >Subject: Re: Jus help me solve the problem and request to all geeks and >techies > >I believe this is an installation problem. Either you have a bad install >key that doesn't unlock the device driver source or you didn't select it >under Details in the Install Product checkboxes. > >You might try a re-install in a different directory and selecting >everything. I always recommend checking the Details box because otherwise >it doesn't install the unsupported directory which has a lot of good >example code in it. > >Hope this helps... > > >Newsgroups: comp.os.vxworks >Subject: Re: Jus help me solve the problem and request to all geeks and >techies >Date: 17 Jun 2002 04:42:43 -0700 >From: (subbarayan) >Organization: http://groups.google.com/ >Message-ID: >References: > >Dear cfk, >Thanks for your help by your reply.It was really useful to me.But to >my dismay i am unable to find the files u said in ur reply like: >i don't have a folder of pci in my path of:C:\Tornado\target\src\drv. >or any other place in my system.I was also unable to get it from >net.If possible it would be great and helpful for me if u could send >me the above said folder along with the files u said in ur reply like: >pciconfigLib.c >Pciconfigshow.c >Templateend.c >ln7790end.c >as an attachment to me to vxnerd@rediffmail.com or jus suggest me >where exactly can i find source code for above said files so that it >would be helpful for a nerd like me who is in the learning stage and >is going to get involved in pci project with in a couple of days. >Expecting your reply, >s.subbarayan > >Mike McCullough MCC Engineering >President and CEO 9 Cheshire Court > Londonderry, NH 03053 > >mike@mccengineering.com Tel: 603-537-9593 > Fax: 603-434-9890 >www.mccengineering.com Cell: 603-247-1219 > >*********************************************************************************** > 24x7 VxWorks Support Custom Support Programs > VxWorks Training Embedded Consulting Services > A WindLink Partner >*********************************************************************************** Mike McCullough MCC Engineering President and CEO 9 Cheshire Court Londonderry, NH 03053 mike@mccengineering.com Tel: 603-537-9593 Fax: 603-434-9890 www.mccengineering.com Cell: 603-247-1219 *********************************************************************************** 24x7 VxWorks Support Custom Support Programs VxWorks Training Embedded Consulting Services A WindLink Partner *********************************************************************************** From vxwexplo-errs@csg.lbl.gov Fri Jun 21 06:27:44 2002 From: Mike McCullough Date: Fri Jun 21 06:27:47 PDT 2002 Subject: Re: Re: please help There is an old trick for dealing with this kind of problem. Go into target/config, copy the BSP directory and rename it bootrom_BSP or something, then make all the config.h changes you want for the bootrom. You can then make all the regular VxWorks changes in the regular BSP and derive any OS project from that one. Tornado interprets any directory under target/config that isn't "all" or "proj" as a BSP directory. You can even see the new BSP under BSP builds using Tools->Options->Project: Enable T101-style builds Hope this helps... Newsgroups: comp.os.vxworks Subject: Re: please help Date: 20 Jun 2002 22:49:36 -0700 From: wangwz@chinatopglobal.com (wangwz) Organization: http://groups.google.com/ Message-ID: <72c0062e.0206202149.9125fde@posting.google.com> References: <72c0062e.0206161836.184bab07@posting.google.com> Thank you. Now I can solve this problem. and does it means that if I want to creat a bootrom, I use one config.h, and if I want to build a project, I should use another config.h? "drdiags" wrote in message news:... > I have seen this error before when trying to build tornado bootable kernels > from BSPs that > define PCMCIA. So the "workaround" was to build your bootrom first with > PCMCIA > defined, then undefine it, create a bootable project and use the IDE to add > PCMCIA back. > That is the only instance I know of seeing this error. There could be > more..... > > "wangwz" wrote in message > news:72c0062e.0206161836.184bab07@posting.google.com... > > When I want to build a bootable vxwork image, the tornado tell me that > > "list must have an even number of elements". What does it means? and > > how to solve it? Please tell me how to do nest. Thanks. Mike McCullough MCC Engineering President and CEO 9 Cheshire Court Londonderry, NH 03053 mike@mccengineering.com Tel: 603-537-9593 Fax: 603-434-9890 www.mccengineering.com Cell: 603-247-1219 *********************************************************************************** 24x7 VxWorks Support Custom Support Programs VxWorks Training Embedded Consulting Services A WindLink Partner *********************************************************************************** From vxwexplo-errs@csg.lbl.gov Sat Jun 22 04:03:11 2002 From: Vxworks Exploder Date: Sat Jun 22 04:03:13 PDT 2002 Subject: comp.os.vxworks newsdigest Comp.Os.Vxworks Daily Digest Sat Jun 22 04:03:07 PDT 2002 Subject: vxworks booting problem,urgent can any one help me plz?helpful if i get a reply today Subject: pseudo memory device in vxworks doubt Subject: Re: do you think so? Subject: Re: How big can USER_RESERVED_MEM be? Subject: Re: Table with OID as Index Subject: Re: Ethernet - Where to start Subject: VXWorks - OS9 Subject: Telnet does not allow to login Subject: Help on PPC603 Assembler warnings Subject: Re: please help Subject: Debugging faults ------------------------------------------------------- Newsgroups: comp.os.vxworks Subject: vxworks booting problem,urgent can any one help me plz?helpful if i get a reply today Date: 21 Jun 2002 05:24:15 -0700 From: vxnerd@rediffmail.com (subbarayan) Organization: http://groups.google.com/ Message-ID: dear mentors, can any one give me a step by step proceedure in creating a vxworks bootable floppy from tornado1.0?i have gone through both the tornado manual and vxworks manual but of no use.I am always getting the following error when ever i try to make a bootable target: 1.the target server after doing configuration when launched does not run longer.After some time it shuts automatically.when i try to launch the target,the target server says:rpc backend client connection time out.i changed the timeout parameter in target configuration dialogue box but of no use again. i could not do any thing and after this error my tornado hangs and i have no other option than quiting it. kindly help me find out where the problem lies and how to rectify it? i am looking out for step by step proceedure giving which menus to be accessed for creating a bootable target as i am new to this environment and no ones there to help me except u people in this group.manual given by windriver is of no use to me.everything is like a maze to me as i am unaware what to do. sorry for my ignorance of not knowing it but u mentors plz guide me and take pains in explaining me .any solution can me mailed to:vxnerd@rediffmail.com --------------------------- Newsgroups: comp.os.vxworks Subject: pseudo memory device in vxworks doubt Date: 21 Jun 2002 05:30:38 -0700 From: vxnerd@rediffmail.com (subbarayan) Organization: http://groups.google.com/ Message-ID: what exactly is a pseudomemory device?where it is used?i encountered such term while going through the vxworks manual which says what things to be considered while making a pseudomemory i/o communication with vxworks.i am unaware of it and would like to know how to implement it and where it is used and what kind of applications require a pseudo memory i/o device. any reply can be mailed to vxnerd@rediffmail.com.thanks to the person replying me in advance. --------------------------- Newsgroups: comp.os.vxworks Subject: Re: do you think so? Date: 21 Jun 2002 11:24:14 -0400 From: Bill Pringlemeir Organization: Factory of the mind Message-ID: References: Sender: bpringlemeir@DeadDuck I am the psychotherapist. Please, describe your problems. Each time you are finished talking, type RET twice. haoyu> i feel more and more that WindRiver will be M$ in RTOS. Is it because windriver will be m$ in rtos that you came to me? Does it bother you that windriver will be m$ in rtos that I came to you? When did you first know that windriver will be m$ in rtos that you came to me? What happened when did me first know that windriver will be m$ in rtos that I came to you? What would happen if did you first know that windriver will be m$ in rtos that you came to me? Is the fact that windriver will be m$ in rtos that I came to you the real reason? dis&dat, Bill. - -- Forte benelux SP4 clandestine Mole [Hello to all my friends and fans in domestic surveillance] bullion 22nd SAS clones plutonium computer terrorism credit card CIDA ASLET Aldergrove vxWorks FAQ, "http://www.xs4all.nl/~borkhuis/vxworks/vxworks.html" --------------------------- Newsgroups: comp.os.vxworks Subject: Re: How big can USER_RESERVED_MEM be? Date: 21 Jun 2002 10:23:17 -0700 From: ryeung@earthlink.net (Raymond Yeung) Organization: http://groups.google.com/ Message-ID: References: "Michael Lawnick" wrote in message news:... > Hi Raymond, > > "Raymond Yeung" schrieb im Newsbeitrag > news:d83bb8e3.0206201440.1a91ddc9@posting.google.com... > > All, > > > > I'm thinking of configuring a small amount of memory as USER_RESERVED_MEM. > > We've 16MB of contiguous memory. RAM_HI is at bottom of 14th MB. > Aren't you able to lower, e.g. to 8MB ? Standard limit: RAM_LOW + > vxWorks_Image_Size + security. Good point, I suppose if I need to, I can lower RAM_HI. Our vxWorks image is much less than 8MB at this time. > > > ROM space > > is 1MB. Other than the 1MB of space, does ROM code need any additional > > RAM space for execution? I suppose its text, BSS and DATA segments are > all > > from this allocated 1MB space? What about its stack? Would it be from > > the "initial stack" at the low memory (lower than RAM_LO)? > _All_ must fit into memory above RAM_HI, i.e. if you download vxWorks via > FTP, the temporary copy of image must fit too. > > I'm trying to find out how much RAM space boot code requires. Based on the MACRO calculation, ROM_COPY_SIZE is about 1MB. Can I safely assume everything the boot code needs is accomodated in that 1MB after RAM_HI? You bring up a point about vxWorks FTP download file, so it's loaded to the space AFTER the boot image (i.e. at address space above RAM_HI + ROM_COPY_SIZE)? I'm sure it's described in one of the VxWorks manual, but it has been a while since I read the whole thing. > > The bottom line question is: Is it true that maximum size for > USER_RESERVED_MEM > > is 1MB (i.e. without causing any troubles)? I want the boot code to write > > some info. to this area and get read by application (linked with vxWorks) > > subsequently. > That's not true, size is unlimited, if you leave enough for rest of the > world. Its just the amount you reserve, which may not be touched > automatically by bootrom and vxWorks. I'm only referring to my system configuration, given the physical memory size, where RAM_HI is, and what ROM_COPY_SIZE is. The trick is, as you pointed out, to find out where the rest of the world is, and what they don't use. I'm sure my vxWorks and application would not need the last MB of space. But I still need to check out the boot code. > > Regards, > Michael --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Table with OID as Index Date: Fri, 21 Jun 2002 17:50:16 GMT From: "Alex" Organization: Cox Communications Message-ID: References: "Seem" wrote in message news:fe063282.0206170128.57c6248a@posting.google.com... > Say, the index of a table A in mib A is an object identifier. > And we are implementing snmp agent. > > 1. how would the agent know what are the possible values of the index > which is in table A. > Two part answer to your first Q. Part 1. I could rant about OIDs used as indeces, but I will try to be brief. If you design your own MIB, then avoid using OIDs for indeces as much as possible, they are evil because encoding and decoding them takes a lot of time and memory. Just add another column to your table that would hold integer indeces. Of course, if you have to deal with a third paty's MIB, then you have to live with what they give you. Part 2 (real answer to you question). Well, the agent just has to know, period. You are developing the code for the agent, right? If you are putting the agent on your own propritary device, then you should know boudaries of the indices in your table. You can even just hardcode them into your code, provided that you size your table for the maximum possible number of rows. This is always a good thing to do, because then you do not have to add and remove rows dynamically (which is also evil) but just set the value in the EntryStatus to "active" or "notInService", respectively. On the other hand, if you are dealing with somebody else's MIB, then their MIB should indicate what the boundaries are, but even in this case, since you want to write the Agent, you should have access to the actual managed device, so you should be able to figure out yourself how many rows are in the table and what the boundaries of the indeces are. To put it in another way, if the guy who writes the agent does not know the boundaries, then nobody does. > 2. if the object identifier (which is the index of this table A in the > mib A) is actually the columnar variable of another table B in mib B, > then can the agent identify that when it is accessing the index ( in > pt 1) , that the oid is another columnar variable of mib B and can it > give the actual name of the column in mib B I am not sure what do you mean by "another MIB". I assume you mean another MIB module, if so, then all you have to do is to specify in the IMPORTS statement of your module "A" the name of the variable in the module "B", something like this: - --- Module A MIB-A DEFINITIONS ::= BEGIN IMPORTS tableBIndex FROM MIB-B; tableA OBJECT-TYPE SYNTAX SEQUENCE OF TableAEntry ..... ....... ::= {someOID} tableAEntry OBJECT-TYPE SYNTAX TableAEntry ......... ........ INDEX {tableBIndex} ::= {tableA 1} TableAEntry ::= SEQUENCE { whatever Unsigned32, barkingDog DisplayString } ... ... END - --------Module B MIB-B DEFINITIONS ::= BEGIN ..... ... tableB OBJECT-TYPE SYNTAX SEQUENCE OF TableBEntry ........ ......... ::= {anotherOID} tableBEntry OBJECT-TYPE SYNTAX TableBEntry ......... ........ INDEX {tableBIndex} ::= {tableB 1} TableBEntry ::= SEQUENCE { tableBIndex Unsigned32, something DisplayString } ... ... END Here is an index of your table A is actually not only a columnar object of the table B (as you specified) but is also an index in the table B in another module. Notice that since tableBIndex is just an index into the table A, you do not include it into the SEQUENCE representing the TableBEntry. Hope this helps. Alex --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Ethernet - Where to start Date: Fri, 21 Jun 2002 10:48:17 -0700 From: "Dan Gold" Organization: Mailgate.ORG Server - http://www.Mailgate.ORG Message-ID: References: <3D12E659.8DBF8F4E@baesystems.com> Sender: gold@ensemble.com "Paul Caswell" wrote in message news:3D12E659.8DBF8F4E@baesystems.com... > Hello vxWorks people, > I've just got our target hardware and am writing a bespoke BSP for it - > I can get vxWorks to boot (romResident) and now I'd like to get ethernet > up and running. The board has a 860 processor on it and a motorola > 68160 ethernet chip (among other things). The ethernet chip is > connected in hardware to SCC1 as described in the MPC860 Users Manual > Chapter 28 Figure 28-3. I've not set one of these up before but I've > noticed there are a number of tornado files (ie motCpmEnd, motFecEnd > etc) that seem to be associated with ethernet setup. Can I use these > ??? Yes. Ignore the motFecEnd stuff, that's for the 100Base-T fast ethernet controller on the 860-T part. The 68160 won't do 100Base-T. You want to look at the motCpmEnd stuff, although I thought it was only in binary. Look at sysMotCpmEnd.c, configNet.h, and the sysCpmXXX functions in sysLib.c. That should give you the start, middle, and end points. You should just have to setup the end table entry in configNet.h, and adjust the sysCpmXXX functions in sysLib.c and away you go. You should not have to touch motCpmEnd.c hth, Dan Gold gold@ensemble.com --------------------------- Newsgroups: comp.os.vxworks Subject: VXWorks - OS9 Date: Fri, 21 Jun 2002 18:55:43 GMT From: Richard van Paasen Organization: chello broadband Message-ID: <3D1376A3.80201@dds.nl> Hi, I have an application running on 68040/OS9 which may need to be ported to VxWorks. Is there any documentation about that? Thanks, - - Richard. --------------------------- Newsgroups: comp.os.vxworks Subject: Telnet does not allow to login Date: 21 Jun 2002 12:05:27 -0700 From: vkinger@hotmail.com (Kinger) Organization: http://groups.google.com/ Message-ID: Hi All, I have included the telnet task in my project, I am able to get to the VxWorks login prompt,but it does not allow me to login. I have used the same username and password that I have defined in the "configAll.h" file( not the encrypted one) the "Properties: component 'RLOGIN/TELNET password protection'" window has the right password in it. On the debug port on my box I can see the shell prompt, but it does not accept any command. Looks like I am able to telnet to the box but somehow the shell prompt does not accept any command. Can someone help?? Kinger. --------------------------- Newsgroups: comp.sys.powerpc.misc,comp.sys.powerpc.tech,comp.os.vxworks Subject: Help on PPC603 Assembler warnings Date: 21 Jun 2002 13:38:12 -0700 From: ryeung@earthlink.net (Raymond Yeung) Organization: http://groups.google.com/ Message-ID: I'm re-posting this in case my last post didn't make it - I'm using VxWorks boot code on MPC8260 with PPC603EC core. Looks like the code comes with a bunch of assembler warnings of the following form: D:\TEMP\cca00373.s:5373: Warning: operand out of range (65960 not between - -32768 and 32767) By process of elimination, I finally found that they are caused by the use of IMMR MACROs such as IMMR(base) in conjuction with memory store type instructions. E.g. stw r5, IMMR(0)(r4) I looked up 603 instruction set manual, and found that stw as the following syntax: stw rS, d(rA) where d is a 16-bit signed two's complement integer. As we know, all the internal memory mapped registers have offsets 0x0001nnnn, i.e. all 17-bits numbers. The boot code seems to be working as is. But the unsuspected users may think there's something wrong with it. Questions: 1. How do I get rid of all these warnings (short of suppressing warnings al- together)? 2. How does the assembler handle such a situation to generate proper 16-bit immediate value? Thanks, Raymond --------------------------- Newsgroups: comp.os.vxworks Subject: Re: please help Date: Sat, 22 Jun 2002 02:12:46 GMT From: "drdiags" Organization: AT&T Broadband Message-ID: References: <72c0062e.0206161836.184bab07@posting.google.com> <72c0062e.0206202149.9125fde@posting.google.com> Hello Wang, You could copy the BSP, naming it such a way as you know which one you want to base a bootable kernel from. (Are you really going to be changing the bootrom that much)? Or how about creating a project from the BSP without the PCMCIA macro defined. Then you can turn it back on in the IDE. Then you can base other projects on the existing project, instead of having to build a new project based on the BSP. Your choice and there are several options, so I am not sure which is easiest for you. There was an SPR on the error you got and if it was related to PCMCIA or SCSI (?). Look on WindSurf, maybe this finally got fixed. HTH. "wangwz" wrote in message news:72c0062e.0206202149.9125fde@posting.google.com... > Thank you. Now I can solve this problem. and does it means that if I > want to creat a bootrom, I use one config.h, and if I want to build a > project, I should use another config.h? > > "drdiags" wrote in message news:... > > I have seen this error before when trying to build tornado bootable kernels > > from BSPs that > > define PCMCIA. So the "workaround" was to build your bootrom first with > > PCMCIA > > defined, then undefine it, create a bootable project and use the IDE to add > > PCMCIA back. > > That is the only instance I know of seeing this error. There could be > > more..... > > > > "wangwz" wrote in message > > news:72c0062e.0206161836.184bab07@posting.google.com... > > > When I want to build a bootable vxwork image, the tornado tell me that > > > "list must have an even number of elements". What does it means? and > > > how to solve it? Please tell me how to do nest. Thanks. --------------------------- Newsgroups: comp.os.vxworks Subject: Debugging faults Date: 22 Jun 2002 02:48:54 -0700 From: tanejarahul@hotmail.com (Rahul Taneja) Organization: http://groups.google.com/ Message-ID: <49ba688c.0206220148.42d366dd@posting.google.com> Hi ! How does one debug the status of the crashed program from the info provided by the VxWorks. How can i know the line or the function where the program crashed given PC , Status Register and error code. I want something analogous to the procedure we use to debug core in solaris (if it exists) How does double fault differ from Page Fault ? Thanks in Advance, - - Rahul --------------------------- End of New-News digest ********************** From vxwexplo-errs@csg.lbl.gov Sun Jun 23 04:03:07 2002 From: Vxworks Exploder Date: Sun Jun 23 04:03:09 PDT 2002 Subject: comp.os.vxworks newsdigest Comp.Os.Vxworks Daily Digest Sun Jun 23 04:03:04 PDT 2002 Subject: Re: GCC for PowerPC bug Subject: ISR getting called inspite of interrupt status being 0 ------------------------------------------------------- Newsgroups: comp.os.vxworks Subject: Re: GCC for PowerPC bug Date: 22 Jun 2002 22:11:00 +0100 From: Alastair J. Houghton Organization: Message-ID: <20020622220547405+0100@clarity.daystar.local> References: <3D119749.C0F892F8@sepro-robotique.com> Reply-To: Emmanuel Herbreteau In <3D119749.C0F892F8@sepro-robotique.com> Emmanuel Herbreteau wrote: > Hi, > > We are working on powerPC (MPC 860/823) target. > > We can compile our VxWorks project using the optimization settings > "-O0" (no optimization) and "-O1" with GCC. > > ( gcc driver version cygnus-2.7.2-960126 egcs-971225 tornado 2.0 > executing gcc version cygnus-2.7.2-960126 ) > > Nevertheless, if we try to compile it with the "-O2" or "-O3" settings, > the compiler crashs (Dr Watson !). We are using VxWorks/Tornado 2.0 > CP4 with Windows NT4 (latest service pack). > > Does anyone know how to solve this problem ???? Your best bet is to upgrade to Tornado 2.1, which uses a much newer version of GCC (based on version 2.95.3) that has fewer bugs as well as a better optimiser (and support for Altivec if you want it); just to give you some idea of the difference, we wrote a list of all of the benefits of 2.95.3 over 2.7.2 (to convince our management that we needed to switch) and it was tens of pages long! Alternatively you can try to isolate the lines of code that are causing you the problem, then re- write them so that they don't cause so much trouble. I know, for example, that we had trouble with a 2.7.2-based compiler when we used lots of "?:" and "," operators (don't ask why... you don't want to know.) Kind regards, Alastair. --------------------------- Newsgroups: comp.os.vxworks Subject: ISR getting called inspite of interrupt status being 0 Date: 23 Jun 2002 03:19:16 -0700 From: sameer_manuja@yahoo.com (Sameer) Organization: http://groups.google.com/ Message-ID: <2df53411.0206230219.5467becf@posting.google.com> Hi, I'm writing driver for a NIC. I use the call pciConfigInByte to get hold of the PIC IRQ line configured by the BIOS. I'm using SYS_INT_CONNECT macro to connect my ISR to this interrupt. My target is pcPentium. #define SYS_INT_CONNECT(priv,rtn,arg,pResult) \ { \ IMPORT STATUS intConnect(); \ *pResult = intConnect ((VOIDFUNCPTR*) INUM_TO_IVEC (INT_VEC_GET (priv->irq)), \ rtn, (int) arg); \ } My isr goes like this, void myisr (END_OBJ* dev) { struct private *priv; unsigned char ack; int lockkey = intLock (); priv = get_private (dev); TRACE2 ("%s: interrupt status %x\n", get_name (dev), (int) get_interrupt_value (dev)); if ((ack = get_interrupt_value (dev)) != 0) { /* first ACK all the interrupts */ set_interrupt_value (dev, ack); . . . } intUnlock (lockkey); } I'm calling SYS_INT_CONNECT in endStart for my driver, as, SYS_INT_CONNECT (get_private (end), myisr, end, &result); where end is END_OBJ*. The problem is that the isr is called again and again, inspite of my acking the interrupts. The interrupt status register when read in the isr shows no active interrupts (status valus is 0). I'm not able to get what could be the possible problem. Help me out. Have i missed out some step? Thanks & Regards, Sameer --------------------------- End of New-News digest ********************** From vxwexplo-errs@csg.lbl.gov Sun Jun 23 15:43:21 2002 From: Cory Dixon Date: Sun Jun 23 15:43:24 PDT 2002 Subject: Shell output with no pc console Greetings, I need some help understanding the mapping of the standard file descriptors of stdin, stdout, stderr in VxWorks when there is no pc console, no windSh connection, but there is telnet through PPP which is needed. Since I don't have a pc console, I have undefined INCLUDE_PC_CONSOLE. I am not using windSh, so I don't have any virtual I/O channels, and finally, I am using PPP through com1 and don't want to waste a serial port for the output of the console, so I have CONSOLE_TTY set to -1. What this ends up doing is leaving consoleFd in usrConfig.c set to NONE, and ioGlobalStdSet is called with this unset variable to set stdin, stdout, stderr. This is obviously a problem, and without a console I can't tell where the kernel is actually crashing. I have tried to open /null for stderr, and stdout, but this doesn't seem to work either. The only thing that works is to either have INCLUDE_PC_CONSOLE set, but this does not fit the whole idea of only including what you need because now I have both vga and keyboard drivers being compiled and loaded. Does any one have any suggestions on how to deal with this, or have any other experience with the problem? Thanks, Cory -- ___ |___| ______ ______ | | / \ / \ | | / Ralphy \ / Petey \ | | |\ /| |\ /| | | | \______/ | | \______/ | | | | | | | | | | | | | \ | | / \ | | / ____| |____ \|____|/ 3CS \|____|/ |\ | | /| ______ Cory Dixon | \ \_/ / | / \ | \_____/ | / Sparky \ Colorado Space Grant College | | | | |\ /| University of Colorado | | CX1 | | | \______/ | | | | | | | | | cory.dixon@colorado.edu |__|_____|__| \ | | / work 303-492-4469 / \ \|____|/ home 303-494-5638 / \ / \ http://spacegrant.colorado.edu From vxwexplo-errs@csg.lbl.gov Sun Jun 23 18:33:03 2002 From: Tsuyoshi Hasegawa Date: Sun Jun 23 18:33:06 PDT 2002 Subject: get FTP reply Hi, I'm new on here. I have a question using ftpCommand() vxWorks library function, how to get the whole FTP reply from the server? not justa reply code. It seems I can know the reply code only, but I'd like to get the whole reply data. ex) ftpCommand (ctrlSock, "SIZE %s", filename, 0, 0, 0, 0, 0); this call returns the result, however I cannot see the SIZE of the file. it's included in the reply data. If anyone knows about this, please let me know. not just a exact answer, but also some hints or sugestions will be thankfull. Thank you. -------- thasegaw From vxwexplo-errs@csg.lbl.gov Sun Jun 23 21:55:30 2002 From: "Syed Mohasin Zaki" Date: Sun Jun 23 21:55:32 PDT 2002 Subject: RE: get FTP reply This is a multi-part message in MIME format. ------=_NextPartTM-000-3ba65866-bb3b-4879-8252-770b2e0029cb Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit >>It seems I can know the reply code only, but I'd like to get >>the whole reply data. >>ex) Hi, In vxWorks FTP client side APIs, there is no way you could get the whole reply data. Infact, to avoid this problem I had to implement a completely new FTP client. The reply returned by the ftpCommand is the first digit of the 3 digit reply, which is often less useful. Regards, MOhasin ------=_NextPartTM-000-3ba65866-bb3b-4879-8252-770b2e0029cb Content-Type: text/plain; name="Wipro_Disclaimer.txt" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="Wipro_Disclaimer.txt" **************************Disclaimer************************************ Information contained in this E-MAIL being proprietary to Wipro Limited is 'privileged' and 'confidential' and intended for use only by the individual or entity to which it is addressed. You are notified that any use, copying or dissemination of the information contained in the E-MAIL in any manner whatsoever is strictly prohibited. *************************************************************************** ------=_NextPartTM-000-3ba65866-bb3b-4879-8252-770b2e0029cb-- From vxwexplo-errs@csg.lbl.gov Sun Jun 23 23:26:38 2002 From: "pradeep" Date: Sun Jun 23 23:26:41 PDT 2002 Subject: timers tn Vxworks This is a multi-part message in MIME format. ------=_NextPart_000_0017_01C21B78.104D92E0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Hi group =20 I am having problems in creating timers in Vxworks. I am using the Posix = timers. I need timers with a precision of 8ms, for this I changed the = system clock rate from the default 60 ticks to 250 ticks . But still I = am not getting a consistent behavior. There is another parameter = _POSIX_CLOCKRES_MIN in the posix library do I require to change its = value. =20 Any help in this regard is highly appreciated. =20 =20 Pradeep =20 ------=_NextPart_000_0017_01C21B78.104D92E0 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable

Hi=20 group

 

I am having = problems in=20 creating timers in Vxworks. I am using the Posix timers. I need = timers with=20 a precision of 8ms, for this I changed the system clock rate from = the=20 default 60 ticks to 250 ticks . But still I am not getting a = consistent=20 behavior. There is another = parameter _POSIX_CLOCKRES_MIN  =20 in the posix=20 library do I require to change its value.

 

Any help in = this regard is=20 highly appreciated.

 

 

Pradeep

 

------=_NextPart_000_0017_01C21B78.104D92E0-- From vxwexplo-errs@csg.lbl.gov Mon Jun 24 03:21:55 2002 From: Tsuyoshi Hasegawa Date: Mon Jun 24 03:21:58 PDT 2002 Subject: RE: get FTP reply Hi, Thanks for rapid reply. Well, I see I cannot get the FTP reply data using ftpCommand(). I'll give up to get reply data to implement a new FTP client by myself... Thank you again. -------- thasegaw > >Hi, > >In vxWorks FTP client side APIs, there is no way you could get the whole >reply data. Infact, to avoid this problem I had to implement a completely >new FTP client. > >The reply returned by the ftpCommand is the first digit of the 3 digit >reply, which is often less useful. > >Regards, >MOhasin > > From vxwexplo-errs@csg.lbl.gov Mon Jun 24 04:03:11 2002 From: Vxworks Exploder Date: Mon Jun 24 04:03:13 PDT 2002 Subject: comp.os.vxworks newsdigest Comp.Os.Vxworks Daily Digest Mon Jun 24 04:03:08 PDT 2002 Subject: Re: Telnet does not allow to login Subject: Re: ISR getting called inspite of interrupt status being 0 Subject: Re: snmp table creation / Static Entry Creation Subject: Re: Debugging faults Subject: setsockopt + TOS Subject: the different of vxwork_rom.hex and bootrom_ump.hex? Subject: Re: out of environment space question Subject: reloc overflow Subject: Re: GCC for PowerPC bug Subject: Re: ISR getting called inspite of interrupt status being 0 Subject: Re: Getting an unused fd Subject: Re: out of environment space question Subject: Re: the different of vxwork_rom.hex and bootrom_ump.hex? Subject: Re: How big can USER_RESERVED_MEM be? Subject: Re: reloc overflow ------------------------------------------------------- Newsgroups: comp.os.vxworks Subject: Re: Telnet does not allow to login Date: Sun, 23 Jun 2002 17:42:08 GMT From: ggg+news@best.com (GGG) Organization: rest Message-ID: References: The password needs to be specified encrypted. Use the supplied "vxencrypt". See, VxWorks Programmer's Guide, 9.2.5. Not sure from your description if that's the problem your facing, but seemed like a first guess. GGG In article , Kinger wrote: >Hi All, >I have included the telnet task in my project, I am able to get to the >VxWorks login prompt,but it does not allow me to login. I have used >the same username and password that I have defined in the >"configAll.h" file( not the encrypted one) the "Properties: component >'RLOGIN/TELNET password protection'" window has the right password in >it. On the debug port on my box I can see the shell prompt, but it >does not accept any command. Looks like I am able to telnet to the box >but somehow the shell prompt does not accept any command. >Can someone help?? >Kinger. --------------------------- Newsgroups: comp.os.vxworks Subject: Re: ISR getting called inspite of interrupt status being 0 Date: Sun, 23 Jun 2002 23:57:43 +0200 From: Peter Kannegiesser Organization: SEK Message-ID: References: <2df53411.0206230219.5467becf@posting.google.com> Reply-To: peter.kannegiesser@gmx.de On 23 Jun 2002 03:19:16 -0700, sameer_manuja@yahoo.com (Sameer) wrote: >I'm writing driver for a NIC. I use the call pciConfigInByte to get >hold of the PIC IRQ line configured by the BIOS. I'm using >SYS_INT_CONNECT macro to connect my ISR to this interrupt. My target >is pcPentium. > <...> >The problem is that the isr is called again and again, inspite of my >acking the interrupts. The interrupt status register when read in the >isr shows no active interrupts (status valus is 0). > Have you considered that there might be another interrupt source, which shares the same interrupt line? In this case both interrupt handlers get called all the time -- the one that doesn't find its own device active simply terminates without doing anything. HTH, Peter - -- keine sig --------------------------- Newsgroups: comp.os.vxworks,comp.protocols.snmp Subject: Re: snmp table creation / Static Entry Creation Date: Sun, 23 Jun 2002 23:46:08 GMT From: Pete Flugstad Organization: MediaCom High Speed Internet Message-ID: <3D165DBF.4040209@nospam.icon-labs.com> References: ram mohan wrote: > Hi.. > I divide my question to two parts. > PART I: > > i would like to know how the snmp table creation is handled by the > windnet snmp agent. > > (My probl: > i have a table and i should create entries which are static (not > created by user). > I understand that I should do a set operation with all the column > values for each entry. for this , i should write the code at a place > when the table gets created. > In the mibcomp generated code, routines for get/next/set are given. In > the scenario that I face, I dont know where to write the code. You don't need to do any kind of SNMP set operation. Just have an init function that is called when your module is initialized. That function should create the data structures that represent your table. The generated get/next/set functions should be modified to read/modify this data structure. There is nothing sacred about the generated get/next/set functions (and it's probably not compilable anyway, so you will HAVE to modify it, at least a little). Unfortunately, I'm not familiar with how WindNet SNMP modules are dynamically loaded (I generally do full agents using Envoy, which WindNet SNMP is based on). There must be a function that is run when the module is loaded to register your module with the existing WindNet SNMP agent. > PART II: > > Assuming that now I know where to code, i would like to know if any > sample code is available for row creation and deletion for SNMP V1. > (the porting guide gives a partial example for v3). I would like to > have a complete example if possible. Essentially, your test function needs to be able to deal with a request for an instance of the data that does not exist. It should probably create the appropriate data structure and initialize it's values to the defaults indicated in the MIB. The set function then just acts to implement what the test function set up. V1 vs V3 becomes relevant as SNMPv2 (which SNMPv3 derives from) introduced the RowStatus TEXTUAL-CONVENTION, which provides for a structured way of creating/deleting rows (really SMIv2). Your MIB should be written to use the RowStatus textual convention. Your test proceedure can then use that variable to determine what the manager is requesting. Pete Flugstad Icon Labs --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Debugging faults Date: Mon, 24 Jun 2002 00:11:40 GMT From: Pete Kockritz Organization: AT&T Broadband Message-ID: References: <49ba688c.0206220148.42d366dd@posting.google.com> In article <49ba688c.0206220148.42d366dd@posting.google.com>, tanejarahul@hotmail.com (Rahul Taneja) wrote: > How does one debug the status of the crashed program from the info > provided by the VxWorks. > > How can i know the line or the function where the program crashed > given PC , Status Register and error code. I want something analogous > to the procedure we use to debug core in solaris (if it exists) If its a case of a task being suspended due to some exception, you can use the shell commands 'tt ' (task trace) and a 'ti ' to get info about the task state and where the task was suspended. You can also attach CrossWind to the suspended task (assuming that the code was compiled with -g option) and the debugger will open the source file and show the line of code that was executing when the task was suspended. You can then look at the program's variables and call stack. You can also use 'lkAddr
' with the address at which the task was suspended. This will show you the symbols around the point at which the task was suspended. If the processor has crashed (or locked up), look for some info on the serial console, if possible. Also, when the processor is rebooted it may print out info to the serial console about the exception that caused the crash. > How does double fault differ from Page Fault ? What architecture? Different techniques apply to different CPUs. - -- Pete Kockritz --------------------------- Newsgroups: comp.os.vxworks Subject: setsockopt + TOS Date: Sun, 23 Jun 2002 20:22:24 -0400 From: "Jim Fan" Organization: Bell Sympatico Message-ID: Anyone knows what standard does vxWorks 5.4 support for TOS in IP header? Is it DiffServ codepoint or 7bits (3bits precedence and 4bits TOS + 1bit unused)? I'm confused about this TOS/Routing table on vxWorks. mRouteAdd will mask whatever value you set with 0x1f (use only lower 5bits) but when you send out the packet it will use the TOS value you used in setsockopt.... For example, if 0xa0 is used in setsockopt all packet that sent out from that socket will be tagged with 0xa0 in the header but mRouteAdd(des,gateway,mask,0xa0,0) will not add a mRoute with 0xa0 TOS... Why? Sorry if this is a dumb question but I really need your help on this... Thanks in advance... --------------------------- Newsgroups: comp.os.vxworks Subject: the different of vxwork_rom.hex and bootrom_ump.hex? Date: 23 Jun 2002 18:30:26 -0700 From: dengjinsheng@sina.com (dragonheart) Organization: http://groups.google.com/ Message-ID: <238a6ea8.0206231730.73b98853@posting.google.com> when i writed BSP for powerpc, i met a question. i cannot make my routine enter into C entry. the rominit.s have been verified with the testing LED. but i cannot jump into C entry or i cannot verify i have jump into c entry. i downloaded bootrom_ump.bin into my flash. should i download the vxworks_rom.hex? what is the major reason? --------------------------- Newsgroups: comp.os.vxworks Subject: Re: out of environment space question Date: 23 Jun 2002 19:30:52 -0700 From: wangwz@chinatopglobal.com (wangwz) Organization: http://groups.google.com/ Message-ID: <72c0062e.0206231830.23324262@posting.google.com> References: <72c0062e.0206202202.181a9db2@posting.google.com> Hello Mattin, Thans for your help. but it doesn't seem that it is casued by wrong path of command.com. If I delete the shell line in the config.sys, the COMSPEC=c:\windows\command.com, and when I run make, it will display "out of environment space", then I add a line in config.sys: "SHELL=c:\windows\command.com /E:8192 /P" and run make again, it will display as following: C:\Tornado\target\src>make CPU=ARMSA110 TOOL=gnu C:\TORNADO\HOST\X86-WI~1\BIN\MAKE.EXE -C demo CPU=ARMSA110 TOOL=gnu MAKE.EXE[1]: Entering directory `C:\Tornado\target\src\demo' C:\TORNADO\HOST\X86-WI~1\BIN\MAKE.EXE -C color CPU=ARMSA110 TOOL=gnu TGT_DIR=c:\ tornado/target MAKE.EXE[2]: Entering directory `C:\Tornado\target\src\demo\color' MAKE.EXE[2]: Nothing to be done for `Default'. MAKE.EXE[2]: Leaving directory `C:\Tornado\target\src\demo\color' MAKE.EXE[1]: Leaving directory `C:\Tornado\target\src\demo' C:\TORNADO\HOST\X86-WI~1\BIN\MAKE.EXE -C dhcp CPU=ARMSA110 TOOL=gnu MAKE.EXE[1]: Entering directory `C:\Tornado\target\src\dhcp' Invalid COMMAND.COM Enter correct name of Command Interpreter (eg, C:\COMMAND.COM) >> can you tell me how to solve it? Thanks. "Martin Raabe" wrote in message news:... > Hello wangwz, > obciously the path of command.com is wrong. > > Take a loot at COMSPEC variable. > > Ciao > -- > Martin Raabe > E: Martin.RaabeATNOSPAMBaSystem.de > > "wangwz" schrieb im Newsbeitrag > news:72c0062e.0206202202.181a9db2@posting.google.com... > > I install Tornado 2.0 on win98, and run "make CPU=...", it appears > > "out of environment space", I add a line in config.sys > > "shell=c:\command.com /E:4096 /P", and run make again, it told me > > "invalid command.com". How to solve this question? > > > > Thanks. --------------------------- Newsgroups: comp.os.vxworks Subject: reloc overflow Date: Mon, 24 Jun 2002 11:35:46 +0800 From: Xin Zhen Organization: Bentium Ltd. (CN99) Message-ID: <3D169392.7070503@sina.com> Hi all, When I compile our application in Tornado 2.0, i got the following error messages: \\d\Tornado\host\x86-win32\i386-pc-mingw32\bin\ld.exe: partialImage.o: reloc overflow: 0x11a10 > 0xffff partialImage.o: final close failed: File truncated make: *** [main.out] Error 0x1 Both for "VxSim" and "arm" platform. So what happened? Xin Zhen --------------------------- Newsgroups: comp.os.vxworks Subject: Re: GCC for PowerPC bug Date: 23 Jun 2002 22:17:08 -0700 From: vdalal@hotmail.com (Vasu Dalal) Organization: http://groups.google.com/ Message-ID: <363d071b.0206232117.2212384d@posting.google.com> References: <3D119749.C0F892F8@sepro-robotique.com> <20020622220547405+0100@clarity.daystar.local> Hello Alastair : >just to > give you some idea of the difference, we wrote a list of all of the > benefits of 2.95.3 over 2.7.2 (to convince our management that we needed > to switch) and it was tens of pages long! Is there a chance that you can share that with the group ? > I know, for > example, that we had trouble with a 2.7.2-based compiler when we used > lots of "?:" and "," operators (don't ask why... you don't want to know.) Why ? Just curious. Thank you in advance. vasu --------------------------- Newsgroups: comp.os.vxworks Subject: Re: ISR getting called inspite of interrupt status being 0 Date: 23 Jun 2002 22:22:02 -0700 From: seasoblue2000@yahoo.com.cn (seasoblue) Organization: http://groups.google.com/ Message-ID: References: <2df53411.0206230219.5467becf@posting.google.com> sameer_manuja@yahoo.com (Sameer) wrote in message news:<2df53411.0206230219.5467becf@posting.google.com>... > Hi, > > I'm writing driver for a NIC. I use the call pciConfigInByte to get > hold of the PIC IRQ line configured by the BIOS. I'm using > SYS_INT_CONNECT macro to connect my ISR to this interrupt. My target > is pcPentium. > > #define SYS_INT_CONNECT(priv,rtn,arg,pResult) \ > { \ > IMPORT STATUS intConnect(); \ > *pResult = intConnect ((VOIDFUNCPTR*) INUM_TO_IVEC (INT_VEC_GET > (priv->irq)), \ > rtn, (int) arg); \ > } > > My isr goes like this, > void myisr (END_OBJ* dev) > { > struct private *priv; > unsigned char ack; > > int lockkey = intLock (); > > priv = get_private (dev); > > TRACE2 ("%s: interrupt status %x\n", get_name (dev), (int) > get_interrupt_value (dev)); > if ((ack = get_interrupt_value (dev)) != 0) > { > /* first ACK all the interrupts */ > set_interrupt_value (dev, ack); > . > . > . > } > intUnlock (lockkey); > } > > I'm calling SYS_INT_CONNECT in endStart for my driver, as, > SYS_INT_CONNECT (get_private (end), myisr, end, &result); > where end is END_OBJ*. > > The problem is that the isr is called again and again, inspite of my > acking the interrupts. The interrupt status register when read in the > isr shows no active interrupts (status valus is 0). > > I'm not able to get what could be the possible problem. Help me out. > Have i missed out some step? > > Thanks & Regards, > Sameer Hi, guy you should use pciIntConnect()to connect your ISR instead of intConnect(),because PCI IRQ is sharable,other IRQ maybe use the same IRQ number! good luck! --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Getting an unused fd Date: 23 Jun 2002 22:22:05 -0700 From: mohasin.zaki@wipro.com (Mohasin) Organization: http://groups.google.com/ Message-ID: References: <99630f8e.0206190605.21b1eb7f@posting.google.com> silvano.cirujano@gmx.net (scc) wrote in message news:<99630f8e.0206190605.21b1eb7f@posting.google.com>... > Does anybody could tell me which function should I use in order to get > an unused file descriptor? Hi, Generally open() or fopen(), tries to get an FD that is already free. When you run out of FDs, then the dosFS will give an error. Again when there is free FD, the dosFs gets an Free FD for you. In vxWorks there is #define NUM_DOSF_FILES whose default is 20. This specifies the max num of open files for a dosFs device. You can try changing this parameter (Note this is for dosFs 1.x, for dosFs 2.x this might be different..not sure). Also if you have dosFs 2.x installed, then you can call dosFsConfigShow() from the Shell to see the max num of FDs allowed and how many are available for use. Regards, MOhasin --------------------------- Newsgroups: comp.os.vxworks Subject: Re: out of environment space question Date: Mon, 24 Jun 2002 07:38:32 +0200 From: "Martin Raabe" Organization: 1&1 Internet AG Message-ID: References: <72c0062e.0206202202.181a9db2@posting.google.com> <72c0062e.0206231830.23324262@posting.google.com> Hello wangwz, No sorry. :-( Ciao - -- - -- Martin Raabe E: Martin.RaabeATNOSPAMBaSystem.de "wangwz" schrieb im Newsbeitrag news:72c0062e.0206231830.23324262@posting.google.com... > Hello Mattin, > Thans for your help. but it doesn't seem that it is casued by wrong > path of command.com. > If I delete the shell line in the config.sys, the > COMSPEC=c:\windows\command.com, and when I run make, it will display > "out of environment space", then I add a line in config.sys: > "SHELL=c:\windows\command.com /E:8192 /P" and run make again, it will > display as following: > > C:\Tornado\target\src>make CPU=ARMSA110 TOOL=gnu > C:\TORNADO\HOST\X86-WI~1\BIN\MAKE.EXE -C demo CPU=ARMSA110 TOOL=gnu > MAKE.EXE[1]: Entering directory `C:\Tornado\target\src\demo' > C:\TORNADO\HOST\X86-WI~1\BIN\MAKE.EXE -C color CPU=ARMSA110 TOOL=gnu > TGT_DIR=c:\ > tornado/target > MAKE.EXE[2]: Entering directory `C:\Tornado\target\src\demo\color' > MAKE.EXE[2]: Nothing to be done for `Default'. > MAKE.EXE[2]: Leaving directory `C:\Tornado\target\src\demo\color' > MAKE.EXE[1]: Leaving directory `C:\Tornado\target\src\demo' > C:\TORNADO\HOST\X86-WI~1\BIN\MAKE.EXE -C dhcp CPU=ARMSA110 TOOL=gnu > MAKE.EXE[1]: Entering directory `C:\Tornado\target\src\dhcp' > Invalid COMMAND.COM > Enter correct name of Command Interpreter (eg, C:\COMMAND.COM) > >> > > can you tell me how to solve it? > > Thanks. > --------------------------- Newsgroups: comp.os.vxworks Subject: Re: the different of vxwork_rom.hex and bootrom_ump.hex? Date: 24 Jun 2002 08:57:56 +0200 From: Reinhold Wirth Organization: WEB.DE Message-ID: <3d16c2f4$1@netnews.web.de> References: <238a6ea8.0206231730.73b98853@posting.google.com> Hi, dengjinsheng@sina.com (dragonheart) wrote: >when i writed BSP for powerpc, i met a question. i cannot make my >routine enter into C entry. the rominit.s have been verified with the >testing LED. but i cannot jump into C entry or i cannot verify i have >jump into c entry. i downloaded bootrom_ump.bin into my flash. should >i download the vxworks_rom.hex? >what is the major reason? It possible to call C-routines from rominit.s, but you have pay attention to: * a RAM has to exist (a SDRAM-contoller has to be initialised; ...) * the stack pointer (r1) has to be initialised * the vxworks libaries are not initialised; * do not use global data * You want to use LEDs. Do you use a chip select to select this LEDs? Is this CS already initialised? - -- __________________________________________________________ News suchen, lesen, schreiben mit http://newsgroups.web.de --------------------------- Newsgroups: comp.os.vxworks Subject: Re: How big can USER_RESERVED_MEM be? Date: Mon, 24 Jun 2002 09:19:06 +0200 From: "Michael Lawnick" Organization: Buergernetz Dillingen Message-ID: References: Reply-To: "Michael Lawnick" Sender: mlawnick@pd9524760.dip.t-dialin.net Hi Raymond, I 've cut the history ... > I'm trying to find out how much RAM space boot code requires. Based on > the MACRO calculation, ROM_COPY_SIZE is about 1MB. Can I safely assume > everything the boot code needs is accomodated in that 1MB after RAM_HI? Still: NO! > You bring up a point about vxWorks FTP download file, so it's loaded to the > space AFTER the boot image (i.e. at address space above RAM_HI + > ROM_COPY_SIZE)? I'm sure it's described in one of the VxWorks manual, but > it has been a while since I read the whole thing. I'm not sure whether this is explicitely documented, but you may find it out by looking into /romInit.s and all/bootInit.c Rom-context gets its heap from the memory above RAM_HI. From this heap all is allocated, you buffer for romData, net-buffers,... . As on FTP-boot your vxWorks-Image is copied to RAM before relocation, your ROM-image heap size must be able to hold this copy. > I'm only referring to my system configuration, given the physical memory > size, where RAM_HI is, and what ROM_COPY_SIZE is. The trick is, as you > pointed out, to find out where the rest of the world is, and what they > don't use. I'm sure my vxWorks and application would not need the last > MB of space. But I still need to check out the boot code. If you reserve the last MB in bootimage *and* vxWorks (don't forget reflashing!) this MB won't be touched (except for coding errors in your S/W). This may lead to a message, that your vxWorks can't be downloaded if the space above RAM_HI isn't capable to hold the copy of your FTP-image (I don't remember the exact error message but met it some weeks ago ;-). Regards, Michael --------------------------- Newsgroups: comp.os.vxworks Subject: Re: reloc overflow Date: Mon, 24 Jun 2002 08:15:39 +0000 (UTC) From: David Laight Organization: BT Openworld Message-ID: <3D16D4DB.9020304@spamm.me.l8s.co.uk> References: <3D169392.7070503@sina.com> Xin Zhen wrote: > Hi all, > When I compile our application in Tornado 2.0, i got the following > error messages: > > \\d\Tornado\host\x86-win32\i386-pc-mingw32\bin\ld.exe: partialImage.o: > reloc overflow: 0x11a10 > 0xffff > partialImage.o: final close failed: File truncated > make: *** [main.out] Error 0x1 > > Both for "VxSim" and "arm" platform. > > So what happened? This is a limitation of the coff object file format. It doesn't support more than 65535 relocations per object segment. You might be able to proceed by using the split-by-reloc option to ld. However the wrs tools that process the coff files may not handle multiple object segments properly. Also you may need to write an ldscript (definitely if you are including your code into the vxworks image). This issue always happened builting java and rtxwindows for vxworks 5.3.1 David --------------------------- End of New-News digest ********************** From vxwexplo-errs@csg.lbl.gov Mon Jun 24 08:34:26 2002 From: "Richard Dabney" Date: Mon Jun 24 08:34:28 PDT 2002 Subject: Re: GCC for PowerPC bug On 23 Jun 2002 at 4:12, the vxWorks Users Group Exploder wrote: > > Your best bet is to upgrade to Tornado 2.1, which uses a much newer > version of GCC (based on version 2.95.3) that has fewer bugs as well as > a better optimiser (and support for Altivec if you want it); just to > give you some idea of the difference, we wrote a list of all of the > benefits of 2.95.3 over 2.7.2 (to convince our management that we needed > to switch) and it was tens of pages long! We had problems with the optimizer (-O1 or -O2) generating incorrect code in 2.95.3 and went back to 2.7.2 This was the problem line where pstacktop is a pointer to a double: *pstacktop = *pstacktop == *(pstacktop+1); ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Richard Dabney SNS-4 LINAC Controls M/S H820 TA-53, Bldg 398 Rm 104 Los Alamos National Laboratory Los Alamos, NM 87545 USA 505-665-7860 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ From vxwexplo-errs@csg.lbl.gov Tue Jun 25 04:03:15 2002 From: Vxworks Exploder Date: Tue Jun 25 04:03:18 PDT 2002 Subject: comp.os.vxworks newsdigest Comp.Os.Vxworks Daily Digest Tue Jun 25 04:03:11 PDT 2002 Subject: SNMP Hooks Subject: Re: unload function without target shell Subject: Re: vxworks hex download (question) Subject: SBC8260 init process. Subject: Re: SBC8260 init process. Subject: Re: Telnet does not allow to login Subject: No Rx interrupt on every other character on serial line Subject: Help with Watchdog Timer Subject: Re: ISR getting called inspite of interrupt status being 0 Subject: device driver debugging Subject: Re: UML used with VxWorks? Subject: Re: No Rx interrupt on every other character on serial line Subject: Re: Help with Watchdog Timer Subject: Regarding I/O porting writing statements in VxWorks Subject: MMU in VxWorks Subject: Is any task switch hook function available in vxWorks? Subject: Interrupts over PCI Subject: Re: Is any task switch hook function available in vxWorks? Subject: Re: Interrupts over PCI Subject: Re: vxworks hex download (question) Subject: Re: Telnet does not allow to login Subject: help for booting vxworks plz,any one to reply me? Subject: Re: device driver debugging Subject: Re: Ethernet - Where to start Subject: Fast Ethernet Controller (FEC) problem report on MPC860T family Subject: A good RAMTEST with sources and documentation ------------------------------------------------------- Newsgroups: comp.os.vxworks Subject: SNMP Hooks Date: Mon, 24 Jun 2002 08:36:11 -0400 From: "RonnoBonno" Message-ID: I want to use a Pre-Set and Post-Set Hook in SNMP so I can save to Flash a value set via SNMP. I see how to register the Hooks via the snmpdInitFinish function, and I see that each hook gets a SNMP_PKT_T * as a parameter. In the hook I want to the OID and value to check to see if it is a leaf that I want to set and the value. How do I get the OID and value from the SNMP_PKT_T * parameter? It looks like I need to call snmpdGroupByGetprocAndInstance, but it isn't clear from the manual how to do this. Thanks Ron Naismith --------------------------- Newsgroups: comp.os.vxworks Subject: Re: unload function without target shell Date: Mon, 24 Jun 2002 16:12:06 +0200 From: "H.J.W. Gevers" Organization: Oce Technologies B.V. Message-ID: <3D1728B6.98DFD904@oce.nl> References: <3D0F30BB.9895834F@oce.nl> Johan Borkhuis wrote: > > "H.J.W. Gevers" wrote: > > > Hi, > > > > Is there somebody who has an answer to the following questions, > > because I I can't solve the problem? (I tried the Project facility.) > > > > Is it possible to configure the vxWorks with > > the unldLib functionality, but without the target shell? ( using > > T2.02) > > > > > > If not, is it possible to configure the target shell to the /null > > device? > > You could define the shell to use a non existing serial port (change > CONSOLE_TTY to a number >= NUM_TTY) . > This treat gives me 3 possible solutions. - The solution to change the CONSOLE_TTY works fine. But it is not possible to change the number outside the number available tty devices. I changed the CONSOL_TTY to 1, but com2 was disabled in the BIOS of my system. This results in not starting my application. ( the windshell showed only some vxworks tasks) After 2 day struggling, I got the solution and changed the bios. - The solution of including the unld-object seems not nice, so I didn't try this. - The option change the configAll.h file does not work in my case. Probably I missed some extra settings. Thank you for all the help, Greetings, Bart Gevers --------------------------- Newsgroups: comp.os.vxworks Subject: Re: vxworks hex download (question) Date: Mon, 24 Jun 2002 10:13:38 -0400 From: david lindauer Message-ID: <3D172911.B5051D81@notifier-is.net> References: LEE MYUNG SUK wrote: > I want to download vxworks.hex without ethernet(console download). > > > 1. how to download ? Do you have source about console download? or advice for me. > make a small serial protocol and write code on both ends to support it. We have done this but the code isn't at all portable and relies on proprietary network protocol. > > 2. vxworks.hex size is 2M. time is long. > baudrate is not changed to 115200 bps or 57400.( changed less than 38400) you may have to go into the driver source code and change it. Some of the UART drivers are hard-coded with a baud rate limit of 38400. I think the PPC driver was; not sure at the moment because I haven't used that in a long time. BTW make sure you rename your image back to vxworks after parsing it into a binary format, or it won't boot. David > > > I did below. > > if (arg >= 50 && arg <= 115200) > > #define CONSOLE_BAUD_RATE 115200 > > #define WDB_TTY_BAUD 115200 > > How to extend baudrate 115200 bps or 57600 bps? > > help me.. vxworker! --------------------------- Newsgroups: comp.os.vxworks Subject: SBC8260 init process. Date: Mon, 24 Jun 2002 17:47:34 +0200 From: "Danny Cohen" Organization: Unspecified Organization Message-ID: Hi all. I'm new at the buisness of VxWorks on SBC8260. So far i've succeed in: 1. booting the board 2. fetching VxWorks using TFTP and reach VxWorks prompt 3. download application using the tornado. My questions are: 1. How can i burn VxWorks image on the flash? 2. How do i make the Bootloader s/w jump to the image on flash instead of fetching it from the network? 3. Is it possible to modify bootloader s/w? please advice. - -- Regards. Cohen Danny. dannyc@harmonic.co.il Harmonic Lightwaves Tel: +972-4-6230150 ext 112 Mobile: +972-51-563413 --------------------------- Newsgroups: comp.os.vxworks Subject: Re: SBC8260 init process. Date: Mon, 24 Jun 2002 11:33:23 -0700 From: "Dan Gold" Organization: Mailgate.ORG Server - http://www.Mailgate.ORG Message-ID: References: Sender: gold@ensemble.com "Danny Cohen" wrote in message news:af7bh7$kko$1@news.att.net.il... > Hi all. > I'm new at the buisness of VxWorks on SBC8260. > > So far i've succeed in: > 1. booting the board > 2. fetching VxWorks using TFTP and reach VxWorks prompt > 3. download application using the tornado. > > My questions are: > 1. How can i burn VxWorks image on the flash? You look at your board, code, documentation etc... and find out what kind of flash you have, how it's organized, and what routines are available for burning flash. Generally in the target/config/your-board directory you should find some sort of file that contains routines for erasing/programming flash. You can either burn your vxWorks image into 'raw' flash, or you can put a file system (i.e. TFFS) on part of your flash and put the file in your flash that way. Usually it's your bootloader that burns code into flash. I.e. you TFTP down an image and burn it into flash before jumping to it. There are a myriad of ways/options to implement this... > 2. How do i make the Bootloader s/w jump to the image on flash instead of > fetching it from the network? You modify the bootloader s/w to copy the image from flash to ram (doing any inflation/uncompression, file processing if it's elf/coff/hex) and jump to the starting address. You can obtain the starting address from the image, or you can hardcode it in based on the final link line when building your image. How does the bootloader know to load a flash image instead of TFTP ? From looking at something in the vxWorks boot line that tells it to load from flash. I.e. I have a flash file system called /tffs0 on my boards. If the bootloader sees "/tffs0" for the boot file, it knows to load the file from flash instead of going to the network. > 3. Is it possible to modify bootloader s/w? I think you're going to have to :-) In fact, you'll probably modify the bootloader s/w first, just to put in new bootloader s/w that knows how to burn an image into flash and then copy it into RAM and jump to it. Thus your first task would be how to get a new bootloader into flash. Look at target/config/all/bootConfig.c to see how the booting mechanism works... hth, Dan Gold gold@ensemble.com --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Telnet does not allow to login Date: 24 Jun 2002 11:41:13 -0700 From: vkinger@hotmail.com (Kinger) Organization: http://groups.google.com/ Message-ID: References: I have used the supplied "vxencrypt", but it did not help. I had included the macros like security, loader, unloader, target shell, net symbol table, show routines in my project. I get the login incorrect message everytime I log into the vxworks. ggg+news@best.com (GGG) wrote in message news:... > The password needs to be specified encrypted. Use the supplied > "vxencrypt". See, VxWorks Programmer's Guide, 9.2.5. Not sure from your > description if that's the problem your facing, but seemed like a first > guess. > > GGG > > In article , > Kinger wrote: > >Hi All, > >I have included the telnet task in my project, I am able to get to the > >VxWorks login prompt,but it does not allow me to login. I have used > >the same username and password that I have defined in the > >"configAll.h" file( not the encrypted one) the "Properties: component > >'RLOGIN/TELNET password protection'" window has the right password in > >it. On the debug port on my box I can see the shell prompt, but it > >does not accept any command. Looks like I am able to telnet to the box > >but somehow the shell prompt does not accept any command. > >Can someone help?? > >Kinger. --------------------------- Newsgroups: comp.os.vxworks Subject: No Rx interrupt on every other character on serial line Date: Mon, 24 Jun 2002 14:43:38 -0400 From: "Harjinder Chayra" Organization: Storm Internet Services Message-ID: Sender: terayon@gw-terayon.storm.ca Hi All, I am bringing up a BSP on exisiting working HW and I am programming the UART in the same way as with the previous OS; but when the system boots up I have to type each character of a command twice!, every other character seems to get "lost". In my ISR I toggle an LED when I receive character, I find that when the ISR does NOT pass the character on to vxWorks then I receive each character without having to press the same key twice BUT when I pass the character on to vxWorks I do! Any ideas as what might ber going on? Thanks Harjinder --------------------------- Newsgroups: comp.os.vxworks Subject: Help with Watchdog Timer Date: 24 Jun 2002 13:37:23 -0700 From: colintelfer@hotmail.com (CT) Organization: http://groups.google.com/ Message-ID: <68b528d4.0206241237.6d2cc8dc@posting.google.com> Hi, I am running vxWorks on a PPC860 target. Once in a while I get a Software Emulation Exception (0x1000). I customized the exception handler to dump as much information as I could get at the time of the exception, including a stack trace. But it looks like the stack trace is corrupted after 'windTickAnnouce' is called. I am suspicious of the watchdog timer which I am using to call a polling function. The processing done in the callback has increased. What are the vxWorks events that take place for watchdog timer callback, does windTickAnnounce call the callback function? Is there a chance of stack corruption when using the watchdog timer to process large amounts of data in a polling function? Any help would be greatly appreciated. Thanks, Colin --------------------------- Newsgroups: comp.os.vxworks Subject: Re: ISR getting called inspite of interrupt status being 0 Date: 24 Jun 2002 14:11:19 -0700 From: manishjagtap@hotmail.com (Manish Jagtap) Organization: http://groups.google.com/ Message-ID: References: <2df53411.0206230219.5467becf@posting.google.com> seasoblue2000@yahoo.com.cn (seasoblue) wrote in message news:... > sameer_manuja@yahoo.com (Sameer) wrote in message news:<2df53411.0206230219.5467becf@posting.google.com>... > > Hi, > > > > I'm writing driver for a NIC. I use the call pciConfigInByte to get > > hold of the PIC IRQ line configured by the BIOS. I'm using > > SYS_INT_CONNECT macro to connect my ISR to this interrupt. My target > > is pcPentium. > > > > #define SYS_INT_CONNECT(priv,rtn,arg,pResult) \ > > { \ > > IMPORT STATUS intConnect(); \ > > *pResult = intConnect ((VOIDFUNCPTR*) INUM_TO_IVEC (INT_VEC_GET > > (priv->irq)), \ > > rtn, (int) arg); \ > > } > > > > My isr goes like this, > > void myisr (END_OBJ* dev) > > { > > struct private *priv; > > unsigned char ack; > > > > int lockkey = intLock (); > > > > priv = get_private (dev); > > > > TRACE2 ("%s: interrupt status %x\n", get_name (dev), (int) > > get_interrupt_value (dev)); > > if ((ack = get_interrupt_value (dev)) != 0) > > { > > /* first ACK all the interrupts */ > > set_interrupt_value (dev, ack); > > . > > . > > . > > } > > intUnlock (lockkey); > > } > > > > I'm calling SYS_INT_CONNECT in endStart for my driver, as, > > SYS_INT_CONNECT (get_private (end), myisr, end, &result); > > where end is END_OBJ*. > > > > The problem is that the isr is called again and again, inspite of my > > acking the interrupts. The interrupt status register when read in the > > isr shows no active interrupts (status valus is 0). > > > > I'm not able to get what could be the possible problem. Help me out. > > Have i missed out some step? > > > > Thanks & Regards, > > Sameer > > Hi, guy > you should use pciIntConnect()to connect your ISR instead of > intConnect(),because PCI IRQ is sharable,other IRQ maybe use the same > IRQ number! > good luck! Need to use Interrupt chaining. In ur ISR check whether the interrupt is caused by ur NIC. If not immediately return. Manish --------------------------- Newsgroups: comp.os.vxworks Subject: device driver debugging Date: 24 Jun 2002 14:15:19 -0700 From: manishjagtap@hotmail.com (Manish Jagtap) Organization: http://groups.google.com/ Message-ID: All, how to debug END ethernet driver? Thanks, Manish --------------------------- Newsgroups: comp.os.vxworks Subject: Re: UML used with VxWorks? Date: Mon, 24 Jun 2002 23:47:08 +0200 From: "Werner Schiendl" Message-ID: <3d17931f$1@brateggebdc5.br-automation.co.at> References: Hi, Rational Software (www.rational.com) has a product 'Rational Rose Realtime' which should allow you to do what you want. I have never used or evaluated that software 'til now. It claims to have VxWorks integration to some extent. At least for the Windows Version you can download a free trial version (but it is a BIG download). I don't know if you can download an evaluation copy of the Realtime version. Apart from that, I found the books 'UML Distilled' and 'Realtime UML' quite nice introductory material (although, as mentioned, I do not yet use UML tools for VxWorks designs). Both books are from Addison Wesley Longman. best regards Werner "zhaoyandong" wrote in message news:aefbsg$4fc$1@mail.cn99.com... > I'm developing a system using VxWorks. > > I want to design it using UML. But I don't have experience. > > Can anyone give me some suggestion or tutorial or examples about it? > > Thank you, any suggestion would be greatly appreciated. > > > > > > > > --------------------------- Newsgroups: comp.os.vxworks Subject: Re: No Rx interrupt on every other character on serial line Date: Mon, 24 Jun 2002 19:38:17 -0400 From: joe durusau Organization: WEBUSENET.com Message-ID: <3D17AD69.89F3D54F@bellsouth.net> References: Harjinder Chayra wrote: > Hi All, > I am bringing up a BSP on exisiting working HW and I am programming > the UART in the same way as with the previous OS; but when the system boots > up I have to type each character of a command twice!, every other character > seems to get "lost". > > In my ISR I toggle an LED when I receive character, I find that when the ISR > does NOT pass the character on to vxWorks then I receive each character > without having to press the same key twice BUT when I pass the character on > to vxWorks I do! > > Any ideas as what might ber going on? > > Thanks > Harjinder This is only a guess, but it sounds like your ISR is taking too long to do whatever it does. (Like the 2nd char arrives before the ISR has reset the int from the serial port). Speaking only for myself, Joe Durusau --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Help with Watchdog Timer Date: Mon, 24 Jun 2002 18:08:03 -0700 From: "Michael R. Kesti" Organization: MK Associates Message-ID: <3D17C273.230BF95F@gv.net> References: <68b528d4.0206241237.6d2cc8dc@posting.google.com> Reply-To: mkesti@gv.net CT wrote: >Hi, > > I am running vxWorks on a PPC860 target. Once in a while I get a >Software Emulation Exception (0x1000). I customized the exception >handler to dump as much information as I could get at the time of the >exception, including a stack trace. But it looks like the stack trace >is corrupted after 'windTickAnnouce' is called. > > I am suspicious of the watchdog timer which I am using to call a >polling function. The processing done in the callback has increased. > > What are the vxWorks events that take place for watchdog timer >callback, does windTickAnnounce call the callback function? I forget who calls whom, but suffice it to say that the callback function is called in interrupt context and there are things you may not do in them. > Is there a >chance of stack corruption when using the watchdog timer to process >large amounts of data in a polling function? That depends on a great many things, such as your sysClkRate and how frequently you're "polling." > Any help would be greatly appreciated. Sure. And hey, you are checking the return status of all the wdLib calls, right? - -- ======================================================================== Michael Kesti | "And like, one and one don't make | two, one and one make one." mkesti@gv.net | - The Who, Bargain --------------------------- Newsgroups: comp.os.vxworks Subject: Regarding I/O porting writing statements in VxWorks Date: 24 Jun 2002 21:24:57 -0700 From: rajesha_n@hotmail.com (Rajesh) Organization: http://groups.google.com/ Message-ID: Dear All, We are working on GPIB card in VxWorks. The vendor has given ansi "C" compatible functions, Since he is using some I/O, interrupt and signal routines "inp(), outp(), igDisInt() and igSignal()" to read and write to I/O port etc.He mentioned that this rountines must be provided by the application program. since they are used to abstract the iGPIB device software from the existing hardware. Please let us know which are the equivalent rountines in VxWorks for the above mentioned routine( the equivalent routines in Turbo C under DOS is inportb for inp()and outportb for outb() ). The functionality of the rountines is as follows. outb( ioAddr, oByte)---->Writes a byte at the given address. inb(ioAddr)----->Reads a byte from the given address. igDisInt()->To disable interrupt. igSignal(sigId,hSig)-->The signal handler to notify the application of an asychrounous enents. The parameter sigld will hold and identification of the signal type and paremete hSig depends on sigId. Looking forward for the reply. Thanks and regards Rajesh Bangalore. rajesha_n@hotmail.com --------------------------- Newsgroups: comp.os.vxworks Subject: MMU in VxWorks Date: 24 Jun 2002 22:24:34 -0700 From: bharath.c@smartm.com (Bharath) Organization: http://groups.google.com/ Message-ID: <354f4c04.0206242124.7178cc77@posting.google.com> VxWorkers, For PowerPC architecture, does the VxWorks kernel turn OFF the MMU (bits MSR[IR] and MSR[DR]) at any time? For an application that I am designing, I am assuming that MMU is never turned off by VxWorks (except during an exception). On boot (after power on), MMU is OFF and is turned ON somewhere in usrRoot(). After that I am assuming that MMU is always ON (except when an exception is taken). Is this a valid assumption? When an exception is taken, MMU is turned off (by the CPU) and turned ON by the OS in the exception handler. Does anyone here have any idea if VxWorks kernel is turning OFF MMU for any reason? If so, what is the reason for turning off MMU? Thank you, Bharath --------------------------- Newsgroups: comp.os.vxworks Subject: Is any task switch hook function available in vxWorks? Date: Mon, 24 Jun 2002 22:28:23 -0700 From: "Liang Yang" Organization: RTS-LAB Message-ID: Reply-To: "Liang Yang" Hi, Does vxWorks provide some kind of hook functions for task switching? So these hook function will be always called when task switching happens? Thanks. Liang --------------------------- Newsgroups: comp.os.vxworks Subject: Interrupts over PCI Date: 24 Jun 2002 23:46:02 -0700 From: HErkanParlar@gmx.de (Erkan) Organization: http://groups.google.com/ Message-ID: <501c3d1e.0206242246.7d41788d@posting.google.com> Hi, do somebody know how to handle PCI-Interrupts ? I connect my Interrupt-Handler-Function with a PCI-Interrupt which interruptline is 0xA. pciConfiglnByte(m_pciBus,m_pciDevice,m_pciFunction, PCI_CFG_DEV_INT_LINE,&int_line); pciIntConnect((VOIDFUNCPTR*)INUM_TO_IVEC(int_line), (VOIDFUNCPTR)&InterruptHandler,(int)this); sysIntEnablePIC(int_line); If i do it that way i get the Errormessage : "Uninitialized interrupt ! Vector number 42 (0-255)." This message is very disheveling, because i don't use any offset value ??? If i use the offset 0x20 i don't get this error message but it doesn't work also! The second problem, which indicates a misoperation is : If i debug the cursor stands firm on the sysIntEnable function and nothing happens. And i can't debug further. I saw in a driver the same calling order with a offset value of 0x20. I tried it also in that way but also i got no better result. Do i have to call functions which i forgotten ? Or do i have to use a fixed offset value like 0x20 ? I have no more ideas what to do because there is also not enough info in the VxWorks literary! Sincerely yours Erkan --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Is any task switch hook function available in vxWorks? Date: Tue, 25 Jun 2002 09:46:24 +0200 From: Michael Fischer Organization: Swisscom IP+ (post doesn't reflect views of Swisscom) Message-ID: <3D181FD0.1050301@acterna.com> References: Liang Yang wrote: > Hi, > > Does vxWorks provide some kind of hook functions for > task switching? So these hook function will be always > called when task switching happens? > > Thanks. > > Liang > > > _taskSwitchHookAdd _taskSwitchHookDelete _taskSwitchHookShow will do the job. Michael --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Interrupts over PCI Date: Tue, 25 Jun 2002 10:45:13 +0200 From: WiMos Organization: disorganized Message-ID: <3D182D99.276F2A25@nospam.com> References: <501c3d1e.0206242246.7d41788d@posting.google.com> Erkan, As you already suspected yourself, you have to add 0x20 to the first parameter of the pciIntConnect call. To be precise, The value should be INT_NUM_IRQ0 defined in config.h of your BSP (which evaluates in my BSP to 0x20). The reason why you got an error message: you should have added 0x20 to 0xA in the first parameter of pciIntConnect, which results in the number 42. So, why doesn't that work also? Presuming that &InterruptHandler evaluates to the same as InterruptHandler (the latter already is a pointer to a function), the only cause of failure could be the content of InterruptHandler. I presume you know that a lot of OS calls can't be used in interrupt routines? Perhaps you could start with an InterruptHandler containing only a LogMsg call? sysIntEnable() perhaps momentarily disables interrupts. If you single step through it, the debugger interrupts can't get through.. Hope this helps.... Regards, Wim Erkan wrote: > Hi, > > do somebody know how to handle PCI-Interrupts ? > I connect my Interrupt-Handler-Function with a PCI-Interrupt which > interruptline is 0xA. > > pciConfiglnByte(m_pciBus,m_pciDevice,m_pciFunction, > PCI_CFG_DEV_INT_LINE,&int_line); > > pciIntConnect((VOIDFUNCPTR*)INUM_TO_IVEC(int_line), > (VOIDFUNCPTR)&InterruptHandler,(int)this); > > sysIntEnablePIC(int_line); > > If i do it that way i get the Errormessage : > "Uninitialized interrupt ! Vector number 42 (0-255)." > > This message is very disheveling, because i don't use any offset value > ??? > If i use the offset 0x20 i don't get this error message but it doesn't > work also! > > The second problem, which indicates a misoperation is : > If i debug the cursor stands firm on the sysIntEnable function and > nothing happens. And i can't debug further. > > I saw in a driver the same calling order with a offset value of 0x20. > I tried it also in that way but also i got no better result. > > Do i have to call functions which i forgotten ? > Or do i have to use a fixed offset value like 0x20 ? > > I have no more ideas what to do because there is also not enough info > in the VxWorks literary! > > Sincerely yours > > Erkan --------------------------- Newsgroups: comp.os.vxworks Subject: Re: vxworks hex download (question) Date: 25 Jun 2002 08:46:17 GMT From: Johan Borkhuis Organization: Agere Systems Message-ID: References: <3D172911.B5051D81@notifier-is.net> david lindauer wrote: >> 1. how to download ? Do you have source about console download? or >> advice for me. > make a small serial protocol and write code on both ends to support > it. We have done this but the code isn't at all portable and relies > on proprietary network protocol. One thing you could do here is to use the slip protocol or PPP protocol. These are both using the serial line. If you include one of these in your bootrom you will be able to use the serial line to download. Groeten, Johan - -- o o o o o o o . . . _____________________________ o _____ || Johan Borkhuis | .][__n_n_|DD[ ====_____ | borkhuis@agere.com | >(________|__|_[_________]_|__________________________| _/oo OOOOO oo` ooo ooo 'o!o!o o!o!o` === VxWorks FAQ: http://www.xs4all.nl/~borkhuis/vxworks/vxworks.html === --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Telnet does not allow to login Date: Tue, 25 Jun 2002 08:28:21 +0200 From: "Michael Lawnick" Organization: Buergernetz Dillingen Message-ID: References: Reply-To: "Michael Lawnick" Sender: mlawnick@p5088ecf0.dip.t-dialin.net Hi, try this pair if you have T2.0.2 or later: LOGIN_PASSWORD "RcQbRbzRyc" LOGIN_USER_NAME "target" Login as target, password Don't forget the quotation marks at the defines but omit them on login. Define it in Workspace, the pair in configAll is relevant only on Workspace creation and on building from command line. Take care that your vxencrypt is the same patch level like your loginLib, as some time ago there was a change. HTH Michael "Kinger" schrieb im Newsbeitrag news:f57b3351.0206211105.3111a7df@posting.google.com... > Hi All, > I have included the telnet task in my project, I am able to get to the > VxWorks login prompt,but it does not allow me to login. I have used > the same username and password that I have defined in the > "configAll.h" file( not the encrypted one) the "Properties: component > 'RLOGIN/TELNET password protection'" window has the right password in > it. On the debug port on my box I can see the shell prompt, but it > does not accept any command. Looks like I am able to telnet to the box > but somehow the shell prompt does not accept any command. > Can someone help?? > Kinger. --------------------------- Newsgroups: comp.os.vxworks Subject: help for booting vxworks plz,any one to reply me? Date: 25 Jun 2002 02:25:49 -0700 From: vxnerd@rediffmail.com (subbarayan) Organization: http://groups.google.com/ Message-ID: hi, I am a nerd vxworks programmer getting started with using it.I am having tornado1.0 version bootable target version.Now I am assigned a job of writing device drivers for pci cards from vxworks.But i am unable to do the target configuration (Floppy based bootable target) .Becos the target server hangs and shuts down automatically when i try to launch my target.Can any one tell me what are the step by step proceedure to be followed to make a successful bootable target?I have followed the ones in vxworks and tornado manual but they r of no use to me.I don't know where the error is and don't know how to proceed?Any one with a solution can contact me at either vxnerd@rediffmail.com or reply here itself in this forum.I am expecting some step by step proceedure including the menus to be accessed to configure a target becos i am new in this environment and facing the problem in starting itself.Advanced thanks to the person replying me.I have posted this question various number of times.but no one turned up.Is it becos tornado1.0 is outdated or becos no one knows abt it?or its really difficult to use it?and very lill number of users use it? I am expecting the reply atleast this time.windriver manuals are of no help to me.I am really greatful to the person replying in future and thankhim to my life time. --------------------------- Newsgroups: comp.os.vxworks Subject: Re: device driver debugging Date: 25 Jun 2002 02:55:45 -0700 From: ddleiyu@hotmail.com (Wilson Wu) Organization: http://groups.google.com/ Message-ID: <47f39a83.0206250155.5a1a7869@posting.google.com> References: Hi Manish, I think you d better have a hardware emluator such as VisionICE or VisionPrope. Or,move your driver source code to your application and debug it,but you know,some driver is breakpoint sensitive for its accesses to hardware.SO,if you have no hard emluator,you can use board built-in Leds to show the running status of driver only. Wilson manishjagtap@hotmail.com (Manish Jagtap) wrote in message news:... > All, > > how to debug END ethernet driver? > > Thanks, > Manish --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Ethernet - Where to start Date: Tue, 25 Jun 2002 11:30:21 +0100 From: Paul Caswell Organization: Land & Sea Systems Message-ID: <3D18463D.12401E99@baesystems.com> References: <3D12E659.8DBF8F4E@baesystems.com> Hi Dan, Firstly, thanks for the help. I've done as you suggested (i think - see below) but it still wont work. Here's the configNet.h content: /* this is the default load function for our END */ #define CPM_LOAD_FUNC motCpmEndLoad /* This is the default initialization string */ #define CPM_LOAD_STRING "0:01130000:0x3e:1:NULL:NULL:0:100:NONE" IMPORT END_OBJ* CPM_LOAD_FUNC (char *, void*); /* max number of SENS ipAttachments we can have */ #ifndef IP_MAX_UNITS #define IP_MAX_UNITS (NELEMENTS (endDevTbl) - 1) #endif END_TBL_ENTRY endDevTbl [] = { { 0, CPM_LOAD_FUNC, CPM_LOAD_STRING, NULL, FALSE }, { 0, END_TBL_END, 0, NULL }, }; Additionally in sysLib.c I've implemented the following: void sysCpmEnetDisable(int unit) {....} STATUS sysCpmEnetEnable(int unit) {....} STATUS sysCpmEnetAddrGet(int unit, UINT8* addr) {....} The BSP will compile and run but the call to muxDevLoad(...) in usrEndLibInit(...) fails with a NULL return. Sadly this function is in a library and so I can't debug. Any ideas as to what might be going wrong ?? Thanks again Paul --------------------------- Newsgroups: comp.os.vxworks Subject: Fast Ethernet Controller (FEC) problem report on MPC860T family Date: Tue, 25 Jun 2002 13:19:51 +0300 From: "Martin Roth" Organization: Motorola Message-ID: I started testing our new board based on MPC855T 48MHz processor. The FEC port was programmed to 100 Mbps. When pinging the FEC port I started experiencing "Transmit underrun" errors. I collected the statistics by activating the motFecErrorShow() from the target shell. The problem occurred when I was continuously pinging the board with large (30000 bytes) packets. The command from NT: ping 145.9.199.237 -l 30000 -t The problem did not occur on a standard ADS Motorola board. We suspected that our board has hardware problems, but after a weeks of investigation my conclusion that there is a problem with the FEC driver or with the upper software layer. The problem description: The upper layers call to motFecSend() with an M_BLK data structure that may consist of many (8-10) successive clusters with zero size. For each cluster a separate descriptor is used. Reading 8-10 empty (void) descriptors (8 bytes each) and analyzing them may take more than 5 microseconds. The Ethernet transmit buffer length is 64 bytes, which is ~ 5 microseconds transmission on 100 Mbps media. When we have successive descriptors with "zero length data", the transmit buffer is emptied before the descriptors a read and this is the reason for the transmit underrun error. The problem did not occur on ADS, because it works on 66 or 66 MHz and our board uses 48 MHz clock. I have patched the motfecend.c and the problem disappeared. Martin Roth Motorola Communications Israel --------------------------- Newsgroups: comp.os.vxworks Subject: A good RAMTEST with sources and documentation Date: Tue, 25 Jun 2002 13:26:49 +0300 From: "Martin Roth" Organization: Motorola Message-ID: If somebody is looking for a good RAM test surce code and documentation go to http://www.netrino.com/Articles/MemoryTesting/ Martin Roth Motorol Communicatons, Israel --------------------------- End of New-News digest ********************** From vxwexplo-errs@csg.lbl.gov Tue Jun 25 06:47:26 2002 From: "Arun Kumar M.P" Date: Tue Jun 25 06:47:28 PDT 2002 Subject: serial driver hi every body We are doing an IP phone development based on Texas C5472 (orion)processor which has an ARM7TDMI core. It has two UART channels one is the UART_MODEM and the other is UART_IRDA which also can be configured as a normal UART with the limitation that it s upports only Software flow control and we have done it that way. We do the initialization of both these channels using the Sio initialization procedure for VxWorks. The first UART, that is UART_MODEM is working fine. But we have some problem with the second UART (UART_IRDA) in transmitting data (we are yet to check receiver side) Please go through the piece of code shown below: char *buf="abcdefgh"; int out, buf_size; while (UART_SSR & 01); UART_THR = 'A'; out=write( consoleFd,buf,strlen(buf)); out=write( modemFd,buf,strlen(buf)); The initialization code is in the VxWorks driver and we are executing the code shown above from Tornado (2.0). UART_SSR is checked to verify whether the UART is ready for transmission and UART_THR is the Transmit Holding Register. This much of the code is working fine and we observed that the character 'A' is displayed in the Hyperterminal window configured for this channel. consoleFd is the handle for the first UART channel (UART_MODEM). Please do not confuse with these names because we are using the first channel output as a console for debugging our application and second one we are planninf to use with a modem. modemFd is the handle for the second UART, the UART_IRDA. We have actually configured two hyperterminals, one for each UART channels. We observed that the characters "abcdefgh" is displayed on the hyperterminal connected to UART_MODEM ( consolFd ) while that line is executed. But nothing is displ ayed while executing the corresponding line for UART_IRDA ( modemFd ). The return value of the function gives 8, the number of characters written, which means the handle is valid and the write funtion is successfull. But at the same time, as i said earlier, when we manually write to the THR the character 'A' is displayed. can any body please tell us what could be wrong in our code or in the driver ? Can it be because of a callback function problem ? Do we need to install a callback function ? If we have to install what is the procedure for the same ? Pls help!!!!!!!!!!!!! Arun Kumar From vxwexplo-errs@csg.lbl.gov Wed Jun 26 04:03:17 2002 From: Vxworks Exploder Date: Wed Jun 26 04:03:19 PDT 2002 Subject: comp.os.vxworks newsdigest Comp.Os.Vxworks Daily Digest Wed Jun 26 04:03:13 PDT 2002 Subject: inportb( ) and outportb( ) equivalent statments in VxWorks to do I/O operation on H/W Subject: Re: DISK_NOT_PRESENT error with DOSFS2 Subject: Re: DISK_NOT_PRESENT error with DOSFS2 Subject: Re: Help with Watchdog Timer Subject: File descriptors managing Subject: ANN: PragmaDev Real Time Developer Studio Subject: "select" misbehaving? Subject: Ram-Disk on VxWorks Subject: lock daemon not responding Subject: Re: Ram-Disk on VxWorks Subject: Ethernet sniffer or RAW sockets?? Subject: Re: File descriptors managing Subject: Re: Ram-Disk on VxWorks Subject: Re: Ethernet - Where to start Subject: Re: Bootable c++ application with templates Subject: Re: inportb( ) and outportb( ) equivalent statments in VxWorks to do I/O operation on H/W Subject: Re: Regarding I/O porting writing statements in VxWorks Subject: Re: Tornado make fails to parse /bin/sh commands but cygwin and linux make do it Subject: Passing -D strings to GCC? Subject: relocating bootroms Subject: Re: UML used with VxWorks? Subject: Re: Ethernet - Where to start Subject: Need reccommendations for good JTAG ICE for MIPS cpu Subject: How to boot over ppp? Subject: driver for DAVICOM 9102A Subject: How can I get the memory information of my target board with vxworks OS? Subject: Using C++ in Embedded Systems in Technical Report on C++ Performace (DRAFT) Subject: bootpParamsGet Subject: Re: Ram-Disk on VxWorks Subject: Re: loading an application image from flash Subject: Re: How can I get the memory information of my target board with vxworks OS? Subject: Re: UML used with VxWorks? Subject: Re: Ethernet - Where to start Subject: Re: Ethernet sniffer or RAW sockets?? ------------------------------------------------------- Newsgroups: comp.os.vxworks Subject: inportb( ) and outportb( ) equivalent statments in VxWorks to do I/O operation on H/W Date: 25 Jun 2002 05:33:02 -0700 From: rajesha_n@hotmail.com (Rajesh) Organization: http://groups.google.com/ Message-ID: Dear All, I'm working on GPIB card in VxWorks. The vendor has given ansi "C" compatible functions, Since he is using some I/O, interrupt and signal routines "inp(), outp(), igDisInt() and igSignal()" to read and write to I/O port etc.He mentioned that this rountines must be provided by the application program. since they are used to abstract the iGPIB device software from the existing hardware. Please let us know which are the equivalent rountines in VxWorks for the above mentioned routine( the equivalent routines in Turbo C under DOS is inportb for inp()and outportb for outb() ). The functionality of the rountines is as follows. outb( ioAddr, oByte)---->Writes a byte at the given address. inb(ioAddr)----->Reads a byte from the given address. igDisInt()->To disable interrupt. igSignal(sigId,hSig)-->The signal handler to notify the application of an asychrounous enents. The parameter sigld will hold and identification of the signal type and paremete hSig depends on sigId. Looking forward for the reply. Thanks and regards Rajesh Bangalore. rajesha_n@hotmail.com --------------------------- Newsgroups: comp.os.vxworks Subject: Re: DISK_NOT_PRESENT error with DOSFS2 Date: 25 Jun 2002 06:28:01 -0700 From: dcooke@orthstar.com (Dan Cooke) Organization: http://groups.google.com/ Message-ID: <4e264d23.0206250528.77dd155d@posting.google.com> References: <4e264d23.0206180551.1a4f8a0c@posting.google.com> "Leonid Rosenboim" wrote in message news:... > Dan, > > DISK_NOT_PRESENT is the result of DosFs detection of disk removal. > A cause for disk removal can be 1) unexpected change of > content of block 0, or 2) a command error from block driver, > which could not be recovered. > Of course this could be a bug in DosFs2 that has not been patched yet. > > When DISK_NOT_PRESENT appears, all the current file descriptors > become invalid, and need to be closed, then the files can be opened, > and on the first call to open, DosFs2 will mount the disk. > > There should be a way to get more dtail about this event, > e.g. are there any logMsg at the time of this failure? Even with the fix from TSR 281243/SPR 78766 that Michael mentioned in his post, I am still getting the DISK_NOT_PRESENT error. There are no messages from logMsg at the point of this error as well. One question though. I added the cbioLib.c file my local WRS rep. provided me with to my project (using the project facility). Is it possible that the old cbioLib.o from the power pc gnu library is still being used? Dan --------------------------- Newsgroups: comp.os.vxworks Subject: Re: DISK_NOT_PRESENT error with DOSFS2 Date: Tue, 25 Jun 2002 16:03:59 +0200 From: "Michael Lawnick" Organization: Buergernetz Dillingen Message-ID: References: <4e264d23.0206180551.1a4f8a0c@posting.google.com> <4e264d23.0206250528.77dd155d@posting.google.com> Reply-To: "Michael Lawnick" Sender: mlawnick@p5088ecf0.dip.t-dialin.net Hi Dan, for us the patch worked only after replacing the original in the archive. Use ar -r on command line to do the job. Don't forget to make a backup of the archive before ;-) Michael "Dan Cooke" schrieb im Newsbeitrag news:4e264d23.0206250528.77dd155d@posting.google.com... > "Leonid Rosenboim" wrote in message news:... > > Dan, > > > > DISK_NOT_PRESENT is the result of DosFs detection of disk removal. > > A cause for disk removal can be 1) unexpected change of > > content of block 0, or 2) a command error from block driver, > > which could not be recovered. > > Of course this could be a bug in DosFs2 that has not been patched yet. > > > > When DISK_NOT_PRESENT appears, all the current file descriptors > > become invalid, and need to be closed, then the files can be opened, > > and on the first call to open, DosFs2 will mount the disk. > > > > There should be a way to get more dtail about this event, > > e.g. are there any logMsg at the time of this failure? > > Even with the fix from TSR 281243/SPR 78766 that Michael mentioned in > his post, I am still getting the DISK_NOT_PRESENT error. There are no > messages from logMsg at the point of this error as well. > > One question though. I added the cbioLib.c file my local WRS rep. provided > me with to my project (using the project facility). Is it possible that > the old cbioLib.o from the power pc gnu library is still being used? > > Dan --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Help with Watchdog Timer Date: 25 Jun 2002 07:14:42 -0700 From: colintelfer@hotmail.com (CT) Organization: http://groups.google.com/ Message-ID: <68b528d4.0206250614.6c1651cc@posting.google.com> References: <68b528d4.0206241237.6d2cc8dc@posting.google.com> <3D17C273.230BF95F@gv.net> "Michael R. Kesti" wrote in message news:<3D17C273.230BF95F@gv.net>... > CT wrote: > > >Hi, > > > > I am running vxWorks on a PPC860 target. Once in a while I get a > >Software Emulation Exception (0x1000). I customized the exception > >handler to dump as much information as I could get at the time of the > >exception, including a stack trace. But it looks like the stack trace > >is corrupted after 'windTickAnnouce' is called. > > > > I am suspicious of the watchdog timer which I am using to call a > >polling function. The processing done in the callback has increased. > > > > What are the vxWorks events that take place for watchdog timer > >callback, does windTickAnnounce call the callback function? > > I forget who calls whom, but suffice it to say that the callback function > is called in interrupt context and there are things you may not do in them. > > > Is there a > >chance of stack corruption when using the watchdog timer to process > >large amounts of data in a polling function? > > That depends on a great many things, such as your sysClkRate and how > frequently you're "polling." > > > Any help would be greatly appreciated. > > Sure. And hey, you are checking the return status of all the wdLib > calls, right? My clock rate is 50Mhz, my decrementer is set to this frequency. I set my watchdog to timeout in 40ms. In the callback I reset the watchdog for the next 40ms. Every 80ms (every 2nd timeout) I do my processing. I check the return status of all wdLib without problems. Becuase I have a stack corruption problem I am not sure of how accurate the debug stack trace is, but here are the events which lead up to the exception: vxTaskEntry netTask semTake semBTake reschedule workQDoWork windTickAnnounce **corrupted** (points in area of valid callback code) **Program counter = garbage** exception I am wondering what can trigger the stack corruption. I understand that having lots of processing inside the call back can be dangerous but what exactly about this can cause stack corruption? I read something about deferred watchdog work could this be a problem? Thanks, Colin --------------------------- Newsgroups: comp.os.vxworks Subject: File descriptors managing Date: 25 Jun 2002 07:22:17 -0700 From: silvano.cirujano@gmx.net (scc) Organization: http://groups.google.com/ Message-ID: <99630f8e.0206250622.3a782d9f@posting.google.com> I'm trying to port a Linux based file system to VxWorks. It's supposed that the user can add his own file system to VxWorks, so that should be possible using the "VxWorks Programmer's Guide" of the Tornado online manuals. But it's much more difficult as supposed: I've read that file descriptors (fd) have a limit in VxWorks and that can be only controlled if some system functions are used to manage the file descriptors table. Nevertheless, I haven't found these functions. But when the Open I/O function is implemented, only the name of the file is used as parameter. My question is the following: could I use my own file descriptors table (for example, an adaptation of the implementation of the VFS of Linux)? or I should use (I don't know how) the fd table already implemented in VxWorks? Thank you very much in advance, Silvano --------------------------- Newsgroups: comp.os.vxworks Subject: ANN: PragmaDev Real Time Developer Studio Date: Tue, 25 Jun 2002 16:48:21 +0200 From: "Emmanuel Gaudin" Organization: PragmaDev Message-ID: Reply-To: "Emmanuel Gaudin" Have you heard about PragmaDev Real Time Developer Studio ? It is the first commercial off the shelf tool based on SDL-RT graphical language to develop real time software. Real Time Developer Studio targets all development teams working with a Real Time Operating System. It is based on graphical representations of traditional concepts used in real time domain without leaving behind legacy code and years of experience. Its pragmatic approach and low price make it a good candidate to be widely spread in a market where 90% of the developments use no graphical tools. Real Time Developer Studio generates full application code out of SDL-RT design embedding Wind River VxWorks primitives as a default RTOS. Wind River debugging environment is used in the background allowing graphical debugging and tracing. Real Time Developer Studio uses floating licenses that can be distributed over a network and runs on Windows, Solaris, and Linux. More info on: http://www.pragmadev.com http://www.sdl-rt.org --------------------------- Newsgroups: comp.os.vxworks Subject: "select" misbehaving? Date: Tue, 25 Jun 2002 15:10:31 GMT From: Derek Thomson Organization: Optus Customer - reports relating to abuse should be sent to abuse@optus.net.au Message-ID: <3D1887E7.5030607@wedgetail.com> Hi, I'm using the "select" system call to determine if there is data available on a socket - yet the call returns without setting the appropriate bit even if there *is* data available. Strangely enough, if I force a psuedo-sleep with taskDelay(), between calls to "select", it magically works. This same code works fine on Linux and Windows, so I'm fairly certain it's correct. Are there any known problems with "select" on vxWorks? Thanks, Derek. --------------------------- Newsgroups: comp.os.vxworks Subject: Ram-Disk on VxWorks Date: Tue, 25 Jun 2002 18:28:34 +0200 From: "Danny Cohen" Organization: Unspecified Organization Message-ID: Hello all. I created a RamDisk with dosFs it is called "E:". I verify that it is created with the "devs" command. - -> devs drv name 0 /null 1 /tyCo/0 1 /tyCo/1 5 diags: 7 /vio 3 E: When I FTP the device, i reach the "diags" device which is the host-name. How can i change the shell and FTP server to point to the target device? 1. how can i access "E:" device via FTP? 2. how can i access "E:" device via shell ("cwd", "ls"....)? - -- Regards. Cohen Danny. dannyc@harmonic.co.il Harmonic Lightwaves Tel: +972-4-6230150 ext 112 Mobile: +972-51-563413 --------------------------- Newsgroups: comp.os.vxworks Subject: lock daemon not responding Date: 25 Jun 2002 17:37:45 +0200 From: Michael Friess Message-ID: Reply-To: friess@act-europe.fr Sender: friess@munich.int.act-europe.fr On our Solaris machine, each time I run tornado, I get the following message: SETUP:24083: file locking of xxxxx/.wind/mw/win.ini failed: lock daemon not responding (In this case, it happens during the setup) I have checked that we have a lockd process running, so I don't really understand why we get such a message. And this is especially enoying as it seems to delay the startup of the application. Does anyone knwo where this could come from, and how it could be solved? Thanks in advance, Michael --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Ram-Disk on VxWorks Date: Tue, 25 Jun 2002 17:45:27 +0200 From: "Michael Lawnick" Organization: Buergernetz Dillingen Message-ID: References: Reply-To: "Michael Lawnick" Sender: mlawnick@p5088ecf0.dip.t-dialin.net Hi Danny, in ftp: cd e: on shell: cd "e:" HTH Michael "Danny Cohen" schrieb im Newsbeitrag news:afa29t$kq0$1@news.att.net.il... > Hello all. > > I created a RamDisk with dosFs it is called "E:". > I verify that it is created with the "devs" command. > -> devs > drv name > 0 /null > 1 /tyCo/0 > 1 /tyCo/1 > 5 diags: > 7 /vio > 3 E: > > When I FTP the device, i reach the "diags" device which is the host-name. > How can i change the shell and FTP server to point to the target device? > 1. how can i access "E:" device via FTP? > 2. how can i access "E:" device via shell ("cwd", "ls"....)? > > -- > > Regards. > Cohen Danny. dannyc@harmonic.co.il > Harmonic Lightwaves > Tel: +972-4-6230150 ext 112 > Mobile: +972-51-563413 > > > --------------------------- Newsgroups: comp.os.vxworks Subject: Ethernet sniffer or RAW sockets?? Date: Tue, 25 Jun 2002 16:15:04 GMT From: emdezpk@yahoo.ca (Duke Skylurker) Organization: MCOM Message-ID: Hi I am looking for a way to filter incoming ethernet traffic. EtherHookAdd sounds right, but most drivers do not support it (mine doesn't). Is there a documented way to intercept or filter all incoming packets (preferably on ethernet level)? Is there description of HOW TCP/IP attaches itself to ethernet driver?? On different falvors of Unix there are different ways of receiving raw traffic, some socket(PF_RAW, SOCK_RAW, RAWPROTO_SNOOP) some read(fd from opening "ln0", buffer, ETHERMAX) I did not see definition of PF_RAW or AF_RAW in VxWorks headers. AF_UNSPECIFIED does not work (either system crashes or socket returns with -1). VxWorks ethernet drivers are not proper ios devices, so they can not be opened... Thanks, Duke S. --------------------------- Newsgroups: comp.os.vxworks Subject: Re: File descriptors managing Date: 25 Jun 2002 13:11:22 -0400 From: Bill Pringlemeir Organization: Factory of the mind Message-ID: References: <99630f8e.0206250622.3a782d9f@posting.google.com> Sender: bpringlemeir@DeadDuck >>>>> "scc" == scc writes: scc> I'm trying to port a Linux based file system to VxWorks. It's scc> supposed that the user can add his own file system to VxWorks, scc> so that should be possible using the "VxWorks Programmer's scc> Guide" of the Tornado online manuals. But it's much more scc> difficult as supposed: I've read that file descriptors (fd) have scc> a limit in VxWorks and that can be only controlled if some scc> system functions are used to manage the file descriptors scc> table. Nevertheless, I haven't found these functions. But when scc> the Open I/O function is implemented, only the name of the file scc> is used as parameter. My question is the following: could I use scc> my own file descriptors table (for example, an adaptation of the scc> implementation of the VFS of Linux)? or I should use (I don't scc> know how) the fd table already implemented in VxWorks? scc> Thank you very much in advance, Silvano Look at the documentation for "iosLib", and "ioLib". A driver is simply a structure with pointers (virtual base class). The drivers can "derive" from the DEV_HDR structure. Ie, you add your own private data to the end of the structure. This DEV_HDR gets passed around to all of the iosDrvInstall() functions and most of the other `ios' stuff. This provides simple "block" access. Then the user calls, open("customFS/dir1/dir2/file3",O_RDONLY, 0); and the drivers "pOpen" function will be called with the path and the structure to your driver. extern int iosOpen (DEV_HDR *pDevHdr, char *fileName, int flags, int mode); See the online documents, "file:///C|/Tornado/docs/vxworks/guide/c-iosys2.html" You can also look at "c:/Tornado/target/h/iosLib.h" to see the function declarations. These functions are very handy from the shell. extern void iosDevShow (void); extern void iosDrvShow (void); extern void iosFdShow (void); The path parsing and manipulation must be maintained in the structure. The "fd" table is simply a mapping between the ios's pOpen value and the integer used by the driver to access the file. It would be fun to port a Linux filesystem. Please point us to the source when you are finished, so we can access the GPL'ed work. Regards, Bill Pringlemeir. - -- The truth about vril and odyle is what it appears. vxWorks FAQ, "http://www.xs4all.nl/~borkhuis/vxworks/vxworks.html" --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Ram-Disk on VxWorks Date: 25 Jun 2002 13:20:58 -0400 From: Bill Pringlemeir Organization: Factory of the mind Message-ID: References: Sender: bpringlemeir@DeadDuck Danny> Hello all. I created a RamDisk with dosFs it is called "E:". Danny> I verify that it is created with the "devs" command. [snip] Danny> When I FTP the device, i reach the "diags" device which is the Danny> host-name. How can i change the shell and FTP server to point Danny> to the target device? 1. how can i access "E:" device via Danny> FTP? 2. how can i access "E:" device via shell ("cwd", Danny> "ls"....)? Why would you call it "E:"? [*] Why not call it something like "/ramDisk1". I bet you use C++. The main problem is the inability of the FTP server (and clients) to handle the colon. I guess that some where along the line, some one decided that any file with spaces, question mark, colon, or other seemingly random data should be ignored. Also it is difficult to have a file system when user pick weird device names. I would suggest for your sanity that you call the ramdisk "/ramDisk" or something like that. This is not an excuse for the FTP code... but why do people insist on using `drive letters'. Also look at the function ioLib and the function "ioDefPathSet". This might help you as some FTP clients (ie, your PC) will have trouble using drive letters. You should be able to access the drive if you have an I/O system. Type "ioHelp" from the shell prompt. Be very sure that you are executing on the target. You might wish to prefix all shell commands by `@' if you don't know what this means. Ie, -> @ioHelp hth, Bill Pringlemeir. [*] I suppose some people like to kiss for Bill Gate's colon. - -- You are not incomprehensible, because life is fair. vxWorks FAQ, "http://www.xs4all.nl/~borkhuis/vxworks/vxworks.html" --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Ethernet - Where to start Date: Tue, 25 Jun 2002 09:31:50 -0700 From: "Dan Gold" Organization: Mailgate.ORG Server - http://www.Mailgate.ORG Message-ID: References: <3D12E659.8DBF8F4E@baesystems.com> <3D18463D.12401E99@baesystems.com> Sender: gold@ensemble.com "Paul Caswell" wrote in message news:3D18463D.12401E99@baesystems.com... > Firstly, thanks for the help. I've done as you suggested (i think - see > below) but it still wont work. >Here's the configNet.h content: > > /* this is the default load function for our END */ > #define CPM_LOAD_FUNC motCpmEndLoad > /* This is the default initialization string */ > #define CPM_LOAD_STRING "0:01130000:0x3e:1:NULL:NULL:0:100:NONE" It looks like you're using T2 (from the usrEndLibInit() call below). The default load string from the 860 T2 BSP looks like: #define MOT_LOAD_STRING "0xFA200000:0x3e:1:0x20:0x20:0x2800:0x2900:-1" so you may not need the unit number (the first 0 in your load string). And are you sure that "NONE" evaluates to -1 ? > END_TBL_ENTRY endDevTbl [] = > { > { 0, CPM_LOAD_FUNC, CPM_LOAD_STRING, NULL, FALSE }, > { 0, END_TBL_END, 0, NULL }, > }; Again, the default BSP entry has 6 (not 5) entries, and the definition of the END_TBL_ENTRY in target/h/end.h has 6 entries in the struct, i.e. { 0, MOT_LOAD_FUNC, MOT_LOAD_STRING, 1, NULL, FALSE}, > The BSP will compile and run but the call to muxDevLoad(...) in > usrEndLibInit(...) fails with a NULL return. Sadly this function is in > a library and so I can't debug. Any ideas as to what might be going > wrong ?? I would guess something's not correct in the load string or parameters to muxDevLoad. Try with a different load string and see if that helps. hth, Dan Gold gold@ensemble.com --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Bootable c++ application with templates Date: 25 Jun 2002 15:20:22 -0400 From: Bill Pringlemeir Organization: Factory of the mind Message-ID: References: Sender: bpringlemeir@DeadDuck Chad> I'm having problems getting my tornado app (which runs fine as Chad> a downloaded object launched manually) to build with my bsp so Chad> I can launch it from usrAppInit. A large part of the reason is Chad> most likely the heavily dated gnu tools I'm using 2.7.2 but any Chad> tips or known issues would be more than welcome, I'm rather Chad> stuck. I'm using tornado 2.02 and a motorola ppc860 based BSP. Chad> I include my app library in LIBS (via the tornado interface to Chad> the makefiles) and am getting a whole lot of 'symbol size Chad> changed' and 'undefined reference' errors primarily for Chad> anything involving templates. I've tried several compiler and Chad> linker flags for templates and static linking etc but so far no Chad> luck, though I think the solution is to be found there. I'm Chad> exposing my C++ code to the bsp through 1 extern "C" function Chad> which does a task spawn on the main application loop. The Chad> problem happens at linktime however: As you are no doubt a brilliant C++ developer with full command of the language, why don't you change the template instantiation to have your own allocator. You will then be able to link your application as it will not defined the same function that mangle to same name but has different objects sizes due to different compilation flags. Maybe something like, #include [includes template , class Allocator = alloc > ] string,malloc_alloc> frobber; Since you are a C++ expert, this should be no trouble. I wouldn't do this as I think templates are insane as they require exceptions as well. Recently I was modifying a module. Size 1 = 100 % Size 2 = 200 % (use STL vector) Size 3 = 130 % (use custom class) Size 4 = 100 % (use lnkLst.h, like foundation classes) Size 4 = 80 % (turned off exceptions.) Alternatively, you can try to compile with the same flags as these file, C:\Tornado\target\lib>ararm -tvf libARCHgnuvx.a | grep cstr rw-r----- 105/100 401 Sep 25 13:55 1999 cstringi.o rw-r----- 105/100 44811 Sep 25 13:55 1999 cstrmain.o rw-r----- 105/100 3059 Sep 25 13:55 1999 cstrio.o At least that would be a good guess. Finally, you could learn how to use the GNU binutils so that all of this information would be abundantly obvious. hth, Bill Pringlemeir. - -- I want to read my new poem about pork brains and outer space... vxWorks FAQ, "http://www.xs4all.nl/~borkhuis/vxworks/vxworks.html" --------------------------- Newsgroups: comp.os.vxworks Subject: Re: inportb( ) and outportb( ) equivalent statments in VxWorks to do I/O operation on H/W Date: Tue, 25 Jun 2002 21:46:15 +0200 From: Peter Kannegiesser Organization: SEK Message-ID: References: Reply-To: peter.kannegiesser@gmx.de On 25 Jun 2002 05:33:02 -0700, rajesha_n@hotmail.com (Rajesh) wrote: > >outb( ioAddr, oByte)---->Writes a byte at the given address. >inb(ioAddr)----->Reads a byte from the given address. >igDisInt()->To disable interrupt. >igSignal(sigId,hSig)-->The signal handler to notify the application of >an asychrounous enents. The parameter sigld will hold and >identification of the signal type and paremete hSig depends on sigId. > Hi Rajesh, in that situation, I simply used: #define outb(data, port) sysOutByte(port, data) #define outw(data, port) sysOutWord(port, data) #define outl(data, port) sysOutLong(port, data) #define inb(port) sysInByte(port) #define inw(port) sysInWord(port) #define inl(port) sysInLong(port) HTH, Peter - -- keine sig --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Regarding I/O porting writing statements in VxWorks Date: Tue, 25 Jun 2002 21:17:20 GMT From: "Brian St. Pierre" Organization: Worldpath Internet Services (worldpath.net) Message-ID: References: "Rajesh" wrote in message news:d3570688.0206242024.67841dfe@posting.google.com... > Please let us know which > are the equivalent rountines in VxWorks for the above mentioned > routine( the equivalent routines in Turbo C under DOS is inportb for > inp()and outportb for outb() ). The functionality of the rountines is > as follows. > > outb( ioAddr, oByte)---->Writes a byte at the given address. > inb(ioAddr)----->Reads a byte from the given address. > igDisInt()->To disable interrupt. > igSignal(sigId,hSig)-->The signal handler to notify the application of > an asychrounous enents. The parameter sigld will hold and > identification of the signal type and paremete hSig depends on sigId. outb & inb will probably have to be written for your particular hardware. Rough equivalents: igDisInt() --> intDisable() igSignal() --> signal() [posix-based] Hope this helps. - -- - -Brian St. Pierre brian (at) bstpierre.org --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Tornado make fails to parse /bin/sh commands but cygwin and linux make do it Date: Tue, 25 Jun 2002 22:16:33 GMT From: "Brian St. Pierre" Organization: Worldpath Internet Services (worldpath.net) Message-ID: <5Z5S8.665$mp2.295328@newshog.newsread.com> References: <558a531.0206152111.531bda45@posting.google.com> <59ohea.gsf.ln@gonzo.cybermuppet.co.uk> <558a531.0206171448.76107b44@posting.google.com> "Earl Mitchell" wrote: > molochai wrote: > > Earl Mitchell wrote: > > > Does anyone know why > > > my Tornado make.exe is failing to parse /bin/sh > > > commands in makefiles? > > > > Make doesn't 'parse' shell commands - it passes the commands a line at a > > time to a shell to execute after expanding macros. The WRS supplied GNU > > Make uses cmd32.exe on Windoze platforms (the windows command shell). > > There's of course nothing to stop you running /bin/sh (or surely /bin/bash?) > > from the make rule. > > How do you do this? I'm not familiar with interaction between make an > the shell programs. Also the fact that WRS's make.exe does not process > /bin/sh commands even when running in DOS shell (i.e. not cygwin shell) > is just plain wrong since the GNU make manual says it should support it. > I'd prefer not to modify my makefiles if I don't have to. One thing you can attempt is to set the SHELL environment variable to sh.exe (see http://www.gnu.org/manual/make/html_node/make_47.html). I'm not sure if this is properly supported in the WRS version of GNU make. > But it gets worse ... I should be able to replace WRS's make.exe with > the one the works from Cygnus but when I try this it does not work with > WRS's makefiles? It works with my test makefile but not WRS's makefiles? The two makes are not interchangeable. Cygnus make is much friendlier to both /'s and \'s than WRS make, which seems to only like \'s. I think there are some other differences, but the bottom line is that WRS makefiles simply won't work with cygnus without a little work. > So two questions: > 1. How to get WRS's make.exe to handle /bin/sh commands in makefiles. > 2. Why doesn't cygnus's make.exe work with WRS's makefiles? Hope I answered these at least a little bit. - -- - -Brian St. Pierre brian (at) bstpierre.org --------------------------- Newsgroups: comp.os.vxworks Subject: Passing -D strings to GCC? Date: Tue, 25 Jun 2002 16:40:50 -0700 From: Bob Bradley Organization: Uh huh huh...It says Organ Message-ID: Is it possible to pass a string via -D to the C compiler from a BAT file? I'm no expert on BAT files, but I wrote some simple ones to automate our vxWorks build process and I'd like to be able to pass down a string (e.g. -DMY_STRING="My String") via an environment variable from the BAT file to the C code. I've tried every combination of escape characters I can think of, but it always seems to fail with an invalid argument. I've tried adding "-DBUILD_VERSION="My Version" to EXTRA_DEFINE directly in the makefile rather than passing it as an environment variable, but it still fails. The line to ccppc seems to look correct (it has the quote characters and looks just as I've defined it), but it fails because it doesn't like a space in the string (treats it as a separate argument), even though it is quoted. Is there any way to do this? --------------------------- Newsgroups: comp.os.vxworks Subject: relocating bootroms Date: 25 Jun 2002 16:30:37 -0700 From: david_wilhardt@hotmail.com Organization: Newsguy News Service [http://newsguy.com] Message-ID: Has anyone ever rewritten bootInit.c to decompress or copy the bootrom to RAM NOT based on romInit? I am hoping that someone has after looking at bootInit - ugh. --------------------------- Newsgroups: comp.os.vxworks Subject: Re: UML used with VxWorks? Date: 25 Jun 2002 19:23:23 -0700 From: liuxin@autosoft.com.cn (Xin Liu) Organization: http://groups.google.com/ Message-ID: References: <3d17931f$1@brateggebdc5.br-automation.co.at> "Werner Schiendl" wrote in message news:<3d17931f$1@brateggebdc5.br-automation.co.at>... > Hi, > > Rational Software (www.rational.com) has a product 'Rational Rose Realtime' > which should allow you to do what you want. I have never used or evaluated > that software 'til now. It claims to have VxWorks integration to some > extent. > > At least for the Windows Version you can download a free trial version (but > it is a BIG download). I don't know if you can download an evaluation copy > of the Realtime version. > > Apart from that, I found the books 'UML Distilled' and 'Realtime UML' quite > nice introductory material (although, as mentioned, I do not yet use UML > tools for VxWorks designs). Both books are from Addison Wesley Longman. > > best regards > Werner > > > "zhaoyandong" wrote in message > news:aefbsg$4fc$1@mail.cn99.com... > > I'm developing a system using VxWorks. > > > > I want to design it using UML. But I don't have experience. > > > > Can anyone give me some suggestion or tutorial or examples about it? > > > > Thank you, any suggestion would be greatly appreciated. > > > > > > > > > > > > > > > > There are two UML tools can provide integrating with RTOS and focus on designing Embedded application using UML. One is ARTiSAN, website is www.artisansw.com, another is Raphsody. --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Ethernet - Where to start Date: 25 Jun 2002 19:38:24 -0700 From: ddleiyu@hotmail.com (Wilson Wu) Organization: http://groups.google.com/ Message-ID: <47f39a83.0206251838.4dde57ab@posting.google.com> References: <3D12E659.8DBF8F4E@baesystems.com> <3D18463D.12401E99@baesystems.com> hi, I have the same idea with Dan Gold to you. Read the context of the LoadString carefully from which you will benifit. Some days before I wrote a END driver for my pci NIC and got more about pciconfig,pciFindDevice,loadstring and so on. as for the souce of function muxDevLoad(),i can provide it to you as bellows: void * muxDevLoad ( int unit, /* unit number fo device */ END_OBJ* (*endLoad) (char*, void*), /* load function of the driver */ char* pInitString, /* init string for this driver */ BOOL loaning, /* we loan buffers */ void* pBSP /* for BSP group */ ) { extern LIST endList; END_OBJ* pNew; END_TBL_ROW* pNode; char initString [END_INIT_STR_MAX]; char devName [END_NAME_MAX]; BOOL found = FALSE; void * pCookie = NULL; if (muxDebug) logMsg ("Start of muxDevLoad\n", 1, 2, 3, 4, 5, 6); bzero ( (char *)initString, END_INIT_STR_MAX); bzero ( (char *)devName, END_NAME_MAX); /* Let's mutually exclude here, wouldn't you say? */ semTake (muxLock, WAIT_FOREVER); /* * Loading a device is a two pass algorithm. * * This is Pass 1. * * In the first pass we as the device what its name is. If that name * exists in our table then we add the new node to the end of the * already existing list. If not then we create a new row in the * table, and place the new node as the zero'th (0) element in the node's * list. */ if (endLoad ( (char *)devName, NULL) != 0) { goto muxLoadErr; } if (endFindByName ( (char *)devName, unit) != NULL) { goto muxLoadErr; } for (pNode = (END_TBL_ROW *)lstFirst(&endList); pNode != NULL; pNode = (END_TBL_ROW *)lstNext(&pNode->node)) { if (STREQ (pNode->name, (char *)devName)) { found = TRUE; break; } } /* If there is no row for this device then add it. */ if (!found) { pNode = malloc(sizeof(END_TBL_ROW)); if (pNode == NULL) { goto muxLoadErr; } bzero ((char *)pNode, sizeof(END_TBL_ROW)); strncpy(pNode->name, devName, END_NAME_MAX - 1); pNode->name [END_NAME_MAX - 1] = EOS; lstAdd(&endList, &pNode->node); } /* * This is Pass 2. * * Now that we can determine a unique number we assign that number, to * the device and actually load it. */ sprintf ( (char *)initString, "%d:%s", unit, pInitString); pNew = (END_OBJ *)endLoad ( (char *)initString, pBSP); if (pNew == NULL) { goto muxLoadErr; } /* * Leave this stuff last to prevent a race condition. The condition * would be that the driver could call the receive routine * (it should always of course check to make sure there is one) * before the buffer pool was set up. This would be bad. * */ lstAdd(&pNode->units, &pNew->node); /* * update the BIB. The receive routine for an END is set to muxReceive * and that for a NPT driver is muxTkReceive; the cookie returned is always * a MUX_ID */ pCookie = muxTkDevLoadUpdate(pNew); semGive (muxLock); return (pCookie); muxLoadErr: errnoSet (S_muxLib_LOAD_FAILED); semGive (muxLock); return (NULL); } May it give you some help! Wilson Wu --------------------------- Newsgroups: comp.sys.mips,comp.os.vxworks,comp.arch.embedded Subject: Need reccommendations for good JTAG ICE for MIPS cpu Date: 25 Jun 2002 20:40:09 -0700 From: earl.mitchell@accetnetwork.com (Earl Mitchell) Organization: http://groups.google.com/ Message-ID: <558a531.0206251940.607bafb2@posting.google.com> Need reccs for a good ICE to use for MIPS. Currently using vxWorks for RTOS but may be changing. Any comments regarding ICE for MIPS would be appreciated. - -earlm --------------------------- Newsgroups: comp.os.vxworks Subject: How to boot over ppp? Date: 25 Jun 2002 21:54:02 -0700 From: xmtang@facri.com (xiaomingtang) Organization: http://groups.google.com/ Message-ID: Hello,everyone. I wann boot target over ppp connection, and host is win98. I have installed ppp server over NULL MODEM,and enable it.But target boot failed,typed: ppp0: ppp0<-->/tyCo/0 ppp0: LCP terminated ppp0: timeout in addition, I don't know how to add user & password on such case. where is secret file over ppp server on host(or does this need?) any idea is appreciated. thanks in advance, --------------------------- Newsgroups: comp.os.vxworks Subject: driver for DAVICOM 9102A Date: 25 Jun 2002 23:38:30 -0700 From: siegfried.buechele@pruftechnik-rv.com (Siegfried Buechele) Organization: http://groups.google.com/ Message-ID: <7303062c.0206252238.4cfe5480@posting.google.com> does anybody know where we can get the driver for vxworks BSD 4.4. I've just found drivers for linux but i don't know how to port to vxworks. We use Tornado 2.0 our architecure is an x86 (PC104 from Jumptec). thanks for all postings Siegfried --------------------------- Newsgroups: comp.os.vxworks Subject: How can I get the memory information of my target board with vxworks OS? Date: 25 Jun 2002 23:42:24 -0700 From: seasoblue2000@yahoo.com.cn (seasoblue) Organization: http://groups.google.com/ Message-ID: hi,All I run vxworks OS on my target board with Samsung's S3C4510B(ARM7TDMI core) MCU.I have extended SDRAM size from 16M bytes to 32M bytes(4banks*16bit*2M*2chips). But when I use 'memShow' to get the information of memory under debug,it tells me: - ----------------------------------------------- - -> memShow SUMMARY: status bytes blocks avg block max block ------ --------- -------- ---------- ---------- current free 5312744 2 2656372 5297780 alloc 2016216 1353 1490 - cumulative alloc 2419712 2122 1140 - value = 0 = 0x0 - ------------------------------------------------ why is my memory size only 5312744+2016216 bytes?? where are others?? Is it right to use 'memShow' to get memory information?? Any advice is welcomed. Best regards seasoblue --------------------------- Newsgroups: comp.arch.embedded,comp.realtime,comp.os.psos,comp.os.vxworks Subject: Using C++ in Embedded Systems in Technical Report on C++ Performace (DRAFT) Date: Wed, 26 Jun 2002 09:57:53 +0200 From: "Alex Vinokur" Organization: Scopus Network Technologies Message-ID: Technical Report on C++ Performace (DRAFT) : http://std.dkuug.dk/jtc1/sc22/wg21/docs/papers/2002/n1359.pdf The Report contains a paragraph named "Using C++ in Embedded Systems". =========================== Alex Vinokur mailto:alexvn@go.to http://up.to/alexvn http://go.to/alexv_math =========================== --------------------------- Newsgroups: comp.os.vxworks Subject: bootpParamsGet Date: Wed, 26 Jun 2002 16:24:35 +0900 From: "msjeon" Organization: Korea Telecom Hitel Message-ID: Hello, everyone I want to use bootp for getting ipaddress. But bootpParamsGet function return ERROR. I want to know about boopParamsGet bug. Thanks. --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Ram-Disk on VxWorks Date: Wed, 26 Jun 2002 08:10:07 +0000 (UTC) From: David Laight Organization: BT Openworld Message-ID: <3D1976DB.2050809@spamm.me.l8s.co.uk> References: > > I would suggest for your sanity that you call the ramdisk "/ramDisk" Or better "/ramdisk/" unless you want "/ramdiskefile" to be equivalent to "/ramdisk/file". Unfortunately that shows up a 'feature' [1] of the NFS server code whereby if removes a trailing '/' from the wrong name. So if you export "/fred/" you can mount "/fred//" but not "/fred/" or "/fred" (but not from M$ - it will only issue a request for a directory on the export list !) David [1] Not a bug because it is documented! --------------------------- Newsgroups: comp.os.vxworks Subject: Re: loading an application image from flash Date: Wed, 26 Jun 2002 10:32:47 +0100 From: Owain Phillips Organization: Siemens Inc. Message-ID: <3D198A3F.9D458307@siemenscomms.co.uk> References: <319b48d7.0206181217.378c7b4a@posting.google.com> This is a multi-part message in MIME format. - --------------395D73D9492374768F5842CD Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Not sure what you mean when you say raw flash file system; but we do something similar in that the complete elf file stripped of debug is burn into a certain flash area. In the boot rom we do a memDevCreate to create a device that can read then area of flash and we just modify the bootline to boot from that created memory device. The standard elf loaders are extactly what you want; you just need to supply them with a handle to read the ELF file from whatever the device... heres the extract from bootConfig.c...... LOCAL STATUS appLoad ( FUNCPTR * pEntry ) { int fd; char *cp; extern STATUS memDevCreate( char *, char*, int ); extern STATUS memDrv( void ); if (memDrv () != OK) { printErr ("app: Could not initialize.\n"); return (ERROR); } cp = (char *)FLASH_BASE_ADRS; if( memDevCreate("/mem/app", cp, FLASH_APP_SIZE ) != OK ){ printErr ("app: Could not create /mem/app.\n"); return (ERROR); } /* load the boot file */ printErr ("Loading /mem/app..."); if ((fd = open ("/mem/app", O_RDONLY, 0)) == ERROR) { printErr ("\nCannot open \"/mem/app\".\n"); return (ERROR); } if (bootLoadModule (fd, pEntry) != OK) goto appLoadErr; close (fd); return (OK); appLoadErr: printErr ("\nerror loading file: status = 0x%x.\n", errnoGet ()); close (fd); return (ERROR); } Hope this helps. Owain joseph j marini wrote: > hi, > I am trying to load an application image from a raw flash file > system. > I first load the application image into memory via a tftp server. > During the read process I read the elf header and determine the size > of the application image to load. I then write the image to the raw > flash file system. > I then try to load the image from flash by doing a byte for byte copy > to ram > starting the load at offset 10,000. > When I try to load the application image from flash it either hangs or > crashes. > To test the image was read in correctly, after the read process, I > write the > read image to disk. I have loaded this image successfully. I have also > compare > the image on disk to the image in flash and it looks ok. > Any help with this would greatly be appriciated. > > /joe - --------------395D73D9492374768F5842CD Content-Type: text/x-vcard; charset=us-ascii; name="owain.phillips.vcf" Content-Transfer-Encoding: 7bit Content-Description: Card for Owain Phillips Content-Disposition: attachment; filename="owain.phillips.vcf" begin:vcard n:Phillips;Owain tel;fax:+44 115 943 4969 tel;work:+44 115 943 2167 x-mozilla-html:TRUE url:http://www.siemenscomms.co.uk org:Siemens Comunications Ltd version:2.1 email;internet:owain.phillips@siemenscomms.co.uk title:Software Engineer adr;quoted-printable:;;Technology Drive=0D=0ABeeston;Nottingham;;NG9 1LA;United Kingdom fn:Owain Phillips end:vcard - --------------395D73D9492374768F5842CD-- --------------------------- Newsgroups: comp.os.vxworks Subject: Re: How can I get the memory information of my target board with vxworks OS? Date: Wed, 26 Jun 2002 12:02:30 +0200 From: "Michael Lawnick" Organization: Buergernetz Dillingen Message-ID: References: Reply-To: "Michael Lawnick" Sender: mlawnick@pd9524c1f.dip.t-dialin.net Hi seasoblue, check that in config.h either LOCAL_MEM_AUTOSIZE is defined or LOCAL_MEM_SIZE is defined to 0x02000000 Don't forget to flash a new bootROM ! HTH Michael "seasoblue" schrieb im Newsbeitrag news:e82d8e83.0206252242.4205d580@posting.google.com... > hi,All > I run vxworks OS on my target board with Samsung's > S3C4510B(ARM7TDMI core) MCU.I have extended SDRAM size from 16M bytes > to 32M bytes(4banks*16bit*2M*2chips). But when I use 'memShow' to get > the information of memory under debug,it tells me: > ----------------------------------------------- > -> memShow > SUMMARY: > > status bytes blocks avg block max block > ------ --------- -------- ---------- ---------- > current > free 5312744 2 2656372 5297780 > alloc 2016216 1353 1490 - > cumulative > alloc 2419712 2122 1140 - > value = 0 = 0x0 > ------------------------------------------------ > why is my memory size only 5312744+2016216 bytes?? where are others?? > Is it right to use 'memShow' to get memory information?? Any advice is > welcomed. > Best regards > seasoblue --------------------------- Newsgroups: comp.os.vxworks Subject: Re: UML used with VxWorks? Date: 26 Jun 2002 03:08:05 -0700 From: christian.delez@ascom.ch (Christian Delez) Organization: http://groups.google.com/ Message-ID: References: "zhaoyandong" wrote in message news:... > I'm developing a system using VxWorks. > > I want to design it using UML. But I don't have experience. > Hi, We use Rhapsody from I-Logix http://www.ilogix.com. We are really happy with it. It's fully UML and Real-Time oriented. It works perfect with VxWorks 5.4. You can get a UML modeler for free !!! Download it and have fun... If you want advanced features (code generation, reverse engineering, documentation, simulation, UML debugging,...), you need and developer edition. You can develop and debug animated statechart from the IDE->Advanced... They have a guy called Bruce Powel Douglass which wrote the excellent book: "Doing Hard Time: Developing Real-Time Systems with UML, Objects, Frameworks and Patterns". @+, Christian. --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Ethernet - Where to start Date: 26 Jun 2002 03:30:36 -0700 From: sameer_manuja@yahoo.com (Sameer) Organization: http://groups.google.com/ Message-ID: <2df53411.0206260230.69d86063@posting.google.com> References: <3D12E659.8DBF8F4E@baesystems.com> <3D18463D.12401E99@baesystems.com> <47f39a83.0206251838.4dde57ab@posting.google.com> Hi, This is what i did in the load function of my NIC driver, struct end_object* mynicLoad (char* initString) { /* first pass */ if (initString [0] == 0) { strcpy (initString, "mynic"); return NULL; } /* mynicLoad is called again by the mux, this time the initstring being unit number followed by colon followed by the init string given in confignet.h for mynic */ /* do whatever is required */ . . . } HTH, Sameer --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Ethernet sniffer or RAW sockets?? Date: 26 Jun 2002 03:53:49 -0700 From: sameer_manuja@yahoo.com (Sameer) Organization: http://groups.google.com/ Message-ID: <2df53411.0206260253.250377c5@posting.google.com> References: Hi, I only know how TCP/IP attaches itself to END (mux based) NIC drivers. TCP/IP stack on VxWorks provides a function ipAttach for this that takes the unit number and the device name u want to attach the stack to. Internally this function calls the muxBind routine of the MUX providing it with the device name and the unit number and the callback routines of the stack. The MUX manages the list of the stacks attached to a device in the protocols member of the end_object structure for the device. On receiving packets, the device driver calls the receive routine of the mux, which in turn iterates through the protocols list giving each protocol of the packet type (IP stack or ARP stack etc...) a chance to have a look at the packet. If we create a protocol of type MUX_PROTO_SNARF, it is added to the head of the protocols list and is the first one to have a look at the packet. This idea can be used to implement filtering for END drivers. HTH, Sameer --------------------------- End of New-News digest ********************** From vxwexplo-errs@csg.lbl.gov Wed Jun 26 04:53:29 2002 From: Arad Gluska Date: Wed Jun 26 04:53:32 PDT 2002 Subject: How to change define when compilie project and link libPPC860gnuv Hi and thanks to all the vxworks users We compile our project using a batch file (ppc860, using the tornado). Our source files include some of the vxworks header files, and we link libPPC860gnuvx.a. What if I would like to change definitions in the header files? I show that when I change definitions in the vxworks h files, they take no effect. I guess it is because we are using the libPPC860gnuvx.a lib that is compiled already!? Do I need to make a new libPPC860gnuvx.a after changing the define? and if yes, how do I create a new one? Please send me also direct response as not all the group corresponding reach me :-) Thanks a lot Arad (arad@metalink.co.il) From vxwexplo-errs@csg.lbl.gov Wed Jun 26 11:52:18 2002 From: "Somisetty, Somisetty" Date: Wed Jun 26 11:52:20 PDT 2002 Subject: True Flash File System (TFFS) problems.... This message is in MIME format. Since your mail reader does not understand this format, some or all of this message may not be legible. ------_=_NextPart_001_01C21D42.912C45C0 Content-Type: text/plain; charset="iso-8859-1" Hi VxWorks Gurus' I have a problem with Vxworks TFFS. When I try to format the flash using sysTffsFormat(), it always fails. It is mentioned in sysTffs.c file, that when sysTffsFormat() fails, then you have to run tffsRawio(0, 3, 0, 16) to fix the formatting problem. I did the same, but it did not solve the formatting problem. It doesn't format with sysTffsFormat(). Can anyone let me know, why I can't format the flash? Can anyone help me on this? Thanks in advance.... Regards Somisetty ------_=_NextPart_001_01C21D42.912C45C0 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable True Flash File System (TFFS) problems....

Hi VxWorks Gurus'
      I have = a problem with Vxworks TFFS. When I try to format the flash using = sysTffsFormat(), it always fails.
It is mentioned in sysTffs.c file, = that when sysTffsFormat() fails, then you have to run tffsRawio(0, 3, = 0, 16) to fix the formatting problem. I did the same, but it did not = solve the formatting problem. It doesn't format with = sysTffsFormat().

   Can anyone let me know, = why I can't format the flash? Can anyone help me on this?

Thanks in = advance....    

Regards
Somisetty

------_=_NextPart_001_01C21D42.912C45C0-- From vxwexplo-errs@csg.lbl.gov Wed Jun 26 12:39:52 2002 From: "Eugene Leung" Date: Wed Jun 26 12:39:54 PDT 2002 Subject: mac address This is a multi-part message in MIME format. ------_=_NextPart_001_01C21D49.41B50ABF Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Can someone tell me what the vxworks routine is that returns the mac = address of the port, by passing in the name? TIA =20 -Eugene =20 ------_=_NextPart_001_01C21D49.41B50ABF Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable

Can someone tell me what the vxworks routine is that returns the mac address of = the port, by passing in the name?=A0 = TIA

 

-Eugene

 

=00 ------_=_NextPart_001_01C21D49.41B50ABF-- From vxwexplo-errs@csg.lbl.gov Wed Jun 26 13:23:41 2002 From: "Brown, Matthew" Date: Wed Jun 26 13:23:43 PDT 2002 Subject: mac address vxWorks Eugene, The only way I could figure out how to do this is by calling ifunit to get the IF pointer and slapping an arpcom structure over top of it's address. Then you must extract the MAC addrs from the ac_enaddr field. Like this : char macAddr[6]; pIf = ifunit ("IFNAME"); struct arpcom *pArpcom; pArpcom = (struct arpcom*) pIf; memcpy (macAddr, (pArpcom->ac_enaddr),6); macAddr will contain the six bytes of the macaddr. Matt Brown ====================== Can someone tell me what the vxworks routine is that returns the mac = address of the port, by passing in the name? TIA -Eugene From vxwexplo-errs@csg.lbl.gov Wed Jun 26 13:23:46 2002 From: Cory Dixon Date: Wed Jun 26 13:23:49 PDT 2002 Subject: Code fix for usrConfig.c Hello all VxWorks users, I would like to submit a code change for review. The file is config/all/usrConfig.c, and the change is for the mapping of stdin, stderr, and stdout when there is no console defined. If a BSP has INCLUDE_IO_SYSTEM defined, but doesn't define a CONSOLE_TTY or INCLUDE_PC_CONSOLE then the variable consoleFd is left set to NONE when the mapping to standard IO occurs when ioGlobalStdSet is called. This will later cause problems with any cout's, and possibly printf's, that the kernel uses for output during bootup and any user code that gets started. This will happen up untill there is a connection through windSh or telnet; which remaps the standard descriptors to the appriopriate channels. My solution is to map STD_OUT and STD_ERR to the /null device, and leave STD_IN set to NONE. It seems that one should not map STD_IN to a standard file or /null, though I have not found any documentation on this but know it causes the IO to crash on the target. Below is the code segment that I have added to our kernels. (Sorry, I don't have an original usrConfig.c to diff with) The original code ---------------------------------------- ioGlobalStdSet (STD_IN, consoleFd); ioGlobalStdSet (STD_OUT, consoleFd); ioGlobalStdSet (STD_ERR, consoleFd); #endif /* INCLUDE_IO_SYSTEM */ line The simple code change is below ---------------------------------------- if( consoleFd != NONE ) { ioGlobalStdSet (STD_IN, consoleFd); ioGlobalStdSet (STD_OUT, consoleFd); ioGlobalStdSet (STD_ERR, consoleFd); } else { strcpy (consoleName, "/null"); consoleFd = open (consoleName, O_WRONLY, 0); ioGlobalStdSet (STD_IN, NONE); ioGlobalStdSet (STD_OUT, consoleFd); ioGlobalStdSet (STD_ERR, consoleFd); } #endif /* INCLUDE_IO_SYSTEM */ line Now I realize this is not complete error proof code, as I don't check the opening of the /null device, but if that fails then there will be many other problems to worry about first. This should fix other problems that users report with not having a shell, or not having CONSOLE_TTY not defined right. In my opinion, if there is no console serial channel, then CONSOLE_TTY should be set to NONE (which is -1). Anything else could actually be a valid file descriptor, and if a task tried to use CONSOLE_TTY (if its not defined to NONE) it could overwrite your valuable data. I hope this is taken for serious consideration, and please let me know your thoughts. Cory -- ___ |___| ______ ______ | | / \ / \ | | / Ralphy \ / Petey \ | | |\ /| |\ /| | | | \______/ | | \______/ | | | | | | | | | | | | | \ | | / \ | | / ____| |____ \|____|/ 3CS \|____|/ |\ | | /| ______ Cory Dixon | \ \_/ / | / \ | \_____/ | / Sparky \ Colorado Space Grant College | | | | |\ /| University of Colorado | | CX1 | | | \______/ | | | | | | | | | cory.dixon@colorado.edu |__|_____|__| \ | | / work 303-492-4469 / \ \|____|/ home 303-494-5638 / \ / \ http://spacegrant.colorado.edu From vxwexplo-errs@csg.lbl.gov Thu Jun 27 04:03:18 2002 From: Vxworks Exploder Date: Thu Jun 27 04:03:20 PDT 2002 Subject: comp.os.vxworks newsdigest Comp.Os.Vxworks Daily Digest Thu Jun 27 04:03:13 PDT 2002 Subject: Re: "select" misbehaving? Subject: Network boot using ssh? Subject: Re: Need reccommendations for good JTAG ICE for MIPS cpu Subject: Re: "select" misbehaving? Subject: Re: "select" misbehaving? Subject: Network statistics incorrect Subject: Re: Passing -D strings to GCC? Subject: Booting without an ethernet connection Subject: Re: "select" misbehaving? Subject: AGENT_NO_AGENT_PROC Subject: Re: AGENT_NO_AGENT_PROC Subject: message size for message queues Subject: interrupts stuck on x86/VIA 82C686A Subject: Re: Regarding I/O porting writing statements in VxWorks Subject: Re: Using C++ in Embedded Systems in Technical Report on C++ Performace (DRAFT) Subject: Re: Booting without an ethernet connection Subject: Re: Passing -D strings to GCC? Subject: Does socket send return after data is buffered or data is transmitted? Subject: Re: Tornado make fails to parse /bin/sh commands but cygwin and linux make do it Subject: Re: Help with Watchdog Timer Subject: Re: How can I get the memory information of my target board with vxworks OS? Subject: Re: Booting without an ethernet connection Subject: Re: Passing -D strings to GCC? Subject: Re: "select" misbehaving? Subject: Re: How can I get the memory information of my target board with vxworks OS? Subject: Re: Passing -D strings to GCC? Subject: Re: How can I get the memory information of my target board with vxworks OS? Subject: Re: interrupts stuck on x86/VIA 82C686A Subject: Re: Need reccommendations for good JTAG ICE for MIPS cpu Subject: Re: How can I get the memory information of my target board with vxworks OS? Subject: Interrupt Handler code for a parallel port on a Motorola MV2700 Power PC Subject: Re: Need reccommendations for good JTAG ICE for MIPS cpu ------------------------------------------------------- Newsgroups: comp.os.vxworks Subject: Re: "select" misbehaving? Date: Wed, 26 Jun 2002 12:59:59 +0100 From: Danny Chapman Organization: Lucent Technologies, Columbus, Ohio Message-ID: References: <3D1887E7.5030607@wedgetail.com> On Tue, 25 Jun 2002, Derek Thomson wrote: > This same code works fine on Linux and Windows, so I'm fairly certain > it's correct. Are there any known problems with "select" on vxWorks? Not your problem, but... I believe (though I haven't had the opportunity to check for myself) that selecting on a TCP socket will not return if the remote end closes the connection (VxWorks 5.4 on PPC 755). This is different to Solaris behaviour. Incidently, maybe anyone answering this will be able to tell me if it is possible for write/send to return 0 (I asked this a week or two back with no response...). Cheers - Danny --------------------------- Newsgroups: comp.os.vxworks Subject: Network boot using ssh? Date: 26 Jun 2002 05:41:39 -0700 From: matthew.becker@usa.xerox.com (Matthew Becker) Organization: http://groups.google.com/ Message-ID: <94e55b6.0206260441.64d308a3@posting.google.com> How do people configure secure network boot using VxWorks? The options described in the Network Programmer's Guides for both 5.4 and AE describe network boot using ftp, rsh, and tftp. This would be fine if the host machine (that the boot files reside on) were isolated. However, if that machine has multiple interfaces (one to the target and one to the rest of the network), enabling rshd or ftpd (even enabling them properly) may open the host to security threats. The solution that I imagined would be network boot using ssh (target) to connect to an sshd on the host. Is this something that is being planned by WindRiver for a future VxWorks release? Is there a way to accomplish this (at boot time) using a third party implementation of ssh on VxWorks? Is there another solution that people use that I haven't hit upon (other than isolating the host or removing network boot entirely - options I cannot pursue)? Thanks in advance. - -Matt --------------------------- Newsgroups: comp.sys.mips,comp.os.vxworks,comp.arch.embedded Subject: Re: Need reccommendations for good JTAG ICE for MIPS cpu Date: Wed, 26 Jun 2002 16:06:48 +0300 From: "Barak Hermesh" Organization: Texas Instruments Message-ID: References: <558a531.0206251940.607bafb2@posting.google.com> I use VisionIce by WindRiver. I know it has some problems with embedded Linux, but it works fine with vxWorks code. "Earl Mitchell" wrote in message news:558a531.0206251940.607bafb2@posting.google.com... > Need reccs for a good ICE to use for MIPS. > Currently using vxWorks for RTOS but may > be changing. Any comments regarding ICE > for MIPS would be appreciated. > > -earlm --------------------------- Newsgroups: comp.os.vxworks Subject: Re: "select" misbehaving? Date: Wed, 26 Jun 2002 14:55:45 +0100 From: Phil Ashby Organization: IDL Message-ID: <3D19C7E1.3090309@idl.bt.co.uk> References: <3D1887E7.5030607@wedgetail.com> Derek Thomson wrote: > Hi, > > I'm using the "select" system call to determine if there is data > available on a socket - yet the call returns without setting the > appropriate bit even if there *is* data available. > > Strangely enough, if I force a psuedo-sleep with taskDelay(), between > calls to "select", it magically works. > > This same code works fine on Linux and Windows, so I'm fairly certain > it's correct. Are there any known problems with "select" on vxWorks? Are you polling with select (ie: is the timeout zero?). You may not be allowing the netTask any time to process TCP data coming in.. this works on Unix(ish) O/S'es because they timeslice applications.. - -- Phil "Phlash" Ashby (speaking only for himself) Work: http://www.internet-designers.net/ Home: http://www.ashbysoft.com/ --------------------------- Newsgroups: comp.os.vxworks Subject: Re: "select" misbehaving? Date: 26 Jun 2002 11:05:56 -0400 From: Bill Pringlemeir Organization: Factory of the mind Message-ID: References: <3D1887E7.5030607@wedgetail.com> Sender: bpringlemeir@DeadDuck >>>>> "Danny" == Danny Chapman writes: Danny> On Tue, 25 Jun 2002, Derek Thomson wrote: >> This same code works fine on Linux and Windows, so I'm fairly >> certain it's correct. Are there any known problems with "select" >> on vxWorks? Danny> Not your problem, but... Danny> I believe (though I haven't had the opportunity to check for Danny> myself) that selecting on a TCP socket will not return if the Danny> remote end closes the connection (VxWorks 5.4 on PPC Danny> 755). This is different to Solaris behaviour. This behavior is related to the fact that vxWorks doesn't support the "error" select mechanism; Just read and write. A close is usually an `error' selected mechanism. Danny> Incidently, maybe anyone answering this will be able to tell Danny> me if it is possible for write/send to return 0 (I asked this Danny> a week or two back with no response...). I believe that vxWorks starts to do this if the socket is closed. Also, the innocent looking "FD_ISSET", "FD_SET", and FD_ZERO" macros end up calling driver functions. DON'T USE "FD_SET" MORE THAN NECESSARY! This can definitely cause the select facilities to keep returning even when the `file' has no pending data. This seems to be a common mistake when people are coding their own select code on vxWorks. It seems that most of the Unix code I have ported didn't have this problem. hth, Bill Pringlemeir. - -- Married men live longer than single men, but married men are much more willing to die - Dilworth vxWorks FAQ, "http://www.xs4all.nl/~borkhuis/vxworks/vxworks.html" Hope married life is good for Johan. --------------------------- Newsgroups: comp.os.vxworks Subject: Network statistics incorrect Date: 26 Jun 2002 09:03:19 -0700 From: jzhang@drs.ca (Jason) Organization: http://groups.google.com/ Message-ID: We are going to monitor the network traffic, such as the total bytes are received an sent by an interface. It looks like that the network statistics on vxWorks is incorrect. For example, when I run ifShow(), it shows that some packets are received and sent, but the octets received and sent are always zero. Some people says that this problem is caused by Ethernet driver. I just can't understand. I think it is a very simple calculation, Total Octets = sum ( No. of packets * Packet Length ) Any comments are highly appreciated. Thanks a lot - -> ifShow motfec (unit number 0): Flags: (0x8063) UP BROADCAST MULTICAST ARP RUNNING Type: ETHERNET_CSMACD Internet address: 10.3.2.95 Broadcast address: 10.3.255.255 Netmask 0xff000000 Subnetmask 0xffff0000 Ethernet address is 00:50:c2:02:10:77 Metric is 0 Maximum Transfer Unit size is 1500 0 octets received 0 octets sent 95516 packets received 376 packets sent 349 unicast packets received 362 unicast packets sent 95167 non-unicast packets received 14 non-unicast packets sent 0 input discards 2917 input unknown protocols 0 input errors 0 output errors 0 collisions; 0 dropped --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Passing -D strings to GCC? Date: 26 Jun 2002 11:49:33 -0600 From: taashlo@sandia.gov Organization: Sandia National Laboratories, Albuquerque, NM USA Message-ID: References: Sender: taashlo@TYPHOON Bob Bradley writes: > Is it possible to pass a string via -D to the C compiler from a BAT > file? I'm no expert on BAT files, but I wrote some simple ones to > automate our vxWorks build process and I'd like to be able to pass down > a string (e.g. -DMY_STRING="My String") via an environment variable from > the BAT file to the C code. I've tried every combination of escape > characters I can think of, but it always seems to fail with an invalid > argument. > > I've tried adding "-DBUILD_VERSION="My Version" to EXTRA_DEFINE directly > in the makefile rather than passing it as an environment variable, but > it still fails. The line to ccppc seems to look correct (it has the > quote characters and looks just as I've defined it), but it fails > because it doesn't like a space in the string (treats it as a separate > argument), even though it is quoted. > > Is there any way to do this? If I'm understanding your question correctly, then yes, there is a way to do this. The way I've done this is to go to the project's 'Builds' tab and select the 'C/C++ Compiler' tab. In the edit box I then add $(MY_CFLAGS) to the rest of the C/C++ flags. Then on the make command line (in your .bat file) add: "MY_CFLAGS=-DBUILD_VERSION='My Version'" Post again if you have any problems or misunderstandings. Tad --------------------------- Newsgroups: comp.os.vxworks Subject: Booting without an ethernet connection Date: Wed, 26 Jun 2002 20:23:23 +0200 From: "jf hasson" Organization: Club-Internet / T-Online France Message-ID: <3d1a0770$0$10831$7a628cd7@news.club-internet.fr> Hi, We have a board for which we wrote a BSP for VxWorks 5.4 very much inspired by one already written and that proved to work perfectly fine. The problem is that we boot perfectly well when there is a connection on the ethernet port (the network doesn't matter, there just has to be a physical connection) but we can't boot the board when the ethernet cable is removed. Does anyone have a suggestion as to why the board behaves in such a way ? Where should we look in the BSP ? The chip for which the BSP is written is an IBM 405GP. Thanks, J.F --------------------------- Newsgroups: comp.os.vxworks Subject: Re: "select" misbehaving? Date: Wed, 26 Jun 2002 14:50:58 -0400 From: Keith Arner Organization: Marconi Message-ID: References: <3D1887E7.5030607@wedgetail.com> Reply-To: Keith Arner On 26 Jun 2002, Bill Pringlemeir wrote: > >>>>> "Danny" == Danny Chapman writes: > > Danny> I believe (though I haven't had the opportunity to check for > Danny> myself) that selecting on a TCP socket will not return if the > Danny> remote end closes the connection (VxWorks 5.4 on PPC > Danny> 755). This is different to Solaris behaviour. If the remote end closes the connection gracefully by sending a FIN packet, then select() will indicate activity on the fd for both read and write. If you read all the bytes that the remote side sent, then read will from that point forward return 0, which is your cue to close() it on your end. If the remote end closes the connection ungracefully (by crashing, and never sending any further packets), the local TCP does not know if the remote machine gave up, or if you're just having network congestion. Consequently, select() won't tell you anything special. > I believe that vxWorks starts to do this if the socket is closed. > Also, the innocent looking "FD_ISSET", "FD_SET", and FD_ZERO" macros > end up calling driver functions. As far as I can tell, operations on an fd_set data structure are all just fancy operations of a bit-array. No driver code called; not even a function call (except for FD_ZERO()). Check for yourself in target/h/types/vxTypesOld.h Keith - -- mv ~karner /loony/bin --------------------------- Newsgroups: comp.os.vxworks Subject: AGENT_NO_AGENT_PROC Date: Wed, 26 Jun 2002 19:36:37 GMT From: "Charles Krinke" Organization: Prodigy Internet http://www.prodigy.com Message-ID: <9JoS8.9514$S23.497494294@newssvr21.news.prodigy.com> I guess my inexperience with the windows tools is showing again. This morning I was running a target shell and calling a subroutine in the IQ80310 BSP no problem. It is in fact "i80312PciFindDevice", a provocative little subroutine. After a while, I got tired of compiling printf's into the source, so I says to myself, I says, lets use the host shell and try to single step through the code. So, I fire off the target server, get a shell, call the same subroutine and vxWorks host shell says: - -> i80312PciFindDevice 0x8086,0x7110,0,&a1,&a2,&a3 WTX Error 0x100d4 (AGENT_NO_AGENT_PROC) value = -1 = 0xffffffff I suspect that one or more of the 25 different options under "WDB agent services" should be selected for my project, but I dont know which one. Would you know offhand Buddy? Signed "less knowledgeable then I thought I was" --------------------------- Newsgroups: comp.os.vxworks Subject: Re: AGENT_NO_AGENT_PROC Date: Wed, 26 Jun 2002 20:04:38 GMT From: "Charles Krinke" Organization: Prodigy Internet http://www.prodigy.com Message-ID: References: <9JoS8.9514$S23.497494294@newssvr21.news.prodigy.com> Well, I'll answer my own question and pose a new one. I added WDB breakpoints, WDB call functions, WDB callouts, WDB memory access, WEB task creation, WDB tasks & WDB user event. It now runs the host shell without AGENT_NO_AGENT_PROC, however, I now get a "Cannot open VIO Channel for standard I/O" error. So, I next added show routines->stdio show routine and still see the same error. Even worse, I see none of my printfs from inside the subroutine (probably due to the previous error). For now, back to the target shell until I can understand this one. "Charles Krinke" wrote in message news:9JoS8.9514$S23.497494294@newssvr21.news.prodigy.com... > I guess my inexperience with the windows tools is showing again. This > morning I was running a target shell and calling a subroutine in the IQ80310 > BSP no problem. It is in fact "i80312PciFindDevice", a provocative little > subroutine. After a while, I got tired of compiling printf's into the > source, so I says to myself, I says, lets use the host shell and try to > single step through the code. So, I fire off the target server, get a shell, > call the same subroutine and vxWorks host shell says: > > -> i80312PciFindDevice 0x8086,0x7110,0,&a1,&a2,&a3 > > WTX Error 0x100d4 (AGENT_NO_AGENT_PROC) > > value = -1 = 0xffffffff > > I suspect that one or more of the 25 different options under "WDB agent > services" should be selected for my project, but I dont know which one. > Would you know offhand Buddy? > > Signed "less knowledgeable then I thought I was" > > --------------------------- Newsgroups: comp.os.vxworks Subject: message size for message queues Date: Wed, 26 Jun 2002 20:33:22 +0000 (UTC) From: "Jerry Atherton" Organization: Mailgate.ORG Server - http://www.Mailgate.ORG Message-ID: <9035d957171b2871c38612df55b2602d.94403@mygate.mailgate.org> hello, I have need to send inter-task messages which can peak to 10,000 bytes in size. 1) What its the tax/overhead of using traditional vxworks message queue copy wherein internally it uses bcopy() to copy the message of 10,000 bytes in size? I know a better solution is to pass message pointer, however I want to avoid malloc/free as far as possible. jerry. - -- Posted via Mailgate.ORG Server - http://www.Mailgate.ORG --------------------------- Newsgroups: comp.os.vxworks Subject: interrupts stuck on x86/VIA 82C686A Date: 26 Jun 2002 22:08:54 GMT From: Denis Perelyubskiy Message-ID: Hello, in 1999 I've seen some messsages here, describing the same problem. Furthermore I've seen others mention the problem elsewhere, leading me to believe that it is a fairly common one. I think we are seeing the same issue, and wonder if someone has any suggestions as to how to go about resolvign it: Target: x86, VIA 82C686A South Bridge. After some heavy interrupt activity, none of the interrupts (other then timer) are coming in. In our case, we have a master + slave APICs, with slave connected to IRQ2 of the master. Timer is IRQ0, and interrupts (network / serial) we are interested in are on the slave. Bit 2 in the Master's 8259 IS register is always set after the condition occurs. We're now at the stage where we are sure this is what's going on, but we are not certain about the reason for this. Our next step was going to go to www.agilent.com, get their APIC BUS product (lease it or smth) and look at transactions. However, we've seen plenty of reports pointing to a problem whereby a slave APIC is stuck due to lack of EOI. None of the problems we've seen, however, mentioned a solution, but some folks said they were working with WRS to resolve it. Does anyone know how to go about solving a problem, if it does turn out to be the lack of EOI, possibly due to spurious interrupt? Is this fixable in hardware only, or is it possible to do something in s/w? denis - -- if you want to reply by mail, please tweak my address in a reasonable way. sorry for the inconvenience. --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Regarding I/O porting writing statements in VxWorks Date: Wed, 26 Jun 2002 15:11:27 -0700 From: M Lang Organization: Jet Propulsion Laboratory - Pasadena CA Message-ID: <3D1A3C0F.7E3C206@jpl.nasa.gov> References: Reply-To: Minh.Lang@jpl.nasa.gov "Brian St. Pierre" wrote: > > "Rajesh" wrote in message > news:d3570688.0206242024.67841dfe@posting.google.com... > > Please let us know which > > are the equivalent rountines in VxWorks for the above mentioned > > routine( the equivalent routines in Turbo C under DOS is inportb for > > inp()and outportb for outb() ). The functionality of the rountines is > > as follows. > > > > outb( ioAddr, oByte)---->Writes a byte at the given address. > > inb(ioAddr)----->Reads a byte from the given address. > > igDisInt()->To disable interrupt. > > igSignal(sigId,hSig)-->The signal handler to notify the application of > > an asychrounous enents. The parameter sigld will hold and > > identification of the signal type and paremete hSig depends on sigId. > > outb & inb will probably have to be written for your particular hardware. > > Rough equivalents: > > igDisInt() --> intDisable() > igSignal() --> signal() [posix-based] > > Hope this helps. > > -- > -Brian St. Pierre > brian (at) > bstpierre.org outb( ioAddr, oByte)---->Writes a byte at the given address *(unsigned char *)ioAddr = oByte x = inb(ioAddr)----->Reads a byte from the given address x = *(unsigned char *)ioAddr --------------------------- Newsgroups: comp.arch.embedded,comp.realtime,comp.os.psos,comp.os.vxworks Subject: Re: Using C++ in Embedded Systems in Technical Report on C++ Performace (DRAFT) Date: Wed, 26 Jun 2002 23:05:10 GMT From: postmaster@noname.com (Ken Lee) Message-ID: <3d1a480c.54776304@News.CIS.DFN.DE> References: On Wed, 26 Jun 2002 09:57:53 +0200, "Alex Vinokur" wrote: >Technical Report on C++ Performace (DRAFT) : > >http://std.dkuug.dk/jtc1/sc22/wg21/docs/papers/2002/n1359.pdf > > >The Report contains a paragraph named "Using C++ in Embedded Systems". Hi Alex, An excellent piece of work. Bringing together a lot of issues and aspects of the C++ language under-the-one-roof. Ken. +====================================+ I hate junk email. Please direct any genuine email to: kenlee at hotpop.com --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Booting without an ethernet connection Date: Wed, 26 Jun 2002 17:45:17 -0700 From: "Michael R. Kesti" Organization: MK Associates Message-ID: <3D1A601D.C9DFD31A@gv.net> References: <3d1a0770$0$10831$7a628cd7@news.club-internet.fr> Reply-To: mkesti@gv.net jf hasson wrote: >Hi, > >We have a board for which we wrote a BSP for VxWorks 5.4 very much inspired >by one already written and that proved to work perfectly fine. The problem >is that we boot perfectly well when there is a connection on the ethernet >port (the network doesn't matter, there just has to be a physical >connection) but we can't boot the board when the ethernet cable is removed. >Does anyone have a suggestion as to why the board behaves in such a way ? "We can't boot the board is a bit vague. Can you be more specific? Is there any console output? Error messages? LED's that flicker? If you're running a typical environment, you have probably been using your network connection as your boot device, loading an image from a host. If that's true, then, unless you reconfigure the boot parameters to boot device from a local disk or other suitable storage device, you remove the boot ROM program's ability to load that image when you disconnect the network. If your target has no such device, you could use the Tornado project facilities to build a boot ROM that includes a fully configured OS, and perhaps an application program, too, that boots itself. >Where should we look in the BSP ? The chip for which the BSP is written is >an IBM 405GP. Typing ? at the console boot prompt ("[VxWorks Boot]: ") results in a short help menu followed by a list of bootable devices. If there are only network devices listed there, then you could, again, build a self booting ROM, or maybe you're in for some BSP work to add a bootable storage device. >Thanks, You're welcome. - -- ======================================================================== Michael Kesti | "And like, one and one don't make | two, one and one make one." mkesti@gv.net | - The Who, Bargain --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Passing -D strings to GCC? Date: Wed, 26 Jun 2002 17:51:52 -0700 From: Bob Bradley Organization: Uh huh huh...It says Organ Message-ID: References: In article , taashlo@sandia.gov wrote: > If I'm understanding your question correctly, then yes, there is a > way to do this. The way I've done this is to go to the project's > 'Builds' tab and select the 'C/C++ Compiler' tab. In the edit box > I then add $(MY_CFLAGS) to the rest of the C/C++ flags. Then on the > make command line (in your .bat file) add: > > "MY_CFLAGS=-DBUILD_VERSION='My Version'" I've tried that, but I still seem to get the same error. I even simplified my test down to the following (test.c is an empty file) from the DOS prompt: ccppc -DMY_TEST="My Test" test.c I get the standard usage message due to a bad argument. I also tried using single quotes and I get a compile error about an unterminated string or character constant. I'm using GCC 2.7.2 (using ccppc -v) from a normal install of Tornado 2.0.2. --------------------------- Newsgroups: comp.os.vxworks Subject: Does socket send return after data is buffered or data is transmitted? Date: 26 Jun 2002 18:01:32 -0700 From: earl.mitchell@accetnetwork.com (Earl Mitchell) Organization: http://groups.google.com/ Message-ID: <558a531.0206261701.5bc94c9f@posting.google.com> When you send data on a socket does the send call return immediately after copying you data into its socket layer buffers or does it return after TCP has transmitted that data to receiver and gotten an ACK for that data? I believe it returns as soon as your data is copied and only pends in the send call when no free space is available. - -earlm --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Tornado make fails to parse /bin/sh commands but cygwin and linux make do it Date: 26 Jun 2002 18:04:42 -0700 From: earl.mitchell@accetnetwork.com (Earl Mitchell) Organization: http://groups.google.com/ Message-ID: <558a531.0206261704.5872e77c@posting.google.com> References: <558a531.0206152111.531bda45@posting.google.com> <59ohea.gsf.ln@gonzo.cybermuppet.co.uk> <558a531.0206171448.76107b44@posting.google.com> <5Z5S8.665$mp2.295328@newshog.newsread.com> "Brian St. Pierre" wrote in message news:<5Z5S8.665$mp2.295328@newshog.newsread.com>... > "Earl Mitchell" wrote: > > molochai wrote: > > > Earl Mitchell wrote: > > > > Does anyone know why > > > > my Tornado make.exe is failing to parse /bin/sh > > > > commands in makefiles? > > > > > > Make doesn't 'parse' shell commands - it passes the commands a line at a > > > time to a shell to execute after expanding macros. The WRS supplied GNU > > > Make uses cmd32.exe on Windoze platforms (the windows command shell). > > > > There's of course nothing to stop you running /bin/sh (or surely > /bin/bash?) > > > from the make rule. > > > > How do you do this? I'm not familiar with interaction between make an > > the shell programs. Also the fact that WRS's make.exe does not process > > /bin/sh commands even when running in DOS shell (i.e. not cygwin shell) > > is just plain wrong since the GNU make manual says it should support it. > > I'd prefer not to modify my makefiles if I don't have to. > > One thing you can attempt is to set the SHELL environment variable to sh.exe > (see http://www.gnu.org/manual/make/html_node/make_47.html). I'm not sure if > this is properly supported in the WRS version of GNU make. > > > But it gets worse ... I should be able to replace WRS's make.exe with > > the one the works from Cygnus but when I try this it does not work with > > WRS's makefiles? It works with my test makefile but not WRS's makefiles? > > The two makes are not interchangeable. Cygnus make is much friendlier to > both /'s and \'s than WRS make, which seems to only like \'s. I think there > are some other differences, but the bottom line is that WRS makefiles simply > won't work with cygnus without a little work. > > > So two questions: > > 1. How to get WRS's make.exe to handle /bin/sh commands in makefiles. > > 2. Why doesn't cygnus's make.exe work with WRS's makefiles? > > Hope I answered these at least a little bit. I tried this using make.exe distributed with Tornado and it does not work. My simple makefile is below test: @echo "this is a test" @if [ "1" = "1" ] ; then \ echo "working" ; \ fi ; I tried the following in a cygwin shell ... Administrator@CONSULTANTS c:/tornado/target/config/demo $ export SHELL=bash Administrator@CONSULTANTS c:/tornado/target/config/demo $ export MAKESHELL=bash Administrator@CONSULTANTS c:/tornado/target/config/demo $ printenv | grep 'SHELL' MAKESHELL=bash SHELL=bash Administrator@CONSULTANTS c:/tornado/target/config/demo/tgv5261 $ make -f make.test "this is a test" "1" was unexpected at this time. make.exe: *** [test] Error 0x1 Also repeated above using "sh' instead of "bash". Also tried adding the absolute pathname for sh and bash. Am I doing something wrong here? The newer cygwin version of make.exe runs this test makefile correctly. But when I use it with Tornado makefiles it has problems because of .bat files called by WRS makefiles. For example, if I do a "make clean" it cannot find "vxrm" which is in the search path but cygwin make does not find it because its vxrm.bat and not vxrm.exe. If I could solve this problem I could probably use the cygwin make.exe. - -earlm --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Help with Watchdog Timer Date: Thu, 27 Jun 2002 02:20:22 GMT From: Pete Kockritz Organization: AT&T Broadband Message-ID: References: <68b528d4.0206241237.6d2cc8dc@posting.google.com> <3D17C273.230BF95F@gv.net> <68b528d4.0206250614.6c1651cc@posting.google.com> In article <68b528d4.0206250614.6c1651cc@posting.google.com>, colintelfer@hotmail.com (CT) wrote: > I am wondering what can trigger the stack corruption. I understand > that having lots of processing inside the call back can be dangerous > but what exactly about this can cause stack corruption? I read > something about deferred watchdog work could this be a problem? How much stack does your WD callback use? Do _all_ of your tasks have that much stack margin (including vxWorks tasks)? If not, you're asking for trouble. The work done in the watchdog callback may be deferred and executed in the context of _any_ task. Bottom line, do as little as possible in the callback; give a semphore or send a msg to a task to do the work. - -- Pete Kockritz --------------------------- Newsgroups: comp.os.vxworks Subject: Re: How can I get the memory information of my target board with vxworks OS? Date: 26 Jun 2002 19:28:21 -0700 From: seasoblue2000@yahoo.com.cn (seasoblue) Organization: http://groups.google.com/ Message-ID: References: Hi, Michael I already configed in config.h file like this: /***********************************************/ #undef LOCAL_MEM_AUTOSIZE /* run-time memory sizing */ #define LOCAL_MEM_SIZE 0x00800000 /* 8M words*/ #define USER_RESERVED_MEM 0 /* see sysMemTop() */ #define DRAM_TYPE 1 /* 1 - SDRAM, 0 - EDO DRAM */ /***********************************************/ In snds100.h file, I also configed SDRAM like this: /************************************************************************* * * SDRAM Memory Bank 0 area MAP for Exception vector table * and Stack, User code area. */ #define DRAM_BASE 0x0 /* Final start address of SDRAM */ #define DRAM_LIMIT 0x800000 /* 8M words*/ #define RESET_DRAM_START 0x2000000 /* Start of SDRAM on power-up */ #define RESET_ROM_START 0x0 /* Start od ROM on power-up */ #define SNoColumnAddr0 1 /*0=8bit,1=9bit,2=10bit,3=11bits. Number of column address bits in SDRAM*/ /**************************************************************************** Afer config, I flash the bootrom. Can S3C4510B support SDRAM to 32M bytes in one bank? Best regards "Michael Lawnick" wrote in message news:... > Hi seasoblue, > > check that in config.h either > LOCAL_MEM_AUTOSIZE is defined > or > LOCAL_MEM_SIZE is defined to 0x02000000 > > Don't forget to flash a new bootROM ! > > HTH > Michael --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Booting without an ethernet connection Date: Thu, 27 Jun 2002 03:39:32 GMT From: allanh@gate1.kallisti.com (Allan Hessenflow) Organization: A poorly-installed InterNetNews site Message-ID: References: <3d1a0770$0$10831$7a628cd7@news.club-internet.fr> In article <3d1a0770$0$10831$7a628cd7@news.club-internet.fr>, jf hasson wrote: >Hi, > >We have a board for which we wrote a BSP for VxWorks 5.4 very much inspired >by one already written and that proved to work perfectly fine. The problem >is that we boot perfectly well when there is a connection on the ethernet >port (the network doesn't matter, there just has to be a physical >connection) but we can't boot the board when the ethernet cable is removed. >Does anyone have a suggestion as to why the board behaves in such a way ? >Where should we look in the BSP ? The chip for which the BSP is written is >an IBM 405GP. This is a known problem with the combination of the 405GP ethernet controller, the driver Windriver supplies for that controller, and some PHYs. What is happening is that the PHY on your board does not provide one of the clocks (transmit or receive; I forget which) when the port is not connected, and the 405GP MAC will never come out of reset without that clock. It can be worked around in the ethernet driver, but you'll probably be on your own making those changes; Windriver's response when we asked about this was that they couldn't do it anytime soon unless we wanted to pay their consulting group to do it (the IBM Walnut board shows the same problem, and that is what Windriver provided the BSP for (at least in our case), so Windriver really should fix it without charging extra). allan - -- Allan N. Hessenflow allanh@kallisti.com --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Passing -D strings to GCC? Date: Thu, 27 Jun 2002 07:48:54 +0200 From: "Martin Raabe" Organization: 1&1 Internet AG Message-ID: References: Hello Bob, which Windows/Dos are you using? It works fine using cmd.exe, which is WinNT/2000/XP. So I expect you are using command.com? Maybe on Win9x? Ciao - -- Martin Raabe E: Martin.RaabeATNOSPAMBaSystem.de "Bob Bradley" schrieb im Newsbeitrag news:bob-36E678.17515226062002@news.apple.com... > In article , taashlo@sandia.gov wrote: > > > If I'm understanding your question correctly, then yes, there is a > > way to do this. The way I've done this is to go to the project's > > 'Builds' tab and select the 'C/C++ Compiler' tab. In the edit box > > I then add $(MY_CFLAGS) to the rest of the C/C++ flags. Then on the > > make command line (in your .bat file) add: > > > > "MY_CFLAGS=-DBUILD_VERSION='My Version'" > > I've tried that, but I still seem to get the same error. I even > simplified my test down to the following (test.c is an empty file) from > the DOS prompt: > > ccppc -DMY_TEST="My Test" test.c > > I get the standard usage message due to a bad argument. > > I also tried using single quotes and I get a compile error about an > unterminated string or character constant. > > I'm using GCC 2.7.2 (using ccppc -v) from a normal install of Tornado > 2.0.2. --------------------------- Newsgroups: comp.os.vxworks Subject: Re: "select" misbehaving? Date: Thu, 27 Jun 2002 06:27:30 GMT From: Derek Thomson Organization: Optus Customer - reports relating to abuse should be sent to abuse@optus.net.au Message-ID: <3D1AB050.6080005@wedgetail.com> References: <3D1887E7.5030607@wedgetail.com> <3D19C7E1.3090309@idl.bt.co.uk> Phil Ashby wrote: > Derek Thomson wrote: > >> Hi, >> >> I'm using the "select" system call to determine if there is data >> available on a socket - yet the call returns without setting the >> appropriate bit even if there *is* data available. >> >> Strangely enough, if I force a psuedo-sleep with taskDelay(), between >> calls to "select", it magically works. >> >> This same code works fine on Linux and Windows, so I'm fairly certain >> it's correct. Are there any known problems with "select" on vxWorks? > > > Are you polling with select (ie: is the timeout zero?). You may not be > allowing the netTask any time to process TCP data coming in.. this works > on Unix(ish) O/S'es because they timeslice applications.. > Yes, I am. But I was told that vxWorks was pre-emptive. Have I been misinformed? I've also discovered that "select" on vxWorks only seems to set the flag for the lowest fd bit that's ready for I/O in the bit set, which has some interesting effects if you are expecting *all* bits for which you declared interest to be appropriately modified. I've re-arranged my code slightly to allow for this, and it works much better. Regards, Derek. --------------------------- Newsgroups: comp.os.vxworks Subject: Re: How can I get the memory information of my target board with vxworks OS? Date: Thu, 27 Jun 2002 09:21:01 +0200 From: "Michael Lawnick" Organization: Buergernetz Dillingen Message-ID: References: Reply-To: "Michael Lawnick" Sender: mlawnick@pd9e65ec5.dip.t-dialin.net Hi seasoblue, > #define LOCAL_MEM_SIZE 0x00800000 /* 8M words*/ you limit your board to 8 MByte not 8M words !!!! You need #define LOCAL_MEM_SIZE 0x02000000 except your BSP is a very special one, breaking the vxWorks-Standard. > Can S3C4510B support SDRAM to 32M bytes in one bank? Sorry I don't know your H/W, so I'm only able to answer from standard view. Regards Michael "seasoblue" schrieb im Newsbeitrag news:e82d8e83.0206261828.16405d51@posting.google.com... > Hi, Michael > I already configed in config.h file like this: > /***********************************************/ > #undef LOCAL_MEM_AUTOSIZE /* run-time memory sizing */ > #define LOCAL_MEM_SIZE 0x00800000 /* 8M words*/ > #define USER_RESERVED_MEM 0 /* see sysMemTop() */ > #define DRAM_TYPE 1 /* 1 - SDRAM, 0 - EDO DRAM */ > /***********************************************/ > > In snds100.h file, I also configed SDRAM like this: > /************************************************************************* > * > * SDRAM Memory Bank 0 area MAP for Exception vector table > * and Stack, User code area. > */ > > #define DRAM_BASE 0x0 /* Final start address of SDRAM */ > #define DRAM_LIMIT 0x800000 /* 8M words*/ > #define RESET_DRAM_START 0x2000000 /* Start of SDRAM on power-up */ > #define RESET_ROM_START 0x0 /* Start od ROM on power-up */ > > #define SNoColumnAddr0 1 /*0=8bit,1=9bit,2=10bit,3=11bits. Number of > column address bits in SDRAM*/ > > /*************************************************************************** * > Afer config, I flash the bootrom. > Can S3C4510B support SDRAM to 32M bytes in one bank? > > Best regards > > > > > "Michael Lawnick" wrote in message news:... > > Hi seasoblue, > > > > check that in config.h either > > LOCAL_MEM_AUTOSIZE is defined > > or > > LOCAL_MEM_SIZE is defined to 0x02000000 > > > > Don't forget to flash a new bootROM ! > > > > HTH > > Michael --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Passing -D strings to GCC? Date: Thu, 27 Jun 2002 00:59:38 -0700 From: Bob Bradley Organization: Uh huh huh...It says Organ Message-ID: References: In article , "Martin Raabe" wrote: > It works fine using cmd.exe, which is WinNT/2000/XP. > So I expect you are using command.com? Maybe on Win9x? I'm using Windows XP. If you do the following: ccppc -DMY_TEST="My Test" test.c Does it compile for you? If so, are you using the standard 2.7.2 version of GCC installed by Tornado 2.0.2? --------------------------- Newsgroups: comp.os.vxworks Subject: Re: How can I get the memory information of my target board with vxworks OS? Date: 27 Jun 2002 02:09:03 -0700 From: seasoblue2000@yahoo.com.cn (seasoblue) Organization: http://groups.google.com/ Message-ID: References: Hi, I have resolved the trouble! Useing 'memShow' to get memory information is correct.After I reconfig my config.h and snds100.h files with 16M bytes SDRAM, the target board works well! But it's seemed that samsung S3C4510B MCU CAN'T support SDRAM size up to 32M bytes with one SDRAM chip select pin. Because if I change SDRAM size from 16M to 32M, it doesn't works,even has no data from serial port. Does anybody know it support 32M bytes SDRAM with one chip select pin or not??? Best Regards, seasoblue --------------------------- Newsgroups: comp.os.vxworks Subject: Re: interrupts stuck on x86/VIA 82C686A Date: Thu, 27 Jun 2002 11:16:16 +0200 From: "frees" Message-ID: References: Hello Denis, we fixed this problem by using a newer version (V01K, 27. Aug. 1999) of modul I8259INTR.C. A change is made in function I8259IntBoi. This is documented in SPR 28547. Wolfgang Denis Perelyubskiy schrieb in im Newsbeitrag: slrnahkerl.6ps.denis_newsREMOVE-TO-REPLY@concorde.cs.ucla.edu... > Hello, > > in 1999 I've seen some messsages here, describing the same > problem. Furthermore I've seen others mention the problem > elsewhere, leading me to believe that it is a fairly common > one. I think we are seeing the same issue, and wonder if > someone has any suggestions as to how to go about resolvign > it: > > Target: x86, VIA 82C686A South Bridge. > > After some heavy interrupt activity, none of the > interrupts (other then timer) are coming in. In our case, > we have a master + slave APICs, with slave connected to > IRQ2 of the master. Timer is IRQ0, and interrupts > (network / serial) we are interested in are on the slave. > Bit 2 in the Master's 8259 IS register is always set > after the condition occurs. > > We're now at the stage where we are sure this is what's > going on, but we are not certain about the reason for > this. Our next step was going to go to www.agilent.com, > get their APIC BUS product (lease it or smth) and look at > transactions. However, we've seen plenty of reports > pointing to a problem whereby a slave APIC is stuck due > to lack of EOI. > > None of the problems we've seen, however, mentioned a > solution, but some folks said they were working with WRS to > resolve it. > > Does anyone know how to go about solving a problem, if it > does turn out to be the lack of EOI, possibly due to > spurious interrupt? Is this fixable in hardware only, or is > it possible to do something in s/w? > > denis > > -- > if you want to reply by mail, please tweak my > address in a reasonable way. sorry for the > inconvenience. --------------------------- Newsgroups: comp.sys.mips,comp.os.vxworks,comp.arch.embedded,comp.os.linux.embedded Subject: Re: Need reccommendations for good JTAG ICE for MIPS cpu Date: Thu, 27 Jun 2002 10:26:40 +0100 From: "Matt Welsford" Organization: Philips Semiconductors Message-ID: <3d1ada51$0$9442$4d4eb98e@read-nat.news.uk.uu.net> References: <558a531.0206251940.607bafb2@posting.google.com> Reply-To: "Matt Welsford" Hello Barak, You mention that the VisionProbe has problems with embedded linux, please can you explain further... As this is not the scope of this newsgroup I have included the comp.os.linux.embedded in the included news groups. Regards Matt "Barak Hermesh" wrote in message news:afce9b$6qm$1@tilde.itg.ti.com... > I use VisionIce by WindRiver. > I know it has some problems with embedded Linux, but it works fine with > vxWorks code. > > "Earl Mitchell" wrote in message > news:558a531.0206251940.607bafb2@posting.google.com... > > Need reccs for a good ICE to use for MIPS. > > Currently using vxWorks for RTOS but may > > be changing. Any comments regarding ICE > > for MIPS would be appreciated. > > > > -earlm > > --------------------------- Newsgroups: comp.os.vxworks Subject: Re: How can I get the memory information of my target board with vxworks OS? Date: 27 Jun 2002 02:34:40 -0700 From: seasoblue2000@yahoo.com.cn (seasoblue) Organization: http://groups.google.com/ Message-ID: References: Hi, I have resolved the trouble! Useing 'memShow' to get memory information is correct.After I reconfig my config.h and snds100.h files with 16M bytes SDRAM, the target board works well! But it's seemed that samsung S3C4510B MCU CAN'T support SDRAM size up to 32M bytes with one SDRAM chip select pin. Because if I change SDRAM size from 16M to 32M, it doesn't works,even has no data from serial port. Does anybody know it support 32M bytes SDRAM with one chip select pin or not??? Best Regards, seasoblue --------------------------- Newsgroups: comp.os.vxworks Subject: Interrupt Handler code for a parallel port on a Motorola MV2700 Power PC Date: Thu, 27 Jun 2002 11:11:00 +0100 From: "Bezza" Organization: Thales Message-ID: We are currently trying to find out some information regarding writing an interrupt Handler for the Parallel port of a Motorola MV2700 Power PC board, but cannot find any helpful information on the Web. Has anyone either done this before, or can supply any useful information with regards to this problem. Any assistance to this problem would be greatly appreciated. --------------------------- Newsgroups: comp.sys.mips,comp.os.vxworks,comp.arch.embedded,comp.os.linux.embedded Subject: Re: Need reccommendations for good JTAG ICE for MIPS cpu Date: Thu, 27 Jun 2002 13:28:34 +0300 From: "Barak Hermesh" Organization: Texas Instruments Message-ID: References: <558a531.0206251940.607bafb2@posting.google.com> <3d1ada51$0$9442$4d4eb98e@read-nat.news.uk.uu.net> All I know is that for some reason the VisionIce doesn't see the symbols in the .ab file generated for Linux. Try an ICE called BDI2000. I know it works well for Linux. "Matt Welsford" wrote in message news:3d1ada51$0$9442$4d4eb98e@read-nat.news.uk.uu.net... > Hello Barak, > > You mention that the VisionProbe has problems with embedded linux, please > can you explain further... > > As this is not the scope of this newsgroup I have included the > comp.os.linux.embedded in the included news groups. > > Regards > Matt > > > "Barak Hermesh" wrote in message > news:afce9b$6qm$1@tilde.itg.ti.com... > > I use VisionIce by WindRiver. > > I know it has some problems with embedded Linux, but it works fine with > > vxWorks code. > > > > "Earl Mitchell" wrote in message > > news:558a531.0206251940.607bafb2@posting.google.com... > > > Need reccs for a good ICE to use for MIPS. > > > Currently using vxWorks for RTOS but may > > > be changing. Any comments regarding ICE > > > for MIPS would be appreciated. > > > > > > -earlm > > > > > > --------------------------- End of New-News digest ********************** From vxwexplo-errs@csg.lbl.gov Thu Jun 27 05:10:04 2002 From: =?iso-8859-1?q?Sharath=20Chandra?= Date: Thu Jun 27 05:10:06 PDT 2002 Subject: Signals in VxWorks --0-1125712450-1025179794=:27771 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Hi I am a student trying to learn VxWorks. I am presently running a program to generate a signal on the default simulator available in Tornado. With the kill() command, the signal is generated without any problems, however, the handler does not get executed. Thinking this was a problem with my code, I have run the example code available on the FAQ list...but face the same problem. Is this because I use the standard simulator and not a real target board, or is there a better explanation. Thanks, SC --------------------------------- Sell you car, by placing a classified ad on Yahoo India Autos . It's Free!! --0-1125712450-1025179794=:27771 Content-Type: text/html; charset=iso-8859-1 Content-Transfer-Encoding: 8bit

Hi

I am a student trying to learn VxWorks. I am presently running a program to generate a signal on the default simulator available in Tornado. With the kill() command, the signal is generated without any problems, however, the handler does not get executed. Thinking this was a problem with my code, I have run the example code available on the FAQ list...but face the same problem.

Is this because I use the standard simulator and not a real target board, or is there a better explanation.

Thanks,

SC


new   Sell you car, by placing a classified ad on Yahoo India Autos . It's Free!!    --0-1125712450-1025179794=:27771-- From vxwexplo-errs@csg.lbl.gov Fri Jun 28 04:03:14 2002 From: Vxworks Exploder Date: Fri Jun 28 04:03:16 PDT 2002 Subject: comp.os.vxworks newsdigest Comp.Os.Vxworks Daily Digest Fri Jun 28 04:03:09 PDT 2002 Subject: Re: Ethernet sniffer or RAW sockets?? Subject: Re: "select" misbehaving? Subject: Re: Tornado make fails to parse /bin/sh commands but cygwin and linux make do it Subject: Re: Help with Watchdog Timer Subject: a few basic questions for vxworks Subject: rpc at boot time Subject: Re: Regarding I/O porting writing statements in VxWorks Subject: Reboot on shell prompt does not work Subject: Reboot on shell prompt does not work Subject: Re: Bootable c++ application with templates Subject: [AE] Assembly in P3 BSP - BIOS erase block Subject: IXP1200 StrongARM BSP Subject: BSP building Info Subject: Re: Need reccommendations for good JTAG ICE for MIPS cpu Subject: Re: need 64 microseconds accurate timing.... Subject: Re: Network statistics incorrect Subject: Re: bootpParamsGet Subject: Can you help me analyze it? vxWorks expert! Subject: Re: "select" misbehaving? Subject: Re: a few basic questions for vxworks Subject: Re: Passing -D strings to GCC? Subject: syncronize systemtime with a timeserver? Subject: problems with security manager Subject: Problem of periodic timer in Vxworks?? Subject: any one with experience in tornado1.0?challenge to tornado1.0 users Subject: any one with experience in tornado1.0?challenge to tornado1.0 users ------------------------------------------------------- Newsgroups: comp.os.vxworks Subject: Re: Ethernet sniffer or RAW sockets?? Date: Thu, 27 Jun 2002 12:54:07 GMT From: emdezpk@yahoo.ca (Duke Skylurker) Organization: MCOM Message-ID: References: <2df53411.0206260253.250377c5@posting.google.com> Yep, I found it. There are sources in the NPT package, and examples in src\drv\wdb. What amazes me, that there can be only 1 receive procedure for each protocol. There can not be 2 SNARF users, and wdb is always one of them!! Anyway, since the END_OBJ's and NET_PROTOCOL structures are known, you can always cheat the system. ALSO - it seems that IP protocol implementation do not reject a package if it's MAC address is wrong. Bad, bad implementation! I finally succeeded in putting my ethernet controller into promiscuous mode (had to read controller's specs and write directly into its registers - driver did not support it), and alas, MUX_PROTO_PROMISCUOUS gets practically nothing. Duke S. sameer_manuja@yahoo.com (Sameer) wrote in <2df53411.0206260253.250377c5@posting.google.com>: > Hi, > > I only know how TCP/IP attaches itself to END (mux based) NIC drivers. > TCP/IP stack on VxWorks provides a function ipAttach for this that > takes the unit number and the device name u want to attach the stack > to. Internally this function calls the muxBind routine of the MUX > providing it with the device name and the unit number and the callback > routines of the stack. > > The MUX manages the list of the stacks attached to a device in the > protocols member of the end_object structure for the device. On > receiving packets, the device driver calls the receive routine of the > mux, which in turn iterates through the protocols list giving each > protocol of the packet type (IP stack or ARP stack etc...) a chance to > have a look at the packet. If we create a protocol of type > MUX_PROTO_SNARF, it is added to the head of the protocols list and is > the first one to have a look at the packet. This idea can be used to > implement filtering for END drivers. > > HTH, > Sameer > --------------------------- Newsgroups: comp.os.vxworks Subject: Re: "select" misbehaving? Date: Thu, 27 Jun 2002 13:07:19 GMT From: "Brian St. Pierre" Organization: Worldpath Internet Services (worldpath.net) Message-ID: References: <3D1887E7.5030607@wedgetail.com> <3D19C7E1.3090309@idl.bt.co.uk> <3D1AB050.6080005@wedgetail.com> Derek Thomson wrote: > Phil Ashby wrote: > > Derek Thomson wrote: > > > > Are you polling with select (ie: is the timeout zero?). You may not be > > allowing the netTask any time to process TCP data coming in.. this works > > on Unix(ish) O/S'es because they timeslice applications.. > > > > Yes, I am. But I was told that vxWorks was pre-emptive. Have I been > misinformed? You were not misinformed; vxWorks runs the highest priority task that is "ready". So if your task has a higher priority than the netTask and you are polling select with timeout zero then your task will basically always be ready and the netTask will never run. - -- - -Brian St. Pierre brian (at) bstpierre.org --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Tornado make fails to parse /bin/sh commands but cygwin and linux make do it Date: Thu, 27 Jun 2002 13:14:03 GMT From: "Brian St. Pierre" Organization: Worldpath Internet Services (worldpath.net) Message-ID: References: <558a531.0206152111.531bda45@posting.google.com> <59ohea.gsf.ln@gonzo.cybermuppet.co.uk> <558a531.0206171448.76107b44@posting.google.com> <5Z5S8.665$mp2.295328@newshog.newsread.com> <558a531.0206261704.5872e77c@posting.google.com> "Earl Mitchell" wrote: > > Administrator@CONSULTANTS c:/tornado/target/config/demo > $ printenv | grep 'SHELL' > MAKESHELL=bash > SHELL=bash > > Administrator@CONSULTANTS c:/tornado/target/config/demo/tgv5261 > $ make -f make.test > "this is a test" > "1" was unexpected at this time. > make.exe: *** [test] Error 0x1 > > Also repeated above using "sh' instead of "bash". Also tried > adding the absolute pathname for sh and bash. Am I doing > something wrong here? My suggestion would have been to use SHELL='c:\cygwin\bin\bash.exe', but if you've tried that then maybe WRS make is too old to use this variable. > The newer cygwin version of make.exe runs this test makefile correctly. > But when I use it with Tornado makefiles it has problems because of .bat > files called by WRS makefiles. For example, if I do a "make clean" > it cannot find "vxrm" which is in the search path but cygwin make > does not find it because its vxrm.bat and not vxrm.exe. If I could solve > this problem I could probably use the cygwin make.exe. Grasping here, but you could try creating a "vxrm" that cygwin would be willing to run through bash: #!/bin/bash rm -f $* Call this vxrm (no extension) and place it somewhere in your path. Cygwin should pick it up. If that doesn't work, I'm out of tricks... - -- - -Brian St. Pierre brian (at) bstpierre.org --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Help with Watchdog Timer Date: 27 Jun 2002 07:08:13 -0700 From: colintelfer@hotmail.com (CT) Organization: http://groups.google.com/ Message-ID: <68b528d4.0206270608.707fdb65@posting.google.com> References: <68b528d4.0206241237.6d2cc8dc@posting.google.com> <3D17C273.230BF95F@gv.net> <68b528d4.0206250614.6c1651cc@posting.google.com> Pete Kockritz wrote in message news:... > In article <68b528d4.0206250614.6c1651cc@posting.google.com>, > colintelfer@hotmail.com (CT) wrote: > > > I am wondering what can trigger the stack corruption. I understand > > that having lots of processing inside the call back can be dangerous > > but what exactly about this can cause stack corruption? I read > > something about deferred watchdog work could this be a problem? > > How much stack does your WD callback use? Do _all_ of your tasks have > that much stack margin (including vxWorks tasks)? If not, you're asking > for trouble. > > The work done in the watchdog callback may be deferred and executed in > the context of _any_ task. Bottom line, do as little as possible in the > callback; give a semphore or send a msg to a task to do the work. The stack of the currently implemented WD callback can get big. I can't guarantee that all my other tasks could handle this additional stack space. I think I will use a semaphore or netJobAdd to let a task do the work of the callback. But I am curious about the deferred execution, when does this happen and which task is used to store the WD callback stack (can it really be _any_ task)? Thanks for the help, Colin --------------------------- Newsgroups: comp.os.vxworks Subject: a few basic questions for vxworks Date: Thu, 27 Jun 2002 11:18:27 -0400 From: "James" Organization: Bell Sympatico Message-ID: Hi, 1. We want to set/get address of target 0x180, in High c, we can use _outp(0x180, 0); _inp(0x180); but how can VxWork deal with I/O directly? 2. difference and relationship between POSIX and Kernel ? 3. In which specific cases, we can let the application using VxWorks crash? eg. the programmer made a mistake, buffer is not enough, can VxWorks handle this case without crash the system? we have such bad experience by using other RTOS, the machine is totally out of control, very scary. Thanks in advance, James --------------------------- Newsgroups: comp.os.vxworks Subject: rpc at boot time Date: 27 Jun 2002 09:01:53 -0700 From: gilb@scopus.co.il (gilb) Organization: http://groups.google.com/ Message-ID: <5de84f2e.0206270801.30977382@posting.google.com> Hi all, We need to write the following boot sequence: 1. initialize the network. 2. start rpc server (wait for ftp parameters). 3. when receiving ftp parameters from the rpc client use ftpXfer to load the application. I wrote the rpc client and server and tested them. In order to do so, I altered bootConfig.c/usrRoot to call rpcInit and to spawn a task for the rpc server. Everything works fine until the call to svc_register(). The function returns an error. Has anyone tried to do something similar to that ? Any help would be appreciated. GilB --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Regarding I/O porting writing statements in VxWorks Date: Thu, 27 Jun 2002 16:43:42 GMT From: "Brian St. Pierre" Organization: Worldpath Internet Services (worldpath.net) Message-ID: <2hHS8.828$mp2.456968@newshog.newsread.com> References: <3D1A3C0F.7E3C206@jpl.nasa.gov> "M Lang" wrote: > "Brian St. Pierre" wrote: > > "Rajesh" wrote in message > > > Please let us know which > > > are the equivalent rountines > > > > > > outb( ioAddr, oByte)---->Writes a byte at the given address. > > > inb(ioAddr)----->Reads a byte from the given address. > > > > outb & inb will probably have to be written for your particular hardware. > > outb( ioAddr, oByte)---->Writes a byte at the given address > > *(unsigned char *)ioAddr = oByte > > x = inb(ioAddr)----->Reads a byte from the given address > > x = *(unsigned char *)ioAddr I don't know much about GPIB cards (what processor type does this run?). If you're trying to write to the i/o ports of an x86 then those statements won't work. There may be x86-specific routines in vxWorks for writing to the i/o ports, but I've never used vxWorks on an x86. - -- - -Brian St. Pierre brian (at) bstpierre.org --------------------------- Newsgroups: comp.os.vxworks Subject: Reboot on shell prompt does not work Date: 27 Jun 2002 10:15:32 -0700 From: vkinger@hotmail.com (Kinger) Organization: http://groups.google.com/ Message-ID: I am having trouble while rebooting my box(PPC860/Tornado2.0.2/vxworks5.4)from the target shell prompt, it hangs my box. Can someone help?? --------------------------- Newsgroups: comp.os.vxworks Subject: Reboot on shell prompt does not work Date: 27 Jun 2002 10:18:04 -0700 From: vkinger@hotmail.com (Kinger) Organization: http://groups.google.com/ Message-ID: I am having trouble while rebooting my box(PPC860/Tornado2.0.2/vxworks5.4)from the target shell prompt, it hangs my box. Can someone help?? --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Bootable c++ application with templates Date: 27 Jun 2002 13:35:02 -0400 From: Bill Pringlemeir Organization: Factory of the mind Message-ID: References: Sender: bpringlemeir@DeadDuck Me writes: >> As you are no doubt a brilliant C++ developer with full command of >> the language, why don't you change the template instantiation to ... >> Since you are a C++ expert, this should be no trouble. I wouldn't ... >> Finally, you could learn how to use the GNU binutils so that all >> of this information would be abundantly obvious. G Loucks says: G> Wow! Condescension at its finest. Too much coffee? No, heroine. There was information in the post. It may have even been valuable and it was free. If the locals aren't a little bit hostile here, people won't do any research on a problem. The price of some messages is condescension... and now we drift far off topic. ciao, Bill Pringlemeir. - -- Everyone could preserve the Pope. vxWorks FAQ, "http://www.xs4all.nl/~borkhuis/vxworks/vxworks.html" --------------------------- Newsgroups: comp.os.vxworks Subject: [AE] Assembly in P3 BSP - BIOS erase block Date: 27 Jun 2002 11:15:19 -0700 From: strick@hiwaay.net (BS) Organization: http://groups.google.com/ Message-ID: [AE] Assembly in P3 BSP - BIOS erase block BSP - derived from Pentium3 Tornado AE BSP. Processor - Pentium 3 LP I want to add the following assembly (biosEraseBlock) to the sysALib.s file in order to erase a part of the BIOS flash chip. However, after executing the code I get this error. Does anyone have any advice on what I am doing wrong? The assembly code was originally used in DOS and changed to work within the Pentium 2 base BSP for AE. I have both the P3 AE and DOS assembly code included below. [vxKernel] -> vmicEraseBios Erasing flash block at 0xFFF90000 Trap to uninitialized vector number 21 (0-255). Page Dir Base : 0x02116000 Esp0 0x01013be2 : 0x2810fff9, 0xfff90201, 0x00000000, 0x3c000000 Esp0 0x01013bf2 : 0x27ac0101, 0xfff90201, 0x00000000, 0x3c380000 Program Counter : 0x00000008 Code Selector : 0x00003216 Eflags : 0x04d49508 Error Code : 0x020d7236 Task: 0x212f0c8 "tShell" - --- Code used in the base Pentium3 BSP for AE /********************************* * * biosEraseBlock - read the Z * * RETURNS: N/A * * NOMANUAL * void biosEraseBlock (int upper32, int lower32) */ .balign 16,0x90 FUNC_LABEL(biosEraseBlock) push %ax push %di push %si mov SP_ARG1(%esp),%di mov SP_ARG2(%esp),%si mov $3,%al mov $0xE0,%ah int $0x15 pop %si pop %di pop %ax ret - ---- DOS version of the assembly /* General Software media erase block BIOS call */ void meb( int u32, int l32 ) { asm { push ax push di push si mov di,u32 /* upper half 32 bit source address */ mov si,l32 /* lower half 32 bit source address */ mov al,1 /* erase block */ mov ah,0xE0 /* flash device function call (uses MTD) */ int 0x15 pop si pop di pop ax } } --------------------------- Newsgroups: comp.os.vxworks Subject: IXP1200 StrongARM BSP Date: 27 Jun 2002 12:05:50 -0700 From: manikandan97@indiatimes.com (mani) Organization: http://groups.google.com/ Message-ID: <324ed01c.0206271105.3b43c4d0@posting.google.com> Hi All, I have a target board based on Intel IXP1200 Network processor. Now i am trying to build the VxWorks boot image for strongARM inside IXP1200 and use the serial port of StrongARM for my WDB communication with Tornado. Could anyone tell me the steps that i need to follow for builidng the VxWorks boot image with the serial driver support for StrongARM ? I know the steps for building the x86 target board. Thanks in advance. Mani. --------------------------- Newsgroups: comp.os.vxworks Subject: BSP building Info Date: 27 Jun 2002 12:07:02 -0700 From: manikandan97@indiatimes.com (mani) Organization: http://groups.google.com/ Message-ID: <324ed01c.0206271107.620afd6f@posting.google.com> Hi All, I have a target board based on Intel IXP1200 Network processor. Now i am trying to build the VxWorks boot image for strongARM inside IXP1200 and use the serial port of StrongARM for my WDB communication with Tornado. Could anyone tell me the steps that i need to follow for builidng the VxWorks boot image with the serial driver support for StrongARM ? I know the steps for building the x86 target board. Thanks in advance. Mani. --------------------------- Newsgroups: comp.sys.mips,comp.os.vxworks,comp.arch.embedded,comp.os.linux.embedded Subject: Re: Need reccommendations for good JTAG ICE for MIPS cpu Date: Thu, 27 Jun 2002 16:17:32 -0400 From: Neil Horman Organization: WEBUSENET.com Message-ID: <3D1B72DC.4030409@lvl7.com> References: <558a531.0206251940.607bafb2@posting.google.com> <3d1ada51$0$9442$4d4eb98e@read-nat.news.uk.uu.net> VxWorks is a real mode OS, and VisionIce I think is designed with a real mode OS in mind. Linux runs with the MMU enabled, and VisionIce is incapable (I think) of translating virtual memory addresses to physical. I think that the Abatron BDI line is the only BDM debugger capable of these features. Barak Hermesh wrote: > All I know is that for some reason the VisionIce doesn't see the symbols in > the .ab file generated for Linux. > Try an ICE called BDI2000. I know it works well for Linux. > > "Matt Welsford" wrote in message > news:3d1ada51$0$9442$4d4eb98e@read-nat.news.uk.uu.net... > >>Hello Barak, >> >>You mention that the VisionProbe has problems with embedded linux, please >>can you explain further... >> >>As this is not the scope of this newsgroup I have included the >>comp.os.linux.embedded in the included news groups. >> >>Regards >>Matt >> >> >>"Barak Hermesh" wrote in message >>news:afce9b$6qm$1@tilde.itg.ti.com... >> >>>I use VisionIce by WindRiver. >>>I know it has some problems with embedded Linux, but it works fine with >>>vxWorks code. >>> >>>"Earl Mitchell" wrote in message >>>news:558a531.0206251940.607bafb2@posting.google.com... >>> >>>>Need reccs for a good ICE to use for MIPS. >>>>Currently using vxWorks for RTOS but may >>>>be changing. Any comments regarding ICE >>>>for MIPS would be appreciated. >>>> >>>>-earlm >>>> >>> >> > > --------------------------- Newsgroups: comp.os.vxworks Subject: Re: need 64 microseconds accurate timing.... Date: Thu, 27 Jun 2002 16:40:17 -0400 From: "James" Organization: Bell Sympatico Message-ID: <8IKS8.5201$ZM3.1727188@news20.bellglobal.com> References: <3D0DFA4C.3C87F4D6@sepro-robotique.com> taskDelay just lets the task sleep for some time. James "Michael Lawnick" wrote in message news:aen0nc$r11$1@snoopy.bndlg.de... > Hi Anand, > > "Anand" schrieb im Newsbeitrag > news:f14c07cb.0206180040.350f5eb3@posting.google.com... > > Hi Emmanuel, > > > > IMHO, you certainly needs a specific hardware component to > > > do this (FPGA) or, at least, an external microcontroller > > > (ie: a ST7 or PIC working in parallel with the main CPU). > > > > > > > tell me what is the maximum accuracy i can get without the specific > > hardware component mentioned by you. > > > What do you want ? > - Every 64 us an interrupt -> you need a fast processor, otherwise it won't > do much more than acknowledging your timer interrupts > - A periodic interrupt (e.g. every ms) with an guaranteed latency <64us -> > use e.g. standard PC and remove networking, as this might add > intLock()-periods. > - A periodic interrupt that will occure with a maximum drift/jitter -> use > special timer H/W > > You see, the answer depends on the exact question! > > > I believe taskDelay(1) will suspend the task for 1 tick .so, can i use > > sysClkConnect to achieve the same functionality without suspending the > > task?? > > Thank You, > > Anand. > No, taskDelay does not *suspend the task*, but the task will *pend until > next timer tick*. > This is a big difference. A task in state suspend indicates a system error > or debug session. > > taskDelay(1) and sysClkRateSet() are a common way to achieve a periodical > execution of a task. Its execution time must be smaller than one tick-time > of course. Otherwise it will run only every other tick. > > You may do a sysClkConnect of an ISR that gives a semaphore and let your > task pend on this sema. > This mechanism will let your task run continuosly if it needs longer than a > timer tick. > > --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Network statistics incorrect Date: 27 Jun 2002 13:49:55 -0700 From: jzhang@drs.ca (Jason) Organization: http://groups.google.com/ Message-ID: References: <3D19EB5F.2D51273A@hotmail.com> George: Thanks for your information I got the source code and fixed it by just inserting two lines of code in motFecEnd.c Cheers Varndell Engineering wrote in message news:<3D19EB5F.2D51273A@hotmail.com>... > Jason wrote: > > > > We are going to monitor the network traffic, such as the total bytes > > are received an sent by an interface. It looks like that the network > > statistics on vxWorks is incorrect. For example, when I run ifShow(), > > it shows that some packets are received and sent, but the octets > > received and sent are always zero. > > > > Some people says that this problem is caused by Ethernet driver. I > > just can't understand. I think it is a very simple calculation, > > Total Octets = sum ( No. of packets * Packet Length ) > > > > Any comments are highly appreciated. > > This seems to be a deficiency that affects many network drivers. > If you look for documentation describing MIB handling for net drivers, > you'll find that existing docs are few and sketchy. What is handled > by the mux layer? What's not? Who knows? It's ironic that so many of > Wind's own internally developed drivers suffer as a result of this > poorly documented aspect of network driver development. > How to fix it? Get the source and do some trial and error coding. > > Regards, > George Varndell > -- > Varndell Engineering, LLC > Embedded Systems Expertise > http://www.varndellengineering.com > > > -----------== Posted via Newsfeed.Com - Uncensored Usenet News ==---------- > http://www.newsfeed.com The #1 Newsgroup Service in the World! > -----= Over 100,000 Newsgroups - Unlimited Fast Downloads - 19 Servers =----- --------------------------- Newsgroups: comp.os.vxworks Subject: Re: bootpParamsGet Date: 27 Jun 2002 15:27:17 -0700 From: thiru@colorcanvas.com (Thiru) Organization: http://groups.google.com/ Message-ID: <3e5110c6.0206271427.15400c0c@posting.google.com> References: Which version you are using? It should work in T2. If you happen to use T2.02, apply patch#68322 HTH Thiru "msjeon" wrote in message news:... > Hello, everyone > > I want to use bootp for getting ipaddress. > But bootpParamsGet function return ERROR. > > I want to know about boopParamsGet bug. > > Thanks. --------------------------- Newsgroups: comp.os.vxworks Subject: Can you help me analyze it? vxWorks expert! Date: 27 Jun 2002 19:36:56 -0700 From: xmtang@facri.com (xiaomingtang) Organization: http://groups.google.com/ Message-ID: host machine: windows 98 target machine: vxWorks I wanna configure host as ppp server and target as ppp client over NULL MODEM,and ppp server has been activated.but when ppp client connects,the following information buzzle me very much.so I type it on this group,'cause I entirely believe, someone can help me. thanks in advance. client side show: Attaching networking interface ppp0... ppp0:ppp2.1.2 start by ppp0:Connext:ppp0 <--> /tyCo/0 ppp0:sent[LCP ConfReq id=0xbe ] ppp0:rcvd[LCP confReq id=0x1 <11 04 05 dc><13 13 01 20 36 6f c1 96 68 18 00 80 09 6e c1 c4 0f 00 00>] ppp0:sent[LCP ConfRej id=0x1 <11 04 05 dc> <13 13 01 20 36 6f c1 96 68 18 00 80 09 6e c1 c4 0f 00 00>] ppp0:rcvd[LCP ConfReq id=0x22 ppp0:sent[LCP ConfReq id=0x22 ppp0:sent[LCP ConfReq id=0xbe>] ppp0:rcvd[LCP ConfReq id=0xbe>] ppp0:sent[IPCP ConfReq id=0x3 ] ppp0:rcvd[LCP TermReq id=0x3] ppp0:LCP terminated at peer's request ppp0:sent[LCP TermAck id=0x3] ppp0:Connection terminated. ppp0: timeout:could not establish link with peer. server side shows:(my OS uses chinese character systesm,so following information is translated by myself.) 12-03-1998 10:01:14.85 - Generic NULL Modem in using。 12-03-1998 10:01:14.85 - Type of Modem: Generic NULL Modem 12-03-1998 10:01:14.85 - information path of Modem: MARKCR~2.INF 12-03-1998 10:01:14.85 - information segment of Modem: MC02 12-03-1998 10:01:15.06 - 115200,N,8,1 12-03-1998 10:01:15.06 - 115200,N,8,1 12-03-1998 10:01:15.06 - Warning:can't load string“FlowControl_Soft”。 12-03-1998 10:01:15.06 - initializing Modem.12-03-1998 10:01:15.06 - send: 12-03-1998 10:01:15.06 - waiting call。 12-03-1998 10:01:51.59 - recieved: ~ 12-03-1998 10:01:51.59 - recieved: 12-03-1998 10:01:51.59 - translated response: connection 12-03-1998 10:01:51.59 - recieved: } 12-03-1998 10:01:51.59 - recieved: # 12-03-1998 10:01:51.59 - recieved: 12-03-1998 10:01:51.59 - recieved: ! 12-03-1998 10:01:51.59 - recieved: } 12-03-1998 10:01:51.59 - recieved: ! 12-03-1998 10:01:51.60 - answering call. 12-03-1998 10:01:51.60 - send: HELLO 12-03-1998 10:01:51.60 - connected baudrate 115200bps。 12-03-1998 10:01:51.60 - error control close or unknown. 12-03-1998 10:01:51.60 - data compression close or unknow. 12-03-1998 10:01:54.74 - hanging up Modem. 12-03-1998 10:01:54.74 - down DTR for hanging up hardware. 12-03-1998 10:01:57.95 - send: Bye 12-03-1998 10:01:57.95 - 115200,N,8,1 12-03-1998 10:01:57.95 - initializing Modem.12-03-1998 10:01:57.95 - send: 12-03-1998 10:01:57.95 - waiting call 12-03-1998 10:01:57.95 - hanging up Modem. 12-03-1998 10:01:57.95 - conversation result: 12-03-1998 10:01:57.95 - read : 243 bytes 12-03-1998 10:01:57.95 - write: 206 bytes 12-03-1998 10:01:57.95 - Generic NULL Modem closed. Does this show chap 80 authenticates passed,but IPCP not? or other reason? --------------------------- Newsgroups: comp.os.vxworks Subject: Re: "select" misbehaving? Date: Fri, 28 Jun 2002 04:30:01 GMT From: Derek Thomson Organization: Optus Customer - reports relating to abuse should be sent to abuse@optus.net.au Message-ID: <3D1BE648.8000805@wedgetail.com> References: <3D1887E7.5030607@wedgetail.com> <3D19C7E1.3090309@idl.bt.co.uk> <3D1AB050.6080005@wedgetail.com> Brian St. Pierre wrote: > Derek Thomson wrote: > >>Phil Ashby wrote: >> >>>Derek Thomson wrote: >>> >>>Are you polling with select (ie: is the timeout zero?). You may not be >>>allowing the netTask any time to process TCP data coming in.. this works >>>on Unix(ish) O/S'es because they timeslice applications.. >>> >> >>Yes, I am. But I was told that vxWorks was pre-emptive. Have I been >>misinformed? > > > You were not misinformed; vxWorks runs the highest priority task that is > "ready". So if your task has a higher priority than the netTask and you are > polling select with timeout zero then your task will basically always be > ready and the netTask will never run. Sorry, what I meant was "I am passing 0 (NULL) as the timeout value". According to Stevens, this actually means "wait forever". So I'm still left unable to explain why extra "sleeps" were necessary. Regards, Derek. --------------------------- Newsgroups: comp.os.vxworks Subject: Re: a few basic questions for vxworks Date: 27 Jun 2002 21:43:47 -0700 From: vxnerd@rediffmail.com (subbarayan) Organization: http://groups.google.com/ Message-ID: References: dear james, I don't know about your first question.but here are the answers for your next two questions: relation between posix and kernel: posix is a set of interfaces u use to make to make ur code to be portable.for eg u have made a code in vxworks and want it to work it on some other platform like linux,u can make ur code compatible to work in linux incase u follow these posix standards.remember posix (portable OS interface) is a set of standards in coding .u have to follow these standards incase ur going to make ur application and porting it to some other platform.while making the code itself,the standard of posix will be implemented.vxworks supports posix and there are seperate system calls which u have to follow incase ur going to use posix standards.these calls r given by windriver and u can refer the vxworks manual for these calls.ok? crashing and vxworks: mostly vxworks does not automatically restart once it crashes.but it has options like restarting the whole appln in case it encounters fatal error.u have system calls like taskrestart to restart the task u wanted.u can jus check for ur error and and anticipate it and implement a check condition and then restart the task incase crash happens. other way is to have some exception handling code such that if some exception happens ur exception service routine executes and makes the situ ok.again its all making ur code defensive against all these errors by anticipating them and checking and making the error disapper by error handling techniques.exception handlers have high priority then any other tasks including interrupts.so its best way i can say. hope my answer was useful to you. by, subbarayan project engr-vxworks, bangalore, india --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Passing -D strings to GCC? Date: Thu, 27 Jun 2002 09:12:03 +0100 From: "Mario Semo" Organization: Nextra Telekom GmbH Message-ID: References: The problem is the space in "My Test". just try it with simple strings. imo a bug in the ppc compiler. - -- regards, Mario Semo. http://www.kirchnersoft.com Bob Bradley wrote in message news:bob-36E678.17515226062002@news.apple.com... > In article , taashlo@sandia.gov wrote: > > > If I'm understanding your question correctly, then yes, there is a > > way to do this. The way I've done this is to go to the project's > > 'Builds' tab and select the 'C/C++ Compiler' tab. In the edit box > > I then add $(MY_CFLAGS) to the rest of the C/C++ flags. Then on the > > make command line (in your .bat file) add: > > > > "MY_CFLAGS=-DBUILD_VERSION='My Version'" > > I've tried that, but I still seem to get the same error. I even > simplified my test down to the following (test.c is an empty file) from > the DOS prompt: > > ccppc -DMY_TEST="My Test" test.c > > I get the standard usage message due to a bad argument. > > I also tried using single quotes and I get a compile error about an > unterminated string or character constant. > > I'm using GCC 2.7.2 (using ccppc -v) from a normal install of Tornado > 2.0.2. --------------------------- Newsgroups: comp.os.vxworks Subject: syncronize systemtime with a timeserver? Date: Fri, 28 Jun 2002 08:16:13 GMT From: "Michael Heinecke" Organization: HanseNet Message-ID: Hi, i have to sync the systemtime with a timeserver on a daily basis. I have no idea how to configure a 'cron job' which does a 'rdate ip-of-timeserver' every day. My systems are BitBand 190`s (Espresso & Cappuchino VxWorks) and i am only a poor sysadmin who has to figure out ;-) Thanks very much! Best Regards, Michael --------------------------- Newsgroups: comp.os.vxworks Subject: problems with security manager Date: 28 Jun 2002 02:20:39 -0700 From: miro_st_2000@yahoo.com (Miroslav Stoitsov) Organization: http://groups.google.com/ Message-ID: <77d41589.0206280120.5aa59f37@posting.google.com> Hallo, My name is Miroslav Stoitsov and I am a student at Gerhard Mercator University in Duisburg.At the moment I work as "Scientific Helper" at Fraunhofer Institut IMS,Duisburg.I have a question concerning the settings of Personal Java(3.0).I used the Tornado project facility version 2.0 in order to download the OSGi Framework(5.0) to my board, but after the execution of the server.jar file ,which is the implementation of the framework the following (erroneous)output results: java.lang.SecurityException:security manager already installed The tip which I received from ProSyst was that I have to run my Personel Java without its corresponding Security Manager.Could you please tell me as soon as possible which settings do I have to change in order to switch off the Security Manager so that my program could run. Sincerely, Miroslav Stoitsov --------------------------- Newsgroups: comp.os.vxworks Subject: Problem of periodic timer in Vxworks?? Date: Fri, 28 Jun 2002 18:35:49 +0900 From: "trolls" Organization: Korea Research Environment Open Network Message-ID: This is a multi-part message in MIME format. - ------=_NextPart_000_008D_01C21ED2.9FC02390 Content-Type: text/plain; charset="ks_c_5601-1987" Content-Transfer-Encoding: quoted-printable Hi.. all I have a question of Vxwork program... Currently I am using the MCP750 board.. I want to make a timer which is operated per 1msec. For doing it, I = think two kinds of method. The one is using the CPU clock timer, the other is using the H/W = interrupt. =20 In specification, Watchdog timer(WdStop(), WdStart()..) are used. = But, In this case, system supports 60Hz clock we can't get accurate 1msec.=20 =20 But I am the beginner of Vxworks.. How I can do it?? - ------=_NextPart_000_008D_01C21ED2.9FC02390 Content-Type: text/html; charset="ks_c_5601-1987" Content-Transfer-Encoding: quoted-printable
Hi.. all
 
I have a question of Vxwork program...
Currently = I am using=20 the MCP750 board..
 
   I want to make a timer which is = operated per=20 1msec. For doing it, I think two kinds of method.
   The = one is=20 using the CPU clock timer, the other is using the H/W = interrupt.
  =20
   In specification, Watchdog timer(WdStop(), WdStart()..) = are=20 used. But, In this case, system supports
   60Hz clock we = can't get=20 accurate 1msec.
  
   But I am the beginner = of=20 Vxworks.. How I can do it??
- ------=_NextPart_000_008D_01C21ED2.9FC02390-- --------------------------- Newsgroups: comp.os.vxworks Subject: any one with experience in tornado1.0?challenge to tornado1.0 users Date: 28 Jun 2002 02:34:37 -0700 From: vxnerd@rediffmail.com (subbarayan) Organization: http://groups.google.com/ Message-ID: Can any one help me get the target configuration proceedure for tornado1.0 in order to create a floppy oriented bootable target?I need the step by step proceedure (including the menus to be accessed)if possible becos i am helpless now and further the manuals are of no help to me.I have a specific problem of the target server hanging and shutting down before the target is launched.i am unable to know the reason behind it and can any one tell me where the error could be and how should i rectify it?becos of this error i am unable to work on vxworks itself. i have posted this question many times but no response.I am thankful and greatful in advance to the person who is helping me. any one with a solution can mail the solution to vxnerd@rediffmail.com or post the reply here itself in this board . --------------------------- Newsgroups: comp.os.vxworks Subject: any one with experience in tornado1.0?challenge to tornado1.0 users Date: 28 Jun 2002 02:37:46 -0700 From: vxnerd@rediffmail.com (subbarayan) Organization: http://groups.google.com/ Message-ID: Can any one help me get the target configuration proceedure for tornado1.0 in order to create a floppy oriented bootable target?I need the step by step proceedure (including the menus to be accessed)if possible becos i am helpless now and further the manuals are of no help to me.I have a specific problem of the target server hanging and shutting down before the target is launched.i am unable to know the reason behind it and can any one tell me where the error could be and how should i rectify it?becos of this error i am unable to work on vxworks itself. i have posted this question many times but no response.I am thankful and greatful in advance to the person who is helping me. any one with a solution can mail the solution to vxnerd@rediffmail.com or post the reply here itself in this board . --------------------------- End of New-News digest ********************** From vxwexplo-errs@csg.lbl.gov Fri Jun 28 08:34:00 2002 From: =?iso-8859-1?q?ram=20mohan?= Date: Fri Jun 28 08:34:02 PDT 2002 Subject: Re: True Flash File System (TFFS) problems.... Hi, to use tffs u have to change configuration in various files. Have u done all of them? actually what exact error r u getting? if u describe the exact error it will be easy to find the solution anyway hope by now ur prob is solved if not u can mail the details Regards Mohan --- the vxWorks Users Group Exploder wrote: > Submitted-by vxwexplo-errs@csg.lbl.gov Wed Jun 26 > 11:52:18 2002 > Submitted-by: "Somisetty, Somisetty" > > > > > This message is in MIME format. Since your mail > reader does not understand > this format, some or all of this message may not be > legible. > > ------_=_NextPart_001_01C21D42.912C45C0 > Content-Type: text/plain; > charset="iso-8859-1" > > > Hi VxWorks Gurus' > I have a problem with Vxworks TFFS. When I try > to format the flash > using sysTffsFormat(), it always fails. > It is mentioned in sysTffs.c file, that when > sysTffsFormat() fails, then you > have to run tffsRawio(0, 3, 0, 16) to fix the > formatting problem. I did the > same, but it did not solve the formatting problem. > It doesn't format with > sysTffsFormat(). > Can anyone let me know, why I can't format the > flash? Can anyone help me > on this? > > Thanks in advance.... > > Regards > Somisetty > > > ------_=_NextPart_001_01C21D42.912C45C0 > Content-Type: text/html; > charset="iso-8859-1" > Content-Transfer-Encoding: quoted-printable > > > > > CONTENT=3D"text/html; = > charset=3Diso-8859-1"> > Server version = > 5.5.2653.12"> > True Flash File System (TFFS) > problems.... > > >
> >

Hi VxWorks > Gurus' >
FACE=3D"Arial">      I have > = > a problem with Vxworks TFFS. When I try to format > the flash using = > sysTffsFormat(), it always fails. >
It is mentioned in > sysTffs.c file, = > that when sysTffsFormat() fails, then you have to > run tffsRawio(0, 3, = > 0, 16) to fix the formatting problem. I did the > same, but it did not = > solve the formatting problem. It doesn't format with > = > sysTffsFormat().

> >

   Can > anyone let me know, = > why I can't format the flash? Can anyone help me on > this? >

> >

Thanks in = > advance....     >

> >

Regards >
Somisetty >

> > > > ------_=_NextPart_001_01C21D42.912C45C0-- > > ********** > > This is a user group mailing list for vxWorks > related topics > see http://www-vxw.lbl.gov/vxworks for posting > and subscription info __________________________________________________ Do You Yahoo!? Yahoo! - Official partner of 2002 FIFA World Cup http://fifaworldcup.yahoo.com From vxwexplo-errs@csg.lbl.gov Fri Jun 28 16:35:42 2002 From: Sitalakshmi Gautham Date: Fri Jun 28 16:35:44 PDT 2002 Subject: RTM_GET on routing socket return ESRCH (when default route is absent) This is a multi-part message in MIME format. ------=_NextPartTM-000-37c52716-275d-4d12-a425-a1e95d85dccd Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Hi, RTM_GET on a routing socket to get the routing entry for a given dest, always returns ESRCH (though the route exists). If the default route is added, it always returns the default route, irrespective of the dest. Attached below is the sample code to get routing entry for a given dest. The program works fine on a FreeBSD box, but fails with ESRCH on VxWorks. On a VxWorks box, this is the output: -> routeShow ROUTE NET TABLE destination gateway flags Refcnt Use Interface ---------------------------------------------------------------------------- 10.10.10.0 10.10.10.146 101 0 0 ene0 192.168.235.0 192.168.235.146 101 0 0 fei0 ---------------------------------------------------------------------------- ROUTE HOST TABLE destination gateway flags Refcnt Use Interface ---------------------------------------------------------------------------- 127.0.0.1 127.0.0.1 5 0 0 lo0 ---------------------------------------------------------------------------- value = 77 = 0x4d = 'M' -> -> get_routing_entry("192.168.235.1") write on routing socket failed: errno = 0x3 value = -1 = 0xffffffff -> -> get_routing_entry("10.10.10.1") write on routing socket failed: errno = 0x3 value = -1 = 0xffffffff Is routing sockets on VxWorks different from the way it is on BSD? Any info on this is greatly appreciated. Please could anyone let me know what is possibly wrong. thanks, Sita -------------------------------------------------------------------------------- #include #include #if !defined(_VXWORKS_) #include #include #include #include #include #else #include "sockLib.h" #include "inetLib.h" #include "net/if_dl.h" #endif #include #define VosLog printf #if defined(_VXWORKS_) #define getpid taskIdSelf #endif #define MAX_BYTES 512 #define ROUNDUP(a) \ ((a) > 0 ? (1 + (((a) - 1) | (sizeof(long) - 1))) : sizeof(long)) #define ADVANCE(x, n) (x += ROUNDUP((n)->sa_len)) struct rt_msg { struct rt_msghdr m_rtm; char m_space[MAX_BYTES]; }; #if !defined(_VXWORKS_) main(int argc, char *argv[]) { if (argc < 2) { printf("usage: test_route_socket \n"); exit(1); } get_routing_entry(argv[1]); } #endif struct sockaddr_in so_ifa = { sizeof(struct sockaddr_in), AF_INET, 0, 0 }; struct sockaddr_in so_gate = { sizeof(struct sockaddr_in), AF_INET, 0, 0 }; struct sockaddr_in so_mask = { sizeof(struct sockaddr_in), AF_INET, 0, 0 }; struct sockaddr_dl so_ifp = { sizeof(struct sockaddr_dl), AF_LINK, 0, 0 }; static void print_getmsg(char *, struct rt_msghdr *, int); get_routing_entry(char *dst) { struct rt_msghdr rtmsg; struct rt_msg s_rtmsg, r_rtmsg; int sockfd; struct sockaddr_in sin, *sinptr; fd_set readfds; struct timeval timeout; int retval, len, l; int mypid = getpid(); char *cp; sin.sin_len = sizeof(struct sockaddr_in); sin.sin_family = AF_INET; sin.sin_addr.s_addr = inet_addr(dst); sockfd = socket(AF_ROUTE, SOCK_RAW, 0); if (sockfd < 0) { perror("open of routing socket failed\n"); return -1; } rtmsg.rtm_version = RTM_VERSION; rtmsg.rtm_addrs = RTA_DST | RTA_IFP | RTA_IFA; rtmsg.rtm_type = RTM_GET; rtmsg.rtm_flags = RTF_UP; rtmsg.rtm_seq = 0; rtmsg.rtm_pid = mypid; rtmsg.rtm_errno = 0; bzero((char *)&s_rtmsg, sizeof(s_rtmsg)); cp = &s_rtmsg.m_space[0]; #define NEXTADDR(w, u, l) \ if (rtmsg.rtm_addrs & (w)) { \ bcopy((char *)&u, cp, l); cp += l;\ } NEXTADDR(RTA_DST, sin, sizeof(struct sockaddr_in)); NEXTADDR(RTA_GATEWAY, so_gate, sizeof(struct sockaddr_in)); NEXTADDR(RTA_NETMASK, so_mask, sizeof(struct sockaddr_in)); NEXTADDR(RTA_IFP, so_ifp, sizeof(struct sockaddr_dl)); NEXTADDR(RTA_IFA, so_ifa, sizeof(struct sockaddr_dl)); rtmsg.rtm_msglen = (int)cp - (int)(&s_rtmsg); s_rtmsg.m_rtm = rtmsg; if (write(sockfd, &s_rtmsg, rtmsg.rtm_msglen) < 0) { perror("write on routing socket failed"); close(sockfd); return -1; } FD_ZERO(&readfds); FD_SET(sockfd, &readfds); timeout.tv_sec = 10; timeout.tv_usec = 0; do { if ((retval = select(sockfd+1, &readfds, NULL, NULL, &timeout)) == -1) { perror("select failed"); close(sockfd); return -1; } if (retval == 0) { VosLog("select timed out\n"); close(sockfd); return -1; } bzero((char *)&r_rtmsg, sizeof(r_rtmsg)); len = read(sockfd, &r_rtmsg, MAX_BYTES); } while (r_rtmsg.m_rtm.rtm_pid != mypid || r_rtmsg.m_rtm.rtm_type != RTM_GET); print_getmsg(dst, &(r_rtmsg.m_rtm), len); return 0; } void print_getmsg(char *dest, struct rt_msghdr *rtm, int msglen) { struct sockaddr_in *dst = NULL, *gate = NULL, *mask = NULL, *ifa = NULL; struct sockaddr_dl *ifp = NULL; register struct sockaddr *sa; register char *cp; register int i; (void) printf(" route to: %s\n", dest); if (rtm->rtm_version != RTM_VERSION) { (void)fprintf(stderr, "routing message version %d not understood\n", rtm->rtm_version); return; } if (rtm->rtm_msglen > (u_short)msglen) { (void)fprintf(stderr, "message length mismatch, in packet %d, returned %d\n", rtm->rtm_msglen, msglen); } if (rtm->rtm_errno) { (void) fprintf(stderr, "RTM_GET: %s (errno %x)\n", strerror(rtm->rtm_errno), rtm->rtm_errno); return; } cp = ((char *)(rtm + 1)); if (rtm->rtm_addrs) for (i = 1; i; i <<= 1) if (i & rtm->rtm_addrs) { sa = (struct sockaddr *)cp; switch (i) { case RTA_DST: dst = sa; break; case RTA_GATEWAY: gate = sa; break; case RTA_NETMASK: mask = sa; break; case RTA_IFP: if (sa->sa_family == AF_LINK && ((struct sockaddr_dl *)sa)->sdl_nlen) ifp = (struct sockaddr_dl *)sa; break; case RTA_IFA: ifa = (struct sockaddr_in *)sa; break; } ADVANCE(cp, sa); } if (dst && mask) mask->sin_family = dst->sin_family; /* XXX */ if (dst) (void)printf("destination: %s\n", inet_ntoa(dst->sin_addr)); if (mask) { if (mask->sin_len < 4) (void)printf(" mask: 0.0.0.0\n"); else (void)printf(" mask: %s\n", inet_ntoa(mask->sin_addr)); } if (gate && rtm->rtm_flags & RTF_GATEWAY) (void)printf(" gateway: %s\n", inet_ntoa(gate->sin_addr)); if (ifp) (void)printf("outgoing if: %.*s\n", ifp->sdl_nlen, ifp->sdl_data); if (ifa) (void)printf(" outif addr: %s\n", inet_ntoa(ifa->sin_addr)); (void)printf(" flags: 0x%x\n", rtm->rtm_flags); } ------=_NextPartTM-000-37c52716-275d-4d12-a425-a1e95d85dccd Content-Type: text/plain; name="Wipro_Disclaimer.txt" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="Wipro_Disclaimer.txt" **************************Disclaimer************************************************** Information contained in this E-MAIL being proprietary to Wipro Limited is 'privileged' and 'confidential' and intended for use only by the individual or entity to which it is addressed. You are notified that any use, copying or dissemination of the information contained in the E-MAIL in any manner whatsoever is strictly prohibited. **************************************************************************************** ------=_NextPartTM-000-37c52716-275d-4d12-a425-a1e95d85dccd-- From vxwexplo-errs@csg.lbl.gov Sat Jun 29 04:03:15 2002 From: Vxworks Exploder Date: Sat Jun 29 04:03:18 PDT 2002 Subject: comp.os.vxworks newsdigest Comp.Os.Vxworks Daily Digest Sat Jun 29 04:03:10 PDT 2002 Subject: Re: Problem of periodic timer in Vxworks?? Subject: Re: any one with experience in tornado1.0?challenge to tornado1.0 users Subject: INT0 problems with PentiumIII/BX440 brd Subject: Re: INT0 problems with PentiumIII/BX440 brd Subject: GCC 3.x ?? Subject: Re: Problem of periodic timer in Vxworks?? Subject: Re: a few basic questions for vxworks Subject: RTSP Subject: Re: Passing -D strings to GCC? Subject: Re: RTSP Subject: Re: post mortem..... Subject: Re: GCC 3.x ?? Subject: Dynamic module unloading Subject: Re: Dynamic module unloading Subject: Re: IXP1200 StrongARM BSP Subject: Unable to access symbols for applications Subject: Re: "select" misbehaving? Subject: Re: a few basic questions for vxworks Subject: Re: Regarding I/O porting writing statements in VxWorks Subject: Re: Help with Watchdog Timer Subject: Re: Unable to access symbols for applications Subject: Tornado101 and Tornado211 Compiler options. Subject: Re: a few basic questions for vxworks Subject: Re: any one with experience in tornado1.0?challenge to tornado1.0 users Subject: Re: INT0 problems with PentiumIII/BX440 brd ------------------------------------------------------- Newsgroups: comp.os.vxworks Subject: Re: Problem of periodic timer in Vxworks?? Date: Fri, 28 Jun 2002 13:24:34 +0200 From: "Michael Lawnick" Organization: Buergernetz Dillingen Message-ID: References: Reply-To: "Michael Lawnick" Sender: mlawnick@p5088f29f.dip.t-dialin.net Hi trolls, I fear you're a bit confused ... > The one is using the CPU clock timer, the other is using the H/W interrupt. Where should be there a difference ? You have different possibilities, minimum 2: First: increase system clock rate with sysClkRateSet(1000), or best in Workspace-configuration. Now you can use e.g. taskDelay(1) to restart a task every ms. Or you use sysClkConnect() to connect an ISR to system clock's interrupt. Watchdogs should be able to work with 1ms too, but I'm not sure about accuracy then. Second: Use sysAuxClkRateSet(1000), sysAuxClkConnect(), sysAux... sequence if your rate is supported. Look into (Online-)Manual. More: Use probably existing other timers. You might find information in Motorola's Programmers User Guide. HTH Michael "trolls" schrieb im Newsbeitrag news:afhaim$psj$2@news.kreonet.re.kr... Hi.. all I have a question of Vxwork program... Currently I am using the MCP750 board.. I want to make a timer which is operated per 1msec. For doing it, I think two kinds of method. The one is using the CPU clock timer, the other is using the H/W interrupt. In specification, Watchdog timer(WdStop(), WdStart()..) are used. But, In this case, system supports 60Hz clock we can't get accurate 1msec. But I am the beginner of Vxworks.. How I can do it?? --------------------------- Newsgroups: comp.os.vxworks Subject: Re: any one with experience in tornado1.0?challenge to tornado1.0 users Date: Fri, 28 Jun 2002 13:32:00 +0200 From: "Michael Lawnick" Organization: Buergernetz Dillingen Message-ID: References: Reply-To: "Michael Lawnick" Sender: mlawnick@p5088f29f.dip.t-dialin.net Hi subbarayan, I don't expect anybody replying you with a step by step answer. All you need is written in manual. Your problem is that you haven't read/understood all or you have a specific problem not covered by manual. In the latter case a concrete description of the problems is unavoidable to get help. Give us your HostOS, BSP-Type (I assume i86 based) Tell what you've done and what the exact (logs of serial interface/target server/...) results are. Michael "subbarayan" schrieb im Newsbeitrag news:f81c4277.0206280134.2bbfcd0b@posting.google.com... > Can any one help me get the target configuration proceedure for > tornado1.0 in order to create a floppy oriented bootable target?I need > the step by step proceedure (including the menus to be accessed)if > possible becos i am helpless now and further the manuals are of no > help to me.I have a specific problem of the target server hanging and > shutting down before the target is launched.i am unable to know the > reason behind it and can any one tell me where the error could be and > how should i rectify it?becos of this error i am unable to work on > vxworks itself. > i have posted this question many times but no response.I am thankful > and greatful in advance to the person who is helping me. > any one with a solution can mail the solution to vxnerd@rediffmail.com > or post the reply here itself in this board . --------------------------- Newsgroups: comp.os.vxworks Subject: INT0 problems with PentiumIII/BX440 brd Date: Fri, 28 Jun 2002 11:39:52 GMT From: info access Organization: info access Message-ID: <3D1C4956.92AB8DE1@rochester.rr.com> To all the experts, I am facing strange problem, and wonder whether anybody faced this before. I am trying to upgrade from a Pentium-based board to a PentiumIII-based board. Using the pcPentiumPro BSP with Tornado 2.0 I built the bootrom_uncmp and vxworks for the target and when running the application I noticed a strange problem in WindView: The INT0 interrupt (timer/tick interrupt) takes the whole tick time, i.e. 16.7ms. So one of the task that I run is ~150ms, and its interrupted about 4 to 6 times with 16.7ms of INT0 time. Regularly INT0 takes a couple of micro- seconds. Also have to mention that the boot-up time is unusually slow; probably something is not initialized properly. Any ideas what might be wrong? Thanks - -- al kavcak --------------------------- Newsgroups: comp.os.vxworks Subject: Re: INT0 problems with PentiumIII/BX440 brd Date: Fri, 28 Jun 2002 15:54:43 +0200 From: "Michael Lawnick" Organization: Buergernetz Dillingen Message-ID: References: <3D1C4956.92AB8DE1@rochester.rr.com> Reply-To: "Michael Lawnick" Sender: mlawnick@p5088f29f.dip.t-dialin.net Hi al kavcak, don't trust WindView when its logging timer interrupts with 1 system tick length: I'm pretty sure, you see a single spike to INT0 just some usec before isn't it ? Then you see the TSR matter I'm just struggling around with WRS. Its a problem of WindView logging in connection with timestamp driver. It results in displaying the intEntry event one tick earlier than it really occurs, what leads to the '1 system tick interrupt'. Please check that you PentiumPro BSP uses the correct timer lib, i.e. PentiumPro has a built-in counter that is used as timestamp driver if all is defined properly (INCLUDE_APIC_TIMER). HTH Michael "info access" schrieb im Newsbeitrag news:3D1C4956.92AB8DE1@rochester.rr.com... > To all the experts, > > I am facing strange problem, and wonder whether anybody faced this > before. > > I am trying to upgrade from a Pentium-based board to a PentiumIII-based > board. > Using the pcPentiumPro BSP with Tornado 2.0 I built the bootrom_uncmp > and > vxworks for the target and when running the application I noticed a > strange problem > in WindView: The INT0 interrupt (timer/tick interrupt) takes the whole > tick time, > i.e. 16.7ms. So one of the task that I run is ~150ms, and its > interrupted about > 4 to 6 times with 16.7ms of INT0 time. Regularly INT0 takes a couple of > micro- > seconds. > > Also have to mention that the boot-up time is unusually slow; probably > something is not initialized properly. > > Any ideas what might be wrong? > > Thanks > > -- al kavcak > > --------------------------- Newsgroups: comp.os.vxworks Subject: GCC 3.x ?? Date: Fri, 28 Jun 2002 14:28:51 GMT From: Chip Jones Organization: EarthLink Inc. -- http://www.EarthLink.net Message-ID: <3D1C72A2.9060002@ociweb.com> Has anyone had any luck cross-compiling GCC 3.x and libstdc++-v3 for VxWorks. On Linux and Cygwin, I'm having problems with 3.1. Binutils 2.12 compile, as do gcc and g++, but libstdc++ generates lots of errors. Am I correct that 3.x mangles names differently than 2.96 (Tornado 2.0.2), so I can't use the 3.x compiler with the libstdc++ that comes with Tornado? Thanks, Chip --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Problem of periodic timer in Vxworks?? Date: Fri, 28 Jun 2002 11:30:35 -0400 From: "Harman bassan" Organization: The University of Western Ontario, London, Ont. Canada Message-ID: References: Hi trolls, Check the config.h in CONFIG directory for your BSP. You should see these lines in the Config.h file. #define SYS_CLK_RATE_MIN 19 /* minimum system clock rate */ #define SYS_CLK_RATE_MAX (PIT_CLOCK/256) /* maximum system clock rate */ #define AUX_CLK_RATE_MIN 2 /* minimum auxiliary clock rate */ #define AUX_CLK_RATE_MAX 8192 /* maximum auxiliary clock rate */ They indicate the maximum clock rates you can achieve from your particular board. Wind River doesn't recommend using SYS_CLK_RATE_MAX of more than 600 because it puts lots of overhead in task switching. SYS_AUX_CLK_RATE can be increased to maximum rate without any trouble. There is one point about the SYS_AUX_CLK_RATE, that it can only be incremented in the powers of two, which means 2,4,8,16,.... So the closest one to your requirement would be 1024. Will that be ok with your application ? If not then you are better off using some hardware interrupt through some timer. For that check intConnect() in the help. I hope it helps. Harman. "Michael Lawnick" wrote in message news:afhh1h$m38$1@snoopy.bndlg.de... > Hi trolls, > > I fear you're a bit confused ... > > The one is using the CPU clock timer, the other is using the H/W > interrupt. > Where should be there a difference ? > > You have different possibilities, minimum 2: > > First: increase system clock rate with sysClkRateSet(1000), or best in > Workspace-configuration. > Now you can use e.g. taskDelay(1) to restart a task every ms. > Or you use sysClkConnect() to connect an ISR to system clock's interrupt. > Watchdogs should be able to work with 1ms too, but I'm not sure about > accuracy then. > > Second: Use sysAuxClkRateSet(1000), sysAuxClkConnect(), sysAux... sequence > if your rate is supported. > Look into (Online-)Manual. > > More: Use probably existing other timers. You might find information in > Motorola's Programmers User Guide. > > HTH > Michael > > "trolls" schrieb im Newsbeitrag > news:afhaim$psj$2@news.kreonet.re.kr... > Hi.. all > > I have a question of Vxwork program... > Currently I am using the MCP750 board.. > > I want to make a timer which is operated per 1msec. For doing it, I think > two kinds of method. > The one is using the CPU clock timer, the other is using the H/W > interrupt. > > In specification, Watchdog timer(WdStop(), WdStart()..) are used. But, In > this case, system supports > 60Hz clock we can't get accurate 1msec. > > But I am the beginner of Vxworks.. How I can do it?? > > > --------------------------- Newsgroups: comp.os.vxworks Subject: Re: a few basic questions for vxworks Date: Fri, 28 Jun 2002 12:17:14 -0400 From: "James" Organization: Bell Sympatico Message-ID: References: Thanks a lot, I have a machine/robot to control. My first question is: how can you write code to set some IO, eg. I want to turn on/off LED (say address 0x180). also I want to watch some Very important sensor signal, if this signal is OFF, I want to stop the system immediately. James "subbarayan" wrote in message news:f81c4277.0206272043.268f4af9@posting.google.com... > dear james, > I don't know about your first question.but here are the answers for > your next two questions: > relation between posix and kernel: > posix is a set of interfaces u use to make to make ur code to be > portable.for eg u have made a code in vxworks and want it to work it > on some other platform > like linux,u can make ur code compatible to work in linux incase u > follow these posix standards.remember posix (portable OS interface) > is a set of standards in coding .u have to follow these standards > incase ur going to make ur application and porting it to some other > platform.while making the code itself,the standard of posix will be > implemented.vxworks supports posix and there are seperate system calls > which u have to follow incase ur going to use posix standards.these > calls r given by windriver and u can refer the vxworks manual for > these calls.ok? > crashing and vxworks: > mostly vxworks does not automatically restart once it crashes.but it > has options like restarting the whole appln in case it encounters > fatal error.u have system calls like taskrestart to restart the task u > wanted.u can jus check for ur error and and anticipate it and > implement a check condition and then restart the task incase crash > happens. > other way is to have some exception handling code such that if some > exception happens ur exception service routine executes and makes the > situ ok.again its all making ur code defensive against all these > errors by anticipating them and checking and making the error disapper > by error handling techniques.exception handlers have high priority > then any other tasks including interrupts.so its best way i can say. > > hope my answer was useful to you. > by, > subbarayan > project engr-vxworks, > bangalore, > india --------------------------- Newsgroups: comp.os.vxworks Subject: RTSP Date: Fri, 28 Jun 2002 13:03:12 -0400 From: "Apu" Message-ID: Hi, Anybody implemented a RTSP server onto VXworks? Thanks --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Passing -D strings to GCC? Date: 28 Jun 2002 11:35:13 -0600 From: taashlo@sandia.gov Organization: Sandia National Laboratories, Albuquerque, NM USA Message-ID: References: Sender: taashlo@TYPHOON Bob Bradley writes: > In article , > "Martin Raabe" wrote: > > > It works fine using cmd.exe, which is WinNT/2000/XP. > > So I expect you are using command.com? Maybe on Win9x? > > I'm using Windows XP. If you do the following: > > ccppc -DMY_TEST="My Test" test.c > > Does it compile for you? If so, are you using the standard 2.7.2 version > of GCC installed by Tornado 2.0.2? In my previous posting, I was using GCC 2.96 installed by Tornado 2.1. I tried it again using GCC 2.7.2 and the following seemed to work: ccppc "-DMY_TEST=\"My Test\"" test.c Tad --------------------------- Newsgroups: comp.os.vxworks Subject: Re: RTSP Date: Fri, 28 Jun 2002 10:45:09 -0700 From: "Mark A. Matthews" Organization: ACME Rockets & Storm Door Company Message-ID: References: In article , "Apu" wrote: > Hi, > Anybody implemented a RTSP server onto VXworks? > Thanks You can find a source library to port at . - -- - -Mark --------------------------- Newsgroups: comp.os.vxworks Subject: Re: post mortem..... Date: 28 Jun 2002 17:48:26 GMT From: edsela@aol.com (Edsela) Organization: AOL http://www.aol.com Message-ID: <20020628134826.23782.00000894@mb-cc.aol.com> References: <3d0dcd82$1@netnews.web.de> >Subject: Re: post mortem..... >From: Reinhold Wirth wirth@softec.de >Date: 6/17/2002 6:52 AM Central Daylight Time >Message-id: <3d0dcd82$1@netnews.web.de> > >Hi, >your problem may be caused: >* differnt USER_RESERVED_MEMORY, defined in your > target bootloader That's what I've also seen ... bootrom needs to be built with USER_RESERVED_MEMORY also >* memory test during startup (may be PC-BIOS) > > > >>hi vxWorkers, >>I have a problem in postmortem mode of event logging. >>I have specified USER_RESERVED_MEMORY in the config.h and its' gettin' >>reflected in the property control window, correctly.. >>Then i start logging and stop and do a warm reboot and click on the >>properties button on the control dialog box..no messages occur. >>also if i try to click the upload button, after warm reboot directly, >>i get a message "no buffers created on target"........has anyone >>worked on this???? >>any sort of help is appreciated... >>thank u in antecipation > >-- >__________________________________________________________ >News suchen, lesen, schreiben mit http://newsgroups.web.de > > > > > > --------------------------- Newsgroups: comp.os.vxworks Subject: Re: GCC 3.x ?? Date: Fri, 28 Jun 2002 13:19:43 -0500 From: Andrew Johnson Organization: APS, Argonne National Laboratory Message-ID: <3D1CA8BF.712EEF55@aps.anl.gov> References: <3D1C72A2.9060002@ociweb.com> Chip Jones wrote: > > Am I correct that 3.x mangles names differently than 2.96 (Tornado > 2.0.2), so I can't use the 3.x compiler with the libstdc++ that comes > with Tornado? Tornado 2.0.2 comes with a C++ compiler derived from EGCS 1.0.2. It mangles names differently to gcc-2.96 (as provided IIRC with Tornado 3/vxWorks AE), which is different again to the mangling done by gcc-3.x. Apparently Tornado 2.2 will be coming out later this year, and has a newer compiler and better C++ standard library support (although I'm not sure if it's up to gcc-3.x). If you're using certain PowerPC CPUs you can already get Tornado 2.1 which has the compiler upgrade, but is only for a very limited number of CPUs in the PowerPC family. - - Andrew - -- Larry McVoy: Learn how to think in C++ but don't ever program in it. --------------------------- Newsgroups: comp.os.vxworks Subject: Dynamic module unloading Date: Fri, 28 Jun 2002 16:41:10 +0100 From: Thomas Horsten Organization: Newport Networks Ltd. Message-ID: <1025278839.163913@azores.network-i.net> Hi, On our project we need to load different applications onto a board dynamically (much in the same way that you can do it from Tornado using the target server). I've researched a bit into it and found that it can be accomplished using loadModule() from loadLib. But I can't find any function to unload a module that has been loaded in this way. Is this functionality not provided or am I overlooking something? I know that it is possible using the target server, but that's not an option for production, I am looking for a 100% native solution. I don't know if the VxWorks symbol table includes a field specifying which module the symbols were loaded for, if it does it should be pretty trivial to remove those symbols and deallocate the memory regions allocated to the module at load time. Have anyone found a way to do this, eg. writing your own code or perhaps using a 3rd party library? Regards, Thomas --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Dynamic module unloading Date: Fri, 28 Jun 2002 20:00:09 GMT From: David Cooper Organization: none Message-ID: References: <1025278839.163913@azores.network-i.net> Thomas, If you use loadModule() to load a module with a name of a previosly loaded module, the dynamic loader will automatically replace the previously loaded module with the new one (including all symbols). You can also use unld() or unldByModuleId() to unload a module. ...david - -- +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+ ô¿ô Genealogy Utilities & Family Research Researching: ALLEN,BERZONER,COHEN,COOPER,KUPFERZMIDT, POSNER (POIZNER), PRITIKIN, STARKMAN Dachau Camp Entry List, Genealogy Utilities http://home.adelphia.net/~dcooper000 [This followup was posted to comp.os.vxworks and a copy was sent to the cited author.] In article <1025278839.163913@azores.network-i.net>, nospam.thomas.horsten.spamfree@newport-networks.com says... > Hi, > > On our project we need to load different applications onto a board > dynamically (much in the same way that you can do it from Tornado using the > target server). > > I've researched a bit into it and found that it can be accomplished using > loadModule() from loadLib. > > But I can't find any function to unload a module that has been loaded in > this way. Is this functionality not provided or am I overlooking something? > I know that it is possible using the target server, but that's not an > option for production, I am looking for a 100% native solution. I don't > know if the VxWorks symbol table includes a field specifying which module > the symbols were loaded for, if it does it should be pretty trivial to > remove those symbols and deallocate the memory regions allocated to the > module at load time. > > Have anyone found a way to do this, eg. writing your own code or perhaps > using a 3rd party library? > > Regards, > > Thomas > > --------------------------- Newsgroups: comp.os.vxworks Subject: Re: IXP1200 StrongARM BSP Date: Fri, 28 Jun 2002 20:02:55 GMT From: David Cooper Organization: none Message-ID: References: <324ed01c.0206271105.3b43c4d0@posting.google.com> Mani, The steps to build a BSP for a StrongARM are identical to the steps for building a BSP for an IXP1200; EXCEPT, you start with one of the StrongARM BSPs provided when you install Tornado for StrongARM instead of the IXP1200 BSP. ...david +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+ ô¿ô Genealogy Utilities & Family Research Researching: ALLEN,BERZONER,COHEN,COOPER,KUPFERZMIDT, POSNER (POIZNER), PRITIKIN, STARKMAN Dachau Camp Entry List, Genealogy Utilities http://home.adelphia.net/~dcooper000 [This followup was posted to comp.os.vxworks and a copy was sent to the cited author.] In article <324ed01c.0206271105.3b43c4d0@posting.google.com>, manikandan97@indiatimes.com says... > Hi All, > > I have a target board based on Intel IXP1200 Network processor. Now i > am trying to build the VxWorks boot image for strongARM inside IXP1200 > and use the serial port of StrongARM for my WDB communication with > Tornado. > > Could anyone tell me the steps that i need to follow for builidng the > VxWorks boot image with the serial driver support for StrongARM ? > > I know the steps for building the x86 target board. > > Thanks in advance. > Mani. > - -- +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+ ô¿ô Genealogy Utilities & Family Research Researching: ALLEN,BERZONER,COHEN,COOPER,KUPFERZMIDT, POSNER (POIZNER), PRITIKIN, STARKMAN Dachau Camp Entry List, Genealogy Utilities http://home.adelphia.net/~dcooper000 --------------------------- Newsgroups: comp.os.vxworks Subject: Unable to access symbols for applications Date: 28 Jun 2002 15:59:36 -0700 From: daniel_k_wong@yahoo.com (Daniel Wong) Organization: http://groups.google.com/ Message-ID: <63c460d8.0206281459.19fa70cd@posting.google.com> I have a vxWorks image that includes some functions that I wrote. I linked the symbol table vxWorks.st with my vxWorks image. I am able to do a lkup on VxWorks calls; however, when I do a lkup on functions that I wrote, lkup is unable to find those symbols. Do any of you have any idea why this is happening? Shouldn't I be able to do a lkup on all functions in the image? - -Daniel daniel_k_wong@yahoo.com --------------------------- Newsgroups: comp.os.vxworks Subject: Re: "select" misbehaving? Date: 28 Jun 2002 16:03:16 -0700 From: john_94501@yahoo.com (John) Organization: http://groups.google.com/ Message-ID: <488e459a.0206281503.12139a5b@posting.google.com> References: <3D1887E7.5030607@wedgetail.com> <3D19C7E1.3090309@idl.bt.co.uk> <3D1AB050.6080005@wedgetail.com> Hello Derek, > I've also discovered that "select" on vxWorks only seems to set the flag > for the lowest fd bit that's ready for I/O in the bit set, which has > some interesting effects if you are expecting *all* bits for which you > declared interest to be appropriately modified. I've re-arranged my code > slightly to allow for this, and it works much better. This is probably the effect of the pre-emptive scheduler... as soon as one FD becomes available, your task will run and hence often it will only get a single set fd back from select. In a Unix environment, the process may not get scheduled very soon, hence having more than one available is more common. The same can happen with VxWorks if there is a higher priority task running for long enough that two or more fds are ready by the time the task waiting on select gets to run of course - it is all down to the priorities of the ready tasks. HTH, John... --------------------------- Newsgroups: comp.os.vxworks Subject: Re: a few basic questions for vxworks Date: Fri, 28 Jun 2002 19:06:24 -0400 From: "Denis Rouleau" Message-ID: References: Try UCHAR sysInByte(int port) and void sysOutByte(int port, char byte) The same exist with WORD and LOG. ref: VxWorks 5.4 Programmer's ref guide, Table D-2 "James" wrote in message news:IX%S8.9971$T33.1962612@news20.bellglobal.com... > Thanks a lot, > I have a machine/robot to control. > My first question is: how can you write code to set some IO, eg. I want to > turn on/off LED (say address 0x180). > also I want to watch some Very important sensor signal, if this signal is > OFF, I want to stop the system immediately. > > James > > > "subbarayan" wrote in message > news:f81c4277.0206272043.268f4af9@posting.google.com... > > dear james, > > I don't know about your first question.but here are the answers for > > your next two questions: > > relation between posix and kernel: > > posix is a set of interfaces u use to make to make ur code to be > > portable.for eg u have made a code in vxworks and want it to work it > > on some other platform > > like linux,u can make ur code compatible to work in linux incase u > > follow these posix standards.remember posix (portable OS interface) > > is a set of standards in coding .u have to follow these standards > > incase ur going to make ur application and porting it to some other > > platform.while making the code itself,the standard of posix will be > > implemented.vxworks supports posix and there are seperate system calls > > which u have to follow incase ur going to use posix standards.these > > calls r given by windriver and u can refer the vxworks manual for > > these calls.ok? > > crashing and vxworks: > > mostly vxworks does not automatically restart once it crashes.but it > > has options like restarting the whole appln in case it encounters > > fatal error.u have system calls like taskrestart to restart the task u > > wanted.u can jus check for ur error and and anticipate it and > > implement a check condition and then restart the task incase crash > > happens. > > other way is to have some exception handling code such that if some > > exception happens ur exception service routine executes and makes the > > situ ok.again its all making ur code defensive against all these > > errors by anticipating them and checking and making the error disapper > > by error handling techniques.exception handlers have high priority > > then any other tasks including interrupts.so its best way i can say. > > > > hope my answer was useful to you. > > by, > > subbarayan > > project engr-vxworks, > > bangalore, > > india > > --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Regarding I/O porting writing statements in VxWorks Date: Fri, 28 Jun 2002 19:10:10 -0400 From: "Denis Rouleau" Message-ID: References: <3D1A3C0F.7E3C206@jpl.nasa.gov> <2hHS8.828$mp2.456968@newshog.newsread.com> Hello, check out table D-2 in the programmer's ref guide if you are on an x86. You'll need to use sysInByte/sysInWord/sysInLong and sysOutByte/sysOutWord/sysOutLong to meet your needs. Gino "Brian St. Pierre" wrote in message news:2hHS8.828$mp2.456968@newshog.newsread.com... > > "M Lang" wrote: > > "Brian St. Pierre" wrote: > > > "Rajesh" wrote in message > > > > Please let us know which > > > > are the equivalent rountines > > > > > > > > outb( ioAddr, oByte)---->Writes a byte at the given address. > > > > inb(ioAddr)----->Reads a byte from the given address. > > > > > > outb & inb will probably have to be written for your particular > hardware. > > > > outb( ioAddr, oByte)---->Writes a byte at the given address > > > > *(unsigned char *)ioAddr = oByte > > > > x = inb(ioAddr)----->Reads a byte from the given address > > > > x = *(unsigned char *)ioAddr > > I don't know much about GPIB cards (what processor type does this run?). If > you're trying to write to the i/o ports of an x86 then those statements > won't work. There may be x86-specific routines in vxWorks for writing to the > i/o ports, but I've never used vxWorks on an x86. > > -- > -Brian St. Pierre > brian (at) > bstpierre.org > > --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Help with Watchdog Timer Date: Sat, 29 Jun 2002 01:23:11 GMT From: Pete Kockritz Organization: AT&T Broadband Message-ID: References: <68b528d4.0206241237.6d2cc8dc@posting.google.com> <3D17C273.230BF95F@gv.net> <68b528d4.0206250614.6c1651cc@posting.google.com> <68b528d4.0206270608.707fdb65@posting.google.com> In article <68b528d4.0206270608.707fdb65@posting.google.com>, colintelfer@hotmail.com (CT) wrote: > The stack of the currently implemented WD callback can get big. I > can't guarantee that all my other tasks could handle this additional > stack space. I think I will use a semaphore or netJobAdd to let a task > do the work of the callback. But I am curious about the deferred > execution, when does this happen and which task is used to store the > WD callback stack (can it really be _any_ task)? > > Thanks for the help, > Colin Here's a link to a thread from about 1 year ago on this topic. The poster explained things pretty well in a reply to a post of mine. I added code to my WD callback to print out the stack pointer so I could see what task's stack it was using. That was very illuminating. - -- Pete Kockritz --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Unable to access symbols for applications Date: Sat, 29 Jun 2002 01:33:48 GMT From: Pete Kockritz Organization: AT&T Broadband Message-ID: References: <63c460d8.0206281459.19fa70cd@posting.google.com> In article <63c460d8.0206281459.19fa70cd@posting.google.com>, daniel_k_wong@yahoo.com (Daniel Wong) wrote: > I have a vxWorks image that includes some functions that I wrote. I > linked the symbol table vxWorks.st with my vxWorks image. I am able > to do a lkup on VxWorks calls; however, when I do a lkup on functions > that I wrote, lkup is unable to find those symbols. Do any of you > have any idea why this is happening? Shouldn't I be able to do a lkup > on all functions in the image? Are you saying that you built a static kernel with your functions in it? Are you sure your functions are in the kernel? If you put your functions in a library and linked it with the kernel, your functions would not be linked in unless something in the kernel referenced them. If your functions were declared 'static', they would not normally be in the symbol table, even if they are in the image. Do a 'nmppc --defined-only vxWorks' to dump out all the symbols and see if your functions are in there. (If your architecture is not ppc, substitute your arch for ppc in 'nmppc'). If the symTable.c file is still around you could look at it to see if they are in it. - -- Pete Kockritz --------------------------- Newsgroups: comp.os.vxworks Subject: Tornado101 and Tornado211 Compiler options. Date: 28 Jun 2002 19:08:54 -0700 From: dsa0000@hotmail.com (dsa) Organization: http://groups.google.com/ Message-ID: Hi All, We currently upgraded to T211 from T101. The same code base which works very fine, compiled with new environment behaves very weird. Sometimes it crashes with exceptions like address bound exception. Have anyone upgraded from T101 to T211 ? The Platform MIPS R4000. The compiler options used for T101 ccmips -EB -mcpu=r4000 -mips3 -mgp32 -mfp32 -non_shared -G 0 -ansi - -nostdinc -O2 -funroll-loops -fno-for-scope -fno-builtin The new compiler options used for T211 ccmips -EB -mips4 -G 0 -ansi -mno-branch-likely -fno-builtin -O2 - -funroll-loops Thanks DSA --------------------------- Newsgroups: comp.os.vxworks Subject: Re: a few basic questions for vxworks Date: 28 Jun 2002 21:44:33 -0700 From: vxnerd@rediffmail.com (subbarayan) Organization: http://groups.google.com/ Message-ID: References: dear james, I think u have to make some device driver oriented code in order access the I/O. The concept of writing device drivers should follow the following proceedure: Generally device drivers are broker s/w which work b/n device and OS.There are three things u must know before writing device drivers. 1.hows the interface between ur devicedriver and device?i mean there will be some code which will access the device registers(i mean device memory).most of the drivers usually follow the following syntaxes: deviceopen,deread,dewrite,declose,deiocntrl.it depends on os how these syntaxes have been implemented.u can refer vxworks manual for syntaxes for i/o.refer the chapter 3 i/o systems for getting a good idea abt implementation of these drivers.generally in the read or write command u will asked to specify the location of memory in the device where ur going to read or write .in ur case u can give the location where u want to read data from. 2.hows the interface between ur driver and os-this interface has the job of posting the data the driver has fetched to the application via os.there are many techniques like message queues and other task communication mechanisms u can use .what u can do is make the driver post the data fetched from device into one of these communication devices(software devices-devices r not physical) like message queues and pipes in vxworks.and make the application read the data from these communication devices. 3.how ur going to handle interrupts.there are h/w and s/w interrupts.s/w interrupts are synchronous.(u can pre program them).h/w int are asynchronous.(u can't predict when this will happen).generally hardware interrupts are physical.they will be hardwired to processor.for good understanding of device drivers and interrupts i advice u to go through the book-WRITING DEVICE DRIVERS IN UNIX-BY GEORGE PAJARI.beautiful book i have ever found.even though its for unix,u can get concepts of writing device drivers and extend it to other OS. Regarding sensor signal notification,once u know abt device drivers and interrupts its a cake walk for u to make ur application stop when it recieves signal.u can have something like hardware interrupt set for the device and make it raise and interrupt when sensor gives a signal.then in the ISR u can write what ever u want to happen when sensor signal arrives. hope my answer helps u. subbarayan project engr-vxworks, bangalore, india. "James" wrote in message news:... > Thanks a lot, > I have a machine/robot to control. > My first question is: how can you write code to set some IO, eg. I want to > turn on/off LED (say address 0x180). > also I want to watch some Very important sensor signal, if this signal is > OFF, I want to stop the system immediately. > > James > > > "subbarayan" wrote in message > news:f81c4277.0206272043.268f4af9@posting.google.com... > > dear james, > > I don't know about your first question.but here are the answers for > > your next two questions: > > relation between posix and kernel: > > posix is a set of interfaces u use to make to make ur code to be > > portable.for eg u have made a code in vxworks and want it to work it > > on some other platform > > like linux,u can make ur code compatible to work in linux incase u > > follow these posix standards.remember posix (portable OS interface) > > is a set of standards in coding .u have to follow these standards > > incase ur going to make ur application and porting it to some other > > platform.while making the code itself,the standard of posix will be > > implemented.vxworks supports posix and there are seperate system calls > > which u have to follow incase ur going to use posix standards.these > > calls r given by windriver and u can refer the vxworks manual for > > these calls.ok? > > crashing and vxworks: > > mostly vxworks does not automatically restart once it crashes.but it > > has options like restarting the whole appln in case it encounters > > fatal error.u have system calls like taskrestart to restart the task u > > wanted.u can jus check for ur error and and anticipate it and > > implement a check condition and then restart the task incase crash > > happens. > > other way is to have some exception handling code such that if some > > exception happens ur exception service routine executes and makes the > > situ ok.again its all making ur code defensive against all these > > errors by anticipating them and checking and making the error disapper > > by error handling techniques.exception handlers have high priority > > then any other tasks including interrupts.so its best way i can say. > > > > hope my answer was useful to you. > > by, > > subbarayan > > project engr-vxworks, > > bangalore, > > india --------------------------- Newsgroups: comp.os.vxworks Subject: Re: any one with experience in tornado1.0?challenge to tornado1.0 users Date: 28 Jun 2002 22:32:24 -0700 From: vxnerd@rediffmail.com (subbarayan) Organization: http://groups.google.com/ Message-ID: References: dear Mr.Lawnick, Thanks for ur reply u posted for my question.here are the things i did during configuration and problems which i encountered: first I started registry(automatic) then port mapper comes into action.after that i open tornado1.0. opened the sample file called color.c .then accessed project menu and clicked on customise: then gave the following settings: build target:CPU=I80386 ADDED_CFLAGS=-g vxcolor.o and then compiled it by clicking the customised menu which was given from the above setting dialogue box. it says build successful.then clicked on make current sourcefile menu and made the file. thats also completed successfully. after that accessed the make pc486 menu,selected bootrom targets and made bootrom_uncmp and then made vxworks.st file. all these things are finishing successfully. after that i jus accessed the tool menu and clicked on target server-configure and gave the following settings: target server name-my machine name in network. property settings: backend-wdbrpc,timeout-10 target ip address-my machine ip core file and symbols-file path from target and then global symbols memory cache size-defaultsize miscelaneous-selected all options virtual console-targetwindow as virtual console. after making these settings,my target was launched by clicking launch target. my target server starts it gives the following message: attaching backend succeeded connecting to target agent... error- rpc core backend client connection time out- then the target server shuts down automatically. i tried changing the time out parameter but its of no use. kindly tell me wheres the error and how to rectify it? regards, thankful to u, subbarayan "Michael Lawnick" wrote in message news:... > Hi subbarayan, > > I don't expect anybody replying you with a step by step answer. > All you need is written in manual. Your problem is that you haven't > read/understood all or you have a specific problem not covered by manual. In > the latter case a concrete description of the problems is unavoidable to get > help. > Give us your HostOS, BSP-Type (I assume i86 based) > Tell what you've done and what the exact (logs of serial interface/target > server/...) results are. > > Michael > > "subbarayan" schrieb im Newsbeitrag > news:f81c4277.0206280134.2bbfcd0b@posting.google.com... > > Can any one help me get the target configuration proceedure for > > tornado1.0 in order to create a floppy oriented bootable target?I need > > the step by step proceedure (including the menus to be accessed)if > > possible becos i am helpless now and further the manuals are of no > > help to me.I have a specific problem of the target server hanging and > > shutting down before the target is launched.i am unable to know the > > reason behind it and can any one tell me where the error could be and > > how should i rectify it?becos of this error i am unable to work on > > vxworks itself. > > i have posted this question many times but no response.I am thankful > > and greatful in advance to the person who is helping me. > > any one with a solution can mail the solution to vxnerd@rediffmail.com > > or post the reply here itself in this board . --------------------------- Newsgroups: comp.os.vxworks Subject: Re: INT0 problems with PentiumIII/BX440 brd Date: Sat, 29 Jun 2002 05:52:26 GMT From: info access Organization: info access Message-ID: <3D1D4966.D2B7610A@rochester.rr.com> References: <3D1C4956.92AB8DE1@rochester.rr.com> Dear Michael Lawnick, Thanks first for your time and effort to help. About your first question I am not exactly sure what you mean, but the way it manifests itself is that while tasks are running, the INT0 interrupt every second or third tick takes 1 tick length time. And randomly it can take as much as two ticks as well, and it doesn't get interrupted at the mid point, as if it lost a tick count ??? Weird. I am pretty sure since I read about it in the manual since, that the INCLUDE_APIC_TIMER is true or defined. On Monday I double check this and will also look into the intEntry event. Do you think that this problem is specific to the chipset (440BX)? If I understand you correctly, the problem might go away if I don't include the timestamp timer? I haven't seen this anomaly with the Pentium BSP, or the 486 BSP for that matter. Regards - -- al k Michael Lawnick wrote: > Hi al kavcak, > > don't trust WindView when its logging timer interrupts with 1 system tick > length: > I'm pretty sure, you see a single spike to INT0 just some usec before isn't > it ? > Then you see the TSR matter I'm just struggling around with WRS. Its a > problem of WindView logging in connection with timestamp driver. It results > in displaying the intEntry event one tick earlier than it really occurs, > what leads to the '1 system tick interrupt'. > > Please check that you PentiumPro BSP uses the correct timer lib, i.e. > PentiumPro has a built-in counter that is used as timestamp driver if all is > defined properly (INCLUDE_APIC_TIMER). > > HTH > Michael > > "info access" schrieb im Newsbeitrag > news:3D1C4956.92AB8DE1@rochester.rr.com... > > To all the experts, > > > > I am facing strange problem, and wonder whether anybody faced this > > before. > > > > I am trying to upgrade from a Pentium-based board to a PentiumIII-based > > board. > > Using the pcPentiumPro BSP with Tornado 2.0 I built the bootrom_uncmp > > and > > vxworks for the target and when running the application I noticed a > > strange problem > > in WindView: The INT0 interrupt (timer/tick interrupt) takes the whole > > tick time, > > i.e. 16.7ms. So one of the task that I run is ~150ms, and its > > interrupted about > > 4 to 6 times with 16.7ms of INT0 time. Regularly INT0 takes a couple of > > micro- > > seconds. > > > > Also have to mention that the boot-up time is unusually slow; probably > > something is not initialized properly. > > > > Any ideas what might be wrong? > > > > Thanks > > > > -- al kavcak > > > > --------------------------- End of New-News digest ********************** From vxwexplo-errs@csg.lbl.gov Sat Jun 29 07:53:40 2002 From: =?iso-8859-1?q?ram=20mohan?= Date: Sat Jun 29 07:53:42 PDT 2002 Subject: Re: How to change define when compilie project and link libPPC860gnuv Hi, what kind of change do u want to do to the vxworks? most of theuser configurable things u can redifine in config.h and some in configAll.h if ur going to change some thing really need to be changed i think u better consult wind river Regards Mohan --- the vxWorks Users Group Exploder wrote: > Submitted-by vxwexplo-errs@csg.lbl.gov Wed Jun 26 > 04:53:29 2002 > Submitted-by: Arad Gluska > > Hi and thanks to all the vxworks users > > We compile our project using a batch file (ppc860, > using the tornado). Our > source files include some of the vxworks header > files, and we link > libPPC860gnuvx.a. > What if I would like to change definitions in the > header files? > I show that when I change definitions in the vxworks > h files, they take no > effect. I guess it is because we are using the > libPPC860gnuvx.a lib that is > compiled already!? > Do I need to make a new libPPC860gnuvx.a after > changing the define? and if > yes, how do I create a new one? > > Please send me also direct response as not all the > group corresponding reach > me :-) > > Thanks a lot > Arad > (arad@metalink.co.il) > > > ********** > > This is a user group mailing list for vxWorks > related topics > see http://www-vxw.lbl.gov/vxworks for posting > and subscription info __________________________________________________ Do You Yahoo!? Yahoo! - Official partner of 2002 FIFA World Cup http://fifaworldcup.yahoo.com From vxwexplo-errs@csg.lbl.gov Sun Jun 30 04:03:08 2002 From: Vxworks Exploder Date: Sun Jun 30 04:03:10 PDT 2002 Subject: comp.os.vxworks newsdigest Comp.Os.Vxworks Daily Digest Sun Jun 30 04:03:05 PDT 2002 Subject: Books Subject: Re: Real Tek 8139 Problems Subject: VxWorks FTP client data transfer problem. Subject: Re: Books Subject: Help --- the means of vxWorks Error Number 55 Subject: Re: a few basic questions for vxworks ------------------------------------------------------- Newsgroups: comp.os.vxworks Subject: Books Date: 29 Jun 2002 14:09:44 -0700 From: cferreira@redecidade.com.br (Claudio Ferreira) Organization: http://groups.google.com/ Message-ID: <1ba79fe8.0206291309.1eed908d@posting.google.com> I anybody !!! Can anybody help ? Where do I get books of VxWorks ? Cláudio - Brazil. --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Real Tek 8139 Problems Date: Sat, 29 Jun 2002 17:04:19 -0700 From: "Alex Pogostin" Organization: MindSpring Enterprises Message-ID: References: Joel, Realtek has a VxWorks driver for this chip - http://www.realtek.com.tw/. They claim that after signing an NDA they'll send you the source. Alex Pogostin www.silicondrivers.com "Joel Hannah" wrote in message news:eYoQ8.69$0F6.68@rip... > I am trying to use VxWorks 5.4 with a single board computer from Advantech. > It uses and RTL8139 ethernet controller. I have the "unofficial" release of > the this driver as I understand that WindRiver does not really support this > chip. That driver really has some problems with network "slowdowns" and it > looks like a memory allocation problem that I can not find. Is there an > updated version of a driver for the Real Tek 8139 controller that I can > use?? The readme.txt file says the driver is RELEASE 1.0/EA3 of the END > driver for the RTL8139 controller. > > Any help would be greatly appreciated.... > > Joel > > > -- > ****** > S. Joel Hannah > Software Engineering Manager > > Advanced Optical Systems > 6767 Old Madison Pike, Suite 410 > Huntsville, AL 35806 > > (256) 971-0036 (voice) > (256) 971-0010 (fax) > (256) 580-8947 (page) > hannah@aos-inc.com (internet) > > > --------------------------- Newsgroups: comp.os.vxworks Subject: VxWorks FTP client data transfer problem. Date: 29 Jun 2002 20:14:19 -0700 From: mohasin.zaki@wipro.com (Mohasin) Organization: http://groups.google.com/ Message-ID: Hi, My FTP client running in the target logs into the server, does a "STOR " and then it starts writing the data into the data connection. Then the client closes the data connection and waits for a reply in the control connection. After having got a "226 Transfer Completed." I close the control connection. The above sequence seems to be correct. Please correct me if I am wrong. Now, assuming the above sequence is correct. I am having corruption in the image stored in the server. Point to be noted is that the corruption seems to be the last packet of data received by the Server (which mostly would mean that the Server is not closing its local file descriptor). Whats happening in the client side is.. 1. I am FTPing at a very high rate in the above sequence. 2. I am getting the Bytes written into the socket as a correct number (I am writing all the data in a single shot). 3. I am closing the data connection. 4. I am getting reply "226 Transfer Completed..." 5. I am closing the control connection. Could anyone please tell 1. If the sequence of FTPing is correct?. 2. Am I following the protocol correctly?. 3. Can I write all the data into the socket in one shot?. Could that be the problem.?. Any suggestions or hints that I could use. Thank you all. Regards, MOhasin --------------------------- Newsgroups: comp.os.vxworks Subject: Re: Books Date: Sat, 29 Jun 2002 21:07:10 -0700 From: "Alex Pogostin" Organization: MindSpring Enterprises Message-ID: References: <1ba79fe8.0206291309.1eed908d@posting.google.com> Claudio, Documentation is available at the WindRiver web site: http://www.windriver.com/products/html/tornado2.html. Alex Pogostin www.silicondrivers.com "Claudio Ferreira" wrote in message news:1ba79fe8.0206291309.1eed908d@posting.google.com... > I anybody !!! > > Can anybody help ? > > Where do I get books of VxWorks ? > > > > Cláudio - Brazil. --------------------------- Newsgroups: comp.os.vxworks Subject: Help --- the means of vxWorks Error Number 55 Date: 30 Jun 2002 00:37:10 -0700 From: peng.liu@utstar.com (peng.liu) Organization: http://groups.google.com/ Message-ID: <15cfb1ac.0206292337.73130f20@posting.google.com> Hi all, When I send the UDP package on 1200 package/second, the socket will report the error 55(NoBuf), the vxWorks mBuf and system buffer config is below: NUM_1024 = 25*40 NUM_128 = 100*40 NUM_2048 = 25*40 NUM_256 = 40*40 NUM_512 = 40*40 NUM_64 = 40*40 NUM_SYS_128= 64*40 NUM_SYS_256= 64*40 NUM_SYS_512= 64*40 NUM_SYS_64= 64*40 When this error happen, I show the mBuf and system buffer num, it have many free, so I think the mBuf num is enough, I couldn't konw why the vxWorks set this error nomber, and when, where the vxWorks will set this error number? who can tell me? Thanks very much! Thanks & Best Reagards, Peng.Liu UTStarcom (China) Ltd, Shenzhen Branch --------------------------- Newsgroups: comp.os.vxworks Subject: Re: a few basic questions for vxworks Date: 30 Jun 2002 01:35:15 -0700 From: eyalk@radlan.com (Eyal) Organization: http://groups.google.com/ Message-ID: References: "James" wrote in message news:... > Hi, > > 1. We want to set/get address of target 0x180, > in High c, we can use _outp(0x180, 0); _inp(0x180); but how can VxWork deal > with I/O directly? > > 2. difference and relationship between POSIX and Kernel ? > > 3. In which specific cases, we can let the application using VxWorks crash? > eg. the programmer made a mistake, buffer is not enough, can VxWorks handle > this case without crash the system? we have such bad experience by using > other RTOS, the machine is totally out of control, very scary. > > Thanks in advance, > > James The simple way to set an address: *(unsigned char *)0x180 = 0xBB; for 1 byte *(unsigned short *)0x180 = 0xBBBB; for 2 bytes *(unsigned long *)0x180 = 0xBBBBAAAA; for 4 bytes Eyal --------------------------- End of New-News digest ********************** From vxwexplo-errs@csg.lbl.gov Sun Jun 30 23:23:29 2002 From: jrana@hss.hns.com Date: Sun Jun 30 23:23:31 PDT 2002 Subject: Need ur help for porting IPv6 stack on vxworks . Hi all I have some issue regarding to port IPv6 stack on Vxworks. These are following item that IPv6 stack should need to port on any stack. 1. Mbuf should be support by OS for holding packet data. 2. software Interrupts to handle incoming packets . 3. Timer interrupts like Timeout . 4.spl for congruency control with interrupting threads. Can any body tell me how should i proceed to port ipv6 stack on top of vxworks. Thanks for suggestion in advance . Regards jeevan From vxwexplo-errs@csg.lbl.gov Sun Jun 30 23:44:34 2002 From: "Rajendra Kumar Singh" Date: Sun Jun 30 23:44:36 PDT 2002 Subject: vxworks bootrom This is a multi-part message in MIME format. ------=_NextPart_000_00CD_01C220F9.2F93DC00 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Hi, here is a problem, I want to build vxworks bootrom with my application = in it which is considerable big in size. Is there any limit on bootrom size ? I am not able to boot from my = bootrom Image (500K) Do I need to change something (config.h ?? BSP Makefile ??) any suggesstion ?? thanks raj ------=_NextPart_000_00CD_01C220F9.2F93DC00 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable
Hi,
  here is a problem, I want = to build=20 vxworks bootrom with my application in it which
is considerable big = in=20 size.
Is there any limit on bootrom size ? I am not able to boot from = my=20 bootrom
Image (500K)
Do I need to change something (config.h ?? = BSP=20 Makefile ??)
 any suggesstion ??

thanks
raj
------=_NextPart_000_00CD_01C220F9.2F93DC00--