blob: 46d9c7f947852af36a77d4a3cbd301d867be76bb [file] [log] [blame]
module openconfig-platform-linecard {
yang-version "1";
// namespace
namespace "http://openconfig.net/yang/platform/linecard";
prefix "oc-linecard";
import openconfig-platform { prefix oc-platform; }
import openconfig-platform-types { prefix oc-platform-types; }
import openconfig-extensions { prefix oc-ext; }
// meta
organization "OpenConfig working group";
contact
"OpenConfig working group
www.openconfig.net";
description
"This module defines data related to LINECARD components in
the openconfig-platform model";
oc-ext:openconfig-version "0.1.0";
revision "2017-08-03" {
description
"Initial revision";
reference "0.1.0";
}
// extension statements
// feature statements
// identity statements
// typedef statements
// grouping statements
grouping linecard-config {
description
"Configuration data for linecard components";
leaf power-admin-state {
type oc-platform-types:component-power-type;
default POWER_ENABLED;
description
"Enable or disable power to the linecard";
}
}
grouping linecard-state {
description
"Operational state data for linecard components";
leaf slot-id {
type string;
description
"Identifier for the slot or chassis position in which the
linecard is installed";
}
}
grouping linecard-top {
description
"Top-level grouping for linecard data";
container linecard {
description
"Top-level container for linecard data";
container config {
description
"Configuration data for linecards";
uses linecard-config;
}
container state {
config false;
description
"Operational state data for linecards";
uses linecard-config;
uses linecard-state;
}
}
}
// data definition statements
// augment statements
augment "/oc-platform:components/oc-platform:component" {
description
"Adding linecard data to physical inventory";
uses linecard-top {
when "current()/oc-platform:state/" +
"oc-platform:type = 'LINECARD'" {
description
"Augment is active when component is of type LINECARD";
}
}
}
// rpc statements
// notification statements
}