[PR 20] LEON3: fix GRETH interrupt initialization bug

Joel Sherrill joel.sherrill at OARcorp.com
Thu Mar 29 14:20:47 UTC 2012


This should be committed now.

On 03/29/2012 06:52 AM, Daniel Hellstrom wrote:
> Fixed a bug where the vector number is used to clean and unmask
> the IRQ at the IRQ controller, the irq number must be used.
>
> Signed-off-by: Daniel Hellstrom<daniel at gaisler.com>
> ---
>   .../lib/libbsp/sparc/leon3/leon_greth/leon_greth.c |    8 ++++----
>   1 files changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/c/src/lib/libbsp/sparc/leon3/leon_greth/leon_greth.c b/c/src/lib/libbsp/sparc/leon3/leon_greth/leon_greth.c
> index 341bd27..dd301d7 100644
> --- a/c/src/lib/libbsp/sparc/leon3/leon_greth/leon_greth.c
> +++ b/c/src/lib/libbsp/sparc/leon3/leon_greth/leon_greth.c
> @@ -41,19 +41,19 @@ int rtems_leon_greth_driver_attach(
>     if (device_found == 1)
>     {
>   		base_addr = apbgreth.start;
> -		eth_irq = apbgreth.irq + 0x10;
> +		eth_irq = apbgreth.irq;
>
>       /* clear control register and reset NIC */
>       *(volatile int *) base_addr = 0;
>       *(volatile int *) base_addr = GRETH_CTRL_RST;
>       *(volatile int *) base_addr = 0;
>       leon_greth_configuration.base_address = base_addr;
> -    leon_greth_configuration.vector = eth_irq;
> +    leon_greth_configuration.vector = eth_irq + 0x10;
>       leon_greth_configuration.txd_count = TDA_COUNT;
>       leon_greth_configuration.rxd_count = RDA_COUNT;
>       if (rtems_greth_driver_attach( config,&leon_greth_configuration )) {
> -      LEON_Clear_interrupt(leon_greth_configuration.vector);
> -      LEON_Unmask_interrupt(leon_greth_configuration.vector);
> +      LEON_Clear_interrupt(eth_irq);
> +      LEON_Unmask_interrupt(eth_irq);
>       }
>     }
>     return 0;


-- 
Joel Sherrill, Ph.D.             Director of Research&   Development
joel.sherrill at OARcorp.com        On-Line Applications Research
Ask me about RTEMS: a free RTOS  Huntsville AL 35805
     Support Available             (256) 722-9985





More information about the devel mailing list