Commit Graph

7 Commits

Author SHA1 Message Date
Jeff Johnson
bdc8c47288 qcacld-3.0: Fix DSC documentation
The kernel-doc script identified a few documentation issues in
components/dsc, so fix them.

Change-Id: I5e2f4464abb7c94ec567c864c573d314d319ea37
CRs-Fixed: 3356932
2022-12-29 02:45:59 -08:00
Jeff Johnson
e1de35f994 qcacld-3.0: components: dsc: Fix misspellings
Fix misspellings in components/dsc/...

Change-Id: I1dbeabd5882415a16a686d87f00e7337e923ba2f
CRs-Fixed: 3303644
2022-10-07 03:49:29 -07:00
Bapiraju Alla
2de2bf7fdf qcacld-3.0: Add support to cache north bound commands during SSR
Driver receives interface down/del virtual interface commands from kernel
with rtnl lock held. In driver, these commands will wait for SSR to be
completed. So in this case rtnl lock will be held for long time.

To avoid this, cache the north bound command received during SSR and
execute them in re-initialization sequence.

Change-Id: I5b4ca8e04c80e1cef49d137532198283aa35165f
CRs-Fixed: 2740368
2021-03-17 22:35:27 -07:00
Dustin Brown
06878b3a80 qcacld-3.0: Reject up-tree ops during transition
Currently, the Driver Synchronization Core (DSC) blocks transitions
up-tree and down-tree from a node currently undergoing a transition, but
only rejects operations down-tree from the current node. Instead, reject
new operations both up-tree and down-tree from the current node under
transition. This provides more forgiving safety guarantees to operation
implementations at the cost of a reduced amount of parallelism that can
be achieved.

Change-Id: I09e1c48f7030a2252380d172c1c00ee22eac39c5
CRs-Fixed: 2421786
2019-03-25 12:39:31 -07:00
Dustin Brown
6412d1f9cc qcacld-3.0: Move hdd_dsc to osif/sync
Move the contents of hdd_dsc to the new files added in osif/sync as part
of Ica94d32028d10d344294d6cc12d91a06efe1ab6c.

Change-Id: I556e9d2833edd2bd26266496b6000347649c5fbe
CRs-Fixed: 2396512
2019-02-11 23:58:12 -08:00
Dustin Brown
c35ea2d785 qcacld-3.0: Modify DSC trans assert to check ancestors
Currently, APIs in the dsc_*_trans_assert() family assert a transition
is in flight on the given node itself. Instead, replace this API family
with another, dsc_*_assert_trans_protected(), which assert a
transition is in flight on the given node or any of its ancestors.

Change-Id: I5fb07000f955a49a4e5529806f4e49d9dbc8acb7
CRs-Fixed: 2347789
2018-11-13 02:43:32 -08:00
Dustin Brown
424788cfe0 qcacld-3.0: Add Driver Synchronization Core (common)
The Driver Synchronization Core (DSC) is a set of synchronization
primitives for use by the driver's orchestration layer. It provides APIs
for ensuring safe state transitions (including bring up and tear down)
of major driver objects: a single driver, associated psocs, and their
associated vdevs.

APIs are divided into two categories: mutual exclusion of conflicting
transitions, and operation tracking, blocking, and waiting capabilities.

For part 1, add common infrastructure and headers.

Change-Id: Id290e66d2dccd28b89fed5f285d3692ff3c814e7
CRs-Fixed: 2290260
2018-08-06 19:02:53 -07:00