<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/drivers/soc/fsl/qe, branch linux-6.9.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.</subtitle>
<id>https://universe.0xinfinity.dev/distro/kernel/atom?h=linux-6.9.y</id>
<link rel='self' href='https://universe.0xinfinity.dev/distro/kernel/atom?h=linux-6.9.y'/>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/'/>
<updated>2023-12-12T09:29:20Z</updated>
<entry>
<title>soc: fsl: cpm1: qmc: Introduce functions to change timeslots at runtime</title>
<updated>2023-12-12T09:29:20Z</updated>
<author>
<name>Herve Codina</name>
<email>herve.codina@bootlin.com</email>
</author>
<published>2023-12-05T15:21:14Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=7a2ee1576dcc6bbe017a8283fba237b05b13fd15'/>
<id>urn:sha1:7a2ee1576dcc6bbe017a8283fba237b05b13fd15</id>
<content type='text'>
Introduce qmc_chan_{get,set}_ts_info() function to allow timeslots
modification at runtime.

The modification is provided using qmc_chan_set_ts_info() and will be
applied on next qmc_chan_start().
qmc_chan_set_ts_info() must be called with the channel rx and/or tx
stopped.

Signed-off-by: Herve Codina &lt;herve.codina@bootlin.com&gt;
Reviewed-by: Christophe Leroy &lt;christophe.leroy@csgroup.eu&gt;
Link: https://lore.kernel.org/r/20231205152116.122512-18-herve.codina@bootlin.com
</content>
</entry>
<entry>
<title>soc: fsl: cpm1: qmc: Remove timeslots handling from setup_chan()</title>
<updated>2023-12-12T09:29:20Z</updated>
<author>
<name>Herve Codina</name>
<email>herve.codina@bootlin.com</email>
</author>
<published>2023-12-05T15:21:13Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=0d75119d08448cb94583467c01adb212b0728502'/>
<id>urn:sha1:0d75119d08448cb94583467c01adb212b0728502</id>
<content type='text'>
Timeslots setting is done at channel start() and stop().
There is no more need to do that during setup_chan().

Simply remove timeslot setting from setup_chan().

Signed-off-by: Herve Codina &lt;herve.codina@bootlin.com&gt;
Reviewed-by: Christophe Leroy &lt;christophe.leroy@csgroup.eu&gt;
Link: https://lore.kernel.org/r/20231205152116.122512-17-herve.codina@bootlin.com
</content>
</entry>
<entry>
<title>soc: fsl: cpm1: qmc: Handle timeslot entries at channel start() and stop()</title>
<updated>2023-12-12T09:29:20Z</updated>
<author>
<name>Herve Codina</name>
<email>herve.codina@bootlin.com</email>
</author>
<published>2023-12-05T15:21:12Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=7cc9bda9c163877255a61a052987ce6b85da1263'/>
<id>urn:sha1:7cc9bda9c163877255a61a052987ce6b85da1263</id>
<content type='text'>
In order to support runtime timeslot route changes, enable the
channel timeslot entries at channel start() and disable them at
channel stop().

Signed-off-by: Herve Codina &lt;herve.codina@bootlin.com&gt;
Reviewed-by: Christophe Leroy &lt;christophe.leroy@csgroup.eu&gt;
Link: https://lore.kernel.org/r/20231205152116.122512-16-herve.codina@bootlin.com
</content>
</entry>
<entry>
<title>soc: fsl: cpm1: qmc: Introduce is_tsa_64rxtx flag</title>
<updated>2023-12-12T09:29:20Z</updated>
<author>
<name>Herve Codina</name>
<email>herve.codina@bootlin.com</email>
</author>
<published>2023-12-05T15:21:11Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=0e85feacc8156b230285040d82537c922cc15fe6'/>
<id>urn:sha1:0e85feacc8156b230285040d82537c922cc15fe6</id>
<content type='text'>
In order to support runtime timeslot route changes, some operations will
be different according the routing table used (common Rx and Tx table or
one table for Rx and one for Tx).

The is_tsa_64rxtx flag is introduced to avoid extra computation to
determine the table format each time we need it.
It is set once at initialization.

Signed-off-by: Herve Codina &lt;herve.codina@bootlin.com&gt;
Reviewed-by: Christophe Leroy &lt;christophe.leroy@csgroup.eu&gt;
Link: https://lore.kernel.org/r/20231205152116.122512-15-herve.codina@bootlin.com
</content>
</entry>
<entry>
<title>soc: fsl: cpm1: qmc: Split Tx and Rx TSA entries setup</title>
<updated>2023-12-12T09:29:20Z</updated>
<author>
<name>Herve Codina</name>
<email>herve.codina@bootlin.com</email>
</author>
<published>2023-12-05T15:21:10Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=32881b253c945ea1493abc18e25928808331f5df'/>
<id>urn:sha1:32881b253c945ea1493abc18e25928808331f5df</id>
<content type='text'>
The Tx and Rx entries for a given channel are set in one function.

In order to modify Rx entries and Tx entries independently of one other,
split this function in one for the Rx part and one for the Tx part.

