Hi together, this question goes to everyone using embedded linux on the enp-2505 which has an ixp1200 and one IXF440 onboard. Hope there are some. ;) I am currently coding an MPLS-Router based on above hardware. To keep it fast and profiling simple I am handling all tasks in the microengines and therefore want to avoid ACEs. When switching from simulation, which worked fine, to hardware debugging I ran into trouble. Though receival of packets worked fine in simulation the code keeps waiting for mpackets when doing hardware debugging. The following loop (from Johnson and Kunze) keeps going forever : do { csr_read((void *)&rcv_ready_bits, rcv_rdy_lo, 1, ctx_swap); } while ( !(rcv_ready_bits & (1 << port_num)) ); The SDK was instructed to "start ports" and IX-Bus-Config is 64Bit, 1-2 MACs. To prepare the Hardware for Debugging I ran bootixp and after that insmod ue.o; insmod octmac.o; rs_udebug; Its definitely no hardware or cabling problem as the supplied l3forwarding_example (./ixstart) works fine. When instead of the above preparations loading an ace-example with (debug mode 1 - Download and debug via workbench) and inserting my own code debugging works as expected. This leads to the following questions : *** Question start here :-) What (else) has to be done to properly initialize the hardware ? Tried some ioctls() on octmac.o but could not find a promising sequence due to a lack of documentation on that subject. To configure a bunch of machines I have been looking for alternative ways to inject the microcode. A program/library that can be used to load+start the microengines would be of great interest. Though some libraries have functions with promising names there are too many and docomentation is to sparse to start guessing. Any suggestions are welcome. Thanks a lot in advance. Yours, Robert. -------------------------------------------------------------------------- Here some information on the Hard-/Software in use :
WARNING: IXF440 MAC Address Initialzation failed. sts = 130 Press space bar to stop auto-boot... 0 Flash download mode is 1
Cygmon, the Cygnus ROM monitor. Cygmon was written by Robert Richardson and Bob Manson of Cygnus Solutions Copyright(c) 1997, 1998, 1999 Cygnus Solutions
Version: release 2.04 This image was built on Fri Feb 22 16:35:14 PST 2002
CPU: IXP1200 StrongARM(R) Microprocessor rev. C0 Board: Intel(R) PA1104 Network Processor Base Card StrongARM is a Registered Trademark of Advanced RISC Machines Limited. Intel is a Registered Trademark of Intel Corporation Other Brands and Trademarks are the property of their respective owners. Waiting for host based download
Kernel in use :
Linux ixp_target 2.3.99-pre3-rmk3-np2 #235 Fri Feb 21 13:51:33 CET 2003 armv4b
Software: IXA SDK 2.01a IXA Education Workstation (CD from 05/28/2002) -------------------------------------------------------------------------- -- There are three ways to get something done: (1) Do it yourself. (2) Hire someone to do it for you. (3) Forbid your kids to do it.