With the next Linux-3.0 mainline kernel also the hard realtime support patch [1] will be available. Is there any interest here in hard realtime support on the Mini2440/Mini6410 platforms? If yes, I would spend the effort and provide it in our next release of the Mini2440/Mini6410 board support package. [1] https://www.osadl.org/Realtime-Linux.projects-realtime-linux.0.html
Mini2440/Mini6410: Hard Realtime support
Hi Jürgen, I'm using the board with an external RS485 to USB adapter (PL2303) to communicate over RS485. I get a latency of about 15ms on my Mini6410 but it would be nice if it would be possible to lower this. I'm not sure if the hard realtime support would help me here, but if yes, I'd be interested =)
Juergen, I am sure it would kick-start a number of projects that currently can not be implemented effectively. Oscilloscope, comes to mind. N.B. I am not saying I would be using it, so you should base your decision on other inputs. Dave
Hi Jürgen, this sounds very interesting. As Dave pointed out, this will be very interesting for the oscilloscope/data logger application I'm writing for FA boards. So I can confirm you, I would like to use the RT feature :-) Regards, Paolo
Daniel, the USB is using its own timing (on the bus). I think the realtime feature will not help in your case. All: Please be aware: A realtime kernel does not mean this kernel is faster than the regular one. It will be a little bit slower(!). It only guarantees the latency for the process with the highest priority. So, what is important for an oscilloscope application? Latency (trigger) or data processing speed?
Hi Jürgen, Hard realtime control would be certainly welcome fro both 2440 and 6410. I have applications where real time functionality is outsourced to a PIC via I2C. It will certainly save me a component count. :-) thanks --fatbrain
Juergen, My guess is both! What latency would be achievable on the mini2440 running hard realtime? Reading this: http://www.mjmwired.net/kernel/Documentation/timers/hrtimers.txt seems to suggest that you can have "special nanosecond-resolution type: ktime_t" timers. Does this mean you could sample at a 10ns (100MSPS) rate? Possibly fast enough to display a 10MHz sine wave reasonably well. Before I got the mini2440, about 2 years ago, I was going to buy one of these: http://www.fpga4fun.com/Hands-on_Flashy.html but decided to wait for the day I could run an oscilloscope on the mini2440! Most of my experience is in the hardware domain,so what is achievable running Linux on the S3C2410 is a bit of a mystery to me. Dave
I've managed to start Xenomai on this platform and have to notice that latency is not very good as for me. I tryed to use internal test suit and it shows max/average latency 110/13 uS without IO action over MMC and USB, and 140/42 uS with MMC acces for write over FTP (for USB the same, more or less). As for me it's not very good result. I hope RT path may provides better max latency result. Sergey Kaydalov
Hi For me have a deterministic latency of 500us would just work fine for me. I tried the realtime kernel patch wih 2.6.32 but was unable to make the board boot. Serg_io can you upload the Xenomai files for 2440 to a file sharing site. thanks fatbrain
My current kernel has a lot of changes developed by me and its not related to Xenomai. But you can try to do next: 1) Download Git version of 2.6.35.9 kernel from here http://git.kernel.org/?p=linux/kernel/git/stable/linux-2.6.35.y.git;a=su... 2) Download latest Xenomai 2.5.6 from http://download.gna.org/xenomai/stable/xenomai-2.5.6.tar.bz2 3) Download latest release of I-Pipe patch from http://git.xenomai.org/?p=ipipe-gch.git;a=shortlog;h=refs/heads/for-ipip... 4) Apply this patch from 3) to 2.6.35.9 kernel and build it. 5) Configure and build Xenomai libraries according to specs inside Xenomai build tree, but don't use I-PIPE patch from Xenomai folders. I'm not sure that it will works in your case, because I did this some time ago, but you have a direction.
Dave, you can get nanosecond time resolution, but not nanosecond latency. So, running a 10 MHz oscilloscope application in software only with continuous sampling and displaying will not be possible. The S3C2440 uses an ARMv4 core, so I guess we will be around 150 us latency. Still to be tested.
I should be more precise. To be able to sample and display a 10MHz waveform (square wave), but not in real-time. IE, a DSO. I worked with a guy that developed one of these units: http://www.cleverscope.com/ so, I should really talk to him about the requirements. The hardware side, high-speed ADCs, doesn't frighten me. Does DMA, which I have seen a few comments on here, allow the more effective movement of data for a DSO application? Dave
Yes, you can use DMA for the data transfer. But in this case the timing critical data path is handled in hardware, so you do not need hard realtime in software anymore.
That's good. Now, I "just" to work out how to use DMA. Better still I think I'll go plant some trees :)
just for info: Linux-3.0 runs out of the box on the Mini2440, but the realtime patch currently breaks the UART and the SD card driver. Very funny: Using the serial console each single char creates about 553,000 interrupts...
To get RT-Preempt working on the Mini2440 seems not trivial. The available timers in the S3C2440 are so $&$%§&&§%! Currently no chance. For the Mini6410 it looks much better. Thanks to the work of Tomasz Figa HRT works now.
I tried to compile vanilla kernel 2.6.35.9 for mini2440 using mini2440_defconfig. But the kernwl is not booting. Can anyone upload the defconfig file for compiling kernel 2.6.35.9. How to apply adeos-ipipe patch to the kernel from outside xenomai folder Thanks sivakumar
Any news on HRT on mini2440? I'm still waiting for my 2440 but want to know if solution provided by serg_io works. Or maybe someone managed to fix a patch for v3 kernel that would work on 2440? As soon as I get my unit I will test what I can :)
Fatbrain, If you managed to install xenomain on mini2440 would you provide more detailed instructions on how to do it? I need to run HRT on my mini2440!
Tried to build xenomai-2.6.3 with linux-3.8.13 and i-pipe patch from adeos site, along with olesas.bsp-2013.09 patch, but without any success. i was able to build the zImage, but got stucked at "Uncomprsseing... now booting" pliz help me..
Your query has nothing to do with this topic. Search for <domdom> as he has done quite a bit of work on the peripherals for the 6410. Then start a new topic <ADC on the mini6410> if one doesn't already exist! You did search on this site?
hi, can any one help me how to intialize RTC using start os, every time when i start instrument RTC should start from 00:00:00. can any one help me with code.