[uClinux-dev] Problem in attaching interrupt handlers to IRQ1-7
on a mcf5475 supportedboard having uclinux ported on it
Juanba Romance Gallego
juanbaromance at yahoo.es
Sat Jun 9 19:16:14 EDT 2007
> Dear all,
>
> I am trying to attach my interrupt handler to any of irq1-7. but i am
> unsuccessful in doing that. My cpu board is having mcf5475 processor and is
> running on uclinux , linux kernel-2.4.x. I also tried to attach my code to
> the already connected isr. but i was unable to find where exactly in the
> directory structure are the interrupt handlers located.
>
> Can anyone plz tell me how to go about these 2 issues.
IHTH
You have to write somethings yourself. Let me note some hints
1.- uClinux only provides irq drivers to manage its supported devices and the
system tick, both of them are items of p u b l i c interest, so a resources
framework is developed to be programmed/tested/published
2.- uClinux (as standard Linux) provides the typical "request_irq" symbol to
register/unregister a custom isr into the interrupt vector table. It means
the uClinux OS coders gives you software to "store cpu/stack context, the
jumptomyservcice and the restore the stuff". Nothing else.. you have to be
quite confidence about the performance of your "interrupts" environment,
maybe some uClinux policies are not suitable for you stuff, this is your
choice/exam..
3.- The external interrupts of any machine are not (of course) public/common
domain. So any software is/could be provided. You should read the chapter 14
related with the EDGE port where whatever MCFxxxx maps the external
interrupts (Motorola policy). Before write any code line you should
understand how this tricky matter works and what what/how you need to program
it..
4.- The Chapter 13.(Interrupt controller) of your processor describes how the
vectors are mapped into your machine same as other MCF machines, which
register/flags you should clear/set and so forth..
As general policy you should use the drivers set ported to uclinux-MCFxxx as
examples about how to install your own stuff/application
>
> Is it that when these pins are configured in GPIO mode then interrupt
> handlers are not called? but i can notice the output on my hyper terminal
> when ever i ground the irq7 pins on my board. the o/p is like this -
>
> "GPIO value = 7
> status = FFFF"
>
> When i ground irq6 pins on my board, then o/p is very similar -
> "GPIO value = 6
> status = FFFF"
5.- Review also the pin assignment for the edge port sure you have to
verify/review the function. Any modern/respectable micro-controller-processor
have multiplexed functions mapped into the i/o pines and their never are like
the application need.
>
>
> What exactly is happening, if these pins are configured in GPIO mode by
> uclinux, then where from these o/p is coming. Which handler is giving that?
>
> Or, the situation is entirely different than whatever i am thinking.?
> Please help me out guys.........!
> Regards and thanx.
> Rahul.
This is my current understanding of this stuff, may i be wrong for any
appreciation please guys apply the corrections if any
Best regards..
More information about the uClinux-dev
mailing list