Problem with MQX FFS on Kinetis K70

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Problem with MQX FFS on Kinetis K70

Jump to solution
1,937 Views
stephenchorlton
Contributor II

Kinetis K70 running MQX 4.1 using NAND flash for file system.

Problem occurs occasionally on attempt to write to FLASH.

System locks up because of deadly embrace between Mutex for media buffer manager and associated semaphore for

timeout timer.

The following screen captures show the state of the system after the lock up and the sequence that caused the lock

up.

Scenario:

NOVt claims Mutex in function media_buffer_aquire() media_buffer_manager.cpp (Cap2)

Timer Task claims semaphore in function timer_task() timer.c (Cap1)

Timer Task is waiting on Mutex in function media_buffer_dispose_temporary() media_buffer_manager.cpp (Cap4)

NOVt waits on semaphore in function timer_cancel() timer.c (Cap3)

NOVt is our task which is using MFS and FFS to run a FAT file system for storing non volatile data.

MFS is set with WRITE_THROUGH_CACHE for the FAT and files.

NOTE: After discovering this problem I saw the same issue reported in Sharing several issues with NAND FFS in MQX4.1.1

This offers a solution using priority inheritance, but I believe this will not resolve the issue as NOVt task still can not run as the Timer Task still has the semaphore.

Are MQX/Freescale aware of this issue and when are they going to provide a solution?

Labels (1)
1 Solution
1,209 Views
DavidS
NXP Employee
NXP Employee

Hi Marcelo,

The Kinetis SDK version of MQX RTOS is the future. As I will mention in a second we have an upcoming release of MQX classic (version 4.2), but that is the last planned release in that line.  The development resources are shifting over to MQX RTOS for Kinetis SDK.

We wanted to have some overlap period to help with software stability and ease the transition for customers

Also to ease the transition we just released a porting guide which detailed how to port applications written for MQX classic to the new architecture.


IMPORTANT NOTE: Support for
NEW Kinetis MCUs will no longer be added to the traditional Freescale MQX RTOS (v4.x) releases. These new Kinetis MCUs will be supported instead by MQX RTOS for Kinetis SDK releases.

Support and maintenance will continue to be available for traditional Freescale MQX RTOS for a limited time. We will continue to offer premium support packages and professional services for all versions


ScreenHunter_140 Apr. 15 16.42.gif

Hope this helps.

Regards,

David

View solution in original post

0 Kudos
8 Replies
1,209 Views
soledad
NXP Employee
NXP Employee

Hello Stephen,

Thanks for your feedback, the MQX 4.2 contains fixes for MFS FAT file system. This MQX version will be released soon (Q2, 2015).

Regards

Soledad

0 Kudos
1,209 Views
stephenchorlton
Contributor II

Hi Soledad,

Will the MQX 4.2 update be available for the Codewarrior Kinetis version of MQX?

Regards,

Steve

Stephen Chorlton | Software Engineer

Tel: +44 1323 525313 | Steve.Chorlton@edwardsvacuum.com<mailto:Steve.Chorlton@edwardsvacuum.com>

15 Marshall Road, Eastbourne, East Sussex, BN22 9BA, UK | www.edwardsvacuum.com<http://www.edwardsvacuum.com/>;

Edwards Ltd | Registered in England and Wales No. 6124750

Registered office: Manor Royal, Crawley, West Sussex RH10 9LW

0 Kudos
1,209 Views
soledad
NXP Employee
NXP Employee

Hello Steve,

Yes, MQX 4.2 will be available for CW 10.6 (Kinetis and ColdFire devices)!!

Regards

Soledad

0 Kudos
1,209 Views
marcelovaranda
Contributor I

Hello Soledad,

I was using MQX 4.1.1 and I was advice to migrate my development to KSDK 1.1 as MQX would not be available outside the KSDK.

Now, according to your post, I see that MQX will continue to "grow".

Could please elaborate the differences and roadmap for both KSDK and MQX? I am finding many problems with KSDK in components that I had pretty stable on 4.1.1.

Thanks,

Marcelo

0 Kudos
1,210 Views
DavidS
NXP Employee
NXP Employee

Hi Marcelo,

The Kinetis SDK version of MQX RTOS is the future. As I will mention in a second we have an upcoming release of MQX classic (version 4.2), but that is the last planned release in that line.  The development resources are shifting over to MQX RTOS for Kinetis SDK.

We wanted to have some overlap period to help with software stability and ease the transition for customers

Also to ease the transition we just released a porting guide which detailed how to port applications written for MQX classic to the new architecture.


IMPORTANT NOTE: Support for
NEW Kinetis MCUs will no longer be added to the traditional Freescale MQX RTOS (v4.x) releases. These new Kinetis MCUs will be supported instead by MQX RTOS for Kinetis SDK releases.

Support and maintenance will continue to be available for traditional Freescale MQX RTOS for a limited time. We will continue to offer premium support packages and professional services for all versions


ScreenHunter_140 Apr. 15 16.42.gif

Hope this helps.

Regards,

David

0 Kudos
1,209 Views
marcelovaranda
Contributor I

Thanks David, understood.

Will FFS be available on the next release of KSDK? I guess there is only support for USB and SD Card based FS on 1.1, correct?

Thanks in advance,

Marcelo

0 Kudos
1,209 Views
DavidS
NXP Employee
NXP Employee

Hi Marcelo,

FFS is TBD for KDS/KSDK.

Please go to the top MQX Community page and take the MQX Survey to give your valuable feedback.

MQX Software Solutions

There is a link to SurveyMonkey:

Freescale MQX RTOS Survey: February 2015

Regards,

David

0 Kudos
1,209 Views
marcelovaranda
Contributor I

Thanks David.

(I took the survey BTW).

0 Kudos