<div dir="ltr"><pre class="gmail-c-mrkdwn__pre" style="box-sizing:inherit;margin:4px 0px;padding:8px;font-size:12px;line-height:1.50001;font-variant-ligatures:none;white-space:pre-wrap;word-break:normal;font-family:Monaco,Menlo,Consolas,"Courier New",monospace;border-radius:4px;color:rgb(29,28,29);font-style:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:left;text-indent:0px;text-transform:none;word-spacing:0px;text-decoration-style:initial;text-decoration-color:initial">Hi All,<br><br><span class="gmail-c-mrkdwn__br" style="box-sizing:inherit;display:block;height:unset"></span>I would like to introduce a dbus model proposal around pay for access features.<span class="gmail-c-mrkdwn__br" style="box-sizing:inherit;display:block;height:unset"></span>Normally IBM system ships with more hardware than was purchased, which can be unlocked later.<br><br style="box-sizing:inherit">Features could be <span class="gmail-c-mrkdwn__br" style="box-sizing:inherit;display:block;height:unset"></span>1) AIX enabled/disabled  <br style="box-sizing:inherit">2) How many processors are enabled<br style="box-sizing:inherit">3) How much memory is enabled<br><br><span class="gmail-c-mrkdwn__br" style="box-sizing:inherit;display:block;height:unset"></span><b>Proposed Model:</b><br><br><span class="gmail-c-mrkdwn__br" style="box-sizing:inherit;display:block;height:unset"></span>The model consists of following main entities:<span class="gmail-c-mrkdwn__br" style="box-sizing:inherit;display:block;height:unset"></span>1 - licenses - these objects represents the features.  There will be a license represnting <br>feature(one is to one relation ship) and these objects have state - active, inactive, unknown, etc.<br style="box-sizing:inherit">These objects could implement the Delete interface for when a client wishes to disable the license/feature.<br><br><span class="gmail-c-mrkdwn__br" style="box-sizing:inherit;display:block;height:unset"></span><span class="gmail-c-mrkdwn__br" style="box-sizing:inherit;display:block;height:unset"></span>2 - manager - the manager object (distinct from freedesktop object manager) provides a method<br>interface to create new license objects.<br><br><span class="gmail-c-mrkdwn__br" style="box-sizing:inherit;display:block;height:unset"></span><b>Alternate Dbus Model:</b><br><br><span class="gmail-c-mrkdwn__br" style="box-sizing:inherit;display:block;height:unset"></span>1 - Licenses: these objects represent an agreement.  These objects have an<br style="box-sizing:inherit">association to one or more features, and these objects have state - active,inactive, unknown, etc.<br>These objects could implement the Delete interface for when a client wishes to disable the license.<br><br><span class="gmail-c-mrkdwn__br" style="box-sizing:inherit;display:block;height:unset"></span>2 - Features: these objects describe the features available.<br style="box-sizing:inherit">Feature objects would be static and implementation/platform defined.  A BMC or host firmware update <br>could potentially add or remove the available features exposed as dbus objects.  At the moment the <br>only feature attribute I can think of is a name and the feature status.<br><br><span class="gmail-c-mrkdwn__br" style="box-sizing:inherit;display:block;height:unset"></span>3 Manager - the manager object (distinct from freedesktop object manager)<br style="box-sizing:inherit">provides a method interface to create new license objects.<br><br><span class="gmail-c-mrkdwn__br" style="box-sizing:inherit;display:block;height:unset"></span><span class="gmail-c-mrkdwn__br" style="box-sizing:inherit;display:block;height:unset"></span>The difference between two models are<span class="gmail-c-mrkdwn__br" style="box-sizing:inherit;display:block;height:unset"></span>In the alternate Dbus model we are keeping the feature Dbus object and the License have an associated features<br style="box-sizing:inherit">In the proposed model we are only keeping the license D-bus object which represent the feature.<br><br><span class="gmail-c-mrkdwn__br" style="box-sizing:inherit;display:block;height:unset"></span><span class="gmail-c-mrkdwn__br" style="box-sizing:inherit;display:block;height:unset"></span>Flow would be as below with the proposed model -<span class="gmail-c-mrkdwn__br" style="box-sizing:inherit;display:block;height:unset"></span>1/ Manager object would be having interface like upload (License activation key)<br style="box-sizing:inherit">2/ On IBM systems we send this key to the host firmware which activates the features<br style="box-sizing:inherit">3/ Host Firmware sends the activated feature list to the BMC<br style="box-sizing:inherit">4/ BMC creates the licenses for the activated features<br><br><span class="gmail-c-mrkdwn__br" style="box-sizing:inherit;display:block;height:unset"></span><span class="gmail-c-mrkdwn__br" style="box-sizing:inherit;display:block;height:unset"></span>I suspect an implementation of the above flow is highly IBM specific, <br style="box-sizing:inherit">but I hope some of you have some feedback that might enable some collaboration.  <br style="box-sizing:inherit">If not - where should we put this application?<br></pre><pre class="gmail-c-mrkdwn__pre" style="box-sizing:inherit;margin:4px 0px;padding:8px;font-size:12px;line-height:1.50001;font-variant-ligatures:none;white-space:pre-wrap;word-break:normal;font-family:Monaco,Menlo,Consolas,"Courier New",monospace;border-radius:4px;color:rgb(29,28,29);font-style:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:left;text-indent:0px;text-transform:none;word-spacing:0px;text-decoration-style:initial;text-decoration-color:initial">Ratan<br></pre></div>