<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/drivers/net/ethernet/microchip/vcap/vcap_api.c, branch linux-6.2.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.</subtitle>
<id>https://universe.0xinfinity.dev/distro/kernel/atom?h=linux-6.2.y</id>
<link rel='self' href='https://universe.0xinfinity.dev/distro/kernel/atom?h=linux-6.2.y'/>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/'/>
<updated>2022-12-07T04:38:57Z</updated>
<entry>
<title>net: microchip: vcap: Remove unneeded semicolons</title>
<updated>2022-12-07T04:38:57Z</updated>
<author>
<name>zhang songyi</name>
<email>zhang.songyi@zte.com.cn</email>
</author>
<published>2022-12-05T06:22:15Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=e3bd74c3d1907360a37f49a0cdf02daa2983ff53'/>
<id>urn:sha1:e3bd74c3d1907360a37f49a0cdf02daa2983ff53</id>
<content type='text'>
Semicolons after "}" are not needed.

Signed-off-by: zhang songyi &lt;zhang.songyi@zte.com.cn&gt;
Reviewed-by: Jiri Pirko &lt;jiri@nvidia.com&gt;
Link: https://lore.kernel.org/r/202212051422158113766@zte.com.cn
Signed-off-by: Jakub Kicinski &lt;kuba@kernel.org&gt;
</content>
</entry>
<entry>
<title>net: microchip: vcap: Add vcap_rule_get_key_u32</title>
<updated>2022-12-06T12:26:43Z</updated>
<author>
<name>Horatiu Vultur</name>
<email>horatiu.vultur@microchip.com</email>
</author>
<published>2022-12-03T10:43:47Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=6009b61f80e0b87b06f56a9bf16a32b6f562f822'/>
<id>urn:sha1:6009b61f80e0b87b06f56a9bf16a32b6f562f822</id>
<content type='text'>
Add the function vcap_rule_get_key_u32 which allows to get the value and
the mask of a key that exist on the rule. If the key doesn't exist,
it would return error.

Signed-off-by: Horatiu Vultur &lt;horatiu.vultur@microchip.com&gt;
Signed-off-by: Paolo Abeni &lt;pabeni@redhat.com&gt;
</content>
</entry>
<entry>
<title>net: microchip: vcap: Add vcap_mod_rule</title>
<updated>2022-12-06T12:26:43Z</updated>
<author>
<name>Horatiu Vultur</name>
<email>horatiu.vultur@microchip.com</email>
</author>
<published>2022-12-03T10:43:46Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=2662b3f93d2617719e68bbb1031491461afa2812'/>
<id>urn:sha1:2662b3f93d2617719e68bbb1031491461afa2812</id>
<content type='text'>
Add the function vcap_mod_rule which allows to update an existing rule
in the vcap. It is required for the rule to exist in the vcap to be able
to modify it.

Signed-off-by: Horatiu Vultur &lt;horatiu.vultur@microchip.com&gt;
Signed-off-by: Paolo Abeni &lt;pabeni@redhat.com&gt;
</content>
</entry>
<entry>
<title>net: microchip: vcap: Add vcap_get_rule</title>
<updated>2022-12-06T12:26:43Z</updated>
<author>
<name>Horatiu Vultur</name>
<email>horatiu.vultur@microchip.com</email>
</author>
<published>2022-12-03T10:43:45Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=610c32b2ce66d4aaa07b3a77a709bd4d2b268bb1'/>
<id>urn:sha1:610c32b2ce66d4aaa07b3a77a709bd4d2b268bb1</id>
<content type='text'>
Add function vcap_get_rule which returns a rule based on the internal
rule id.
The entire functionality of reading and decoding the rule from the VCAP
was inside vcap_api_debugfs file. So move the entire implementation in
vcap_api as this is used also by vcap_get_rule.

Signed-off-by: Horatiu Vultur &lt;horatiu.vultur@microchip.com&gt;
Signed-off-by: Paolo Abeni &lt;pabeni@redhat.com&gt;
</content>
</entry>
<entry>
<title>net: microchip: vcap: Change how the rule id is generated</title>
<updated>2022-12-01T04:46:13Z</updated>
<author>
<name>Horatiu Vultur</name>
<email>horatiu.vultur@microchip.com</email>
</author>
<published>2022-11-28T14:29:59Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=c1d8e3fb1a3bef6d1b24a9b1326e4ed11a1fbf0b'/>
<id>urn:sha1:c1d8e3fb1a3bef6d1b24a9b1326e4ed11a1fbf0b</id>
<content type='text'>
Currently whenever a new rule id is generated, it picks up the next
number bigger than previous id. So it would always be 1, 2, 3, etc.
When the rule with id 1 will be deleted and a new rule will be added,
it will have the id 4 and not id 1.
In theory this can be a problem if at some point a rule will be added
and removed ~0 times. Then no more rules can be added because there
are no more ids.

