Graphe des révisions

1045 Révisions

Auteur SHA1 Message Date
Houston Hoffman
ca581c4ee3 qcacmn: Remove extra sleep_state_adjust dummy
Select the dummy implementation in the pci bus_ops assignment function
when MAX_PERF is selected.

Change-Id: I0a77e060dde2792959ae96bca86a4c073bb4cab0
CRs-Fixed: 986480
2016-03-16 13:44:59 -07:00
Houston Hoffman
379fad90ca qcacmn: Remove driver registration logic from hif
Upper layers are responsible for registering the wlan
driver.

Change-Id: I5644aa3895827b5e9d29c8f1e7b1d910c9da20fd
CRs-Fixed: 986480
2016-03-16 13:44:54 -07:00
Houston Hoffman
bd8c04fa24 qcacmn: Unify Q_TARGET_ACCESS macros
Sleep state adjust has been added the the bus_ops table and the
macros using it can be unified.

Change-Id: Id08f5d95c295ab8419c0ae60519aae064c318856
CRs-Fixed: 986480
2016-03-16 13:44:48 -07:00
Houston Hoffman
858f723a62 qcacmn: Unify io memory access
Snoc and pci should use the same memory access semantics.

Change-Id: I0f9eb8d0517853426897acd712c343b7ac7a5a1f
CRs-Fixed: 986480
2016-03-16 13:43:41 -07:00
Houston Hoffman
dd50043a6e qcacmn: Remove unused #defines in snoc
References to the PCI compile time configuration defines
have been moved to pci specific files and don't need
dummy values.

Change-Id: I335f3b9c5b70ef58b58feacc76825b15e27dbcbc
CRs-Fixed: 986480
2016-03-16 13:23:53 -07:00
Houston Hoffman
b72c03c8f7 qcacmn: Don't use war_pci_write32
The regular path is the only path used.  The work arround
code path is never accessed because the conditional variable
is allways left to 0.

Change-Id: I9af8fd38c6fbbfc9304bbffb6e1ae78cea34c6a0
CRs-Fixed: 986480
2016-03-16 13:23:46 -07:00
Houston Hoffman
eadcb4a234 qcacmn: Reduce number of pci A_TARGET_READ/WRITE definitions
Simplify the configuration space.

Change-Id: Id2d1398ea5de77cd39a8ac8db711aae317c6e5d3
CRs-Fixed: 986480
2016-03-16 13:03:06 -07:00
Houston Hoffman
4ca03b6579 qcacmn: Add dummy functions to bus_ops table for snoc
Use bus ops table to tunnel into dummy implementations for snoc.
Needed to support both pcie and snoc in the same binary.

Change-Id: I11725ed4dfa5dd7b43a4b29236d3caca58fda41f
CRs-Fixed: 986480
2016-03-16 13:03:03 -07:00
Houston Hoffman
63777f221f qcacmn: Make hif_sleep_entry pci specific
Snoc does not use the force wake mechanism.  Isolate force
wake code to reduce dummy implementations.

Change-Id: Ief32778cadb7d1b9c905535ea0d01604246c72df
CRs-Fixed: 986480
2016-03-16 13:03:01 -07:00
Houston Hoffman
e61d4e1382 qcacmn: Controll target sleep in hif
Reduce the api footprint of hif and make hif responsible for controlling
its own timer as part of suspend resume.

Change-Id: I256161a8d147e99811f018c995081684f2bd0167
CRs-Fixed: 986480
2016-03-16 13:02:59 -07:00
Houston Hoffman
00d42aeb8e qcacmn: Move hif_targ_is_awake to pci
Avoid maintaining a dummy api for the internal function.

Change-Id: Ie26aaf557d1bdefe292aa364fa6ec3140a113f5e
CRs-Fixed: 986480
2016-03-16 13:02:57 -07:00
Houston Hoffman
b861cb3837 qcacmn: Manage driver load target sleep state in hif
The target awake durring driver load feature should be isolated
to hif.

Change-Id: I89de39cc3632f9cc54d1fe5544da8b0bf250206d
CRs-Fixed: 986480
2016-03-16 13:02:54 -07:00
Houston Hoffman
fb7d612980 qcacmn: Move power_gating to centralized power management api.
Upper layers should not need to know about pci specific power management
features.

