On 4/2/2024 11:11 PM, Jeff Johnson wrote:
On 4/2/2024 2:32 AM, Karthikeyan Periyasamy wrote:
On 4/1/2024 10:24 PM, Jeff Johnson wrote:
On 3/28/2024 6:23 PM, Karthikeyan Periyasamy wrote:
Link capability categorized as Single Link Operation (SLO) and Multi Link
Operation (MLO).
* Intra-chip SLO/MLO refers to links present within a chip
* Inter-chip SLO/MLO refers to links present across multiple chips
Is "chip" the correct term?
I'm thinking that this should be called "device" since that is the unit of
hardware that is detected by a bus probe function and which is handled by a
*device* driver.
Doesn't this make more sense if the references to chip and SoC are changed to
device?
In the QMI, SLO/MLO parameter exposed as chip only not device. So
followed the same terminology to avoid confusion for code readability.
struct wlfw_host_mlo_chip_info_s_v01 {
u8 chip_id;
u8 num_local_links;
u8 hw_link_id[QMI_WLFW_MAX_NUM_MLO_LINKS_PER_CHIP_V01];
u8 valid_mlo_link_id[QMI_WLFW_MAX_NUM_MLO_LINKS_PER_CHIP_V01];
};
struct qmi_wlanfw_host_cap_req_msg_v01 {
...
u8 mlo_num_chips;
u8 mlo_chip_info_valid;
struct wlfw_host_mlo_chip_info_s_v01
mlo_chip_info[QMI_WLFW_MAX_NUM_MLO_CHIPS_V01];
...
}
Please don't let firmware interface naming drive host driver code naming.
And push back on the firmware team when they've introduced poor naming.
As many Software Engineering experts stress, naming is probably the single
most important thing we do. So we need to make sure we are using the correct
names for all of the software objects that comprise the driver, especially
with this multi-device MLO feature where we now have to represent a multitude
of individual devices as a single logical wiphy.
Lack of a single common term for each object in the architecture makes the
code far less maintainable.
Sure, will address this comment in the next version of the patch.
--
Karthikeyan Periyasamy
--
கார்த்திகேயன் பெரியசாமி