···4444int pdc_model_cpuid(unsigned long *cpu_id);4545int pdc_model_versions(unsigned long *versions, int id);4646int pdc_model_capabilities(unsigned long *capabilities);4747+int pdc_model_platform_info(char *orig_prod_num, char *current_prod_num, char *serial_no);4748int pdc_cache_info(struct pdc_cache_info *cache);4849int pdc_spaceid_bits(unsigned long *space_bits);4950#ifndef CONFIG_PA20
+24
arch/parisc/kernel/firmware.c
···569569}570570571571/**572572+ * pdc_model_platform_info - Returns machine product and serial number.573573+ * @orig_prod_num: Return buffer for original product number.574574+ * @current_prod_num: Return buffer for current product number.575575+ * @serial_no: Return buffer for serial number.576576+ *577577+ * Returns strings containing the original and current product numbers and the578578+ * serial number of the system.579579+ */580580+int pdc_model_platform_info(char *orig_prod_num, char *current_prod_num,581581+ char *serial_no)582582+{583583+ int retval;584584+ unsigned long flags;585585+586586+ spin_lock_irqsave(&pdc_lock, flags);587587+ retval = mem_pdc_call(PDC_MODEL, PDC_MODEL_GET_PLATFORM_INFO,588588+ __pa(orig_prod_num), __pa(current_prod_num), __pa(serial_no));589589+ convert_to_wide(pdc_result);590590+ spin_unlock_irqrestore(&pdc_lock, flags);591591+592592+ return retval;593593+}594594+595595+/**572596 * pdc_cache_info - Return cache and TLB information.573597 * @cache_info: The return buffer.574598 *