Change-Id: I841af588246d328f12fa69d8c0394ec1eafaa236
CRs-Fixed: 986480
2016-03-16 13:02:53 -07:00
Houston Hoffman
60a1eeb69f qcacmn: Export the bus type
Currently only ol_target_failure needs to query the bus type,
but when usb and sdio busses are added there will be more
external checks based on the bus type.

Change-Id: I48172a918e75ff3a6e56fae5c311ae999efa607e
CRs-Fixed: 986480
2016-03-16 13:02:49 -07:00
Houston Hoffman
26352594d9 qcacmn: Add hif_needs_bmi api
Since the logic requires device knowledge and could become more
complicated, provice a hif api tho check.

Change-Id: I6fbb8234a6c0a639afdd9a9a409688889e492bd7
CRs-Fixed: 986480
2016-03-16 13:02:47 -07:00
Houston Hoffman
f303f91734 qcacmn: Make hif_device_id an opaque type
If different busses cannot agree upon a common hif_device_id type,
we need to make it an opaque type in the general case and only
cast it in the bus specific code.

Change-Id: I769d65f10421caf07c8f5cc35ccfe11302485576
CRs-Fixed: 986480
2016-03-16 13:02:45 -07:00
Houston Hoffman
bc69349d0d qcacmn: Use new HIF_SNOC flag
Use new HIF_SNOC instead of assuming snoc when pci is not defined.
Exposes duplicate function defs with HIF_SNOC and HIF_PCI both defined.
Remove some trivial HIF_PCI conditional compilation.

Change-Id: I958740f49b3298c165e662b89b586bda2b3d2ee8
CRs-Fixed: 986480
2016-03-16 13:02:40 -07:00
Houston Hoffman
854e67f791 qcacmn: Move hif_set_hia to pci file
hif_set_hia isn't applicable to non pci targets.
Avoid needing a dummy hif_wake_target_cpu for
snoc.

Change-Id: I1ebdac2f1ea1c87466ba144986ff151f074476ba
CRs-Fixed: 986480
2016-03-16 13:02:37 -07:00
Houston Hoffman
f771862053 qcacmn: Move PCIE_AWAKE_WHILE_DRIVER_LOAD code to pcie
Move pcie specific code for keeping the target awake
durring driver load.  This code should be in a pci
specific file to avoid the ifdef HIF_PCI.

Change-Id: I117c43d95196a1f2f79b1124d290acf8542ebf10
CRs-Fixed: 986480
2016-03-16 13:02:35 -07:00
Houston Hoffman
e02e12d156 qcacmn: ifdef hif_pm_runtime_mark_last_busy call from ce file
fixes a compilation error for snoc.

Change-Id: Ie451904aa53a9be37f1fe6d070b19307a8f74fea
CRs-Fixed: 978746
2016-03-16 13:02:32 -07:00
Houston Hoffman
32bc8eb686 qcacmn: Add function pointer framework
Function pointers are needed to dynamically route
function calls to bus specific implementations
when supporting simultaneous multibus.

Change-Id: I81a181824e8c679ff0bdf906563de95b3291ba4a
CRs-Fixed: 986480
2016-03-16 13:02:29 -07:00
Houston Hoffman
108da40074 qcacmn: Introduce hif_bus_configure
Need to make hif_enable bus agnostic

Change-Id: If9bff722b32afb46efdf854bfbaa08304d77e780
CRs-Fixed: 967250
2016-03-16 13:02:24 -07:00
Vishwajith Upendra
70f8b6e32c qcacmn: Update driver to use QDF NBUF APIs(2/2)
Update driver to use QDF NBUF APIs

Change-Id: I555c739660e62e6d0237c65c57bcb169fec11cf4
CRs-Fixed: 981187
2016-03-16 12:22:29 -07:00
Chouhan, Anurag
fc06aa9430 qcacmn: Fix compilation issues HTC/HIF
Resolve compilation issues for references to cdf after rebase

