Adding driver devb-ahci and devb-edie into booting file


I am Alok Beura an engineer in Embedded Systems. I am facing problem while clonning my Compact Flash(CF) having qnx6.5.0 with a mSATA memory media drive, my qnx doesnot boot giving following error:-
XPT configuration, ahci attach failure.
Not mounting dev/hd0t179
Not loading rc.local.
Towards this i understand following things:
(i) In QNX4.25 , if I will add Fsys.edie in hard.atapi a build file and will build my qnx, then copy the build file into .boot file My qnx booted from EIDE i.e Comact flash.
(ii) But in qnx 6.5.0 , there is no such file and no procedure how to build file. And in QNX6.5.0 , .ifs file is the boot file. If .ifs file is boot file, then how to edit this file and can make entry of devb-ahci or devb-edie.

Please if anyone have any idea for adding any devb-ahci or devb-edie into boot file and how it will be done, the procedure may be shared.

The process in QNX 6.5 is similar to QNX 4. You need a descriptive file called a “build” file. It lists the kernel file and other programs to be started at boot time. The program that creates the ifs from the build file is mkifs:

A typical boot file will only start required resources such as the console driver and the file system drivers. It will then attempt to mount a particular QNX partition and then run a shell against some file on the drive just mounted. A common such file is /etc/rc.d/rc.sysinit. There is no requirement for this. A build file can be self contained with all programs the embedded system needs to run.

The build file is where you would start devb-ahci or devb-eide. If you don’t have a build file, you will have to create one. If you have a running system you can look in /proc/boot and see a mangled version of what was used to start the system.

How did you clone the drive. What program did you use and did you clone the full drive or just partitions etc.

Are you trying to boot the cloned drive in the original system or on another new system?

One thing to make sure of is that your mSATA memory media drive is running in Legacy mode (IDE compatible). If it’s running in pure SATA mode it likely won’t boot because your original CF was almost certainly running in Legacy mode and not SATA mode.


Thank you for your answer, i will try. I am going to give the below reply to both of You.

  1. I have two kind of display and their function same having same qnx version 6.5.0
    (a)The display memory media is Compact CF with qnx6.5.0 which is booting and communicationg with processor card due to
    having application in same version…
    (b)The display memory media is mSATA and it is also booting but not coomunicating with his processor card due to version
    difference in the application(Upperversion and new Display)
  2. So to make new display working , i am trying to clone(dd in linux) the CF image onto mSATA. After cloning the following error/observation i found:-

The Display not booting(mSATA) error= devb-ahci attach failure. If i can get any sample build file , then i will be able to write devb-eide in place of
devb-ahci whcih will then support Comact Flash. Tell me where i can get the file and how to build the file so that i ca replace zorsv.ifs or filsafe.ifs file

If you have the QNX 6.5 developer suite (either self hosted or Windows/Linux cross compile), then that developer suite already comes with sample build files. So you must have that developer suite. Do you have that?

More importantly, who create the original build files (someone at your company or another company). This is important because the build file may have something important in it that you need to run your application. Without knowing what’s in that original build file it’s hard to know whether you can create your own.

Next, the error you are getting indicates QNX is having trouble starting a SATA driver. Since you cloned the Compact CF card, it should have already been running devb-eide. My guess is that the MSata drive is not running in Legacy (IDE compatible) mode. For devb-eide to work with the MSata drive you need it to run in Legacy mode. I suggest you go into the BIOS and check whether the MSata drive can be set to run in legacy mode. If it can’t, then you will never get devb-eide to work with that MSata drive.

Note that QNX 6.5 also doesn’t work with UEFI. So check that UEFI is turned off for the MSata drive or else it won’t boot.