P2020 QoriIQ Exceptions handler

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

P2020 QoriIQ Exceptions handler

864 次查看
transporter
Contributor II

Hi,

I am working on P2020 QoriIQ.

Is there a way to know which of the Interrupt Vector Registers (IVOR0 - IVOR35)  accured?

I`m searching for register that will tell me the IVOR number in my exceptions handler.

Thanks for help :smileyhappy:

标记 (1)
2 回复数

642 次查看
scottwood
NXP Employee
NXP Employee

There is no such register.  If you need to distinguish between different IVORs you need to set them to different addresses, and have the code remember which entry path was taken.

642 次查看
Pavel
NXP Employee
NXP Employee

The Table 9-2 of the P2020 Reference Manual contains the assignments of the internal interrupt.

Linux makes no difference between external and internal interrupts. All interrupts in the system are handled by the same Linux API. If this API didn't work, no driver in the system would be able to operate, not just your customer's module.

The customer is attempting to request an IRQ by the resource number which is generally incorrect. The resource number is an index to irq_desc table.

This index is generally _not_equal to the hardware IRQ line number. See Documentation/IRQ.txt for explanation.

To request an IRQ line in a proper way, the customer should:

  1. 1. Declare the IRQ properly in the DTS. Refer to /Documentation/powerpc/booting-without-of.txt for details. The value of the "interrupt"

property is calculated by the following

  formula:

  [DTS_interrupt_number] = ([EIVPR/IIVPR_addr] - [Interrupt_Source_Configuration_Registers_Base]) / 0x20

                where [EIVPR/IIVPR_addr] is the address of the interrupt configuration registers

                of the IRQ being declared, [Interrupt_Source_Configuration_Registers_Base]

                is 0x50000 for P2020


Have a great day,
Pavel

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 项奖励