History log of /openbmc/phosphor-networkd/src/ (Results 1 – 25 of 300)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
a42a865104-Dec-2024 Jeremy Kerr <jk@codeconstruct.com.au>

ncsi-cmd: mctp: Add a simple IID allocator for NCSI commands

Currently, we just use a fixed IID of zero for NCSI commands. However,
DSP0222 has a requirement that the IID of a command should not mat

ncsi-cmd: mctp: Add a simple IID allocator for NCSI commands

Currently, we just use a fixed IID of zero for NCSI commands. However,
DSP0222 has a requirement that the IID of a command should not match
that of a previously-issued command.

So, implement a straightforward per-EID IID allocator, which will
persist the current IID over invocations of ncsi-cmd. We keep state in
/run/ncsi-mctp-iids, with an IID byte per possible MCTP EID.

Tested: on first usage against a specific EID, commands are issued with
IID 1, and subsequent commands use an incremented IID.

Signed-off-by: Jeremy Kerr <jk@codeconstruct.com.au>
Change-Id: Iafc942abe6253a2560997ee5392a04af4412dc2e

show more ...

ca9d867716-Sep-2024 Jeremy Kerr <jk@codeconstruct.com.au>

ncsi: Add a NCSI-over-MCTP transport

Add a facility for performing NCSI commands over a NCSI-over-MCTP
interface, alongside the existing Netlink transport.

This adds a new Interface subclass, MCTPI

ncsi: Add a NCSI-over-MCTP transport

Add a facility for performing NCSI commands over a NCSI-over-MCTP
interface, alongside the existing Netlink transport.

This adds a new Interface subclass, MCTPInterface, which performs the
MCTP encapsulation/decapsulation, over an AF_MCTP socket.

Tested: able to perform NCSI commands over a MCTP link, to both emulated
and hardware NIC devices. The -m argument can now target a NIC using
MCTP.

For example, sending a raw command to perform a Get Version ID (type
0x15):

root@bmc:~# ncsi-cmd -m 9 --package 0 raw 0x15
<7> Command: type 0x15, payload 0 bytes:
<7> Response 60 bytes: 00 01 00 2b 95 [...]

Change-Id: I9a7bfddfc4fd1b5bb8d0bff187936a0258d3dade
Signed-off-by: Jeremy Kerr <jk@codeconstruct.com.au>

show more ...

0963c4b706-Mar-2025 Jeremy Kerr <jk@codeconstruct.com.au>

ncsi-netlink: ncsi-cmd fallback: move -c argument before operation

If a channel argument was used for ncsi-netlink, and we're falling-back
to the ncsi-cmd wrapper, we will place the "-c" argument af

ncsi-netlink: ncsi-cmd fallback: move -c argument before operation

If a channel argument was used for ncsi-netlink, and we're falling-back
to the ncsi-cmd wrapper, we will place the "-c" argument after the "raw"
command:

```
root@p10bmc:~# strace -e trace=execve ncsi-netlink -x 2 -p 0 -c 0 -o 5000000157200001
execve("/usr/bin/ncsi-netlink", ["ncsi-netlink", "-x", "2", "-p", "0", "-c", "0", "-o", "5000000157200001"], 0x7e98acc8 /* 20 vars */) = 0
<7> ncsi-netlink [..] -o is deprecated by ncsi-cmd
execve("/usr/local/bin/ncsi-cmd", ["ncsi-cmd", "-i", "2", "-p", "0", "raw", "-c", "0", "50", "00000157200001"], 0x7e945ccc /* 20 vars */) = -1 ENOENT (No such file or directory)
execve("/usr/bin/ncsi-cmd", ["ncsi-cmd", "-i", "2", "-p", "0", "raw", "-c", "0", "50", "00000157200001"], 0x7e945ccc /* 20 vars */) = 0
Invalid command type value
+++ exited with 1 +++
```

Instead, move the "raw" argument out of the initial list, and add it
once we have processed the channel.

