Forum Discussion

Altera_Forum's avatar
Altera_Forum
Icon for Honored Contributor rankHonored Contributor
16 years ago

Altera Stratix II GX PCIe - Interrupt Handling

In the Jungo Windriver manual I saw this paragraph:

" note: for level-sensitive interrupts, such as pci/compactpci interrupts, you must use driverwizard to define the interrupts status register and assign the read / write command (s) for acknowledging (clearing) the interrupt, before attempting to listen to the interrupts with the wizard, otherwise the os may hang!

the specific interrupt-acknowledgment information is hardware-specific "

In the manual I often see expressions related to device interrupts - that they are hardware specific.

1) Where can I get more info on interrupts on my board ? (i have altera stratix ii gx pci-express development kit, system - windows xp )

2) How can I get info on DMA control registers, those which must be programmed - to start DMA transfer ? Where can I get address of this register ?

3) In my design DMA starts only when I press on-board button. How to force this DMA start from application without using buttons ?

Please, help, I'm totally stuck with this project.

Thanks in advance.

2 Replies

  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    --- Quote Start ---

    In the Jungo Windriver manual I saw this paragraph:

    " note: for level-sensitive interrupts, such as pci/compactpci interrupts, you must use driverwizard to define the interrupts status register and assign the read / write command (s) for acknowledging (clearing) the interrupt, before attempting to listen to the interrupts with the wizard, otherwise the os may hang!

    the specific interrupt-acknowledgment information is hardware-specific "

    In the manual I often see expressions related to device interrupts - that they are hardware specific.

    1) Where can I get more info on interrupts on my board ? (i have altera stratix ii gx pci-express development kit, system - windows xp )

    2) How can I get info on DMA control registers, those which must be programmed - to start DMA transfer ? Where can I get address of this register ?

    3) In my design DMA starts only when I press on-board button. How to force this DMA start from application without using buttons ?

    Please, help, I'm totally stuck with this project.

    Thanks in advance.

    --- Quote End ---

    1) You can use an LED to indicate an MSI is sending(i.e., app_msi_ack is asserted)

    2)I don't know whether you are using the chainning DMA example. If is, read the code.

    3)I don't get you. As far as I know, a DMA operation always starts by the software running on the OS writes the DMA regs to start the DMA state machine.