* Re: [ECOS] LPC2XXX watchdog feeds and interrupts
@ 2009-10-26 20:40 Sergei Gavrikov
2009-10-26 21:05 ` Laurie Gellatly
0 siblings, 1 reply; 4+ messages in thread
From: Sergei Gavrikov @ 2009-10-26 20:40 UTC (permalink / raw)
To: Laurie Gellatly; +Cc: 'eCos discuss-list'
On Mon, Oct 26, 2009 at 08:58:19PM +1100, Laurie Gellatly wrote:
> Hi All, I using an ARM 7 (LPC2212) based on an eCosCentric build. It
> appears that watchdog feeds are done with interrupts enabled yet the
> NXP manual warns against leaving interrupts enabled during a feed
> sequence (and I'm pretty sure I've seen the consequences). Firstly,
> have I missed something? Are interrupts disabled and I just don't
> see where when I call watchdog_reset() OR should I be adding
> cyg_interrupt_disable() and cyg_interrupt_enable() calls around the
> feed sequence in watchdog_lpc2xxx.cxx
>
> Thanks ...Laurie:{)
Hello Laurie,
I found no any global interrupt disabling/enabling workaround for eCos
io/watchdog *::reset. More that the most targets as I could see have a
peace with CPU's watchdog with a single atomic write, but NXP and some
other targets claim two writes (!atomic operation): devs/watchdog/*
Well, NXP points on such a claim, for example, in this application
note
http://www.standardics.nxp.com/support/documents/microcontrollers/pdf/an10414.pdf
and in their other data sheets. Well, may be that is rare condition:
to break two sequenced writes, but safety is safety :-) Could you
provide a patch for the issue, please`?
IMO, you would add some CDL in devs/watchdog/arm/lpc2xxx/*/*, e.g.
CYGOPT_DEVICES_WATCHDOG_ARM_LPC2XXX_RESET_SAFE to wrap that reset,
well, to add something likes the below
int old;
HAL_DISABLE_INTERRUPTS( old );
/* Feed magic values to reset the watchdog. */
/* ... */
HAL_RESTORE_INTERRUPTS( old );
But, as I could understand, you pointed on eCosCentric build.
HTH
Sergei
--
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [ECOS] LPC2XXX watchdog feeds and interrupts 2009-10-26 20:40 [ECOS] LPC2XXX watchdog feeds and interrupts Sergei Gavrikov @ 2009-10-26 21:05 ` Laurie Gellatly 2009-10-26 21:34 ` Sergei Gavrikov 0 siblings, 1 reply; 4+ messages in thread From: Laurie Gellatly @ 2009-10-26 21:05 UTC (permalink / raw) To: Sergei Gavrikov; +Cc: eCos discuss-list Hi Sergei, Two things. It should not be an option as when the feed sequence is eventually interrupted and the processor is reset it can be VERY time consuming to track down. I know from bitter experience. The other is I was not sure about which interrupt disable/enable function pairs to use. Is HAL_DISABLE_INTERRUPTS preferred over cyg_disable_interrupts? We need ALL interrupts off during the feed. ...Laurie:{) +61 416 114419 On 27/10/2009, at 7:40 AM, Sergei Gavrikov <sergei.gavrikov@gmail.com> wrote: > On Mon, Oct 26, 2009 at 08:58:19PM +1100, Laurie Gellatly wrote: >> Hi All, I using an ARM 7 (LPC2212) based on an eCosCentric build. It >> appears that watchdog feeds are done with interrupts enabled yet the >> NXP manual warns against leaving interrupts enabled during a feed >> sequence (and I'm pretty sure I've seen the consequences). Firstly, >> have I missed something? Are interrupts disabled and I just don't >> see where when I call watchdog_reset() OR should I be adding >> cyg_interrupt_disable() and cyg_interrupt_enable() calls around the >> feed sequence in watchdog_lpc2xxx.cxx >> >> Thanks ...Laurie:{) > > Hello Laurie, > > I found no any global interrupt disabling/enabling workaround for eCos > io/watchdog *::reset. More that the most targets as I could see have a > peace with CPU's watchdog with a single atomic write, but NXP and some > other targets claim two writes (!atomic operation): devs/watchdog/* > > Well, NXP points on such a claim, for example, in this application > note > http://www.standardics.nxp.com/support/documents/microcontrollers/pdf/an10414.pdf > and in their other data sheets. Well, may be that is rare condition: > to break two sequenced writes, but safety is safety :-) Could you > provide a patch for the issue, please`? > > IMO, you would add some CDL in devs/watchdog/arm/lpc2xxx/*/*, e.g. > CYGOPT_DEVICES_WATCHDOG_ARM_LPC2XXX_RESET_SAFE to wrap that reset, > well, to add something likes the below > > int old; > HAL_DISABLE_INTERRUPTS( old ); > /* Feed magic values to reset the watchdog. */ > /* ... */ > HAL_RESTORE_INTERRUPTS( old ); > > But, as I could understand, you pointed on eCosCentric build. > > HTH > > Sergei > -- Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [ECOS] LPC2XXX watchdog feeds and interrupts 2009-10-26 21:05 ` Laurie Gellatly @ 2009-10-26 21:34 ` Sergei Gavrikov 0 siblings, 0 replies; 4+ messages in thread From: Sergei Gavrikov @ 2009-10-26 21:34 UTC (permalink / raw) To: Laurie Gellatly; +Cc: eCos discuss-list On Tue, Oct 27, 2009 at 08:03:55AM +1100, Laurie Gellatly wrote: > Hi Sergei, > Two things. It should not be an option as when the feed sequence is > eventually interrupted and the processor is reset it can be VERY > time consuming to track down. I know from bitter experience. The > other is I was not sure about which interrupt disable/enable > function pairs to use. Is HAL_DISABLE_INTERRUPTS preferred over > cyg_disable_interrupts? We need ALL interrupts off during the feed. Or cyg_scheduler_{,un}lock() then, but, that is kernel depended. Perhaps, you are right, IMO, eCos kernel hackers can say the last words :-) I just wanted to have an optional fix via CDL. Sergei -- Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss ^ permalink raw reply [flat|nested] 4+ messages in thread
* [ECOS] RedBoot image for Olimex LPC-E2294 @ 2009-10-19 9:32 peter_lanius 2009-10-19 10:42 ` Sergei Gavrikov 0 siblings, 1 reply; 4+ messages in thread From: peter_lanius @ 2009-10-19 9:32 UTC (permalink / raw) To: ecos-discuss Hi, I would like to use RedBoot / eCOS for my new project which is going to run on an Olimex LPC-E2294 board. I have built RedBoot as per the instructions in Anthony Massa's book (using the 'redboot' template for the Olimex board). The whole build went without a hitch, I used the Redboot_ROM.ecm configuration options file provided in the eCOS 3.0 distribution for the Olimex board. I then used CrossWorks to burn the Flash image ('redboot.bin') using 0x00000000 as the load address. This seemed to work ok as well and when I restarted the board I could connect to RedBoot via Hyperterminal. But I do get a warning message: FLASH: driver init failed: Invalid FLASH address **Warning** FLASH configuration checksum error or invalid key Use 'fconfig -i' to [re]initialize database No network interfaces found RedBoot(tm) bootstrap and debug environment [ROM] Non-certified release, version v3_0 - built 19:33:12, Oct 19 2009 ... Platform: Olimex LPC-E2294 development board (ARM7TDMI-S) RAM: 0x81000000-0x81100000 [0x8100b560-0x810f1000 available] RedBoot> What does the 'Invalid Flash address' message mean? Did I burn RedBoot into the wrong location? Should I have used the 'redboot.elf' file instead? Should I have modified the 'mlt_arm_lpc2xxx_olpce2294_rom.ldi' file (what is in there seems to me to also suggest the 0x00000000 start address)? Thanks Peter __________________________________________________________________________________ Get more done like never before with Yahoo!7 Mail. Learn more: http://au.overview.mail.yahoo.com/ -- Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [ECOS] RedBoot image for Olimex LPC-E2294 2009-10-19 9:32 [ECOS] RedBoot image for Olimex LPC-E2294 peter_lanius @ 2009-10-19 10:42 ` Sergei Gavrikov 2009-10-19 11:42 ` peter_lanius 0 siblings, 1 reply; 4+ messages in thread From: Sergei Gavrikov @ 2009-10-19 10:42 UTC (permalink / raw) To: peter_lanius; +Cc: ecos-discuss On Mon, Oct 19, 2009 at 02:32:36AM -0700, peter_lanius@yahoo.com.au wrote: > Hi, > > I would like to use RedBoot / eCOS for my new project which is going > to run on an Olimex LPC-E2294 board. I have built RedBoot as per the > instructions in Anthony Massa's book (using the 'redboot' template > for the Olimex board). The whole build went without a hitch, I used > the Redboot_ROM.ecm configuration options file provided in the eCOS > 3.0 distribution for the Olimex board. > > I then used CrossWorks to burn the Flash image ('redboot.bin') using > 0x00000000 as the load address. This seemed to work ok as well and > when I restarted the board I could connect to RedBoot via > Hyperterminal. But I do get a warning message: > > FLASH: driver init failed: Invalid FLASH address > **Warning** FLASH configuration checksum error or invalid key > Use 'fconfig -i' to [re]initialize database > No network interfaces found > > RedBoot(tm) bootstrap and debug environment [ROM] > Non-certified release, version v3_0 - built 19:33:12, Oct 19 2009 > ... > Platform: Olimex LPC-E2294 development board (ARM7TDMI-S) > RAM: 0x81000000-0x81100000 [0x8100b560-0x810f1000 available] > RedBoot> Hello Peter, What's board revision do you have? http://olimex.com/dev/lpc-e2294.html http://olimex.com/dev/lpc-e2294rb.html These boards have the different flash parts. eCos v3_0 has HAL for old (Olimex now says 'obsolete board') Olimex LPC-E2294 board. If you have the new one, i.e. Olimex LPC-E2294 REV.B board, try this HAL from here http://bitbucket.org/tickling/olpcx22xx/ > What does the 'Invalid Flash address' message mean? Did I burn > RedBoot into the wrong location? Should I have used the > 'redboot.elf' file instead? Should I have modified the > 'mlt_arm_lpc2xxx_olpce2294_rom.ldi' file (what is in there seems to > me to also suggest the 0x00000000 start address)? Old Olimex LPC-E2294 had 28F320C3 Intel flash parts, new boards have 28F160C3. These flash parts have the different device codes, perhaps, eCos v3_0 flash driver for olpce2294 target cannot identify your chip. Sergei > Thanks > Peter > > > > __________________________________________________________________________________ > Get more done like never before with Yahoo!7 Mail. > Learn more: http://au.overview.mail.yahoo.com/ > > -- > Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos > and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss -- Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [ECOS] RedBoot image for Olimex LPC-E2294 2009-10-19 10:42 ` Sergei Gavrikov @ 2009-10-19 11:42 ` peter_lanius 2009-10-19 13:47 ` Sergei Gavrikov 0 siblings, 1 reply; 4+ messages in thread From: peter_lanius @ 2009-10-19 11:42 UTC (permalink / raw) To: Sergei Gavrikov; +Cc: ecos-discuss Hi Sergei I have the Rev B Olimex LPC-E2294 board with the LPC-2214 CPU and 1MB of Flash (MX26LV800T). Do I need to apply all the patches from the bitbucket.org/tickling/olpcx22xx/ repository? Thanks, Peter ----- Original Message ---- From: Sergei Gavrikov <sergei.gavrikov@gmail.com> To: peter_lanius@yahoo.com.au Cc: ecos-discuss@ecos.sourceware.org Sent: Mon, 19 October, 2009 9:45:57 PM Subject: Re: [ECOS] RedBoot image for Olimex LPC-E2294 On Mon, Oct 19, 2009 at 02:32:36AM -0700, peter_lanius@yahoo.com.au wrote: > Hi, > > I would like to use RedBoot / eCOS for my new project which is going > to run on an Olimex LPC-E2294 board. I have built RedBoot as per the > instructions in Anthony Massa's book (using the 'redboot' template > for the Olimex board). The whole build went without a hitch, I used > the Redboot_ROM.ecm configuration options file provided in the eCOS > 3.0 distribution for the Olimex board. > > I then used CrossWorks to burn the Flash image ('redboot.bin') using > 0x00000000 as the load address. This seemed to work ok as well and > when I restarted the board I could connect to RedBoot via > Hyperterminal. But I do get a warning message: > > FLASH: driver init failed: Invalid FLASH address > **Warning** FLASH configuration checksum error or invalid key > Use 'fconfig -i' to [re]initialize database > No network interfaces found > > RedBoot(tm) bootstrap and debug environment [ROM] > Non-certified release, version v3_0 - built 19:33:12, Oct 19 2009 > ... > Platform: Olimex LPC-E2294 development board (ARM7TDMI-S) > RAM: 0x81000000-0x81100000 [0x8100b560-0x810f1000 available] > RedBoot> Hello Peter, What's board revision do you have? http://olimex.com/dev/lpc-e2294.html http://olimex.com/dev/lpc-e2294rb.html These boards have the different flash parts. eCos v3_0 has HAL for old (Olimex now says 'obsolete board') Olimex LPC-E2294 board. If you have the new one, i.e. Olimex LPC-E2294 REV.B board, try this HAL from here http://bitbucket.org/tickling/olpcx22xx/ > What does the 'Invalid Flash address' message mean? Did I burn > RedBoot into the wrong location? Should I have used the > 'redboot.elf' file instead? Should I have modified the > 'mlt_arm_lpc2xxx_olpce2294_rom.ldi' file (what is in there seems to > me to also suggest the 0x00000000 start address)? Old Olimex LPC-E2294 had 28F320C3 Intel flash parts, new boards have 28F160C3. These flash parts have the different device codes, perhaps, eCos v3_0 flash driver for olpce2294 target cannot identify your chip. Sergei > Thanks > Peter > > > > __________________________________________________________________________________ > Get more done like never before with Yahoo!7 Mail. > Learn more: http://au.overview.mail.yahoo.com/ > > -- > Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos > and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss __________________________________________________________________________________ Get more done like never before with Yahoo!7 Mail. Learn more: http://au.overview.mail.yahoo.com/ -- Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [ECOS] RedBoot image for Olimex LPC-E2294 2009-10-19 11:42 ` peter_lanius @ 2009-10-19 13:47 ` Sergei Gavrikov 2009-10-24 9:37 ` [ECOS] RedBoot loading eCOS examples causes PC reboot peter_lanius 0 siblings, 1 reply; 4+ messages in thread From: Sergei Gavrikov @ 2009-10-19 13:47 UTC (permalink / raw) To: peter_lanius; +Cc: ecos-discuss On Mon, Oct 19, 2009 at 04:42:12AM -0700, peter_lanius@yahoo.com.au wrote: > Hi Sergei > > I have the Rev B Olimex LPC-E2294 board with the LPC-2214 CPU and > 1MB of Flash (MX26LV800T). ^^^^^^^^^^ |_ That is not Intel parts! Peter, it seems for me that you have Olimex LPC-E22_14_ board, and not Olimex LPC-E22_94_ ! I have not the same board and I could not test a flash driver for it, but, there is `olpce2214' target in a row of those olpcx22xx targets. You can try that target, but, there are _No Warranties_ that you will have a success. The target's flash driver was written in 'a dark' (I just assumed that MX26LV800T parts belong the am29xxxxx family), but, may be that's my fault (in this case you need to write own flash driver or ask about community). > Do I need to apply all the patches from the > > bitbucket.org/tickling/olpcx22xx/ > > repository? There is install script which upgrades old LPC2294 targets from Olimex and adds new ones. All those targets use some olpcx22xx common part to prevent a duplication of code hal `-- arm `-- lpc2xxx `-- olpcx22xx |-- common |-- olpce2214 |-- olpce2294 |-- olpce2294rb |-- olpch2214 |-- olpch2294 `-- olpcl2294 I did not try to install a choosen target separately, but, you can try it, perhaps, it's needed some handywork. Peter, I would suggest you do not mess up your eCos v3_0 sources, and try to install new experimental targets for eCos sources is got from CVS/HG repository, a safe way to try the experimental code would be mkdir -p ~/sandbox && cd ~/sandbox hg clone http://hg-pub.ecoscentric.com/ecos ;# ~80M of traffic hg clone http://bitbucket.org/tickling/olpcx22xx;# <1M of traffic export ECOS_REPOSITORY=~/sandbox/ecos/packages ;# <- Important!!! sh olpcx22xx/install.sh ;# Install targets Build RedBoot[ROM] without flash support, burn it, if you will get the alive RedBoot, then build eCos flash test, `flash1' mkdir -p /tmp/t && cd /tmp/t export ECOS_REPOSITORY=~/sandbox/ecos/packages ;# <- Important!!! ecosconfig new olpce2214 ecosconfig add flash ecosconfig tree && make make -C io/flash/current tests and walk through out a flash init code in GDB. May be you'll get a clue. If you have a doubt about 80M of traffic, drop me tonight personally, then I'll build `RedBoot' and `flash1' images for the target and upload them on bitbucket for a testing. Sergei -- Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss ^ permalink raw reply [flat|nested] 4+ messages in thread
* [ECOS] RedBoot loading eCOS examples causes PC reboot 2009-10-19 13:47 ` Sergei Gavrikov @ 2009-10-24 9:37 ` peter_lanius 2009-10-24 12:38 ` Sergei Gavrikov 0 siblings, 1 reply; 4+ messages in thread From: peter_lanius @ 2009-10-24 9:37 UTC (permalink / raw) To: ecos-discuss Hi, I have now successfully installed RedBoot on my Olimex LPC-E2214 Rev_B board. I can excute RedBoot commands via the serial port using Hyperterminal. I then built the eCOS library for the default configuration using the configtool. Finally I built the eCOS example applications using the standard Makefile under /ecos/examples. The Makefile produces ELF files which are rather big (850KB) for serial transfer, so I used arm-eabi-objcopy to create SREC files (150KB). I then use RedBoot to download an application using: load -v -m ymodem I then use Hyperterminal to send the SREC file via Ymodem. This process seems to run ok until it is finished, when the suddenly PC reboots. That happens every time. No other applications are open. The board is connected via a USB-to-Serial cable and the Olimex JTAG ARM_USB_OCD is also connected, but OpenOCD/GDB is not running. I have tried it with the ELF file as well, same result. What am I doing wrong and why does the PC reboot? Thanks Peter __________________________________________________________________________________ Get more done like never before with Yahoo!7 Mail. Learn more: http://au.overview.mail.yahoo.com/ -- Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [ECOS] RedBoot loading eCOS examples causes PC reboot 2009-10-24 9:37 ` [ECOS] RedBoot loading eCOS examples causes PC reboot peter_lanius @ 2009-10-24 12:38 ` Sergei Gavrikov [not found] ` <738229.12555.qm@web51906.mail.re2.yahoo.com> 0 siblings, 1 reply; 4+ messages in thread From: Sergei Gavrikov @ 2009-10-24 12:38 UTC (permalink / raw) To: peter_lanius; +Cc: ecos-discuss Peter writes > Hi, > > I have now successfully installed RedBoot on my Olimex LPC-E2214 > Rev_B board. I can excute RedBoot commands via the serial port using > Hyperterminal. I then built the eCOS library for the default > configuration using the configtool. Finally I built the eCOS example > applications using the standard Makefile under /ecos/examples. The > Makefile produces ELF files which are rather big (850KB) for serial > transfer, so I used arm-eabi-objcopy to create SREC files (150KB). > > I then use RedBoot to download an application using: load -v -m > ymodem > > I then use Hyperterminal to send the SREC file via Ymodem. This > process seems to run ok until it is finished, when the suddenly PC > reboots. That happens every time. No other applications are open. Hi Peter if you wrote, suddenly _board_ reboots, I would start to investigate in your issue. But it seemed for me the described behavior is not eCos (target) related thing. I'm sorry, I does not use Windows+Cygwin eCos environment. I interact with the board via Redboot just fine on 230K via USB-to-serial, but, under Linux. Just a guess, may be your issue is a FTDI driver issue? Do you use UART0 to connect to the target? If you do, it means that it is used serial-over-usb stuff (=FTDI driver for Windows). May be some FTDI driver's issue does reboot PC? Try to use LPC's UART1 and use a real serial DB9 connector (NO USB, NO FTDI). On start Redboot "listens" on both serial channels and will start to interact on that channel on which it will see the first input. Second. You can add CYGPKG_COMPRESS (=zlib) to Redboot build and that will let you then to upload the gzip-compressed images if you will use RB's load command with -d (decompress) option gzip hello Redboot> load -m y -d CC Then open hello.gz in terminal program and start to upload it using Y-modem protocol. Third. The got images are not huge, to see/know its size, invoke arm-eabi-size hello and look on .code segment for a reference. Fourth. Start to play with eCos tests using GDB or Insight. The eCos tests are small, laconic, and well designed and they all run smoothly under GDB. Just select in configtool: Build Tests and you will get a lot of them for the target under tests directory. > The board is connected via a USB-to-Serial cable and the Olimex JTAG > ARM_USB_OCD is also connected, but OpenOCD/GDB is not running. ^^^^^^^^^^^^^^^^^^^^^^^^^^ I'm sorry. Again, it is not eCos related too. > I have tried it with the ELF file as well, same result. > > What am I doing wrong and why does the PC reboot? IMO, it is something wrong with your work environment, settings, etc. I believe in that what any terminal program can/should not reboot PC. Well, may be just to hang it :-) or to freeze a keyboard input, but, a rebooting..., it's very strange. Peter, what your PC is? May be it is a Laptop with USB ports only? However, I use both and PC and DELL Laptop without serial ports with the target having no issues with it, but, that is Linux. I'm sorry, I have no clues anymore, but if you can try UART1 (real serial port), try it. FYI, you can use Ethernet to upload images on the target, but, that is off-topic just now. Try the UART1 first. HIH Sergei -- Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss ^ permalink raw reply [flat|nested] 4+ messages in thread
[parent not found: <738229.12555.qm@web51906.mail.re2.yahoo.com>]
* Re: [ECOS] RedBoot loading eCOS examples causes PC reboot [not found] ` <738229.12555.qm@web51906.mail.re2.yahoo.com> @ 2009-10-25 13:20 ` Sergei Gavrikov 2009-10-26 9:58 ` [ECOS] LPC2XXX watchdog feeds and interrupts Laurie Gellatly 0 siblings, 1 reply; 4+ messages in thread From: Sergei Gavrikov @ 2009-10-25 13:20 UTC (permalink / raw) To: peter_lanius; +Cc: eCos discuss-list Please keep your replies on the mailing list so that all may benefit. Peter wrote: > Hi Sergei > > thank you for being so helpful. I understand that what I reported > isn't an eCOS issue and rather has to do with > Windows/Hyperterminal/FTDI drivers. > > I am happy to switch to Linux as I had several problems with the > FTDI drivers under Windows. I would appreciate a few pointers > regarding the selection of tools you recommend. I have installed > openSUSE 11.1 and added obvious things like Eclipse, mercurial, > python. Hi Peter, That's great. I hope that you will get a success with the target under Linux more that you are unix veteran as I knew and I hope you will get an enjoy with the modern unix-like environment (Linux) and open source OS for embedded (eCos). I used Slackware a couple years ago and now beeing no geek anymore :-) I use Ubuntu, but, openSUSE it is the great distribution too! So, my proposals would be an apt-centric, but your system is zypper-centric. Hope, someone will fix my faults. > What I would like to know is: > 1. Which GNU ARM toolchain do I install? Sourcery G++ Lite for ARM > EABI? That toolchain is built against newlib libc and eCos has own libc implementation. There is ready-to-use eCos toolchain for ARM (and other) targets on the eCosCentric FTP site: ftp://ecoscentric.com/pub/ecos/gnutools/ You have to install this toolchain for the target ftp://ecoscentric.com/pub/ecos/gnutools/i386linux/ecoscentric-gnutools-arm-eabi-20081213-sw.i386linux.tar.bz2 The toolchain is based on GCC 4.3 on it is well tested toolchain for eCos v3_0/CVS. But, more proper way to install eCos is to use these official proposals and eCos install script. Look here, please http://ecos.sourceware.org/getstart.html So, you have to install Tcl to get the stuff. On Ubuntu it's need to install {tcl,tk}-dev packages with apt-get, and Google told me that you need to do $ sudo zypper install tcl tk tcl-devel tk-devel and then run `sh ecos-install.tcl' as root (sudo sh) and you will get eCos v3_0, configtool and the selected gnu toolchain(s) under /opt. And how to install eCos from HG I wrote you a couple days ago. So, may be you need only arm-eabi toolchain only from their FTP. > 2. Where do I get the FTDI driver for the Olimex ARM-USB-OCD JTAG > for Linux? How do I install it? The below is the FTDI board related (no OpenOCD USB JTAG). The modern Linux kernels have modules to manage FTDI devices. Just plug in your board to USB port and then look on `dmesg' output. $ gmesg | tail and you'll get it. or use lsusb utility $ lsusb | grep -i future Bus 005 Device 002: ID 0403:6001 Future Technology Devices International, Ltd FT232 USB-Serial (UART) IC and at the end you should see new character device (on my Ubuntu that will be ttyUSB0, I hope on openSUSE that will be the same) $ ls -l /dev/ttyUSB0 crw-rw---- 1 root dialout 188, 0 2009-10-25 13:01 /dev/ttyUSB0 And this character device can be used to interact with RedBoot on the board via terminal program. As you can see I should belong `dialout' group, but on SUSE that may be something another. > 3. Do I need to install OpenOCD? If yes, which version? Do I need to > build it? Peter, nowadays I do not use OpenOCD with the board, it's enougth for me to use the pair RedBoot+GDB for that target (your target has 1M RAM and that is good amount of memory to use RedBoot), but, in a past I had success with Olimex parallel JTAG wiggler and OpenOCD on Linux box (well that openocd was built from sources). Today eCos/Redboot has not native support for OpenOCD debugger. So, I would say, it is may be odd to use JTAG for _your_ target. Seek on the list on the subject and you will know about OpenOCD+eCos a bit more. I live without JTAG because I can burn ROM images using own Expect script, i.e. program on-chip LPC flash using LPC ISP commands via... /dev/ttyUSB0, e.g. $ prog_lpc2xxx -file install/bin/redboot.bin -port /dev/ttyUSB0 Since I've used RedBoot I does not need JTAG/OpenOCD. If you want I can put that script on bitbucket. > Anything else you recommend? I haven't done development on Unix > since 1992, so my knowledge is rather obsolete... Perhaps, you need to install `minicom' (instead hyperterm) and may be `lrzsz' package (x,y,zmodems utilities). $ sudo zypper install minicom Then prepare minicom rc script for the target $ cat > ~/.minirc.olimex << EOF pu port /dev/ttyUSB0 pu baudrate 38400 pu bits 8 pu parity N pu stopbits 1 pu rtscts No EOF And use `minicom' with the board (~ HyperTerm), `man minicom'. $ minicom -o olimex ;# run then press RST on the board. Eclipse... I'm sorry, I do not use this IDE. The gdb, gdb-tui is enough for me, this is a good intro http://beej.us/guide/bggdb/ To develop on Linux you need to have more stuff is got with zypper, i.e. to install some host's development tools, gcc, g++, autotools, etc. if you plan to use eCos from CVS/HG and build the latest eCos host tools from the sources. Wellcome to Open Source World! Well, on Ubuntu that's easy enough $ sudo apt-get install build-essential What's I found for openSUSE http://forums.opensuse.org/applications/413553-build-essential.html $ zypper se -t pattern devel and it seems for me those `devel_basic', `devel_C_C++' will be good choices for start. But, may be you have those packages installed. Peter, and at the end, all eCos/RedBoot documentation is your friend http://ecos.sourceware.org/docs-latest/ and sure the eCos mailing list archives (it is searchable stuff) http://ecos.sourceware.org/intouch.html and Google as well are too. HIH Sergei > Thanks > Peter [snip] -- Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss ^ permalink raw reply [flat|nested] 4+ messages in thread
* [ECOS] LPC2XXX watchdog feeds and interrupts 2009-10-25 13:20 ` Sergei Gavrikov @ 2009-10-26 9:58 ` Laurie Gellatly 0 siblings, 0 replies; 4+ messages in thread From: Laurie Gellatly @ 2009-10-26 9:58 UTC (permalink / raw) To: 'eCos discuss-list' Hi All, I using an ARM 7 (LPC2212) based on an eCosCentric build. It appears that watchdog feeds are done with interrupts enabled yet the NXP manual warns against leaving interrupts enabled during a feed sequence (and I'm pretty sure I've seen the consequences). Firstly, have I missed something? Are interrupts disabled and I just don't see where when I call watchdog_reset() OR should I be adding cyg_interrupt_disable() and cyg_interrupt_enable() calls around the feed sequence in watchdog_lpc2xxx.cxx Thanks ...Laurie:{) -- Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss ^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2009-10-26 21:34 UTC | newest] Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2009-10-26 20:40 [ECOS] LPC2XXX watchdog feeds and interrupts Sergei Gavrikov 2009-10-26 21:05 ` Laurie Gellatly 2009-10-26 21:34 ` Sergei Gavrikov -- strict thread matches above, loose matches on Subject: below -- 2009-10-19 9:32 [ECOS] RedBoot image for Olimex LPC-E2294 peter_lanius 2009-10-19 10:42 ` Sergei Gavrikov 2009-10-19 11:42 ` peter_lanius 2009-10-19 13:47 ` Sergei Gavrikov 2009-10-24 9:37 ` [ECOS] RedBoot loading eCOS examples causes PC reboot peter_lanius 2009-10-24 12:38 ` Sergei Gavrikov [not found] ` <738229.12555.qm@web51906.mail.re2.yahoo.com> 2009-10-25 13:20 ` Sergei Gavrikov 2009-10-26 9:58 ` [ECOS] LPC2XXX watchdog feeds and interrupts Laurie Gellatly
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).