You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: doc/platform/brcm_pdk_pddf.md
+12-12Lines changed: 12 additions & 12 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -725,7 +725,7 @@ fan<idx>_fault
725
725
where idx represents the Fan index [1..32]
726
726
```
727
727
728
-
Since PDDF has been changed to support platform 2.0 APIs, general design considers all the FANs inside a fantray as seperate FANs. If a fantray consist of two fans, front and rear, JSON object for FAN not only provides the access details for the front fan but also for the rear fan.
728
+
Since PDDF has been changed to support platform 2.0 APIs, general design considers all the FANs inside a fantray as separate FANs. If a fantray consist of two fans, front and rear, JSON object for FAN not only provides the access details for the front fan but also for the rear fan.
729
729
730
730
##### 3.4.4.2 FAN JSON Design
731
731
FAN JSON is structured to include the access-data for all the supported SysFS attributes.
@@ -1108,7 +1108,7 @@ The SysFS paths should be given as per the PDDF I2C topology description and the
1108
1108
FPGA can be programmed as a I2C master controller. Some platforms use a FPGAPCIe card to control I2C devices and the communication with the CPU is by PCIe interface. PDDF supports a FPGAPCIe card by providing the following modules:
1109
1109
1110
1110
* FPGAPCIe Data Module:
1111
-
-Mange access data defined in JSON via SysFS interface
1111
+
-Manage access data defined in JSON via SysFS interface
1112
1112
- Populate data and trigger FPGAPCIe instantiation
1113
1113
* FPGAPCIe Driver Module:
1114
1114
- PCIe device instantiation
@@ -1122,7 +1122,7 @@ connected FPGA, vendors need to provide the FPGA driver.
1122
1122
1123
1123
##### 3.4.12.1 FPGAPCIe JSON Design
1124
1124
1125
-
FPGAPCIe JSON object follows PDDF I2C topology JSON object design concept. FPGAPCIE object is under i2c keyword becuase it is programmed as I2c buses to control I2C client devices.
1125
+
FPGAPCIe JSON object follows PDDF I2C topology JSON object design concept. FPGAPCIE object is under i2c keyword because it is programmed as I2c buses to control I2C client devices.
1126
1126
1127
1127
1128
1128
```
@@ -1616,7 +1616,7 @@ If this field exists, the device name is displayed using this field. Otherwise,
1616
1616
ipmitool and ipmiapi are two methods of getting ipmi data. ipmitool uses ipmitool command to get data from BMC while ipmiapi will use kernel ipmi interfaces to retrieve the data. ipmiapi will be implemented in the future.
1617
1617
1618
1618
> **attr_name**:
1619
-
The PDDF BMC JSON design has the pre-defined list of the attribute names which is platform independent. IPMI is an standardized interface specification, but the naming convention of ipmitool output is vendor specific. The pre-defined attribue name list provides the ability to use generic PDDF generic platform APIs to retrieve information for all platforms.
1619
+
The PDDF BMC JSON design has the pre-defined list of the attribute names which is platform independent. IPMI is an standardized interface specification, but the naming convention of ipmitool output is vendor specific. The pre-defined attribute name list provides the ability to use generic PDDF generic platform APIs to retrieve information for all platforms.
1620
1620
1621
1621
> **bmc_cmd**:
1622
1622
There are two types of cmds: raw ipmi request and non raw ipmi request. The list of available ipmitool commands can be found by
@@ -1857,7 +1857,7 @@ Example,
1857
1857
1858
1858
1859
1859
#### 3.7.3 LED Class
1860
-
There is no generic LED API class defined in PDDF. LED APIs related to a component has been made part of thats component's platform API class. System LED APIs are made part of PddfChassis class.
1860
+
There is no generic LED API class defined in PDDF. LED APIs related to a component has been made part of that component's platform API class. System LED APIs are made part of PddfChassis class.
1861
1861
```
1862
1862
class PddfChassis(ChassisBase):
1863
1863
def set_system_led(self, device_name, color):
@@ -2134,7 +2134,7 @@ root@sonic:/home/admin#
2134
2134
2135
2135
2136
2136
2137
-
> NOTE: Above output differs from the ouput in PDDF v1.0. This is because of the fact that FAN numbering scheme changed due to introduction of 2.0 platform APIs. Rear fans are now considered separate fans. In above output,
2137
+
> NOTE: Above output differs from the output in PDDF v1.0. This is because of the fact that FAN numbering scheme changed due to introduction of 2.0 platform APIs. Rear fans are now considered separate fans. In above output,
2138
2138
> Fantray1_1: Front fan of frantray1
2139
2139
> Fantray1_2: Rear fan of fantray1
2140
2140
@@ -2321,19 +2321,19 @@ S3IP sysfs specification defines a unified interface to access peripheral hardwa
2321
2321
2322
2322
- S3IP sysfs should be generated and could be removed on requirement
2323
2323
- Though S3IP can be clubbed with PDDF, PDDF should be independent of the S3IP
2324
-
- If any attribute which cannot be read should have a value of 'NA' i.e. tools should not fail due to non existance of the attribute
2324
+
- If any attribute which cannot be read should have a value of 'NA' i.e. tools should not fail due to non existence of the attribute
2325
2325
- S3IP sysfs should be able to work with the existing PDDF common driver sysfs
2326
2326
- PDDF common driver attributes should be expanded, if required, to cover the left out attributes from S3IP specifications
2327
2327
2328
2328
### 7.2 Implementation Details
2329
2329
2330
-
The S3IP specifications and framework are defined [here](https://github.com/sonic-net/SONiC/pull/1068). Both vendors and users are required to follow the S3IP spec. The platform vendors need to provide the implementation of the set/get attribute functions for the platforms which use S3IP sysfs framework. The attributes for each component are defined in the specificaitons. This effort is to combine the S3IP spec and PDDF framework. In other words, the platform which are using PDDF would be S3IP compliant too after this support is added.
2330
+
The S3IP specifications and framework are defined [here](https://github.com/sonic-net/SONiC/pull/1068). Both vendors and users are required to follow the S3IP spec. The platform vendors need to provide the implementation of the set/get attribute functions for the platforms which use S3IP sysfs framework. The attributes for each component are defined in the specifications. This effort is to combine the S3IP spec and PDDF framework. In other words, the platform which are using PDDF would be S3IP compliant too after this support is added.
2331
2331
2332
2332
#### 7.2.1 PDDF and S3IP SysFS
2333
2333
2334
2334
PDDF implements common kernel drivers for various components. These common drivers exposes a fixed set of sysfs attributes as per the HW support and current SONiC API requirements. Complying to S3IP spec requires the mapping of S3IP component attributes to PDDF exposed sysfs attributes and might even require adding new attributes to PDDF common driver code. Hence, S3IP spec sysfs attributes are divided into the following categories.
2335
2335
2336
-
- Platform Info Attributes: This includes the fixed information pertaining to the platform in entirity or any component. There is no need of reading this information from the component in run time. Further, these values will not change in the course of System running the SONiC image. Below are few examples of static info attributes.
2336
+
- Platform Info Attributes: This includes the fixed information pertaining to the platform in entirety or any component. There is no need of reading this information from the component in run time. Further, these values will not change in the course of System running the SONiC image. Below are few examples of static info attributes.
2337
2337
2338
2338
- /sys_switch/temp_sensor/number, /sys_switch/vol_sensor/number, /sys_switch/curr_sensor/number etc.
2339
2339
@@ -2355,7 +2355,7 @@ PDDF implements common kernel drivers for various components. These common drive
2355
2355
|-|-|-|-|
2356
2356
|/sys_switch/fan/fan[n]/status |RO| enum| Fan states are defined as follows:<br>0: not present<br>1: present and normal<br>2: present and abnormal
2357
2357
2358
-
- This is a combination of 'presence' and 'running_status' informations of a fan unit. In SONiC we can handle this in the platform APIs but S3IP compels to performs this processing inside the kernel modules. Hence if ODM extends the PDDF driver and provide the kernel implementation of such sysfs, we can create the mapping. Otherwise we will map it to 'NA'.
2358
+
- This is a combination of 'presence' and 'running_status' information of a fan unit. In SONiC we can handle this in the platform APIs but S3IP compels to performs this processing inside the kernel modules. Hence if ODM extends the PDDF driver and provide the kernel implementation of such sysfs, we can create the mapping. Otherwise we will map it to 'NA'.
2359
2359
2360
2360
#### 7.2.2 S3IP SysFS Creation and Mapping
2361
2361
@@ -2394,11 +2394,11 @@ If the S3IP sysfs is required on a PDDF platform, it can be represented using th
2394
2394
...
2395
2395
```
2396
2396
2397
-
This pddf-s3ip service would create the sysfs as per the standards. It will also take care of linking the appropriate PDDF sysfs with the corrosponding S3IP sysfs.
2397
+
This pddf-s3ip service would create the sysfs as per the standards. It will also take care of linking the appropriate PDDF sysfs with the corresponding S3IP sysfs.
2398
2398
2399
2399
In case the platform does not support some attributes present in the S3IP spec, 'NA' will be written to the attribute file so that the application does not fail.
2400
2400
2401
-
Once this is done, users can run their S3IP compliant applicaitons and test scripts on the platform.
2401
+
Once this is done, users can run their S3IP compliant applications and test scripts on the platform.
0 commit comments