Tested: we can now call the ncsi-netlink wrapper with -c:

```
root@p10bmc:~# strace -e trace=execve ncsi-netlink -x 2 -p 0 -c 0 -o 5000000157200001
execve("/usr/bin/ncsi-netlink", ["ncsi-netlink", "-x", "2", "-p", "0", "-c", "0", "-o", "5000000157200001"], 0x7e80fcd8 /* 19 vars */) = 0
<7> ncsi-netlink [..] -o is deprecated by ncsi-cmd
execve("/usr/local/bin/ncsi-cmd", ["ncsi-cmd", "-i", "2", "-p", "0", "-c", "0", "raw", "50", "00000157200001"], 0x7ef61cec /* 19 vars */) = -1 ENOENT (No such file or directory)
execve("/usr/bin/ncsi-cmd", ["ncsi-cmd", "-i", "2", "-p", "0", "-c", "0", "raw", "50", "00000157200001"], 0x7ef61cec /* 19 vars */) = 0
```

Which results in the OEM NCSI command being transmitted:

```
07:04:12 [TRACE] rx: NcsiPacket { mc: 0, iid: 29, type: Unknown (50), chan: p0c00, flags: 00, payload: 7: [00, 00, 01, 57, 20, 00, 01] }
```

Reported-by: George Keishing <gkeishin@gmail.com>
Fixes: bad17c0 ("ncsi-cmd: Add a new executable for issuing NCSI commands")
Change-Id: I196ec1b52d34e6b260e9696e4bd1e7c7482a6402
Signed-off-by: Jeremy Kerr <jk@codeconstruct.com.au>

show more ...

297a63b403-Mar-2025 Patrick Williams <patrick@stwcx.xyz>

meson: reformat with meson formatter

Apply the `meson format` results.

Change-Id: Id6689611fac6b9b90d1ed3539fee57506412843c
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>

bad17c0b21-Nov-2024 Jeremy Kerr <jk@codeconstruct.com.au>

ncsi-cmd: Add a new executable for issuing NCSI commands

At the moment, the ncsi-netlink utility does two things:

- allows management of the kernel NCSI state, such as the channel and
package m

ncsi-cmd: Add a new executable for issuing NCSI commands

At the moment, the ncsi-netlink utility does two things:

- allows management of the kernel NCSI state, such as the channel and
package masks

- allows issuing NCSI messages to the NCSI-capable NIC, through the
NCSI_CMD_SEND_CMD interface

While these two things do share the same kernel API, they have somewhat
different objectives: one is controlling local state, the other is
controlling remote (ie, the NIC) state.

In future, we want to allow non-netlink-based NCSI transports for
issuing commands to the NIC, which makes the ncsi-netlink name somewhat
inaccurate for those.

So, introduce a new tool, 'ncsi-cmd', for issuing NCSI commands over the
netlink interface.

This has similar command-line semantics to the existing
'ncsi-netlink [...] -o <PAYLOAD>' usage, but has a few changes for a
more ergonomic UI:

Firstly, the type (or "opcode") byte is no longer packed into the
payload data, because it's not really payload.

Secondly, we use --interface/-i rather than --index/-x, with a note that
interfaces are specified by index. This allows for future changes that
allow specifying interfaces by name.

Finally, to make it clear that we can issue more than just OEM
commands, we have separate subcommands: "oem" and "raw". These are
similar, just that "oem" implies the standard OEM type value of 0x50.
So, the following are equivalent:

ncsi-cmd -i2 -p0 oem 010203

ncsi-cmd -i2 -p0 raw 0x50 010203

But now we have a cleaner interface for not-OEM commands:

ncsi-cmd -i12 -p0 raw 0x15

For issuing command type 0x15, "Get Version ID".

We remove the send logic from ncsi-netlink, but leave a compatibility
shim that will exec() ncsi-cmd with the appropriate arguments instead.

