Lines Matching refs:p2o

61 static void		cpu_p2o_mapout(int cpuid, post2obp_info_t *p2o);
62 static void p2o_update_checksum(post2obp_info_t *p2o);
63 static uint_t p2o_calc_checksum(post2obp_info_t *p2o);
64 static void p2o_mem_sort(post2obp_info_t *p2o);
65 static void p2o_mem_coalesce(post2obp_info_t *p2o);
117 post2obp_info_t *p2o = ((p2o_info_t *)ph)->p2o_ptr; in pda_board_present() local
119 bda_board = p2o->p2o_bdinfo[boardnum].bda_board; in pda_board_present()
130 post2obp_info_t *p2o = ((p2o_info_t *)ph)->p2o_ptr; in pda_get_board_info() local
132 return ((void *)&(p2o->p2o_bdinfo[boardnum])); in pda_get_board_info()
143 post2obp_info_t *p2o = ((p2o_info_t *)ph)->p2o_ptr; in pda_get_mem_size() local
146 return (p2o->p2o_memtotal.Memt_NumPages); in pda_get_mem_size()
148 asr = p2o->p2o_bdminfo[boardnum].bmda_adr; in pda_get_mem_size()
162 for (c = 0; c < p2o->p2o_memtotal.Memt_NumChunks; c++) { in pda_get_mem_size()
165 c_basepfn = (pfn_t)p2o->p2o_mchunks[c].Memc_StartAddress in pda_get_mem_size()
167 c_endpfn = (pfn_t)p2o->p2o_mchunks[c].Memc_Size in pda_get_mem_size()
187 post2obp_info_t *p2o = ((p2o_info_t *)ph)->p2o_ptr; in pda_mem_add_span() local
191 ASSERT(p2o); in pda_mem_add_span()
193 nchunks = p2o->p2o_memtotal.Memt_NumChunks; in pda_mem_add_span()
200 if (a_pfn <= p2o->p2o_mchunks[c].Memc_StartAddress) { in pda_mem_add_span()
202 p2o->p2o_mchunks[cend] = in pda_mem_add_span()
203 p2o->p2o_mchunks[cend - 1]; in pda_mem_add_span()
207 p2o->p2o_mchunks[c].Memc_StartAddress = a_pfn; in pda_mem_add_span()
208 p2o->p2o_mchunks[c].Memc_Size = a_npgs; in pda_mem_add_span()
211 p2o->p2o_memtotal.Memt_NumChunks = nchunks; in pda_mem_add_span()
212 p2o->p2o_memtotal.Memt_NumPages += a_npgs; in pda_mem_add_span()
214 p2o_mem_sort(p2o); in pda_mem_add_span()
215 p2o_mem_coalesce(p2o); in pda_mem_add_span()
216 p2o_update_checksum(p2o); in pda_mem_add_span()
222 post2obp_info_t *p2o = ((p2o_info_t *)ph)->p2o_ptr; in pda_mem_del_span() local
228 ASSERT(p2o); in pda_mem_del_span()
232 n_nchunks = o_nchunks = p2o->p2o_memtotal.Memt_NumChunks; in pda_mem_del_span()
233 endp = &(p2o->p2o_mchunks[o_nchunks]); in pda_mem_del_span()
239 p_pfn = p2o->p2o_mchunks[c].Memc_StartAddress; in pda_mem_del_span()
240 p_npgs = p2o->p2o_mchunks[c].Memc_Size; in pda_mem_del_span()
288 p2o->p2o_mchunks[c].Memc_StartAddress = p_pfn; in pda_mem_del_span()
289 p2o->p2o_mchunks[c].Memc_Size = p_npgs; in pda_mem_del_span()
294 p2o->p2o_memtotal.Memt_NumChunks = n_nchunks; in pda_mem_del_span()
295 p2o->p2o_memtotal.Memt_NumPages = npages; in pda_mem_del_span()
304 for (mp = &(p2o->p2o_mchunks[0]); mp < endp; mp++) { in pda_mem_del_span()
315 ASSERT(endp == &(p2o->p2o_mchunks[n_nchunks])); in pda_mem_del_span()
317 p2o_mem_sort(p2o); in pda_mem_del_span()
318 p2o_mem_coalesce(p2o); in pda_mem_del_span()
319 p2o_update_checksum(p2o); in pda_mem_del_span()
331 post2obp_info_t *p2o = ((p2o_info_t *)ph)->p2o_ptr; in pda_mem_sync() local
345 p2o->p2o_bdminfo[b].bmda_adr = masr_value; in pda_mem_sync()
352 p2o_update_checksum(p2o); in pda_mem_sync()
358 post2obp_info_t *p2o = ((p2o_info_t *)ph)->p2o_ptr; in pda_get_busmask() local
361 *amask = p2o ? p2o->p2o_abus_mask : 0; in pda_get_busmask()
364 *dmask = p2o ? p2o->p2o_dbus_mask : 0; in pda_get_busmask()
370 post2obp_info_t *p2o = ((p2o_info_t *)ph)->p2o_ptr; in pda_is_valid() local
373 if (p2o == NULL) in pda_is_valid()
376 csum = p2o_calc_checksum(p2o); in pda_is_valid()
378 return (csum == p2o->p2o_csum); in pda_is_valid()
390 p2o_update_checksum(post2obp_info_t *p2o) in p2o_update_checksum() argument
394 ASSERT(p2o); in p2o_update_checksum()
396 new_csum = p2o_calc_checksum(p2o); in p2o_update_checksum()
397 p2o->p2o_csum = new_csum; in p2o_update_checksum()
401 p2o_calc_checksum(post2obp_info_t *p2o) in p2o_calc_checksum() argument
408 ASSERT(p2o != NULL); in p2o_calc_checksum()
410 nchunks = p2o->p2o_memtotal.Memt_NumChunks; in p2o_calc_checksum()
415 o_csum = p2o->p2o_csum; in p2o_calc_checksum()
416 p2o->p2o_csum = 0; in p2o_calc_checksum()
418 for (i = 0, csumptr = (uint_t *)p2o; i < p2o_size; i++) in p2o_calc_checksum()
420 p2o->p2o_csum = o_csum; in p2o_calc_checksum()
432 p2o_mem_sort(post2obp_info_t *p2o) in p2o_mem_sort() argument
440 ASSERT(p2o != NULL); in p2o_mem_sort()
442 nchunks = p2o->p2o_memtotal.Memt_NumChunks; in p2o_mem_sort()
443 base = &p2o->p2o_mchunks[0]; in p2o_mem_sort()
489 p2o_mem_coalesce(post2obp_info_t *p2o) in p2o_mem_coalesce() argument
497 ASSERT(p2o != NULL); in p2o_mem_coalesce()
499 nchunks = new_nchunks = p2o->p2o_memtotal.Memt_NumChunks; in p2o_mem_coalesce()
500 mc = &p2o->p2o_mchunks[0]; in p2o_mem_coalesce()
532 npages += p2o->p2o_mchunks[i].Memc_Size; in p2o_mem_coalesce()
534 p2o->p2o_memtotal.Memt_NumChunks = new_nchunks; in p2o_mem_coalesce()
535 p2o->p2o_memtotal.Memt_NumPages = npages; in p2o_mem_coalesce()
588 cpu_p2o_mapout(int cpuid, post2obp_info_t *p2o) in cpu_p2o_mapout() argument
610 cvaddr = (ulong_t)p2o - cpu_p2o_offset; in cpu_p2o_mapout()