Change-Id: I332566deb690fa7de68d89bf51b42f94f7a270a6
CRs-Fixed: 981187
2016-03-16 12:18:31 -07:00
Houston Hoffman
5693683262 qcacmn: change skb->cb to support 64 bit paddrs(2/2)
Prapogation from qcacld-3.0 to qcacld-3.1

Change skb->sb such that it is overlayed between tx and rx and
each one of then still fits 48 bytes.
Note that this will break IPA and it will be fixed subsequently
by another change.

Change-Id: I96168aee99dbdbecbdbd4259597e179b02d29f5d
CRs-Fixed: 881090
2016-03-16 12:16:24 -07:00
Komal Seelam
bd7c51d1c5 qcacmn: Remove CDS instances in HIF
Remove CDS instances in HIF for WIN/MCL convergence.
a. Update con_mode param in HIF
b. Have callbacks to CDS from HIF to update CDS global context

Change-Id: Iceebf32271b8d53beb634031f7dbc005f5fe5ed0
CRs-Fixed: 967765
2016-03-16 01:55:42 -07:00
Komal Seelam
5584a7cf92 qcacmn: Make hif_opaque_softc as global HIF context
Make hif_opaque_softc as global HIF Context and cleanup
ol_softc structure to bmi structure. No one else is using ol_softc
numbers.

Change-Id: Ib6447d2b67d41a30ec22903720900d7e4d55c7a9
CRs-Fixed: 967765
2016-03-16 01:55:38 -07:00
Komal Seelam
a5911d3ca2 qcacmn: Remove unwanted ini config from hif
Move unwanted ini config params from hif to respective modules.

Change-Id: I19603bcf516cf2c67053c707456d83ee536f41ce
CRs-Fixed: 967765
2016-03-16 01:55:32 -07:00
Komal Seelam
f76166d3c3 qcacmn: Move BMI info structure to global BMI context
BMI info is needed during BMI Phase. The structure holds
the physical address and virtual address of Command and response
of BMI buffer. Remove the structure from HIF and move to BMI.

Change-Id: I37a43cca0bdef66f6b0201d27e9dcbecffeef5dd
CRs-Fixed: 967765
2016-03-16 01:55:29 -07:00
Komal Seelam
8eb8f28ce2 qcacmn: Move targetdef out of ol_softc to ol_bmi_context
Targetdef is needed during BMI phase of PLL switching.
Move this member to ol_bmi_context

Change-Id: Idf5bbe610a926506b87e8458fa460fd583263a03
CRs-Fixed: 967765
2016-03-16 01:55:21 -07:00
Komal Seelam
2a5fa63d2b qcacmn: Modify HIF BMI API to pass dma command and response
Pass BMI DMA Command and Response address to HIF BMI API as
arguments instead of using bmi context in HIF.

Change-Id: Ifdb51581a33665b1857c63e33b1c26bbd99575eb
CRs-Fixed: 967765
2016-03-16 01:55:15 -07:00
Komal Seelam
6081702c40 qcacmn: Move Max Peers variable to WMA
Remove Max Peers reference in HIF and move it to WMA

Change-Id: If2be1e3a69abdca471d6bb96aca9298bffd4bd25
CRs-Fixed: 967765
2016-03-16 01:55:10 -07:00
Vishwajith Upendra
3f78aa6a1d qcacmn: Make HIF independent of NIC_DEV
NIC_DEV is not needed in hif. Remove it from HIF.
Initialize cdf_device global structure in HDD.

Change-Id: Iff3e88c269ed0324d18289e23a0369fa6c2b14b0
CRs-Fixed: 967765
2016-03-16 01:52:55 -07:00
Komal Seelam
644263d323 qcacmn: Carve Out hif_softc out of ol_softc
Carve out hif_softc for internal hif usage.
ol_softc acts a opaque handle to other modules.

Change-Id: I7633e70ed82fe2ee88a21e2502177d6a7388ff56
CRs-Fixed: 967765
2016-03-15 14:29:26 -07:00
Komal Seelam
02cf2f8509 qcacmn: Refactor HIF to use Single HIF Context
Remove unwanted pointers to various HIF data structures.
Use single HIF Context and dynamically typecast to required
HIF data structures.

