|
@@ -43,6 +43,7 @@ int pdc_type __read_mostly = PDC_TYPE_ILLEGAL;
|
|
|
/* cell number and location (PAT firmware only) */
|
|
|
unsigned long parisc_cell_num __read_mostly;
|
|
|
unsigned long parisc_cell_loc __read_mostly;
|
|
|
+unsigned long parisc_pat_pdc_cap __read_mostly;
|
|
|
|
|
|
|
|
|
void __init setup_pdc(void)
|
|
@@ -81,12 +82,21 @@ void __init setup_pdc(void)
|
|
|
#ifdef CONFIG_64BIT
|
|
|
status = pdc_pat_cell_get_number(&cell_info);
|
|
|
if (status == PDC_OK) {
|
|
|
+ unsigned long legacy_rev, pat_rev;
|
|
|
pdc_type = PDC_TYPE_PAT;
|
|
|
pr_cont("64 bit PAT.\n");
|
|
|
parisc_cell_num = cell_info.cell_num;
|
|
|
parisc_cell_loc = cell_info.cell_loc;
|
|
|
pr_info("PAT: Running on cell %lu and location %lu.\n",
|
|
|
parisc_cell_num, parisc_cell_loc);
|
|
|
+ status = pdc_pat_pd_get_pdc_revisions(&legacy_rev,
|
|
|
+ &pat_rev, &parisc_pat_pdc_cap);
|
|
|
+ pr_info("PAT: legacy revision 0x%lx, pat_rev 0x%lx, pdc_cap 0x%lx, S-PTLB %d, HPMC_RENDEZ %d.\n",
|
|
|
+ legacy_rev, pat_rev, parisc_pat_pdc_cap,
|
|
|
+ parisc_pat_pdc_cap
|
|
|
+ & PDC_PAT_CAPABILITY_BIT_SIMULTANEOUS_PTLB ? 1:0,
|
|
|
+ parisc_pat_pdc_cap
|
|
|
+ & PDC_PAT_CAPABILITY_BIT_PDC_HPMC_RENDEZ ? 1:0);
|
|
|
return;
|
|
|
}
|
|
|
#endif
|