This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

uClinux support for Tiva.

Hi,

I'd like to get a Linux kernel (or uClinux) running on Tiva C series Development board.

Is there any way to work with Linux on this board?

Thanks.

  • Dip Bhanvadiya said:
    Is there any way to work with Linux on this board?

     I answered this question recently... On TIVA c129 series you can add external memory, but to run a linux kernel at least you need an MMU so LINUX has no chance to run on a limited resource and no reason too, see freertos or TiRTOS instead.

     uCLinux has chance, reduced footprint and no mmu requirement, it is a non simple task and I have no one idea if effort existo to port to.

  • Hi Dip,

    Are you able to run linux on Tiva C ? if yes, please steps or point to resources.

    BR,

    Sakha

  • Sakharam THorat said:
    Are you able to run linux on Tiva C ?

     NO! this is the fourth time.. Please search before post, and read what is written on near preceding post too. First reply say no chance to run  Linux without MMU, TIVA C is without MMU so Linux CANNOT run!

     uCLinux can run at expense of garbage collection and memory segmentation issue, I don't know about porting to TIVA!

     Please use TIRTOS or FREERTOS are ready to use, performance are in the uCLinux area. Also uCOS can be good alternate but it is expensive.

  • @ Roberto,

    Does a, "Hall of Fame" for ill-considered (i.e. effort/investigative-free) posts yet exist?  Your clear response was, "just above" - even our young staff "gasped" when encountering this latest, "HOF" candidate... 

  • cb1_mobile said:
    Does a, "Hall of Fame"

     I don't know, if we propose also to get point from spam reporting this week I hit 4 new health expert from university....

     This forum need some new way to clean up.

  • hi,

    I am trying to run uClinux on Tiva and for that  need extra hardware as suggested.

    so yet now i didn't work to run it on tiva.

    Regards,

    DEEP

  • Well, it is completely possible to run linux on a cortex m4 SoC without MMU support. I do not understand why you keep on saying no one can. People have done this before. Check this.
    http://www.uclinux.org/
  • I believe on page 9 the TI document mentions that TIVA129 series support Linux.
    www.ti.com/.../spmy013.pdf
  • Well, it is completely possible to run linux on a cortex m4 SoC without MMU support. I do not understand why you keep on saying no one can. People have done this before. Check this.
    http://www.uclinux.org/

    There does exist a port for a similiar device, namely the STM32F407. So you are true, it is "completely possible". However, this device has 192 kByte of onboard RAM, not only 32. And even on this device, the effort is (IMHO) ill-fated, as the OS eats up most of the system ressources (RAM, Flash, and CPU time).

    Aside from (not very helpful) proof-of-oncept projects, I view such efforts purely as "end in itself".

    Of course you can try to cut memory requirements down to fit your favourite device. But the commercial payoff is more than dubious ...

  • f. m. said:
    Aside from (not very helpful) proof-of-concept projects, I view such efforts purely as "end in itself".

    Bravo, f.m.!   

    Highly detailed - logically framed - and you've exposed proponent's, "motive!"   (rare to see all 3 w/in engineering/software - common in law...)

    As you state - in counter to poster's, "People have done this before" - has such been done (before) w/any (real) usable efficiency?

    While you've told us in the past that you're "not" a native English speaker/writer - this post is A+ and your creation, "Commercial Payoff" is truly spectacular!

    Bravo!

  • Let me please quote your good friend (perhaps not) Roberto,

    “NO! this is the fourth time.. Please search before post, and read what is written on near preceding post too. First reply say no chance to run  Linux without MMU, TIVA C is without MMU so Linux CANNOT run!”

    If i read it right, he says, no mmu, no linux. I simply pointed out that he is wrong.  Thats all. Let me prove that he is wrong by using a document Texas Instruments have produced. http://www.ti.com/lit/wp/spmy013/spmy013.pdf Page 9 of that ducument mentions that uClinux is supported for TIVA129 devices. So, if someone says TIVA devices don't support linux, he is wrong.

    It is possible to connect more RAM to a Cortex-M device, we don't always have to cut parts off the kernel.

    Its pretty difficult for a person to predict that there will be no use of running linux in a MCU. One cannot simply imagine all possibilities, and believing so would be being irresponsible. No matter how much resources the OS eats up, there may still be a strong enough reason for a person to port linux onto an MCU. I can explain mine but nevermind. I know TI RTOS exist. I know Free RTOS Exist. But there can be many reasons for a person to chose uClinux. Note : more than one reason.

    one strong reason is that there are applications that TI RTOS, FREE RTOS may not contain but a linux port will barely support. An application thats too small for a Cortex A, but barely fitted into a Cortex M.

    This post logically argues against your opinion. Take a look!

    http://electronicdesign.com/embedded/practical-advice-running-uclinux-cortex-m3m4





  • @Amalinda,

    Your post too (I find) well-written and persuasive.    I especially like your detailing of, "Why, when & how" a Cortex M4 (may) make some sense.

    That said - our small tech firm (usually - but not always) experiences better (and faster) results when choosing, "Best tool for the task!"     And I doubt that f.m.'s point re: efficiency of a Cortex M "pressed into such service" can be soundly rebuffed...

    As a sailboat owner - adding larger "chute" may not get me the benefits of a larger, more purpose designed, water-craft...    (i.e. "A vs M")

  • Bravo, f.m.!  

    Thank you for the flowers !

    As you state - in counter to poster's, "People have done this before" - has such been done (before) w/any (real) usable efficiency?

    As stated, for the Stm32, for instance. But not by me. And I don't know any company considering the output for a device. A good Cortex A board, with a REAL linux, doesn't cost much for for the hobbyist, but (including porting time and efforts in the calculation) is much cheaper.

    ...and your creation, "Commercial Payoff" is truly spectacular!

    Considering non-commercial payoffs that count, like "lessons learned" and "experiences gained". One can't sell this, but it might help in the future.

    Software development was more of a "side show" in my education, I learned most during such "useless" private projects ...

  • Amalinda said:

    Let me please quote your good friend (perhaps not) Roberto,

     Mr. Amalinda, in first this phrase sound as lot offensive.....

    Amalinda said:
    If i read it right, he says, no mmu, no linux. I simply pointed out that he is wrong.  Thats all. Let me prove that he is wrong by using a document Texas Instruments have produced. http://www.ti.com/lit/wp/spmy013/spmy013.pdf Page 9 of that ducument mentions that uClinux is supported for TIVA129 devices. So, if someone says TIVA devices don't support linux, he is wrong.

     This is also worst and show me you are completely aware of OS knowledge about page handling on memory also of virtual memory.

     You are also confusing two completely different things: LINUX is NOT uCLinux !!!!!

     Linux come from an ancient educational project made by a great scientist wrote a lot of book, this one was MINIX, it was for non MMU centric small system to have an opportunity for college student to work an system similar to expensive UNIX system V, so it wrote this beautiful book and OS to help pupils understand how OS work and learn how to write device drivers.

     This system was for non MMU machines like 68000 (ATARI ST) and PC of that time, IAPX 286 classes where bugged and management and task switching related instruction where not working.

     So a limited OS was written, this was a great success and we used a lot on class room. A student named Torvald Linus got the idea of extending this OS adding virtual memory management and called it LINUX.

     After that a lot of development was made and these day LINUX is more BSD than system V I don't liked, kernel is now multithreaded like just BSD NextOS and OS/2 was in the past, this is great difference also in front of Windows it is still single thread and not multitask ready.

     About uClinux is a fork of Linux of the past so it never be forked from actual kernel has too many feature and cannot run reliably in a limited resource hardware.

     uCLinux seems freezed around 2012, seems more like old MINIX than Linux so has less sense when processor with complete mmu cost like the limited one...

     Has sense develop this when specialised exists?

     I prefer VXWors (still active on Mars Explorers) or uCOSIII (only available on MSP430) or QNX, TIRTOS / FreeRTOS are better than uCLinux.

     Minix3 is now active but why use it instead of NETBSD, OPENBSD or FREEBSD are running from long time on platform? Also last one is maintained by NASA.

     So Technical question require FOREVER KNOWLEDGE before say one is wrong. If you don't know difference from two similar word PLEASE think and document yourself before to write!!!!

    Amalinda said:

    This post logically argues against your opinion. Take a look!

    http://electronicdesign.com/embedded/practical-advice-running-uclinux-cortex-m3m4


     This say the same word I wrote before you also linked this, have you read this? It say LINUX require an MMU so NO WAY TO RUN ON CORTEX M4!!!!

     Are you ready to add an FPGA and MMU logic between external memory? Has this sense when for same silicon space full Linux can be run on FPGA alone too?

    Amalinda said:

    one strong reason is that there are applications that TI RTOS, FREE RTOS may not contain but a linux port will barely support. An application thats too small for a Cortex A, but barely fitted into a Cortex M.


     This is a worst condition, I am writing on Linux and having same code shared for TIRTOS task, BSD like library exists and are simple to port.

     Cortex A and Cortex M are two different processor, first has complete MMU and can run full LINUX or BSD, M is a limited resource so it has to be left on embedded area. Some full Linux board are available starting from as low as 30US$ so this has no sense at all.

     This is presented as technical forum so I wish remain Teacher and scientist than free point collector!

    en.wikipedia.org/.../MINIX