/* * Set up the interrupt priorities * * Copyright 2005-2009 Analog Devices Inc. * * Licensed under the GPL-2 or later. */ #include <linux/module.h> #include <linux/irq.h> #include <asm/blackfin.h> void __init program_IAR(void) { /* Program the IAR0 Register with the configured priority */ bfin_write_SIC_IAR0((([31mCONFIG_PLLWAKE_ERROR[0m - 7) << PLLWAKE_ERROR_POS) | (([31mCONFIG_DMA_ERROR[0m - 7) << DMA_ERROR_POS) | (([31mCONFIG_PPI_ERROR[0m - 7) << PPI_ERROR_POS) | (([31mCONFIG_SPORT0_ERROR[0m - 7) << SPORT0_ERROR_POS) | (([31mCONFIG_SPI_ERROR[0m - 7) << SPI_ERROR_POS) | (([31mCONFIG_SPORT1_ERROR[0m - 7) << SPORT1_ERROR_POS) | (([31mCONFIG_UART_ERROR[0m - 7) << UART_ERROR_POS) | (([31mCONFIG_RTC_ERROR[0m - 7) << RTC_ERROR_POS)); bfin_write_SIC_IAR1((([31mCONFIG_DMA0_PPI[0m - 7) << DMA0_PPI_POS) | (([31mCONFIG_DMA1_SPORT0RX[0m - 7) << DMA1_SPORT0RX_POS) | (([31mCONFIG_DMA2_SPORT0TX[0m - 7) << DMA2_SPORT0TX_POS) | (([31mCONFIG_DMA3_SPORT1RX[0m - 7) << DMA3_SPORT1RX_POS) | (([31mCONFIG_DMA4_SPORT1TX[0m - 7) << DMA4_SPORT1TX_POS) | (([31mCONFIG_DMA5_SPI[0m - 7) << DMA5_SPI_POS) | (([31mCONFIG_DMA6_UARTRX[0m - 7) << DMA6_UARTRX_POS) | (([31mCONFIG_DMA7_UARTTX[0m - 7) << DMA7_UARTTX_POS)); bfin_write_SIC_IAR2((([31mCONFIG_TIMER0[0m - 7) << TIMER0_POS) | (([31mCONFIG_TIMER1[0m - 7) << TIMER1_POS) | (([31mCONFIG_TIMER2[0m - 7) << TIMER2_POS) | (([31mCONFIG_PFA[0m - 7) << PFA_POS) | (([31mCONFIG_PFB[0m - 7) << PFB_POS) | (([31mCONFIG_MEMDMA0[0m - 7) << MEMDMA0_POS) | (([31mCONFIG_MEMDMA1[0m - 7) << MEMDMA1_POS) | (([31mCONFIG_WDTIMER[0m - 7) << WDTIMER_POS)); SSYNC(); } |