Change this such that when a new rule is added, search for an empty
rule id starting with value of 1 as value 0 is reserved.

Fixes: c9da1ac1c212 ("net: microchip: sparx5: Adding initial tc flower support for VCAP API")
Signed-off-by: Horatiu Vultur &lt;horatiu.vultur@microchip.com&gt;
Link: https://lore.kernel.org/r/20221128142959.8325-1-horatiu.vultur@microchip.com
Signed-off-by: Jakub Kicinski &lt;kuba@kernel.org&gt;
</content>
</entry>
<entry>
<title>net: microchip: vcap: Implement w32be</title>
<updated>2022-11-29T12:08:23Z</updated>
<author>
<name>Horatiu Vultur</name>
<email>horatiu.vultur@microchip.com</email>
</author>
<published>2022-11-25T09:50:10Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=4f141e3671233c29c973a3245f1f360d62b3c8eb'/>
<id>urn:sha1:4f141e3671233c29c973a3245f1f360d62b3c8eb</id>
<content type='text'>
On lan966x the layout of the vcap memory is different than on sparx5.

Signed-off-by: Horatiu Vultur &lt;horatiu.vultur@microchip.com&gt;
Signed-off-by: Paolo Abeni &lt;pabeni@redhat.com&gt;
</content>
</entry>
<entry>
<title>net: microchip: sparx5: Support for copying and modifying rules in the API</title>
<updated>2022-11-25T09:42:13Z</updated>
<author>
<name>Steen Hegelund</name>
<email>steen.hegelund@microchip.com</email>
</author>
<published>2022-11-23T15:25:42Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=465a38a269e93855393a217fb6a74de1e59767b8'/>
<id>urn:sha1:465a38a269e93855393a217fb6a74de1e59767b8</id>
<content type='text'>
This adds support for making a copy of a rule and modify keys and actions
to differentiate the copy.

Signed-off-by: Steen Hegelund &lt;steen.hegelund@microchip.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>net: microchip: sparx5: Add VCAP locking to protect rules</title>
<updated>2022-11-21T11:33:02Z</updated>
<author>
<name>Steen Hegelund</name>
<email>steen.hegelund@microchip.com</email>
</author>
<published>2022-11-17T21:31:13Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=71c9de995260222e739020104d477af4775a6d26'/>
<id>urn:sha1:71c9de995260222e739020104d477af4775a6d26</id>
<content type='text'>
This ensures that the VCAP cache and the lists maintained in the VCAP
instance is protected when accessed by different clients.

Signed-off-by: Steen Hegelund &lt;steen.hegelund@microchip.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>net: microchip: sparx5: Add VCAP debugFS key/action support for the VCAP API</title>
<updated>2022-11-21T11:33:02Z</updated>
<author>
<name>Steen Hegelund</name>
<email>steen.hegelund@microchip.com</email>
</author>
<published>2022-11-17T21:31:12Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=72d84dd609bea135f823e8d1a60380b4aa443ee5'/>
<id>urn:sha1:72d84dd609bea135f823e8d1a60380b4aa443ee5</id>
<content type='text'>
This add support for displaying the keys and actions in a rule.
The keys and action display format will be determined by the size and the
type of the key or action. The longer keys will typically be displayed as a
hexadecimal byte array.

The actionset is not decoded in full as the Sparx5 IS2 only has one
supported action, so this will be added later with other VCAP types.

Signed-off-by: Steen Hegelund &lt;steen.hegelund@microchip.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>net: microchip: sparx5: Add VCAP rule debugFS support for the VCAP API</title>
<updated>2022-11-21T11:33:02Z</updated>
<author>
<name>Steen Hegelund</name>
<email>steen.hegelund@microchip.com</email>
</author>
<published>2022-11-17T21:31:11Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=3a7921560d2fd38433fdb2e9b8728ab832880680'/>
<id>urn:sha1:3a7921560d2fd38433fdb2e9b8728ab832880680</id>
<content type='text'>
This add support to show all rules in a VCAP instance. The information
shown is:

 - rule id
 - address range
 - size
 - chain id
 - keyset name, subword size, register span
 - actionset name, subword size, register span
 - counter value
 - sticky bit (one bit width counter)

Signed-off-by: Steen Hegelund &lt;steen.hegelund@microchip.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
</feed>
