From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 6411 invoked by alias); 30 Jun 2011 14:20:30 -0000 Received: (qmail 6402 invoked by uid 22791); 30 Jun 2011 14:20:28 -0000 X-SWARE-Spam-Status: No, hits=-2.6 required=5.0 tests=AWL,BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM,RCVD_IN_DNSWL_LOW X-Spam-Check-By: sourceware.org Received: from mail-bw0-f49.google.com (HELO mail-bw0-f49.google.com) (209.85.214.49) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Thu, 30 Jun 2011 14:20:10 +0000 Received: by bwf12 with SMTP id 12so2509075bwf.36 for ; Thu, 30 Jun 2011 07:20:08 -0700 (PDT) MIME-Version: 1.0 Received: by 10.204.85.25 with SMTP id m25mr2048603bkl.148.1309443608551; Thu, 30 Jun 2011 07:20:08 -0700 (PDT) Received: by 10.204.67.79 with HTTP; Thu, 30 Jun 2011 07:20:08 -0700 (PDT) In-Reply-To: <4DE6749E.8050001@siva.com.mk> References: <4DE6749E.8050001@siva.com.mk> Date: Thu, 30 Jun 2011 14:20:00 -0000 Message-ID: From: jayant biswas To: Ilija Stanislevik Cc: ecos-discuss@ecos.sourceware.org Content-Type: multipart/mixed; boundary=0016e6de049b2420a704a6ee992a Mailing-List: contact ecos-discuss-help@ecos.sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: ecos-discuss-owner@ecos.sourceware.org Subject: Re: [ECOS] SPI send data X-SW-Source: 2011-06/txt/msg00074.txt.bz2 --0016e6de049b2420a704a6ee992a Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Content-length: 7166 It's been a while since the last message. But I am still stuck on this problem, which means that I am unable to control the programmable potentiometer AD8400. So I have tried to check the pins with a logic analyzer and it appears that I do not see any SPI clock. That is to say that the pin PA5 is always low. As is the pin PA7. And PA8 is always high. This pins correspond to the descriptions in the STM3210E eval board http://www.st.com/stonline/products/literature/um/14220.pdf . Am I missing some initialization step that should start off the clock? I have attached my code with this message. Please let me know if you need more information. Thank you, Jayant On Wed, Jun 1, 2011 at 19:19, Ilija Stanislevik wrote: > On 06/01/2011 11:02 AM, jayant biswas wrote: >> Hi Ilija, >> >> Thank you for your response to the previous question, I am using SPI1 >> and have changed the config accordingly and have noticed with a >> voltmeter that the pin PA8 does stay high and goes low when the SPI is >> active. I have another question now about sending data. If you take a >> look at the timing diagrams on page 10 of the datasheet >> (http://www.analog.com/static/imported-files/data_sheets/AD8400_8402_840= 3.pdf) >> for the programmable potentiometer that I am using and then my code >> below, could you maybe hint at what I am doing wrong? >> >> Regards, >> Jayant >> >> So this code based on the loopback test that comes with the spi package = in ecos. >> >> #include >> #include =A0 =A0 =A0 =A0 // Test macros >> #include =A0 =A0 =A0 =A0 =A0// Assertion macros >> #include =A0 =A0 =A0 =A0 =A0 =A0 // Diagnostic output >> >> #include =A0 =A0 =A0 =A0 =A0 // CYGNUM_HAL_STACK_SI= ZE_TYPICAL >> #include >> >> #include =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 // Common SPI API >> #include =A0 =A0 =A0 =A0 =A0 // STM32 data structur= es >> >> #include >> >> //----------------------------------------------------------------------= ----- >> // Thread data structures. >> >> cyg_uint8 stack [CYGNUM_HAL_STACK_SIZE_TYPICAL]; >> cyg_thread thread_data; >> cyg_handle_t thread_handle; >> >> externC cyg_spi_cortexm_stm32_bus_t cyg_spi_stm32_bus2; >> >> //----------------------------------------------------------------------= ----- >> // SPI loopback device driver data structures. >> >> cyg_spi_cortexm_stm32_device_t loopback_device =3D { >> =A0 =A0 .spi_device.spi_bus =3D &cyg_spi_stm32_bus1.spi_bus, >> =A0 =A0 .dev_num =3D 0 , =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0// O= nly 1 device. >> =A0 =A0 .cl_pol =3D 1, >> =A0 =A0 .cl_pha =3D 1, >> =A0 =A0 .cl_brate =3D 8000000, =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0// Nominal= 8Mhz. >> =A0 =A0 .cs_up_udly =3D 1, >> =A0 =A0 .cs_dw_udly =3D 1, >> =A0 =A0 .tr_bt_udly =3D 1, >> =A0 =A0 .bus_16bit =3D true, // *** MODIFIED this because my data is 10 = bits >> }; >> >> //----------------------------------------------------------------------= ----- >> >> //const char tx_data[] =3D {0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1}; // To set >> maximum resistance at address 00 >> const char tx_data[] =3D {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}; // To set >> minimim resistance at address 00 >> const char tx_data1[] =3D "Testing extended API..."; >> const char tx_data2[] =3D "Testing extended API for a second transaction= ."; >> >> char rx_data [sizeof(tx_data)]; >> char rx_data1 [sizeof(tx_data1)]; >> char rx_data2 [sizeof(tx_data2)]; >> >> //----------------------------------------------------------------------= ----- >> // Run single loopback transaction using simple transfer API call. >> >> void run_test_1 (cyg_bool polled) >> { >> =A0 =A0 diag_printf ("Test 1 : Simple transfer test (polled =3D %d).\n", >> polled ? 1 : 0); >> =A0 =A0 cyg_spi_transfer (&loopback_device.spi_device, polled, sizeof (t= x_data), >> =A0 =A0 =A0 =A0 (const cyg_uint8*) &tx_data[0], (cyg_uint8*) &rx_data[0]= ); >> >> =A0 =A0 diag_printf (" =A0 =A0Tx data : %s\n", tx_data); >> =A0 =A0 diag_printf (" =A0 =A0Rx data : %s\n", rx_data); >> =A0 =A0 CYG_ASSERT (memcmp (tx_data, rx_data, sizeof (tx_data)) =3D=3D 0, >> =A0 =A0 =A0 =A0 "Simple transfer loopback failed - mismatched data.\n"); >> } >> >> >> //----------------------------------------------------------------------= ----- >> // Run all PL022 SPI interface loopback tests. >> >> void run_tests (void) >> { >> =A0 =A0 diag_printf ("Running STM32 SPI driver loopback tests.\n"); >> =A0 =A0 run_test_1 (true); >> =A0 =A0 CYG_TEST_PASS_FINISH ("Loopback tests ran OK"); >> } >> >> //----------------------------------------------------------------------= ----- >> // User startup - tests are run in their own thread. >> >> void cyg_user_start(void) >> { >> =A0 =A0 CYG_TEST_INIT(); >> =A0 =A0 cyg_thread_create( >> =A0 =A0 =A0 =A0 10, =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 = =A0 =A0 =A0 =A0 // Arbitrary priority >> =A0 =A0 =A0 =A0 (cyg_thread_entry_t*) run_tests, =A0 =A0 =A0// Thread en= try point >> =A0 =A0 =A0 =A0 0, =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 = =A0 =A0 =A0 =A0 =A0// >> =A0 =A0 =A0 =A0 "test_thread", =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 = =A0 =A0// Thread name >> =A0 =A0 =A0 =A0 &stack[0], =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 = =A0 =A0 =A0// Stack >> =A0 =A0 =A0 =A0 CYGNUM_HAL_STACK_SIZE_TYPICAL, =A0 =A0 =A0 =A0// Stack s= ize >> =A0 =A0 =A0 =A0 &thread_handle, =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 = =A0 // Thread handle >> =A0 =A0 =A0 =A0 &thread_data =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0= =A0 =A0// Thread data structure >> =A0 =A0 ); >> =A0 =A0 cyg_thread_resume(thread_handle); >> =A0 =A0 cyg_scheduler_start(); >> } >> >> //=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D >> > First you should change > > =A0 =A0.cl_pol =3D 1, > =A0 =A0.cl_pha =3D 1, > > into > > =A0 =A0.cl_pol =3D 0, > =A0 =A0.cl_pha =3D 0, > > > in order to make STM32 SPI's timing compatible with potentiometer. > > Note that with cyg_spi_transfer() you can send/receive bytes or 16bit > words, while your potentiometer expects 10bit words. You should take > care to pack your 10bit word in 16bits (two consecutive bytes) aligned > towards LS bit. That way STM32's SPI will clock out 6 unused bits at the > beginning so at the end of transaction your 10 bits will settle in right > place in potentiometer's shift register. > > const char tx_data[] =3D {0,0xff}; // To set maximum resistance at addres= s 00 > const char tx_data[] =3D {0,0}; // To set minimum resistance at address 00 > > > In your attempt you are packing a bit in each byte (char) which is wrong. > > Also change > > =A0 =A0.bus_16bit =3D true, > > into > > =A0 =A0.bus_16bit =3D false, > > because you are sending/receiving in 8bit portions. > > Regards, > -- > > Ilija Stanislevik > SIvA doo > ul. Mladinska 43 lok. 6 > p.f. 53 > MK-2400 Strumica > Macedonia > > www.siva.mk > > --0016e6de049b2420a704a6ee992a Content-Type: text/x-csrc; charset=US-ASCII; name="spi_try.c" Content-Disposition: attachment; filename="spi_try.c" Content-Transfer-Encoding: base64 X-Attachment-Id: f_gpjssdyx0 Content-length: 6678 I2luY2x1ZGUgPGN5Zy9pbmZyYS9jeWdfdHlwZS5oPgojaW5jbHVkZSA8Y3ln L2luZnJhL3Rlc3RjYXNlLmg+ICAgICAgICAgLy8gVGVzdCBtYWNyb3MKI2lu Y2x1ZGUgPGN5Zy9pbmZyYS9jeWdfYXNzLmg+ICAgICAgICAgIC8vIEFzc2Vy dGlvbiBtYWNyb3MKI2luY2x1ZGUgPGN5Zy9pbmZyYS9kaWFnLmg+ICAgICAg ICAgICAgIC8vIERpYWdub3N0aWMgb3V0cHV0CgojaW5jbHVkZSA8Y3lnL2hh bC9oYWxfYXJjaC5oPiAgICAgICAgICAgLy8gQ1lHTlVNX0hBTF9TVEFDS19T SVpFX1RZUElDQUwKI2luY2x1ZGUgPGN5Zy9rZXJuZWwva2FwaS5oPgoKI2lu Y2x1ZGUgPGN5Zy9pby9zcGkuaD4gICAgICAgICAgICAgICAgIC8vIENvbW1v biBTUEkgQVBJCiNpbmNsdWRlIDxjeWcvaW8vc3BpX3N0bTMyLmg+ICAgICAg ICAgICAvLyBTVE0zMiBkYXRhIHN0cnVjdHVyZXMKCiNpbmNsdWRlIDxzdHJp bmcuaD4KCi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi8vIFRo cmVhZCBkYXRhIHN0cnVjdHVyZXMuCgpjeWdfdWludDggc3RhY2sgW0NZR05V TV9IQUxfU1RBQ0tfU0laRV9UWVBJQ0FMXTsKY3lnX3RocmVhZCB0aHJlYWRf ZGF0YTsKY3lnX2hhbmRsZV90IHRocmVhZF9oYW5kbGU7CgpleHRlcm5DIGN5 Z19zcGlfY29ydGV4bV9zdG0zMl9idXNfdCBjeWdfc3BpX3N0bTMyX2J1czE7 CgovLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQovLyBTUEkgbG9v cGJhY2sgZGV2aWNlIGRyaXZlciBkYXRhIHN0cnVjdHVyZXMuCgpjeWdfc3Bp X2NvcnRleG1fc3RtMzJfZGV2aWNlX3QgbG9vcGJhY2tfZGV2aWNlID0gewog ICAgLnNwaV9kZXZpY2Uuc3BpX2J1cyA9ICZjeWdfc3BpX3N0bTMyX2J1czEu c3BpX2J1cywKICAgIC5kZXZfbnVtID0gMCAsICAgICAgICAgICAgICAgICAg ICAgIC8vIE9ubHkgMSBkZXZpY2UuIAogICAgLmNsX3BvbCA9IDAsCiAgICAu Y2xfcGhhID0gMCwKICAgIC5jbF9icmF0ZSA9IDgwMDAwMDAsICAgICAgICAg ICAgICAgIC8vIE5vbWluYWwgOE1oei4KICAgIC5jc191cF91ZGx5ID0gMSwK ICAgIC5jc19kd191ZGx5ID0gMSwKICAgIC50cl9idF91ZGx5ID0gMSwKICAg IC5idXNfMTZiaXQgPSBmYWxzZSwKfTsKCi8vLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tCgovL2NvbnN0IGNoYXIgdHhfZGF0YVtdID0gezAsMCww LDAsMCwwLDAsMCwwLDB9OwovL2NvbnN0IGNoYXIgdHhfZGF0YVtdID0gezAs MCwwLDAsMCwwLDAsMCwxLDEsMSwxLDEsMSwxLDF9Owpjb25zdCBjaGFyIHR4 X2RhdGFbXSA9IHswLDB4ZmZ9OwovL2NvbnN0IGNoYXIgdHhfZGF0YVtdID0g IlRlc3RpbmcsIHRlc3RpbmcsIDEyLCAxMjMuIjsKY29uc3QgY2hhciB0eF9k YXRhMVtdID0gIlRlc3RpbmcgZXh0ZW5kZWQgQVBJLi4uIjsKY29uc3QgY2hh ciB0eF9kYXRhMltdID0gIlRlc3RpbmcgZXh0ZW5kZWQgQVBJIGZvciBhIHNl Y29uZCB0cmFuc2FjdGlvbi4iOwoKY2hhciByeF9kYXRhIFtzaXplb2YodHhf ZGF0YSldOwpjaGFyIHJ4X2RhdGExIFtzaXplb2YodHhfZGF0YTEpXTsKY2hh ciByeF9kYXRhMiBbc2l6ZW9mKHR4X2RhdGEyKV07CgovLy0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLQovLyBSdW4gc2luZ2xlIGxvb3BiYWNrIHRy YW5zYWN0aW9uIHVzaW5nIHNpbXBsZSB0cmFuc2ZlciBBUEkgY2FsbC4KCnZv aWQgcnVuX3Rlc3RfMSAoY3lnX2Jvb2wgcG9sbGVkKQp7CiAgICBkaWFnX3By aW50ZiAoIlRlc3QgMSA6IFNpbXBsZSB0cmFuc2ZlciB0ZXN0IChwb2xsZWQg PSAlZCkuXG4iLCBwb2xsZWQgPyAxIDogMCk7CiAgICAvL2N5Z19zcGlfdHJh bnNmZXIgKCZsb29wYmFja19kZXZpY2Uuc3BpX2RldmljZSwgcG9sbGVkLCBz aXplb2YgKHR4X2RhdGEpLCAKICAgIC8vICAgIChjb25zdCBjeWdfdWludDgq KSAmdHhfZGF0YVswXSwgKGN5Z191aW50OCopIE5VTEwpOwogICAgY3lnX3Nw aV90cmFuc2ZlciAoJmxvb3BiYWNrX2RldmljZS5zcGlfZGV2aWNlLCBwb2xs ZWQsIHNpemVvZiAodHhfZGF0YSksIAogICAgICAgIChjb25zdCBjeWdfdWlu dDgqKSAmdHhfZGF0YVswXSwgKGN5Z191aW50OCopIE5VTEwpOwoKICAgIGRp YWdfcHJpbnRmICgiICAgIFR4IGRhdGEgOiAlc1xuIiwgdHhfZGF0YSk7CiAg ICBkaWFnX3ByaW50ZiAoIiAgICBSeCBkYXRhIDogJXNcbiIsIHJ4X2RhdGEp OwogICAgQ1lHX0FTU0VSVCAobWVtY21wICh0eF9kYXRhLCByeF9kYXRhLCBz aXplb2YgKHR4X2RhdGEpKSA9PSAwLAogICAgICAgICJTaW1wbGUgdHJhbnNm ZXIgbG9vcGJhY2sgZmFpbGVkIC0gbWlzbWF0Y2hlZCBkYXRhLlxuIik7Cn0K Ci8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi8vIFJ1biB0d28g bG9vcGJhY2sgdHJhbnNhY3Rpb25zIHVzaW5nIGV4dGVuZGVkIHRyYW5zZmVy IEFQSS4KCnZvaWQgcnVuX3Rlc3RfMiAoY3lnX2Jvb2wgcG9sbGVkKQp7CiAg ICBkaWFnX3ByaW50ZiAoIlRlc3QgMiA6IEV4dGVuZGVkIEFQSSB0ZXN0IChw b2xsZWQgPSAlZCkuXG4iLCBwb2xsZWQgPyAxIDogMCk7CiAgICBjeWdfc3Bp X3RyYW5zYWN0aW9uX2JlZ2luICgmbG9vcGJhY2tfZGV2aWNlLnNwaV9kZXZp Y2UpOwogICAgY3lnX3NwaV90cmFuc2FjdGlvbl90cmFuc2ZlciAoJmxvb3Bi YWNrX2RldmljZS5zcGlfZGV2aWNlLCBwb2xsZWQsIHNpemVvZiAodHhfZGF0 YTEpLCAKICAgICAgICAoY29uc3QgY3lnX3VpbnQ4KikgJnR4X2RhdGExWzBd LCAoY3lnX3VpbnQ4KikgJnJ4X2RhdGExWzBdLCBmYWxzZSk7CiAgICBjeWdf c3BpX3RyYW5zYWN0aW9uX3RyYW5zZmVyICgmbG9vcGJhY2tfZGV2aWNlLnNw aV9kZXZpY2UsIHBvbGxlZCwgc2l6ZW9mICh0eF9kYXRhMiksIAogICAgICAg IChjb25zdCBjeWdfdWludDgqKSAmdHhfZGF0YTJbMF0sIChjeWdfdWludDgq KSAmcnhfZGF0YTJbMF0sIGZhbHNlKTsKICAgIGN5Z19zcGlfdHJhbnNhY3Rp b25fZW5kICgmbG9vcGJhY2tfZGV2aWNlLnNwaV9kZXZpY2UpOwoKICAgIGRp YWdfcHJpbnRmICgiICAgIFR4IGRhdGEgMSA6ICVzXG4iLCB0eF9kYXRhMSk7 CiAgICBkaWFnX3ByaW50ZiAoIiAgICBSeCBkYXRhIDEgOiAlc1xuIiwgcnhf ZGF0YTEpOwogICAgZGlhZ19wcmludGYgKCIgICAgVHggZGF0YSAyIDogJXNc biIsIHR4X2RhdGEyKTsKICAgIGRpYWdfcHJpbnRmICgiICAgIFJ4IGRhdGEg MiA6ICVzXG4iLCByeF9kYXRhMik7CiAgICBDWUdfQVNTRVJUIChtZW1jbXAg KHR4X2RhdGExLCByeF9kYXRhMSwgc2l6ZW9mICh0eF9kYXRhMSkpID09IDAs CiAgICAgICAgIlNpbXBsZSB0cmFuc2ZlciBsb29wYmFjayBmYWlsZWQgLSBt aXNtYXRjaGVkIGRhdGEgKHRyYW5zZmVyIDEpLlxuIik7CiAgICBDWUdfQVNT RVJUIChtZW1jbXAgKHR4X2RhdGEyLCByeF9kYXRhMiwgc2l6ZW9mICh0eF9k YXRhMikpID09IDAsCiAgICAgICAgIlNpbXBsZSB0cmFuc2ZlciBsb29wYmFj ayBmYWlsZWQgLSBtaXNtYXRjaGVkIGRhdGEgKHRyYW5zZmVyIDIpLlxuIik7 Cn0KCi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi8vIFJ1biBh bGwgUEwwMjIgU1BJIGludGVyZmFjZSBsb29wYmFjayB0ZXN0cy4KCnZvaWQg cnVuX3Rlc3RzICh2b2lkKQp7CiAgICBkaWFnX3ByaW50ZiAoIlJ1bm5pbmcg U1RNMzIgU1BJIGRyaXZlciBsb29wYmFjayB0ZXN0cy5cbiIpOwogICAgcnVu X3Rlc3RfMSAodHJ1ZSk7IAogICAgLyogICAgcnVuX3Rlc3RfMSAoZmFsc2Up OyAKICAgIHJ1bl90ZXN0XzIgKHRydWUpOyAKICAgIHJ1bl90ZXN0XzIgKGZh bHNlKTsgKi8KICAgIENZR19URVNUX1BBU1NfRklOSVNIICgiTG9vcGJhY2sg dGVzdHMgcmFuIE9LIik7Cn0KCi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tCi8vIFVzZXIgc3RhcnR1cCAtIHRlc3RzIGFyZSBydW4gaW4gdGhl aXIgb3duIHRocmVhZC4KCnZvaWQgY3lnX3VzZXJfc3RhcnQodm9pZCkKewog ICAgQ1lHX1RFU1RfSU5JVCgpOwogICAgY3lnX3RocmVhZF9jcmVhdGUoCiAg ICAgICAgMTAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAv LyBBcmJpdHJhcnkgcHJpb3JpdHkKICAgICAgICAoY3lnX3RocmVhZF9lbnRy eV90KikgcnVuX3Rlc3RzLCAgICAgIC8vIFRocmVhZCBlbnRyeSBwb2ludAog ICAgICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg Ly8gCiAgICAgICAgInRlc3RfdGhyZWFkIiwgICAgICAgICAgICAgICAgICAg ICAgICAvLyBUaHJlYWQgbmFtZQogICAgICAgICZzdGFja1swXSwgICAgICAg ICAgICAgICAgICAgICAgICAgICAgLy8gU3RhY2sKICAgICAgICBDWUdOVU1f SEFMX1NUQUNLX1NJWkVfVFlQSUNBTCwgICAgICAgIC8vIFN0YWNrIHNpemUK ICAgICAgICAmdGhyZWFkX2hhbmRsZSwgICAgICAgICAgICAgICAgICAgICAg IC8vIFRocmVhZCBoYW5kbGUKICAgICAgICAmdGhyZWFkX2RhdGEgICAgICAg ICAgICAgICAgICAgICAgICAgIC8vIFRocmVhZCBkYXRhIHN0cnVjdHVyZQog ICAgKTsKICAgIGN5Z190aHJlYWRfcmVzdW1lKHRocmVhZF9oYW5kbGUpOwog ICAgY3lnX3NjaGVkdWxlcl9zdGFydCgpOwp9CgovLz09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09Cg== --0016e6de049b2420a704a6ee992a Content-Type: text/plain; charset=us-ascii Content-length: 148 -- Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss --0016e6de049b2420a704a6ee992a--