custom ads8272 board PCI interrupt no response

Sam Song samlinuxppc at yahoo.com.cn
Thu Jul 28 18:57:06 EST 2005


Sam Song <samlinuxppc at yahoo.com.cn> wrote:
> Hi all,
> 
> A PCI interrupt probelm confused me when porting
> 2.6.13-rc3 on a custom 8248 board. There was a 
> Gb ethernet RTL8110S on board with IDSEL AD25 and
> IRQ3. So I made some changes as follows:
> 
> --- linux-2.6.13-rc3/arch/ppc/platforms/pq2ads.h
> +++ linux-2.6.13-rc3-sam/arch/ppc/platforms/pq2ads.h
> @@ -74,11 +78,11 @@
> -#define PCI_INT_TO_SIU 	SIU_INT_IRQ2
> +#define PCI_INT_TO_SIU 	SIU_INT_IRQ3

Ummm, not the case. ADS8272 uses a CPLD PCI interrupt
controller which takes up IRQ2. No need to me:-)

> --- linux-2.6.13-rc3/arch/ppc/syslib/m82xx_pci.c
> +++ linux-2.6.13-rc3-sam/arch/ppc/syslib/m82xx_pci.c
> @@ -60,12 +60,20 @@
>       * 	  A      B      C      D
>       */
>       {
> +#if 0
>     { PIRQA, PIRQB, PIRQC, PIRQD },/* IDSEL 22 - PCI
> 
> slot 0 */
>     { PIRQD, PIRQA, PIRQB, PIRQC }, /* IDSEL 23 -
> PCI 
> slot 1 */
>     { PIRQC, PIRQD, PIRQA, PIRQB }, /* IDSEL 24 -
> PCI 
> slot 2 */
> +#else  
> + {22, 22, 22, 22},/* IDSEL 22/IRQ4-PCI slot 0-USB
> */
> + {23, 23, 23, 23},/* IDSEL 23/IRQ5-PCI slot 1-IDE
> */
> + {24, 24, 0,   0},/* IDSEL 24 - PCI slot # - NULL
> */
> + {25, 25, 25, 25},/* IDSEL 25/IRQ3-PCI slot 2- Gb
> */

Set IRQ3 in the last line as 21 to assign the IRQ3
to Gb ethernet.

> Gb interrupt remained unchangable in the whole test
> process. I could ping target itself but not for 
> outside machine. So I suspect this result was due to
> PCI interrupt setting but don't know where the
> probelm is. Any idea?

Well, I finally masked pq2ads interrupt irq init and
adjusted SIUMCR IRQ3 setting correctly. Then 
everything went as smoothly as clockwork.

Sorry to bother here:-)

Sam

__________________________________________________
赶快注册雅虎超大容量免费邮箱?
http://cn.mail.yahoo.com



More information about the Linuxppc-embedded mailing list