Change-Id: I1e2f39455a23826d1eaa9785aa9f1bc3854a9cb2
CRs-Fixed: 967765
2016-03-14 14:08:12 +05:30
Komal Seelam
43301de999 qcacmn: Make One HIF Context
Have the hif context componentized but make it one contiguous pointer.
This simplifies the design as all apis can use the same default pointer
and all members will be one load away with a precomputed offset.

Change-Id: I181c9f011a7bac02944af53188b549efeea68470
CRs-Fixed: 967765
2016-03-14 14:08:07 +05:30
Komal Seelam
c92a0cf52e qcacmn: Query HIF for FastPath support
Data Path bypasses transport layer for better throughput's.
Instead of dereferencing HIF structures, query HIF for fastpath
mode support

Change-Id: Icba897c9405084f1c14c7db4059527a96d841736
CRs-Fixed: 967765
2016-03-14 14:07:55 +05:30
Komal Seelam
f8600687ad qcacmn: Remove cds_get_context in HIF
Refactor Transport Layer from cds_get_context and pass the hif context
to all the API's to operate.

Change-Id: I1dedda76357f844e08fd422bf9eb15af70587eae
CRs-Fixed: 967765
2016-03-14 14:07:47 +05:30
Komal Seelam
b3a3bdf89f qcacmn: Refactor BMI members from ol_softc
Group BMI members and access bmi info from hif instead of
dereferencing hif context.

Change-Id: I082f648490be0078df7d90cc8ebbf745b64fd97a
CRs-Fixed: 967765
2016-03-14 14:07:40 +05:30
Komal Seelam
7fca106501 qcacmn: Refactor Ramdump API and PKTLOG API
Ramdump collection can be supported by buses other than PCIe, and
it's done in offload layer when recovery is required. Hence allocate
memory dynamically and free it once ramdump collection is complete.

PKTLOG is a DataPath Feature, HIF doesn't need to have any info
of it. Move pktlog implementation to HTT folder.

Change-Id: Ib8c2526ba8900843db2dae8388fe46c9d9e05f22
CRs-Fixed: 967765
2016-03-14 14:07:29 +05:30
Komal Seelam
aa72bb719e qcacmn: Move relevent hif_pci_softc members from ol_softc
Few members are relevant only for PCIe based solutions, hence
move those to hif_pci_softc structure.

Change-Id: I1f38da4cfc9f69c05a9c80e67abc70fd97e22af9
CRs-Fixed: 967765
2016-03-14 14:06:46 +05:30
Komal Seelam
91553ce741 qcacmn: Refactor ol_sc for target_info and ini params
Clean up driver modules to query hif for the target info and
ini handle, instead of accessing hif context in other modules.

Change-Id: Ibd4762a20f788190f242b4f24b914fa4b99d5a5b
CRs-Fixed: 967765
2016-03-14 14:05:27 +05:30
Govind Singh
2443fb341a qcacmn: Abstract bus debug dump in hif layer
Remove direct call to CE debug routine from ol_fw and
hif main layer. Abstract the bus debug dump
register routines to respective hif bus layer.

Change-Id: I8b6f325f12aaa99e4f7461f9da26b7f60259c8f8
CRs-Fixed: 964031
2016-03-14 12:37:39 +05:30
Ryan Hsu
0f6d330844 qcacmn: Fix hif_bus_prevent_linkdown compilation
hif_bus_prevent_linkdown() calls to cnss_wlan_pm_control(), which
is only defined when CONFIG_PCI_MSM is enabled, fix the conditional
compilation.

Also fix a typo of RUNTIME_PM to FEATURE_RUNTIME_PM.

Change-Id: I9d4cd65ee0020ca1b41d026c3124317ce854ea92
CRs-fixed: 966771
2016-03-14 11:50:25 +05:30
Prakash Dhavali
142cee4bf2 Initial host-common file folder cleanup and moves
Initial host-common file folder cleanup and moves
on top of baseline reference of MCL WLAN driver
SU#5.0.0.160.

Move dp, ht comm, hif, wmi and qdf folders one level up

Change-Id: I2120898024b1eafd5d651c48768dbf48bf05995d
2016-03-03 01:02:02 -08:00