i2c-vr: xdpe1x2xx fix CRLF type handling issue

1.Neglecting file format problem, image files using Windows will use
CRLF. Therefore, if a file has 39 valid characters on a line, adding
CRLF will reach 41.
Therefore, this should support both CRLF and LF.

Tested on the Yosemite5 platform.

```
$target=$(curl -k ${creds} --silent -X GET https://${bmc}/redfish/v1/UpdateService/FirmwareInventory/ | jq -r '.Members[] | select(.["@odata.id"] | contains("MB_VR_CPU0")) | .["@odata.id"]')
$ curl -k ${creds} -X GET https://${bmc}${target}
{
  "@odata.id": "/redfish/v1/UpdateService/FirmwareInventory/Yosemite5_MB_VR_CPU0_4377",
  "@odata.type": "#SoftwareInventory.v1_1_0.SoftwareInventory",
  "Description": "Other image",
  "Id": "Yosemite5_MB_VR_CPU0_4377",
  "Name": "Software Inventory",
  "Status": {
    "Health": "OK",
    "HealthRollup": "OK",
    "State": "Enabled"
  },
  "Updateable": true,
  "Version": "3C7938BB"
$ fwpath="/media/leo/data/yv5/mb_vr_sni/yosemite5-mb-vr-cpu0-sni-1009-140B21B9.pldm"
$ curl -k ${creds}   -H "Content-Type:multipart/form-data"   -X POST   -F UpdateParameters="{\"Targets\":[\"${target}\"],\"@Redfish.OperationApplyTime\":\"OnReset\"};type=application/json"   -F "UpdateFile=@${fwpath};type=application/octet-stream" https://${bmc}/redfish/v1/UpdateService/update-multipart
{
  "@odata.id": "/redfish/v1/TaskService/Tasks/0",
  "@odata.type": "#Task.v1_4_3.Task",
  "HidePayload": false,
  "Id": "0",
  "Messages": [
    {
      "@odata.type": "#Message.v1_1_1.Message",
      "Message": "The task with Id '0' has started.",
      "MessageArgs": [
        "0"
      ],
      "MessageId": "TaskEvent.1.0.TaskStarted",
      "MessageSeverity": "OK",
      "Resolution": "None."
    }
  ],
  "Name": "Task 0",
  "Payload": {
    "HttpHeaders": [],
    "HttpOperation": "POST",
    "TargetUri": "/redfish/v1/UpdateService/update-multipart"
  },
  "PercentComplete": 0,
  "StartTime": "2025-11-06T11:20:49+00:00",
  "TaskMonitor": "/redfish/v1/TaskService/TaskMonitors/0",
  "TaskState": "Running",
  "TaskStatus": "OK"
}
$
$
============= ac cycle =============
$ target=$(curl -k ${creds} --silent -X GET https://${bmc}/redfish/v1/UpdateService/FirmwareInventory/ | jq -r '.Members[] | select(.["@odata.id"] | contains("MB_VR_CPU0")) | .["@odata.id"]')
$ curl -k ${creds} -X GET https://${bmc}${target}
{
  "@odata.id": "/redfish/v1/UpdateService/FirmwareInventory/Yosemite5_MB_VR_CPU0_5170",
  "@odata.type": "#SoftwareInventory.v1_1_0.SoftwareInventory",
  "Description": "Other image",
  "Id": "Yosemite5_MB_VR_CPU0_5170",
  "Name": "Software Inventory",
  "Status": {
    "Health": "OK",
    "HealthRollup": "OK",
    "State": "Enabled"
  },
  "Updateable": true,
  "Version": "140B21B9"
}
```

Change-Id: I4ea7e7bdd30903c62af92868e643f7f0812b1fdb
Signed-off-by: Leo Yang <Leo-Yang@quantatw.com>
1 file changed
tree: b4908b366841152979cbc0c9bf80d3b8afe3afab
  1. bios/
  2. bmc/
  3. common/
  4. cpld/
  5. eeprom-device/
  6. i2c-vr/
  7. subprojects/
  8. test/
  9. tpm/
  10. .clang-format
  11. .clang-tidy
  12. .gitignore
  13. .shellcheck
  14. LICENSE
  15. meson.build
  16. meson.options
  17. OWNERS
  18. README.md
README.md

phosphor-bmc-code-mgmt

Phosphor BMC Code Management provides a set of system software management applications. More information can be found at Software Architecture

To Build

To build this package, do the following steps:

  1. meson build
  2. ninja -C build

To clean the repository run rm -r build.