Loading arch/parisc/kernel/inventory.c +24 −17 Original line number Diff line number Diff line Loading @@ -170,23 +170,27 @@ static void __init pagezero_memconfig(void) static int __init pat_query_module(ulong pcell_loc, ulong mod_index) { pdc_pat_cell_mod_maddr_block_t pa_pdc_cell; pdc_pat_cell_mod_maddr_block_t *pa_pdc_cell; unsigned long bytecnt; unsigned long temp; /* 64-bit scratch value */ long status; /* PDC return value status */ struct parisc_device *dev; pa_pdc_cell = kmalloc(sizeof (*pa_pdc_cell), GFP_KERNEL); if (!pa_pdc_cell) panic("couldn't allocate memory for PDC_PAT_CELL!"); /* return cell module (PA or Processor view) */ status = pdc_pat_cell_module(&bytecnt, pcell_loc, mod_index, PA_VIEW, &pa_pdc_cell); PA_VIEW, pa_pdc_cell); if (status != PDC_OK) { /* no more cell modules or error */ return status; } temp = pa_pdc_cell.cba; dev = alloc_pa_dev(PAT_GET_CBA(temp), &pa_pdc_cell.mod_path); temp = pa_pdc_cell->cba; dev = alloc_pa_dev(PAT_GET_CBA(temp), &(pa_pdc_cell->mod_path)); if (!dev) { return PDC_OK; } Loading @@ -203,8 +207,8 @@ pat_query_module(ulong pcell_loc, ulong mod_index) /* save generic info returned from the call */ /* REVISIT: who is the consumer of this? not sure yet... */ dev->mod_info = pa_pdc_cell.mod_info; /* pass to PAT_GET_ENTITY() */ dev->pmod_loc = pa_pdc_cell.mod_location; dev->mod_info = pa_pdc_cell->mod_info; /* pass to PAT_GET_ENTITY() */ dev->pmod_loc = pa_pdc_cell->mod_location; register_parisc_device(dev); /* advertise device */ Loading @@ -216,14 +220,14 @@ pat_query_module(ulong pcell_loc, ulong mod_index) case PAT_ENTITY_PROC: printk(KERN_DEBUG "PAT_ENTITY_PROC: id_eid 0x%lx\n", pa_pdc_cell.mod[0]); pa_pdc_cell->mod[0]); break; case PAT_ENTITY_MEM: printk(KERN_DEBUG "PAT_ENTITY_MEM: amount 0x%lx min_gni_base 0x%lx min_gni_len 0x%lx\n", pa_pdc_cell.mod[0], pa_pdc_cell.mod[1], pa_pdc_cell.mod[2]); pa_pdc_cell->mod[0], pa_pdc_cell->mod[1], pa_pdc_cell->mod[2]); break; case PAT_ENTITY_CA: printk(KERN_DEBUG "PAT_ENTITY_CA: %ld\n", pcell_loc); Loading @@ -243,23 +247,26 @@ pat_query_module(ulong pcell_loc, ulong mod_index) print_ranges: pdc_pat_cell_module(&bytecnt, pcell_loc, mod_index, IO_VIEW, &io_pdc_cell); printk(KERN_DEBUG "ranges %ld\n", pa_pdc_cell.mod[1]); for (i = 0; i < pa_pdc_cell.mod[1]; i++) { printk(KERN_DEBUG "ranges %ld\n", pa_pdc_cell->mod[1]); for (i = 0; i < pa_pdc_cell->mod[1]; i++) { printk(KERN_DEBUG " PA_VIEW %ld: 0x%016lx 0x%016lx 0x%016lx\n", i, pa_pdc_cell.mod[2 + i * 3], /* type */ pa_pdc_cell.mod[3 + i * 3], /* start */ pa_pdc_cell.mod[4 + i * 3]); /* finish (ie end) */ i, pa_pdc_cell->mod[2 + i * 3], /* type */ pa_pdc_cell->mod[3 + i * 3], /* start */ pa_pdc_cell->mod[4 + i * 3]); /* finish (ie end) */ printk(KERN_DEBUG " IO_VIEW %ld: 0x%016lx 0x%016lx 0x%016lx\n", i, io_pdc_cell.mod[2 + i * 3], /* type */ io_pdc_cell.mod[3 + i * 3], /* start */ io_pdc_cell.mod[4 + i * 3]); /* finish (ie end) */ i, io_pdc_cell->mod[2 + i * 3], /* type */ io_pdc_cell->mod[3 + i * 3], /* start */ io_pdc_cell->mod[4 + i * 3]); /* finish (ie end) */ } printk(KERN_DEBUG "\n"); break; } #endif /* DEBUG_PAT */ kfree(pa_pdc_cell); return PDC_OK; } Loading Loading
arch/parisc/kernel/inventory.c +24 −17 Original line number Diff line number Diff line Loading @@ -170,23 +170,27 @@ static void __init pagezero_memconfig(void) static int __init pat_query_module(ulong pcell_loc, ulong mod_index) { pdc_pat_cell_mod_maddr_block_t pa_pdc_cell; pdc_pat_cell_mod_maddr_block_t *pa_pdc_cell; unsigned long bytecnt; unsigned long temp; /* 64-bit scratch value */ long status; /* PDC return value status */ struct parisc_device *dev; pa_pdc_cell = kmalloc(sizeof (*pa_pdc_cell), GFP_KERNEL); if (!pa_pdc_cell) panic("couldn't allocate memory for PDC_PAT_CELL!"); /* return cell module (PA or Processor view) */ status = pdc_pat_cell_module(&bytecnt, pcell_loc, mod_index, PA_VIEW, &pa_pdc_cell); PA_VIEW, pa_pdc_cell); if (status != PDC_OK) { /* no more cell modules or error */ return status; } temp = pa_pdc_cell.cba; dev = alloc_pa_dev(PAT_GET_CBA(temp), &pa_pdc_cell.mod_path); temp = pa_pdc_cell->cba; dev = alloc_pa_dev(PAT_GET_CBA(temp), &(pa_pdc_cell->mod_path)); if (!dev) { return PDC_OK; } Loading @@ -203,8 +207,8 @@ pat_query_module(ulong pcell_loc, ulong mod_index) /* save generic info returned from the call */ /* REVISIT: who is the consumer of this? not sure yet... */ dev->mod_info = pa_pdc_cell.mod_info; /* pass to PAT_GET_ENTITY() */ dev->pmod_loc = pa_pdc_cell.mod_location; dev->mod_info = pa_pdc_cell->mod_info; /* pass to PAT_GET_ENTITY() */ dev->pmod_loc = pa_pdc_cell->mod_location; register_parisc_device(dev); /* advertise device */ Loading @@ -216,14 +220,14 @@ pat_query_module(ulong pcell_loc, ulong mod_index) case PAT_ENTITY_PROC: printk(KERN_DEBUG "PAT_ENTITY_PROC: id_eid 0x%lx\n", pa_pdc_cell.mod[0]); pa_pdc_cell->mod[0]); break; case PAT_ENTITY_MEM: printk(KERN_DEBUG "PAT_ENTITY_MEM: amount 0x%lx min_gni_base 0x%lx min_gni_len 0x%lx\n", pa_pdc_cell.mod[0], pa_pdc_cell.mod[1], pa_pdc_cell.mod[2]); pa_pdc_cell->mod[0], pa_pdc_cell->mod[1], pa_pdc_cell->mod[2]); break; case PAT_ENTITY_CA: printk(KERN_DEBUG "PAT_ENTITY_CA: %ld\n", pcell_loc); Loading @@ -243,23 +247,26 @@ pat_query_module(ulong pcell_loc, ulong mod_index) print_ranges: pdc_pat_cell_module(&bytecnt, pcell_loc, mod_index, IO_VIEW, &io_pdc_cell); printk(KERN_DEBUG "ranges %ld\n", pa_pdc_cell.mod[1]); for (i = 0; i < pa_pdc_cell.mod[1]; i++) { printk(KERN_DEBUG "ranges %ld\n", pa_pdc_cell->mod[1]); for (i = 0; i < pa_pdc_cell->mod[1]; i++) { printk(KERN_DEBUG " PA_VIEW %ld: 0x%016lx 0x%016lx 0x%016lx\n", i, pa_pdc_cell.mod[2 + i * 3], /* type */ pa_pdc_cell.mod[3 + i * 3], /* start */ pa_pdc_cell.mod[4 + i * 3]); /* finish (ie end) */ i, pa_pdc_cell->mod[2 + i * 3], /* type */ pa_pdc_cell->mod[3 + i * 3], /* start */ pa_pdc_cell->mod[4 + i * 3]); /* finish (ie end) */ printk(KERN_DEBUG " IO_VIEW %ld: 0x%016lx 0x%016lx 0x%016lx\n", i, io_pdc_cell.mod[2 + i * 3], /* type */ io_pdc_cell.mod[3 + i * 3], /* start */ io_pdc_cell.mod[4 + i * 3]); /* finish (ie end) */ i, io_pdc_cell->mod[2 + i * 3], /* type */ io_pdc_cell->mod[3 + i * 3], /* start */ io_pdc_cell->mod[4 + i * 3]); /* finish (ie end) */ } printk(KERN_DEBUG "\n"); break; } #endif /* DEBUG_PAT */ kfree(pa_pdc_cell); return PDC_OK; } Loading