Signed-off-by: Herve Codina &lt;herve.codina@bootlin.com&gt;
Reviewed-by: Christophe Leroy &lt;christophe.leroy@csgroup.eu&gt;
Link: https://lore.kernel.org/r/20231205152116.122512-14-herve.codina@bootlin.com
</content>
</entry>
<entry>
<title>soc: fsl: cpm1: qmc: Add support for disabling channel TSA entries</title>
<updated>2023-12-12T09:29:20Z</updated>
<author>
<name>Herve Codina</name>
<email>herve.codina@bootlin.com</email>
</author>
<published>2023-12-05T15:21:09Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=9217161115bfb76ae7b3b9e5a803f554a1c5e76a'/>
<id>urn:sha1:9217161115bfb76ae7b3b9e5a803f554a1c5e76a</id>
<content type='text'>
In order to allow runtime timeslot route changes, disabling channel TSA
entries needs to be supported.

Add support for this new feature.

Signed-off-by: Herve Codina &lt;herve.codina@bootlin.com&gt;
Reviewed-by: Christophe Leroy &lt;christophe.leroy@csgroup.eu&gt;
Link: https://lore.kernel.org/r/20231205152116.122512-13-herve.codina@bootlin.com
</content>
</entry>
<entry>
<title>soc: fsl: cpm1: qmc: Check available timeslots in qmc_check_chans()</title>
<updated>2023-12-12T09:29:20Z</updated>
<author>
<name>Herve Codina</name>
<email>herve.codina@bootlin.com</email>
</author>
<published>2023-12-05T15:21:08Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=f2deea16bf187ad6e1f2a7b0d2fd0b1a4db0b1b7'/>
<id>urn:sha1:f2deea16bf187ad6e1f2a7b0d2fd0b1a4db0b1b7</id>
<content type='text'>
The timeslots checked in qmc_check_chans() are the timeslots used.
With the introduction of the available timeslots, the used timeslots
are a subset of the available timeslots. The timeslots checked during
the qmc_check_chans() call should be the available ones.

Simply update and check the available timeslots instead of the used
timeslots in qmc_check_chans().

Signed-off-by: Herve Codina &lt;herve.codina@bootlin.com&gt;
Reviewed-by: Christophe Leroy &lt;christophe.leroy@csgroup.eu&gt;
Link: https://lore.kernel.org/r/20231205152116.122512-12-herve.codina@bootlin.com
</content>
</entry>
<entry>
<title>soc: fsl: cpm1: qmc: Remove no more needed checks from qmc_check_chans()</title>
<updated>2023-12-12T09:29:20Z</updated>
<author>
<name>Herve Codina</name>
<email>herve.codina@bootlin.com</email>
</author>
<published>2023-12-05T15:21:07Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=b1891c13645b67c9cd2c661a693b9b6b56b87e80'/>
<id>urn:sha1:b1891c13645b67c9cd2c661a693b9b6b56b87e80</id>
<content type='text'>
The newly introduced qmc_chan_setup_tsa* functions check that the
channel entries are not already used.
These checks are also performed by qmc_check_chans() and are no more
needed.

Remove them from qmc_check_chans().

Signed-off-by: Herve Codina &lt;herve.codina@bootlin.com&gt;
Reviewed-by: Christophe Leroy &lt;christophe.leroy@csgroup.eu&gt;
Link: https://lore.kernel.org/r/20231205152116.122512-11-herve.codina@bootlin.com
</content>
</entry>
<entry>
<title>soc: fsl: cpm1: qmc: Introduce qmc_chan_setup_tsa*</title>
<updated>2023-12-12T09:29:20Z</updated>
<author>
<name>Herve Codina</name>
<email>herve.codina@bootlin.com</email>
</author>
<published>2023-12-05T15:21:06Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=6f9b814d3765b2425da235570b1318c952142f1a'/>
<id>urn:sha1:6f9b814d3765b2425da235570b1318c952142f1a</id>
<content type='text'>
Introduce the qmc_chan_setup_tsa* functions to setup entries related
to the given channel.
Use them during QMC channels setup.

Signed-off-by: Herve Codina &lt;herve.codina@bootlin.com&gt;
Reviewed-by: Christophe Leroy &lt;christophe.leroy@csgroup.eu&gt;
Link: https://lore.kernel.org/r/20231205152116.122512-10-herve.codina@bootlin.com
</content>
</entry>
<entry>
<title>soc: fsl: cpm1: qmc: Rename qmc_setup_tsa* to qmc_init_tsa*</title>
<updated>2023-12-12T09:29:20Z</updated>
<author>
<name>Herve Codina</name>
<email>herve.codina@bootlin.com</email>
</author>
<published>2023-12-05T15:21:05Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=2d965e25fa4180988a1ef4f07803fa7a182a4ae5'/>
<id>urn:sha1:2d965e25fa4180988a1ef4f07803fa7a182a4ae5</id>
<content type='text'>
qmc_setup_tsa* are called once at initialisation.
They initialize the QMC TSA table.
In order to introduce setup function later on for dynamic timeslots
management, rename the function to avoid later confusion.

Signed-off-by: Herve Codina &lt;herve.codina@bootlin.com&gt;
Reviewed-by: Christophe Leroy &lt;christophe.leroy@csgroup.eu&gt;
Link: https://lore.kernel.org/r/20231205152116.122512-9-herve.codina@bootlin.com
</content>
</entry>
</feed>