Change-Id: Ied240db0d545d5770df0927da354c65b82ee9508
Signed-off-by: Jeremy Kerr <jk@codeconstruct.com.au>

show more ...

2d0b48da16-Sep-2024 Jeremy Kerr <jk@codeconstruct.com.au>

ncsi: make Interface virtual

Now that we have encapsulation for passing NCSI commands and responses
to/from an interface, we can make the Interface object virtual, and have
the Netlink implementatio

ncsi: make Interface virtual

Now that we have encapsulation for passing NCSI commands and responses
to/from an interface, we can make the Interface object virtual, and have
the Netlink implementation as a subclass.

We keep the netlink-specific operations in NetlinkInterface; getInfo(),
setChannel(), clearInterface(), and the channel/package mask operations
are all netlink-specific items to control kernel state.

Change-Id: I30b9cec41712d2e32d12685dd8406e08c6dea1f0
Signed-off-by: Jeremy Kerr <jk@codeconstruct.com.au>

show more ...

b788524a15-Sep-2024 Jeremy Kerr <jk@codeconstruct.com.au>

ncsi: encapsulate NC-SI commands with NCSICommand / NCSIResponse structs

... and rename Interface::sendOemCommand to Interface::sendCommand.

This provides a more clear facility to pass command and

ncsi: encapsulate NC-SI commands with NCSICommand / NCSIResponse structs

... and rename Interface::sendOemCommand to Interface::sendCommand.

This provides a more clear facility to pass command and response objects
around, for future command and transport implementations.

Change-Id: I46e594ab6467ed87cfc27189c3ec4bd321726ee5
Signed-off-by: Jeremy Kerr <jk@codeconstruct.com.au>

show more ...

3f34ff6a12-Sep-2024 Jeremy Kerr <jk@codeconstruct.com.au>

ncsi_util: rename Command to NetlinkCommand

The Command class represents an operation to be performed over the
netlink interface, rather than an NSCI command. We'll want to introduce
a representatio

ncsi_util: rename Command to NetlinkCommand

The Command class represents an operation to be performed over the
netlink interface, rather than an NSCI command. We'll want to introduce
a representation for NCSI commands soon, so rename to clarify.

In doing so, split the command constructors from the applyCmd
invocations.

Change-Id: Ida9efefbd155468cb7722783dec1fbfeb6a4d1bb
Signed-off-by: Jeremy Kerr <jk@codeconstruct.com.au>

show more ...

147086d027-Aug-2024 Jeremy Kerr <jk@codeconstruct.com.au>

ncsi: return command response from sendOemCommand

Rather than expecting the response to be handled from the command
callback, return it as the return value from sendOemCommand().

This addresses the

ncsi: return command response from sendOemCommand

Rather than expecting the response to be handled from the command
callback, return it as the return value from sendOemCommand().

This addresses the todo in the sendOemCommand implementation.

Change-Id: I144128f50341d4ff7d8e248cb4dfa1427ead515b
Signed-off-by: Jeremy Kerr <jk@codeconstruct.com.au>

show more ...

7f7c085e07-Aug-2024 Jeremy Kerr <jk@codeconstruct.com.au>

ncsi: return interface info from Interface::getInfo()

Rather than expecting the ncsi_util callback to print the interface
info, return the interface info, and print that.

This allows for a specific

ncsi: return interface info from Interface::getInfo()

Rather than expecting the ncsi_util callback to print the interface
info, return the interface info, and print that.

This allows for a specific output formatting function in
ncsi_netlink_main.c, rather than printing directly from the libnl
callback. We reformat for a more structured display of the
package/channel layouts.

We use std::optional for the return value here; it would be nice to use
std::expected instead, and get a full error code, but that's not quite
working with clang-18 at present. Even if we have an error code though,
we're just going to return EXIT_FAILURE anyway.

Tested: Invoked on a simlated dual-channel NCSI package:

