130 lines
2.6 KiB
YANG
130 lines
2.6 KiB
YANG
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.1";
|
|
|
|
revision "2018-11-21" {
|
|
description
|
|
"Add OpenConfig module metadata extensions.";
|
|
reference "0.1.1";
|
|
}
|
|
|
|
revision "2017-08-03" {
|
|
description
|
|
"Initial revision";
|
|
reference "0.1.0";
|
|
}
|
|
|
|
// OpenConfig specific extensions for module metadata.
|
|
oc-ext:regexp-posix;
|
|
oc-ext:catalog-organization "openconfig";
|
|
oc-ext:origin "openconfig";
|
|
|
|
// 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
|
|
|
|
}
|
|
|