DPDK patches and discussions
 help / color / mirror / Atom feed
From: Ferruh Yigit <ferruh.yigit@xilinx.com>
To: Rahul Lakkireddy <rahul.lakkireddy@chelsio.com>
Cc: <dev@dpdk.org>
Subject: Re: [PATCH v2] net/cxgbe: read firmware configuration file from filesystem
Date: Mon, 16 May 2022 15:05:32 +0100	[thread overview]
Message-ID: <e2c453ab-963b-0d9c-9e38-c5d67259a95b@xilinx.com> (raw)
In-Reply-To: <YoI71RywZadDrR3Z@chelsio.com>

On 5/16/2022 12:56 PM, Rahul Lakkireddy wrote:
> On Monday, May 05/16/22, 2022 at 12:06:01 +0100, Ferruh Yigit wrote:
>> On 5/16/2022 11:27 AM, Rahul Lakkireddy wrote:
>>> Add support to read firmware configuration file from
>>> /lib/firmware/cxgb4/ path in the filesystem. The firmware
>>> config file is used to enable or disable NIC features before
>>> firmware initialization to help retrieve better debug data to
>>> analyze firmware init failures. The config file can also
>>> be used to redistribute resources, like queues, TCAMs, etc.,
>>> from disabled physical functions (PFs) to main PF, before
>>> firmware init.
>>
>> Hi Rahul,
>>
>> Please find comments below.
>>
>> Also can you please send a new version for both 4/5 and 5/5 (this patch)
>> from original series?
>>
> 
> I had already posted v2 for 4/5 from original series at below location.
> 
> https://patches.dpdk.org/project/dpdk/patch/61ae717665c2f4e38712652bec2f9d0fe5ca7d32.1651842841.git.rahul.lakkireddy@chelsio.com/
> 
> Do you want me to send a new patch series with 4/5 and 5/5 in a
> single patch series?
> 

Nope, I missed above patch, it is good as separate patches.

>>>
>>> Signed-off-by: Rahul Lakkireddy <rahul.lakkireddy@chelsio.com>
>>> ---
>>> v2:
>>> - Update cxgbe pmd doc about the firmware config file
>>> - Update commit message to explain more about firmware config file
>>>
>>>    doc/guides/nics/cxgbe.rst               |  28 ++
>>>    drivers/net/cxgbe/base/t4fw_interface.h |   1 +
>>>    drivers/net/cxgbe/cxgbe_main.c          | 329 ++++++++++++++++--------
>>>    3 files changed, 245 insertions(+), 113 deletions(-)
>>>
>>> diff --git a/doc/guides/nics/cxgbe.rst b/doc/guides/nics/cxgbe.rst
>>> index a1d30c488b..fc8a5751f1 100644
>>> --- a/doc/guides/nics/cxgbe.rst
>>> +++ b/doc/guides/nics/cxgbe.rst
>>> @@ -838,3 +838,31 @@ to configure the mtu of all the ports with a single command.
>>>         testpmd> port stop all
>>>         testpmd> port config all max-pkt-len 9000
>>> +
>>> +Hardware Configuration and Debugging
>>> +------------------------------------
>>> +
>>> +Firmware Configuration File
>>> +~~~~~~~~~~~~~~~~~~~~~~~~~~~
>>> +
>>> +To enable or disable Chelsio NIC features before firmware initialization,
>>> +the Chelsio firmware configuration file can be placed in following
>>> +directory. The CXGBE PMD will search and pick up the firmware
>>> +configuration file during the Chelsio NIC probe, before initializing
>>> +the firmware.
>>> +
>>
>> Does it worth to mention what happens if the FW config file doesn't exist?
>> Or mention from FW config file load order, as you described in mail list, to
>> understand the relation with 'cxgbtool'?
>>
> 
> Will do.
> 
>>> +.. code-block:: console
>>> +
>>> +   cp <path_to_config_file>/t6-config.txt /lib/firmware/cxgb4/t6-config.txt
>>> +
>>
>> There is also 't5-config.txt' in the code.
>>
> 
> Yes, t5-config.txt is for Chelsio T5 NIC series and t6-config.txt
> is for Chelsio T6 NIC series. Will update t5-config.txt as well.
> 
>>> +The firmware configuration file is mainly intended to be used to debug
>>> +firmware initialization failures. It can also be used to redistribute
>>> +NIC resources from disabled physical functions (PFs) to main PF before
>>> +initializing firmware.
>>> +
>>> +.. warning::
>>> +
>>> +   Note that the Chelsio firmware configuration file contains very low
>>> +   level details that is specific to the Chelsio NIC. Hence, the
>>> +   firmware configuration file must not be modified without expert
>>> +   guidance from Chelsio support team.
>>
>> Will it be too much detail to document what config can be changed via this
>> FW config?
>>
> 
> Yes, this will be difficult to document. The config file just looks like
> register=value pairs and are often dependent on each other based on
> the selected configuration. A portion of sample config file is given
> below. I'm not sure how to document this kind of info.
> 
> [global]
>      reg[0x100c] = 0x22222222
>      reg[0x10a0] = 0x01040810
>      reg[0x1044] = 4096
>      reg[0x1048] = 65536
>      reg[0x104c] = 1536
>      reg[0x1050] = 9024
>      reg[0x1054] = 9216
>      reg[0x1058] = 2048
>      reg[0x105c] = 128
>      reg[0x1060] = 8192
>      reg[0x1064] = 16384
> [...]
> 