# ncsi-netlink -x 2 --info
<7> Get Info , PACKAGE : 0xffffffffffffffff, INTERFACE: 0x7e8bf9bc
<7> Package id : 0
<7> package is forced
<7> Channel id : 0
<7> version 1.2 (p0c00)
<7> link state 0x40022f
<7> Channel id : 1
<7> version 1.2 (p0c01)
<7> link state 0x40022f

Change-Id: Idb62cc6695da67f4415ed9b0e7950c506018d630
Signed-off-by: Jeremy Kerr <jk@codeconstruct.com.au>

show more ...

67b159a801-Aug-2024 Jeremy Kerr <jk@codeconstruct.com.au>

ncsi: set a default callback if none is provided

If applyCmd is called once with a callback, and once without, the second
invocation will use the previous' function, which may no longer have
access

ncsi: set a default callback if none is provided

If applyCmd is called once with a callback, and once without, the second
invocation will use the previous' function, which may no longer have
access to valid data.

Instead, unconditionally call nl_socket_modify_cb, but with
NL_CB_DEFAULT if no function was provided.

Change-Id: I16bc81888f381bf002379d4021e4e8aea28db15c
Signed-off-by: Jeremy Kerr <jk@codeconstruct.com.au>

show more ...

bea6cdec01-Aug-2024 Jeremy Kerr <jk@codeconstruct.com.au>

ncsi: remove loop for netlink receive

Currently, we call nl_recmsg_default repeatedly, stopping when the
callback indicates by setting its context arg pointer to zero.

However, current callbacks al

ncsi: remove loop for netlink receive

Currently, we call nl_recmsg_default repeatedly, stopping when the
callback indicates by setting its context arg pointer to zero.

However, current callbacks all set the context immediately, so we would
only ever perform one iteration of the loop anyway.

Remove the loop and the context flag, and return NL_STOP on callback
invocation. In order to do this, we have to disable the auto-ACK
behavior, as the ACKs may arrive before the message respnonse, and
those will also cause a STOP

Tested: get info (as an example of kernel-handled NCSI control) and OEM
message (as an example of NIC-handled NCSI messaging) commands are
functional, using the kernel NCSI interface against a development NCSI
NIC implementation, including injection of AEN events between each
command/response operation.

Change-Id: I9e73bf61e095a17d7eaecc01e0883e343cd26744
Signed-off-by: Jeremy Kerr <jk@codeconstruct.com.au>

show more ...

bc22f81c29-Jul-2024 Jeremy Kerr <jk@codeconstruct.com.au>

ncsi: move ncsi operations to Interface class

The existing NCSI operations are quite Interface-specific (ie., rely on
netlink-specific constructs), so move these to methods on the Interface
class.

ncsi: move ncsi operations to Interface class

The existing NCSI operations are quite Interface-specific (ie., rely on
netlink-specific constructs), so move these to methods on the Interface
class.

We'll add alternative implementations in a future change.

Change-Id: I3ea5fcd64969a2c164503057e35881010ad141a0
Signed-off-by: Jeremy Kerr <jk@codeconstruct.com.au>

show more ...

8a76d89d26-Jul-2024 Jeremy Kerr <jk@codeconstruct.com.au>

ncsi: log interface types using to_string

Add a to_string() method for Interfaces, to handle printing via lg2.

Since we're printing the interface object, don't specify _INDEX on the
metadata, this

ncsi: log interface types using to_string

Add a to_string() method for Interfaces, to handle printing via lg2.

Since we're printing the interface object, don't specify _INDEX on the
metadata, this may not always be an index.

Also, interface indices are typically referred to as decimal. Use
decimal instead of a lg2::hex conversion.

Change-Id: I90b5fbac52adde3bbc3f2699087373ed96361083
Signed-off-by: Jeremy Kerr <jk@codeconstruct.com.au>

show more ...

8d9af02326-Jul-2024 Jeremy Kerr <jk@codeconstruct.com.au>

