Jump to content
  • 0

SF3 and other PL-PS interrupts


ptembras

Question

Hello, I'm using the SF3 Flash memory Pmod in my project. I need to use interrupts from PL to PS, but when I use the PmodSF3 library, the other interrupts don't work. I think that the memory initialization using the Pmod library is breaking the other interrupts. I'm initializating the memory as follows

  Status = InitInterruptController(&mySF3.sIntc);
  if (Status != XST_SUCCESS) {
     //printf("\r\nError initializing interrupts");
     return XST_FAILURE;
  }
  Status = SF3_begin(&mySF3, &mySF3.sIntc, &ivt[0],
        XPAR_PMODSF3_0_AXI_LITE_SPI_BASEADDR);
  if (Status != XST_SUCCESS) {
     //printf("Error initializing SF3 device\r\n");
     return XST_FAILURE;
  }

And the other interrupt

 

GicConfig = XScuGic_LookupConfig(DeviceId);
    if (NULL == GicConfig) {
        return XST_FAILURE;
    }

    Status = XScuGic_CfgInitialize(&InterruptController, GicConfig,
                    GicConfig->CpuBaseAddress);
    if (Status != XST_SUCCESS) {
        return XST_FAILURE;
    }


    /*
     * Setup the Interrupt System
     */
    Status = SetUpInterruptSystem(&InterruptController);
    if (Status != XST_SUCCESS) {
        return XST_FAILURE;
    }

Is it possible to do this? Because everything works fine but when I put this togeter the PL-PS interrupt doesn't work

 

Link to comment
Share on other sites

1 answer to this question

Recommended Posts

  • 0

Hi @ptembras, welcome to the forum,

Yes, it's possible to use interrupts for the SF3 at the same time as other interrupts. The InitInterruptController function in the intc sources in the driver overwrites the interrupt controller configuration - as seen by the fact that it calls LookupConfig and CfgInitialize - as does rerunning CfgInitialize after InitInterruptController. In retrospect, the intc sources should have been included in the software examples folder rather than in BSP sources from the beginning, since they need to either be modified to add your additional interrupts, or their functionality needs to be copied into your application project. To pull this off, you need to not use the InitInterruptController function, and set up your interrupts at the same time as the SF3 interrupts.

Thanks,

Arthur

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...