Sun Microsystems CP2500 manual Code Example 1-1System Watchdog Node Management Code Example

Page 28

CODE EXAMPLE 1-1System Watchdog Node Management Code Example (Continued)

if (strncmp(cntrl_name, wd_arg->name, (ptr - wd_arg->name)) != 0) { return (PICL_WALK_CONTINUE);

}

err = picl_get_propval_by_name(nodeh, PICL_PROP_CHILD, &childh, sizeof (picl_nodehdl_t));

if (err != PICL_SUCCESS)

return (PICL_WALK_TERMINATE);

ptr++; /* this points to watchdog node name */ if (ptr == NULL) {

(void) fprintf(stderr, "%s:Node not found:%d\n", prog, picl2errno(PICL_NODENOTFOUND));

return (PICL_WALK_TERMINATE);

}

/* traverse thru the list of timers under this controller */ peerh = childh;

do

{

/* get the name of watchdog node */

err = picl_get_propval_by_name(peerh, PICL_PROP_NAME, (void *)wd_name, PICL_PROPNAMELEN_MAX);

if (err != PICL_SUCCESS) { print_errmsg(gettext(err_msg[EM_GETPVALBYNAME]),

picl_strerror(err)); return (err);

}

/* This code segment changes the watchdog timeout and action */ if (strcmp(ptr, wd_name) == 0) {

if ((err = wdadm_get_picl_prop(peerh, WATCHDOG_STATUS, (void **)&status)) != PICL_SUCCESS) {

(void) free(status); return (err);

}

if (strcmp(status, WATCHDOG_DISARMED) != 0) { (void) fprintf(stderr, "%s: Timer is not "

"disarmed, cannot change the " "parameters\n", prog);

(void) free(status); return (PICL_PERMDENIED);

}

(void) free(status);

/* set watchdog action */

14 Netra CP2500 Board Programming Guide • March 2007

Image 28
Contents Netra CP2500 Board Programming Guide Page Contents User Flash Figures Vi Netra CP2500 Board Programming Guide March Tables Viii Netra CP2500 Board Programming Guide March Code Samples Netra CP2500 Board Programming Guide March Preface How This Book Is OrganizedUsing Unix Commands Typographic ConventionsShell Prompts Related DocumentationThird-Party Web Sites Documentation, Support, and TrainingSun Welcomes Your Comments Watchdog Timer OverviewPicl Plug-In Module 1Watchdog Plug-In Interfaces for Netra CP2500 Board Software 2Properties Under watchdog-controllerNode3Properties Under watchdog-timerNode HEALTHY#Watchdog Node Management Code Code Example 1-1System Watchdog Node Management Code ExampleCode Example 1-1System Watchdog Node Management Code Example Usagestr Code Example 1-1System Watchdog Node Management Code Example Code Example 1-1System Watchdog Node Management Code Example Code Example 1-1System Watchdog Node Management Code Example Code Example 1-1System Watchdog Node Management Code Example Code Example 1-1System Watchdog Node Management Code Example Null Code Example 1-1System Watchdog Node Management Code Example Code Example 1-1System Watchdog Node Management Code Example Code Example 1-1System Watchdog Node Management Code Example Code Example 1-1System Watchdog Node Management Code Example Code Example 1-1System Watchdog Node Management Code Example Notreached Code Example 1-1System Watchdog Node Management Code Example OpenBoot Prom Interface Netra CP2500 Board Programming Guide March Environmental Monitoring Typical Environmental Monitoring System Application Environmental Monitoring Component Compatibility1Compatible Environmental Monitoring Components I2C Typical Cycle From Power Up to Shutdown Environmental Monitoring Protection at the OpenBoot PromPost Shutdown Recovery Hardware Environmental Monitoring Functions 3I2C ComponentsEnvironmental Monitoring CPU Switching Power On and Off Inlet, Exhaust, and CPU Temperature MonitoringNetra CP2500 Board Programming Guide March OpenBoot Prom Environmental Monitoring Critical Temperature Response at OpenBoot PromUsing the show-sensorsCommand at OpenBoot Prom Environmental Monitoring Application ProgrammingReading Temperature Sensor States Using 4PICL Temperature Sensor Class Node PropertiesUsing a Configuration File for Sensor Information Solaris Driver InterfaceSample Application Program Code Example 2-1Sample envmond Application ProgramCode Example 2-1Sample envmond Application Program Code Example 2-1Sample envmond Application Program Code Example 2-1Sample envmond Application Program Reading the CPU Temperature Environmental Limits Prtdiag command example5Description of Values Displayed by Solaris Commands User Flash User Flash Usage and ImplementationUser Flash Driver OpenBoot Prom Device Tree and Properties1User Flash Node Properties Application Programming Interface User Flash Device FilesInterface Header File 2System CallsStructures to Use in Ioctl Arguments Code Example 3-1PROM Information StructureExample Programs ErrorsCode Example 3-2User Flash Interface Structure Read Example Program Code Example 3-3Read Action on User Flash DeviceWrite Example Program Code Example 3-4Write Action on User Flash DeviceCode Example 3-4Write Action on User Flash Device Block Erase Example Program Code Example 3-5Block Erase Action on User Flash DeviceCode Example 3-5Block Erase Action on User Flash Device Sample User Flash Application Program Code Example 3-6Sample User Flash Application ProgramCode Example 3-6Sample User Flash Application Program Code Example 3-6Sample User Flash Application Program Code Example 3-6Sample User Flash Application Program Code Example 3-6Sample User Flash Application Program Code Example 3-6Sample User Flash Application Program Index PiclWatchdog-controller, 3 Watchdog-timer, 3