Loading arch/ppc/8xx_io/commproc.c +26 −0 Original line number Diff line number Diff line Loading @@ -39,6 +39,21 @@ #include <asm/tlbflush.h> #include <asm/rheap.h> #define immr_map(member) \ ({ \ u32 offset = offsetof(immap_t, member); \ void *addr = ioremap (IMAP_ADDR + offset, \ sizeof( ((immap_t*)0)->member)); \ addr; \ }) #define immr_map_size(member, size) \ ({ \ u32 offset = offsetof(immap_t, member); \ void *addr = ioremap (IMAP_ADDR + offset, size); \ addr; \ }) static void m8xx_cpm_dpinit(void); static uint host_buffer; /* One page of host buffer */ static uint host_end; /* end + 1 */ Loading Loading @@ -364,11 +379,16 @@ static rh_block_t cpm_boot_dpmem_rh_block[16]; static rh_info_t cpm_dpmem_info; #define CPM_DPMEM_ALIGNMENT 8 static u8* dpram_vbase; static uint dpram_pbase; void m8xx_cpm_dpinit(void) { spin_lock_init(&cpm_dpmem_lock); dpram_vbase = immr_map_size(im_cpm.cp_dpmem, CPM_DATAONLY_BASE + CPM_DATAONLY_SIZE); dpram_pbase = (uint)&((immap_t *)IMAP_ADDR)->im_cpm.cp_dpmem; /* Initialize the info header */ rh_init(&cpm_dpmem_info, CPM_DPMEM_ALIGNMENT, sizeof(cpm_boot_dpmem_rh_block) / Loading Loading @@ -442,3 +462,9 @@ void *cpm_dpram_addr(uint offset) return ((immap_t *)IMAP_ADDR)->im_cpm.cp_dpmem + offset; } EXPORT_SYMBOL(cpm_dpram_addr); uint cpm_dpram_phys(u8* addr) { return (dpram_pbase + (uint)(addr - dpram_vbase)); } EXPORT_SYMBOL(cpm_dpram_phys); arch/ppc/platforms/mpc866ads_setup.c +9 −8 Original line number Diff line number Diff line Loading @@ -21,6 +21,7 @@ #include <linux/fs_enet_pd.h> #include <linux/fs_uart_pd.h> #include <linux/mii.h> #include <linux/phy.h> #include <asm/delay.h> #include <asm/io.h> Loading @@ -37,10 +38,10 @@ extern unsigned char __res[]; static void setup_fec1_ioports(void); static void setup_scc1_ioports(void); static void setup_smc1_ioports(void); static void setup_smc2_ioports(void); static void setup_fec1_ioports(struct fs_platform_info*); static void setup_scc1_ioports(struct fs_platform_info*); static void setup_smc1_ioports(struct fs_uart_platform_info*); static void setup_smc2_ioports(struct fs_uart_platform_info*); static struct fs_mii_fec_platform_info mpc8xx_mdio_fec_pdata; Loading Loading @@ -137,7 +138,7 @@ void __init board_init(void) iounmap(bcsr_io); } static void setup_fec1_ioports(struct fs_platform_info*) static void setup_fec1_ioports(struct fs_platform_info* pdata) { immap_t *immap = (immap_t *) IMAP_ADDR; Loading @@ -145,7 +146,7 @@ static void setup_fec1_ioports(struct fs_platform_info*) setbits16(&immap->im_ioport.iop_pddir, 0x1fff); } static void setup_scc1_ioports(struct fs_platform_info*) static void setup_scc1_ioports(struct fs_platform_info* pdata) { immap_t *immap = (immap_t *) IMAP_ADDR; unsigned *bcsr_io; Loading Loading @@ -194,7 +195,7 @@ static void setup_scc1_ioports(struct fs_platform_info*) } static void setup_smc1_ioports(struct fs_uart_platform_info*) static void setup_smc1_ioports(struct fs_uart_platform_info* pdata) { immap_t *immap = (immap_t *) IMAP_ADDR; unsigned *bcsr_io; Loading @@ -216,7 +217,7 @@ static void setup_smc1_ioports(struct fs_uart_platform_info*) } static void setup_smc2_ioports(struct fs_uart_platform_info*) static void setup_smc2_ioports(struct fs_uart_platform_info* pdata) { immap_t *immap = (immap_t *) IMAP_ADDR; unsigned *bcsr_io; Loading Loading
arch/ppc/8xx_io/commproc.c +26 −0 Original line number Diff line number Diff line Loading @@ -39,6 +39,21 @@ #include <asm/tlbflush.h> #include <asm/rheap.h> #define immr_map(member) \ ({ \ u32 offset = offsetof(immap_t, member); \ void *addr = ioremap (IMAP_ADDR + offset, \ sizeof( ((immap_t*)0)->member)); \ addr; \ }) #define immr_map_size(member, size) \ ({ \ u32 offset = offsetof(immap_t, member); \ void *addr = ioremap (IMAP_ADDR + offset, size); \ addr; \ }) static void m8xx_cpm_dpinit(void); static uint host_buffer; /* One page of host buffer */ static uint host_end; /* end + 1 */ Loading Loading @@ -364,11 +379,16 @@ static rh_block_t cpm_boot_dpmem_rh_block[16]; static rh_info_t cpm_dpmem_info; #define CPM_DPMEM_ALIGNMENT 8 static u8* dpram_vbase; static uint dpram_pbase; void m8xx_cpm_dpinit(void) { spin_lock_init(&cpm_dpmem_lock); dpram_vbase = immr_map_size(im_cpm.cp_dpmem, CPM_DATAONLY_BASE + CPM_DATAONLY_SIZE); dpram_pbase = (uint)&((immap_t *)IMAP_ADDR)->im_cpm.cp_dpmem; /* Initialize the info header */ rh_init(&cpm_dpmem_info, CPM_DPMEM_ALIGNMENT, sizeof(cpm_boot_dpmem_rh_block) / Loading Loading @@ -442,3 +462,9 @@ void *cpm_dpram_addr(uint offset) return ((immap_t *)IMAP_ADDR)->im_cpm.cp_dpmem + offset; } EXPORT_SYMBOL(cpm_dpram_addr); uint cpm_dpram_phys(u8* addr) { return (dpram_pbase + (uint)(addr - dpram_vbase)); } EXPORT_SYMBOL(cpm_dpram_phys);
arch/ppc/platforms/mpc866ads_setup.c +9 −8 Original line number Diff line number Diff line Loading @@ -21,6 +21,7 @@ #include <linux/fs_enet_pd.h> #include <linux/fs_uart_pd.h> #include <linux/mii.h> #include <linux/phy.h> #include <asm/delay.h> #include <asm/io.h> Loading @@ -37,10 +38,10 @@ extern unsigned char __res[]; static void setup_fec1_ioports(void); static void setup_scc1_ioports(void); static void setup_smc1_ioports(void); static void setup_smc2_ioports(void); static void setup_fec1_ioports(struct fs_platform_info*); static void setup_scc1_ioports(struct fs_platform_info*); static void setup_smc1_ioports(struct fs_uart_platform_info*); static void setup_smc2_ioports(struct fs_uart_platform_info*); static struct fs_mii_fec_platform_info mpc8xx_mdio_fec_pdata; Loading Loading @@ -137,7 +138,7 @@ void __init board_init(void) iounmap(bcsr_io); } static void setup_fec1_ioports(struct fs_platform_info*) static void setup_fec1_ioports(struct fs_platform_info* pdata) { immap_t *immap = (immap_t *) IMAP_ADDR; Loading @@ -145,7 +146,7 @@ static void setup_fec1_ioports(struct fs_platform_info*) setbits16(&immap->im_ioport.iop_pddir, 0x1fff); } static void setup_scc1_ioports(struct fs_platform_info*) static void setup_scc1_ioports(struct fs_platform_info* pdata) { immap_t *immap = (immap_t *) IMAP_ADDR; unsigned *bcsr_io; Loading Loading @@ -194,7 +195,7 @@ static void setup_scc1_ioports(struct fs_platform_info*) } static void setup_smc1_ioports(struct fs_uart_platform_info*) static void setup_smc1_ioports(struct fs_uart_platform_info* pdata) { immap_t *immap = (immap_t *) IMAP_ADDR; unsigned *bcsr_io; Loading @@ -216,7 +217,7 @@ static void setup_smc1_ioports(struct fs_uart_platform_info*) } static void setup_smc2_ioports(struct fs_uart_platform_info*) static void setup_smc2_ioports(struct fs_uart_platform_info* pdata) { immap_t *immap = (immap_t *) IMAP_ADDR; unsigned *bcsr_io; Loading