root/arch/sparc/prom/init_64.c

/* [<][>][^][v][top][bottom][index][help] */

DEFINITIONS

This source file includes following definitions.
  1. prom_init
  2. prom_init_report

   1 // SPDX-License-Identifier: GPL-2.0
   2 /*
   3  * init.c:  Initialize internal variables used by the PROM
   4  *          library functions.
   5  *
   6  * Copyright (C) 1995 David S. Miller (davem@caip.rutgers.edu)
   7  * Copyright (C) 1996,1997 Jakub Jelinek (jj@sunsite.mff.cuni.cz)
   8  */
   9 
  10 #include <linux/kernel.h>
  11 #include <linux/init.h>
  12 #include <linux/string.h>
  13 #include <linux/ctype.h>
  14 
  15 #include <asm/openprom.h>
  16 #include <asm/oplib.h>
  17 
  18 /* OBP version string. */
  19 char prom_version[80];
  20 
  21 /* The root node of the prom device tree. */
  22 int prom_stdout;
  23 phandle prom_chosen_node;
  24 
  25 /* You must call prom_init() before you attempt to use any of the
  26  * routines in the prom library.
  27  * It gets passed the pointer to the PROM vector.
  28  */
  29 
  30 extern void prom_cif_init(void *);
  31 
  32 void __init prom_init(void *cif_handler)
  33 {
  34         phandle node;
  35 
  36         prom_cif_init(cif_handler);
  37 
  38         prom_chosen_node = prom_finddevice(prom_chosen_path);
  39         if (!prom_chosen_node || (s32)prom_chosen_node == -1)
  40                 prom_halt();
  41 
  42         prom_stdout = prom_getint(prom_chosen_node, "stdout");
  43 
  44         node = prom_finddevice("/openprom");
  45         if (!node || (s32)node == -1)
  46                 prom_halt();
  47 
  48         prom_getstring(node, "version", prom_version, sizeof(prom_version));
  49 
  50         prom_printf("\n");
  51 }
  52 
  53 void __init prom_init_report(void)
  54 {
  55         printk("PROMLIB: Sun IEEE Boot Prom '%s'\n", prom_version);
  56         printk("PROMLIB: Root node compatible: %s\n", prom_root_compatible);
  57 }

/* [<][>][^][v][top][bottom][index][help] */