1# 2# CDDL HEADER START 3# 4# The contents of this file are subject to the terms of the 5# Common Development and Distribution License (the "License"). 6# You may not use this file except in compliance with the License. 7# 8# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9# or http://www.opensolaris.org/os/licensing. 10# See the License for the specific language governing permissions 11# and limitations under the License. 12# 13# When distributing Covered Code, include this CDDL HEADER in each 14# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15# If applicable, add the following below this CDDL HEADER, with the 16# fields enclosed by brackets "[]" replaced with your own identifying 17# information: Portions Copyright [yyyy] [name of copyright owner] 18# 19# CDDL HEADER END 20# 21# 22# Copyright 2007 Sun Microsystems, Inc. All rights reserved. 23# Use is subject to license terms. 24# 25#pragma ident "%Z%%M% %I% %E% SMI" 26# 27 28name="ppm" parent="pseudo" instance=0; 29 30# 31# ppm configuration format 32# 33# "ppm-domains" - in form of "domain_xxx" where "xxx" string highlights 34# the nature of the domain; 35# 36# "domain_xxx-model" - PM model: CPU 37# 38# "domain_xxx-propname" - a property name that is exported by device in 39# a domain. Currently, it is used by PCI_PROP model to identify devices 40# that are to have their clocks stopped when all power-manageable devices 41# in the domain are at D3 power level. 42# 43# "domain-xxx-devices" - a list of prom path match patterns to match devices 44# that fall into "domain_xxx", where wildcard '*' is allowed by observing 45# the following expectations: 46# . a single wildcard with exact match up to (but exclude) the wildcard 47# which then terminates the match pattern; 48# . a single wildcard that does not terminate a match pattern must 49# match driver name (followed by '@'); 50# . with two wildcard occurences, the first is to match driver name, 51# the second function id, as well as the last character of the match 52# pattern. 53# 54# "domain-xxx-ctrl" - blank space separated definitions in the form of 55# keyword=definition [keyword=definition...] 56# The keywords are as follows, where 'method' must come before mask as it 57# tells how to store 'mask' and 'val'. Missing 'val' defaults to 0. 58# 59# which keywords apply depends on cmd. There are two sets as shown below. 60# Here is the first: 61# cmd=[PCI_ON | PCI_OFF] 62# path=<prompath> - control device's prom pathname (includes minor) 63# method=[KIO|I2CKIO] This selects a method which may be 64# an ioctl that sets a single value or an i2c ioctl that 65# takes a value and a mask to access gpio register 66# iord=<integer> - value of ioctl command for reading 67# iowr=<integer> - value of ioctl command for writing 68# val=<integer> - a single integer value, generally the value to which 69# the relevant bits of a register will be set 70# mask=<integer> - which bits of val are relevant (if method is I2CKIO) 71# 72 73ppm-domains="domain_cpu"; 74domain_cpu-devices="/cpus/cpu@*"; 75domain_cpu-model="CPU"; 76