surya.1006 Posted March 18, 2009 Share Posted March 18, 2009 Our main file calls the standard PLX function SelectDevice() which further includes the standard function PlxPciDeviceFind(). The codes are compiled successfully, but when we run the application, it prints the message "Before PlxPciDeviceFind function call:" as shown below and stops after that, showing a "segmentation fault". /********************************************************************* * * Function : SelectDevice * * Description: Asks the user which PLX PCI device to select * * Returns : Total Plx devices found * -1, if user cancelled the selection * ********************************************************************/ S8 SelectDevice( DEVICE_LOCATION *pDevice ) { printf("Entering Select Device function:"); U32 i; U32 DeviceNum; pDevice->BusNumber = (U8)-1; pDevice->SlotNumber = (U8)-1; pDevice->VendorId = (U16)-1; pDevice->DeviceId = (U16)-1; pDevice->SerialNumber[0] = '\0'; DeviceNum = FIND_AMOUNT_MATCHED; printf("\nBefore PlxPciDeviceFind function call:"); if (PlxPciDeviceFind( pDevice, &DeviceNum ) != ApiSuccess) { return 0; } printf("\nAfter PlxPciDeviceFind function call:"); if (DeviceNum == 0) return 0; This is a standard code in the standard file called PlxInit.c. The value of FIND_AMOUNT_ATTACHED is derived from a standard file included here called Plx.h and the value of which is 80001. Can anybody suggest why is it stopping at that point, as I suspect the problem might be with the DeviceNum parameter here. Thanks. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.