Print this page
11630 remove checks for 64-bit capable hardware

*** 34,135 **** #include <sys/salib.h> extern int is_sun4v; /* - * Check if the CPU should default to 64-bit or not. - * UltraSPARC-1's default to 32-bit mode. - * Everything else defaults to 64-bit mode. - */ - - /* - * Manufacturer codes for the CPUs we're interested in - */ - #define TI_JEDEC 0x17 - #define SUNW_JEDEC 0x22 - - /* - * Implementation codes for the CPUs we're interested in - */ - #define IMPL_US_I 0x10 - - static pnode_t - visit(pnode_t node) - { - int impl, manu; - char name[32]; - static char ultrasparc[] = "SUNW,UltraSPARC"; - static char implementation[] = "implementation#"; - static char manufacturer[] = "manufacturer#"; - - /* - * if name isn't 'SUNW,UltraSPARC', continue. - */ - if (prom_getproplen(node, "name") != sizeof (ultrasparc)) - return ((pnode_t)0); - (void) prom_getprop(node, "name", name); - if (strncmp(name, ultrasparc, sizeof (ultrasparc)) != 0) - return ((pnode_t)0); - - if (prom_getproplen(node, manufacturer) != sizeof (int)) - return ((pnode_t)0); - (void) prom_getprop(node, manufacturer, (caddr_t)&manu); - - if ((manu != SUNW_JEDEC) && (manu != TI_JEDEC)) - return ((pnode_t)0); - - if (prom_getproplen(node, implementation) != sizeof (int)) - return ((pnode_t)0); - (void) prom_getprop(node, implementation, (caddr_t)&impl); - - if (impl != IMPL_US_I) - return ((pnode_t)0); - - return (node); - } - - /* - * visit each node in the device tree, until we get a non-null answer - */ - static pnode_t - walk(pnode_t node) - { - pnode_t id; - - if (visit(node)) - return (node); - - for (node = prom_childnode(node); node; node = prom_nextnode(node)) - if ((id = walk(node)) != (pnode_t)0) - return (id); - - return ((pnode_t)0); - } - - /* - * Check if the CPU is an UltraSPARC-1 or not. - */ - int - cpu_is_ultrasparc_1(void) - { - static int cpu_checked; - static int cpu_default; - - /* - * If we already checked or the machine is - * a sun4v, we already know the answer. - */ - if (!is_sun4v || cpu_checked == 0) { - if (walk(prom_rootnode())) - cpu_default = 1; - cpu_checked = 1; - } - - return (cpu_default); - } - - /* * Retain a page or reclaim a previously retained page of physical * memory for use by the prom upgrade. If successful, leave * an indication that a page was retained by creating a boolean * property in the root node. * --- 34,43 ----