@@ -43,6 +43,7 @@ int pdc_type __read_mostly = PDC_TYPE_ILLEGAL;
43
43
/* cell number and location (PAT firmware only) */
44
44
unsigned long parisc_cell_num __read_mostly ;
45
45
unsigned long parisc_cell_loc __read_mostly ;
46
+ unsigned long parisc_pat_pdc_cap __read_mostly ;
46
47
47
48
48
49
void __init setup_pdc (void )
@@ -81,12 +82,21 @@ void __init setup_pdc(void)
81
82
#ifdef CONFIG_64BIT
82
83
status = pdc_pat_cell_get_number (& cell_info );
83
84
if (status == PDC_OK ) {
85
+ unsigned long legacy_rev , pat_rev ;
84
86
pdc_type = PDC_TYPE_PAT ;
85
87
pr_cont ("64 bit PAT.\n" );
86
88
parisc_cell_num = cell_info .cell_num ;
87
89
parisc_cell_loc = cell_info .cell_loc ;
88
90
pr_info ("PAT: Running on cell %lu and location %lu.\n" ,
89
91
parisc_cell_num , parisc_cell_loc );
92
+ status = pdc_pat_pd_get_pdc_revisions (& legacy_rev ,
93
+ & pat_rev , & parisc_pat_pdc_cap );
94
+ pr_info ("PAT: legacy revision 0x%lx, pat_rev 0x%lx, pdc_cap 0x%lx, S-PTLB %d, HPMC_RENDEZ %d.\n" ,
95
+ legacy_rev , pat_rev , parisc_pat_pdc_cap ,
96
+ parisc_pat_pdc_cap
97
+ & PDC_PAT_CAPABILITY_BIT_SIMULTANEOUS_PTLB ? 1 :0 ,
98
+ parisc_pat_pdc_cap
99
+ & PDC_PAT_CAPABILITY_BIT_PDC_HPMC_RENDEZ ? 1 :0 );
90
100
return ;
91
101
}
92
102
#endif
0 commit comments