diff options
| author | Paul Mackerras <paulus@samba.org> | 2006-05-19 01:02:42 -0400 |
|---|---|---|
| committer | Paul Mackerras <paulus@samba.org> | 2006-05-19 01:02:42 -0400 |
| commit | 3c06da5ae5358e9d325d541a053e1059e9654bcc (patch) | |
| tree | 04c953cc82fe57cff248ac523095cd4f0d9611a7 /include | |
| parent | 4d1f3f25d9c303d1ce63b42cc94c54ac0ab2e950 (diff) | |
| parent | a54c9d30dbb06391ec4422aaf0e1dc2c8c53bd3e (diff) | |
Merge ../linux-2.6
Diffstat (limited to 'include')
29 files changed, 179 insertions, 57 deletions
diff --git a/include/asm-arm/arch-aaec2000/debug-macro.S b/include/asm-arm/arch-aaec2000/debug-macro.S index e4f1fa539a74..7b1fce021d8a 100644 --- a/include/asm-arm/arch-aaec2000/debug-macro.S +++ b/include/asm-arm/arch-aaec2000/debug-macro.S | |||
| @@ -9,6 +9,7 @@ | |||
| 9 | * published by the Free Software Foundation. | 9 | * published by the Free Software Foundation. |
| 10 | */ | 10 | */ |
| 11 | 11 | ||
| 12 | #include "hardware.h" | ||
| 12 | .macro addruart,rx | 13 | .macro addruart,rx |
| 13 | mrc p15, 0, \rx, c1, c0 | 14 | mrc p15, 0, \rx, c1, c0 |
| 14 | tst \rx, #1 @ MMU enabled? | 15 | tst \rx, #1 @ MMU enabled? |
diff --git a/include/asm-arm/arch-aaec2000/entry-macro.S b/include/asm-arm/arch-aaec2000/entry-macro.S index df31313ab07e..1eb3503bd16e 100644 --- a/include/asm-arm/arch-aaec2000/entry-macro.S +++ b/include/asm-arm/arch-aaec2000/entry-macro.S | |||
| @@ -10,6 +10,7 @@ | |||
| 10 | * published by the Free Software Foundation. | 10 | * published by the Free Software Foundation. |
| 11 | * | 11 | * |
| 12 | */ | 12 | */ |
| 13 | #include <asm/arch/irqs.h> | ||
| 13 | 14 | ||
| 14 | .macro disable_fiq | 15 | .macro disable_fiq |
| 15 | .endm | 16 | .endm |
diff --git a/include/asm-arm/arch-imx/debug-macro.S b/include/asm-arm/arch-imx/debug-macro.S index 83f552f7bcc1..c611871643a2 100644 --- a/include/asm-arm/arch-imx/debug-macro.S +++ b/include/asm-arm/arch-imx/debug-macro.S | |||
| @@ -16,7 +16,7 @@ | |||
| 16 | tst \rx, #1 @ MMU enabled? | 16 | tst \rx, #1 @ MMU enabled? |
| 17 | moveq \rx, #0x00000000 @ physical | 17 | moveq \rx, #0x00000000 @ physical |
| 18 | movne \rx, #0xe0000000 @ virtual | 18 | movne \rx, #0xe0000000 @ virtual |
| 19 | orr \rx, \rx, #0x00200000 | 19 | orreq \rx, \rx, #0x00200000 @ physical |
| 20 | orr \rx, \rx, #0x00006000 @ UART1 offset | 20 | orr \rx, \rx, #0x00006000 @ UART1 offset |
| 21 | .endm | 21 | .endm |
| 22 | 22 | ||
diff --git a/include/asm-arm/arch-pxa/dma.h b/include/asm-arm/arch-pxa/dma.h index 3e88a2a02a0f..a008150abc59 100644 --- a/include/asm-arm/arch-pxa/dma.h +++ b/include/asm-arm/arch-pxa/dma.h | |||
| @@ -24,27 +24,29 @@ typedef struct pxa_dma_desc { | |||
| 24 | volatile u32 dcmd; /* DCMD value for the current transfer */ | 24 | volatile u32 dcmd; /* DCMD value for the current transfer */ |
| 25 | } pxa_dma_desc; | 25 | } pxa_dma_desc; |
| 26 | 26 | ||
| 27 | typedef enum { | ||
| 28 | DMA_PRIO_HIGH = 0, | ||
| 29 | DMA_PRIO_MEDIUM = 1, | ||
| 30 | DMA_PRIO_LOW = 2 | ||
| 31 | } pxa_dma_prio; | ||
| 32 | |||
| 27 | #if defined(CONFIG_PXA27x) | 33 | #if defined(CONFIG_PXA27x) |
| 28 | 34 | ||
| 29 | #define PXA_DMA_CHANNELS 32 | 35 | #define PXA_DMA_CHANNELS 32 |
| 30 | #define PXA_DMA_NBCH(prio) ((prio == DMA_PRIO_LOW) ? 16 : 8) | ||
| 31 | 36 | ||
| 32 | typedef enum { | 37 | #define pxa_for_each_dma_prio(ch, prio) \ |
| 33 | DMA_PRIO_HIGH = 0, | 38 | for ( \ |
| 34 | DMA_PRIO_MEDIUM = 8, | 39 | ch = prio * 4; \ |
| 35 | DMA_PRIO_LOW = 16 | 40 | ch != (4 << prio) + 16; \ |
| 36 | } pxa_dma_prio; | 41 | ch = (ch + 1 == (4 << prio)) ? (prio * 4 + 16) : (ch + 1) \ |
| 42 | ) | ||
| 37 | 43 | ||
| 38 | #elif defined(CONFIG_PXA25x) | 44 | #elif defined(CONFIG_PXA25x) |
| 39 | 45 | ||
| 40 | #define PXA_DMA_CHANNELS 16 | 46 | #define PXA_DMA_CHANNELS 16 |
| 41 | #define PXA_DMA_NBCH(prio) ((prio == DMA_PRIO_LOW) ? 8 : 4) | ||
| 42 | 47 | ||
| 43 | typedef enum { | 48 | #define pxa_for_each_dma_prio(ch, prio) \ |
| 44 | DMA_PRIO_HIGH = 0, | 49 | for (ch = prio * 4; ch != (4 << prio); ch++) |
| 45 | DMA_PRIO_MEDIUM = 4, | ||
| 46 | DMA_PRIO_LOW = 8 | ||
| 47 | } pxa_dma_prio; | ||
| 48 | 50 | ||
| 49 | #endif | 51 | #endif |
| 50 | 52 | ||
diff --git a/include/asm-arm/arch-pxa/pxa2xx_spi.h b/include/asm-arm/arch-pxa/pxa2xx_spi.h new file mode 100644 index 000000000000..1e70908b816f --- /dev/null +++ b/include/asm-arm/arch-pxa/pxa2xx_spi.h | |||
| @@ -0,0 +1,68 @@ | |||
| 1 | /* | ||
| 2 | * Copyright (C) 2005 Stephen Street / StreetFire Sound Labs | ||
| 3 | * | ||
| 4 | * This program is free software; you can redistribute it and/or modify | ||
| 5 | * it under the terms of the GNU General Public License as published by | ||
| 6 | * the Free Software Foundation; either version 2 of the License, or | ||
| 7 | * (at your option) any later version. | ||
| 8 | * | ||
| 9 | * This program is distributed in the hope that it will be useful, | ||
| 10 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 12 | * GNU General Public License for more details. | ||
| 13 | * | ||
| 14 | * You should have received a copy of the GNU General Public License | ||
| 15 | * along with this program; if not, write to the Free Software | ||
| 16 | * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. | ||
| 17 | */ | ||
| 18 | |||
| 19 | #ifndef PXA2XX_SPI_H_ | ||
| 20 | #define PXA2XX_SPI_H_ | ||
| 21 | |||
| 22 | #define PXA2XX_CS_ASSERT (0x01) | ||
| 23 | #define PXA2XX_CS_DEASSERT (0x02) | ||
| 24 | |||
| 25 | #if defined(CONFIG_PXA25x) | ||
| 26 | #define CLOCK_SPEED_HZ 3686400 | ||
| 27 | #define SSP1_SerClkDiv(x) (((CLOCK_SPEED_HZ/2/(x+1))<<8)&0x0000ff00) | ||
| 28 | #define SSP2_SerClkDiv(x) (((CLOCK_SPEED_HZ/(x+1))<<8)&0x000fff00) | ||
| 29 | #define SSP3_SerClkDiv(x) (((CLOCK_SPEED_HZ/(x+1))<<8)&0x000fff00) | ||
| 30 | #elif defined(CONFIG_PXA27x) | ||
| 31 | #define CLOCK_SPEED_HZ 13000000 | ||
| 32 | #define SSP1_SerClkDiv(x) (((CLOCK_SPEED_HZ/(x+1))<<8)&0x000fff00) | ||
| 33 | #define SSP2_SerClkDiv(x) (((CLOCK_SPEED_HZ/(x+1))<<8)&0x000fff00) | ||
| 34 | #define SSP3_SerClkDiv(x) (((CLOCK_SPEED_HZ/(x+1))<<8)&0x000fff00) | ||
| 35 | #endif | ||
| 36 | |||
| 37 | #define SSP1_VIRT ((void *)(io_p2v(__PREG(SSCR0_P(1))))) | ||
| 38 | #define SSP2_VIRT ((void *)(io_p2v(__PREG(SSCR0_P(2))))) | ||
| 39 | #define SSP3_VIRT ((void *)(io_p2v(__PREG(SSCR0_P(3))))) | ||
| 40 | |||
| 41 | enum pxa_ssp_type { | ||
| 42 | SSP_UNDEFINED = 0, | ||
| 43 | PXA25x_SSP, /* pxa 210, 250, 255, 26x */ | ||
| 44 | PXA25x_NSSP, /* pxa 255, 26x (including ASSP) */ | ||
| 45 | PXA27x_SSP, | ||
| 46 | }; | ||
| 47 | |||
| 48 | /* device.platform_data for SSP controller devices */ | ||
| 49 | struct pxa2xx_spi_master { | ||
| 50 | enum pxa_ssp_type ssp_type; | ||
| 51 | u32 clock_enable; | ||
| 52 | u16 num_chipselect; | ||
| 53 | u8 enable_dma; | ||
| 54 | }; | ||
| 55 | |||
| 56 | /* spi_board_info.controller_data for SPI slave devices, | ||