Above won't be much useful to user anyway (without description of the 
values), if there is already some documentation a link to that can be 
good, otherwise OK to skip this.


  reply	other threads:[~2022-05-16 14:05 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-04-18 22:24 [PATCH 0/5] net/cxgbe: updates and bug fixes Rahul Lakkireddy
2022-04-18 22:24 ` [PATCH 1/5] net/cxgbe: fill correct port info in mbufs for Rx Rahul Lakkireddy
2022-04-18 22:24 ` [PATCH 2/5] net/cxgbe: fix Tx queue stuck with mbuf chain coalescing Rahul Lakkireddy
2022-04-18 22:24 ` [PATCH 3/5] net/cxgbe: simplify Rx payload buffer size posting Rahul Lakkireddy
2022-04-18 22:24 ` [PATCH 4/5] net/cxgbe: track packets dropped by TP due to congestion Rahul Lakkireddy
2022-05-05 16:28   ` Ferruh Yigit
2022-05-06 11:09     ` Rahul Lakkireddy
2022-05-06 12:32       ` Ferruh Yigit
2022-05-06 13:18   ` [PATCH v2] " Rahul Lakkireddy
2022-05-17 16:52     ` Ferruh Yigit
2022-04-18 22:24 ` [PATCH 5/5] net/cxgbe: read firmware configuration file from filesystem Rahul Lakkireddy
2022-05-05 16:29   ` Ferruh Yigit
2022-05-05 16:36     ` Ferruh Yigit
2022-05-06 11:36       ` Rahul Lakkireddy
2022-05-10  9:02         ` Thomas Monjalon
2022-05-10 14:11           ` Rahul Lakkireddy
2022-05-10 14:30             ` Thomas Monjalon
2022-05-10 15:05               ` Rahul Lakkireddy
2022-05-10 16:20                 ` Thomas Monjalon
2022-05-16 10:27   ` [PATCH v2] " Rahul Lakkireddy
2022-05-16 11:06     ` Ferruh Yigit
2022-05-16 11:56       ` Rahul Lakkireddy
2022-05-16 14:05         ` Ferruh Yigit [this message]
2022-05-16 19:34     ` [PATCH v3] " Rahul Lakkireddy
2022-05-17 16:52       ` Ferruh Yigit
2022-05-05 16:29 ` [PATCH 0/5] net/cxgbe: updates and bug fixes Ferruh Yigit

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=e2c453ab-963b-0d9c-9e38-c5d67259a95b@xilinx.com \
    --to=ferruh.yigit@xilinx.com \
    --cc=dev@dpdk.org \
    --cc=rahul.lakkireddy@chelsio.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).