ncsi: Create Interface type to wrap a network interface instance

Define an interface as a new type, just containing the ifindex
currently.

This will allow future Interface implementations that don'

ncsi: Create Interface type to wrap a network interface instance

Define an interface as a new type, just containing the ifindex
currently.

This will allow future Interface implementations that don't interact
directly with a local Linux network interface.

Tested: "get info" (--info) and "send OEM command" (--oem-payload)
operations tested against kernel NCSI layer, to a test NC-SI device.

Change-Id: If0471ac3fa41e08bb916e9279d4fe5b668860b03
Signed-off-by: Jeremy Kerr <jk@codeconstruct.com.au>

show more ...

de8d666c31-Jul-2024 Jeremy Kerr <jk@codeconstruct.com.au>

ncsi: clarify "package" in error message

The current error message "Failed to parse package" is likely a
mis-worded reference to a "packet", but "message" would be the more
appropriate description f

ncsi: clarify "package" in error message

The current error message "Failed to parse package" is likely a
mis-worded reference to a "packet", but "message" would be the more
appropriate description for the data coming from netlink.

Use "message" instead to refer to parsing the netlink message from the
kernel.

Change-Id: I9a3d4df9f06403161d7eb248ac12f6698be5e04a
Signed-off-by: Jeremy Kerr <jk@codeconstruct.com.au>

show more ...

947454b811-Sep-2024 Chanh Nguyen <chanh@os.amperecomputing.com>

inventory_mac: skip updating MAC if firstboot file exists

If the sync-mac option is enabled and no firstboot file exists,
a dbus signal is registered to monitor changes from inventory manager,
the s

inventory_mac: skip updating MAC if firstboot file exists

If the sync-mac option is enabled and no firstboot file exists,
a dbus signal is registered to monitor changes from inventory manager,
the same as the force-sync-mac option works.

When MAC address is updated in the inventory manager, the MAC address
is synced to the Ethernet interface, and the firstboot file is created.
However, the signal monitor is still watching, and there is no code
to check the firstboot file again. This leads to the next MAC address
change being updated unexpectedly.

This commit adds more checks to the firstboot file to avoid this case.

Tested:
1. Add mapping in entity-manager to NetworkInterface inventory.
For example,
"xyz.openbmc_project.Inventory.Item.NetworkInterface": {
"MACAddress": "$BOARD_INFO_AM1"
},
2. Do factory reset the system and reboot BMC.
3. Check if the MAC address from FRU is synced for eth interface.
3. Edit MAC Address in FRU by "ipmitool fru edit" command.
Wait some seconds and check if eth still keeps old MAC Address.

Change-Id: I429267878b7b82b8deb0a1a362689a63687acf6e
Signed-off-by: Chanh Nguyen <chanh@os.amperecomputing.com>

show more ...

ab27a81902-May-2023 Ravi Teja <raviteja28031990@gmail.com>

Add network static gateway configuration support

This commit enables static gateway configuration on EthernetInterface
Implements CreateStaticGateway method which creates a new d-bus object
with Sta

Add network static gateway configuration support

This commit enables static gateway configuration on EthernetInterface
Implements CreateStaticGateway method which creates a new d-bus object
with StaticGateway interface.

Tested By:
Run StaticGateway D-bus method and verified D-bus object and
configuration.
Delete StaticGateway object
Add static gateway
Delete static gateway

Change-Id: I3fbc6f85ede00b6c1949a0ac85f501037a69c831
Signed-off-by: Ravi Teja <raviteja28031990@gmail.com>

show more ...

5a45606115-Feb-2024 Johnathan Mantey <johnathanx.mantey@intel.com>

Add Set Package and Channel Mask to ncsi-netlink utility

The NCSI driver has added two commands for setting the Package Mask
and the Channel Mask within a package. The ncsi-netlink utility does
not

Add Set Package and Channel Mask to ncsi-netlink utility

