aboutsummaryrefslogtreecommitdiffstats
path: root/include/asm-powerpc/commproc.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/asm-powerpc/commproc.h')
-rw-r--r--include/asm-powerpc/commproc.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/include/asm-powerpc/commproc.h b/include/asm-powerpc/commproc.h
index 5dec32404fa2..0307c84a5c1d 100644
--- a/include/asm-powerpc/commproc.h
+++ b/include/asm-powerpc/commproc.h
@@ -19,6 +19,7 @@
19 19
20#include <asm/8xx_immap.h> 20#include <asm/8xx_immap.h>
21#include <asm/ptrace.h> 21#include <asm/ptrace.h>
22#include <asm/cpm.h>
22 23
23/* CPM Command register. 24/* CPM Command register.
24*/ 25*/
@@ -54,6 +55,7 @@
54 55
55#define mk_cr_cmd(CH, CMD) ((CMD << 8) | (CH << 4)) 56#define mk_cr_cmd(CH, CMD) ((CMD << 8) | (CH << 4))
56 57
58#ifndef CONFIG_PPC_CPM_NEW_BINDING
57/* The dual ported RAM is multi-functional. Some areas can be (and are 59/* The dual ported RAM is multi-functional. Some areas can be (and are
58 * being) used for microcode. There is an area that can only be used 60 * being) used for microcode. There is an area that can only be used
59 * as data ram for buffer descriptors, which is all we use right now. 61 * as data ram for buffer descriptors, which is all we use right now.
@@ -62,17 +64,27 @@
62#define CPM_DATAONLY_BASE ((uint)0x0800) 64#define CPM_DATAONLY_BASE ((uint)0x0800)
63#define CPM_DATAONLY_SIZE ((uint)0x0700) 65#define CPM_DATAONLY_SIZE ((uint)0x0700)
64#define CPM_DP_NOSPACE ((uint)0x7fffffff) 66#define CPM_DP_NOSPACE ((uint)0x7fffffff)
67#endif
65 68
66/* Export the base address of the communication processor registers 69/* Export the base address of the communication processor registers
67 * and dual port ram. 70 * and dual port ram.
68 */ 71 */
69extern cpm8xx_t __iomem *cpmp; /* Pointer to comm processor */ 72extern cpm8xx_t __iomem *cpmp; /* Pointer to comm processor */
73
74#ifdef CONFIG_PPC_CPM_NEW_BINDING
75#define cpm_dpalloc cpm_muram_alloc
76#define cpm_dpfree cpm_muram_free
77#define cpm_dpram_addr cpm_muram_addr
78#define cpm_dpram_phys cpm_muram_dma
79#else
70extern unsigned long cpm_dpalloc(uint size, uint align); 80extern unsigned long cpm_dpalloc(uint size, uint align);
71extern int cpm_dpfree(unsigned long offset); 81extern int cpm_dpfree(unsigned long offset);
72extern unsigned long cpm_dpalloc_fixed(unsigned long offset, uint size, uint align); 82extern unsigned long cpm_dpalloc_fixed(unsigned long offset, uint size, uint align);
73extern void cpm_dpdump(void); 83extern void cpm_dpdump(void);
74extern void *cpm_dpram_addr(unsigned long offset); 84extern void *cpm_dpram_addr(unsigned long offset);
75extern uint cpm_dpram_phys(u8* addr); 85extern uint cpm_dpram_phys(u8* addr);
86#endif
87
76extern void cpm_setbrg(uint brg, uint rate); 88extern void cpm_setbrg(uint brg, uint rate);
77 89
78extern uint m8xx_cpm_hostalloc(uint size); 90extern uint m8xx_cpm_hostalloc(uint size);