The NCSI driver has added two commands for setting the Package Mask
and the Channel Mask within a package. The ncsi-netlink utility does
not support these new commands.

Add the ability to set the package and the channel mask values.

Tested:
Instrumented the NCSI kernel driver to print mask values.
Issued 'ncsi-netlink -x 3 -j 0x3' and saw the NCSI driver print the
new package mask.
Issued 'ncsi-netlink -x 3 -p 0 -k 0x3' and saw the NCSI driver
print the new channel mask.

Change-Id: Icd2188e789de43f631fe26d9e751d564ba5f822f
Signed-off-by: Johnathan Mantey <johnathanx.mantey@intel.com>

show more ...

3865db2a27-Sep-2023 Johnathan Mantey <johnathanx.mantey@intel.com>

Replace originIsManuallyAssigned with inline test

The originIsManuallyAssigned function does not need to be present.

When automatic link local addresses are active, the conditional
compilation made

Replace originIsManuallyAssigned with inline test

The originIsManuallyAssigned function does not need to be present.

When automatic link local addresses are active, the conditional
compilation made sure to only test for addresses of 'static' origin.

When manual link local addresses are active, by definition the address
assignment is done using a IPSRC == static action. It is not possible
to use IPMI or Redfish to assert a "link local" flag. Thus all link
local addresses are merely statically assigned addresses. The
systemd-network stack asserts the link local scope based on the IP
address assigned.

Tested:
Enabled LINK_LOCAL_AUTOCONFIGURATION and used DHCP and static address
assignments.
When DHCPv4 is turned off, a link local address is assigned to the link.
With DHCPv4 turned on, the link local address is disabled.

Explicitly adding a static address inside the 169.254 address space
causes systemd to report the address scope to be link local.

Restoring DHCPv4 disables all link local addresses per IETF RFCs.

Manually disabled LINK_LOCAL_AUTOCONFIGURATION, as phosphor-network
does provide dynamic control.
Disabled DHCPv4 and confirmed there are no link local or DHCPv4
addresses.
Assigned a 169.254.x.x address w/o DHCPv4 or LinkLocalAddressing.
Confirmed a "scope link" address was reported via 'ip addr'.

Change-Id: I4d7e55dc3014b5b0acdd12bd8ac85ea650c13b9c
Signed-off-by: Johnathan Mantey <johnathanx.mantey@intel.com>

show more ...

8e3c1fbd12-Mar-2024 Johnathan Mantey <johnathanx.mantey@intel.com>

Use ActivationPolicy to enable/disable network interfaces

The systemd.network "Unmanaged" control, used to cause a network
interface to prevent a NIC from being configured by systemd is too
aggressi

Use ActivationPolicy to enable/disable network interfaces

The systemd.network "Unmanaged" control, used to cause a network
interface to prevent a NIC from being configured by systemd is too
aggressive. The goal is to control the IFF_UP/IFF_DOWN
state of the NIC.

The systemd-networkd developers, as part of discussions around
"Unmanaged", created an alternate control to perform the required
action. The control is called ActivationPolicy.

Switch from using Unmanaged to ActivationPolicy in order to manage
IFF_UP/IFF_DOWN conditions.

Tested:
The systemd-network.service initial state has no ActivationPolicy
entry. The default state is for ActivationPolicy to be enabled.

Issued a Redfish request:
PATCH :url/redfish/v1/Managers/bmc/EthernetInterfaces/eth1
{
"InterfaceEnabled": false
}
to assign "ActivationPolicy=down", and causing the link to stay down
until another request re-enables it. Confirmed the NIC is IFF_DOWN,
and the systemd.network configuration file contains
ActivationPolicy=down.

Sending another request to set InterfaceEanbled: "true" causes the
entry to be removed from the systemd.network file, and the NIC enters
the IFF_UP state.

Change-Id: I8b5bb4d30a1c7282494526169f65e0eda26e04cf
Signed-off-by: Johnathan Mantey <johnathanx.mantey@intel.com>

show more ...

871f163e21-Aug-2024 Patrick Williams <patrick@stwcx.xyz>

ibm: hypervisor-network-mgr: adjust includes and fwd declarations

clang-18 with C++23 complains as follows:

```
/usr/bin/../lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/unique_ptr.h:

ibm: hypervisor-network-mgr: adjust includes and fwd declarations

clang-18 with C++23 complains as follows:

```
/usr/bin/../lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/unique_ptr.h:97:16: error: invalid application of 'sizeof' to an incomplete type 'phosphor::network::HypSysConfig'
97 | static_assert(sizeof(_Tp)>0,
...
../src/ibm/hypervisor-network-mgr-src/hyp_network_manager.hpp:159:32: note: in instantiation of member function 'std::unique_ptr<phosphor::network::HypSysConfig>::~unique_ptr' requested here
159 | SystemConfPtr systemConf = nullptr;
```

Get rid of the forward declaration and adjust some of the include
directives to satisfy clang.

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: Id2ebe1f5f7fce4962c0e3ffdf04bcaa476772e9a

show more ...

ad20502816-Aug-2024 Patrick Williams <patrick@stwcx.xyz>

clang-format: re-format for clang-18

clang-format-18 isn't compatible with the clang-format-17 output, so we
need to reformat the code with the latest version. The way clang-18
handles lambda forma

clang-format: re-format for clang-18

clang-format-18 isn't compatible with the clang-format-17 output, so we
need to reformat the code with the latest version. The way clang-18
handles lambda formatting also changed, so we have made changes to the
organization default style format to better handle lambda formatting.

See I5e08687e696dd240402a2780158664b7113def0e for updated style.
See Iea0776aaa7edd483fa395e23de25ebf5a6288f71 for clang-18 enablement.

Change-Id: I335e0c726360eaae85b9b54c16b5dcbe4a3f182e
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>

show more ...

1ebea28c15-Feb-2024 Johnathan Mantey <johnathanx.mantey@intel.com>

Make Send Command feature more flexible

The sendOemCommand command, used to send NCSI_CMD_SEND_CMD payloads,
is hardcoded to only send one command.

Update the sendOemCommand function to allow the s

Make Send Command feature more flexible

The sendOemCommand command, used to send NCSI_CMD_SEND_CMD payloads,
is hardcoded to only send one command.

Update the sendOemCommand function to allow the sub-operation to be
passed as a command line argument. This is done by prepending the
sub-operation byte to the front of the Send Cmd payload.

Doing this allows sub-operations without any payload bytes to be
called. For example "-o 0a", where the sub-operation for Send Cmd is
the 0x0a value.

Tested:
Sent 'ncsi-netlink -x 3 -p 0 -c 0 -o 50000001572100' and confirmed
the 0x50 byte worked the same way as the original hard-coded value.
Sent 'ncsi-netlink -x 3 -p 0 -c 0 -o 0a' and confirmed the 0x0a
sub-operation functioned on the submitters SUT.

Change-Id: I20f093fd8296f549fce03dc5729b8e5fedcab313
Signed-off-by: Johnathan Mantey <johnathanx.mantey@intel.com>

show more ...

d92826d217-Jun-2024 Manojkiran Eda <manojkiran.eda@gmail.com>

Fix spelling mistakes using codespell

This commit corrects various spelling mistakes throughout the
repository. The corrections were made automatically using `codespell`[1]
tool.

[1]: https://githu

Fix spelling mistakes using codespell

This commit corrects various spelling mistakes throughout the
repository. The corrections were made automatically using `codespell`[1]
tool.

[1]: https://github.com/codespell-project/codespell

Change-Id: I169e5e1674cfda3599ea585ca3fd7afcfed601c0
Signed-off-by: Manojkiran Eda <manojkiran.eda@gmail.com>

show more ...

12345678910>>...12