diff options
| author | Linux Build Service Account <lnxbuild@localhost> | 2016-04-08 15:15:20 -0600 |
|---|---|---|
| committer | Linux Build Service Account <lnxbuild@localhost> | 2016-04-08 15:15:21 -0600 |
| commit | f2bc8a14186b7468d444792d1077e3efb16ef880 (patch) | |
| tree | 9c9f5f46883be5d81ba593d5da6379c4c89a3bc5 /include | |
| parent | d31ca55280c228f9e8833b7ebdfad1247e3ac7de (diff) | |
| parent | 3f901317b1835e7b26d6c72b6c8f2c79539866fc (diff) | |
Promotion of kernel.lnx.4.4-160407.
CRs Change ID Subject
--------------------------------------------------------------------------------------------------------------
969563 If9ec89ab2f2ea341f38d8952c1688d277a5082ed edac: cortex: Support L2 error reporting on Kryo2xx Gold
990478 I520b7943b85cd61065703c7bf9a5d8efb6302a56 msm: ipa: support WDI 2.0 suspend
998162 I74539e626c641c78c4b1ed759e0b9da1b82e89cf ASoC: msmcobalt: Machine driver changes for kernel 4.4
987415 I20921a97b02dce0507f58c4951ce539a2aae5597 wil6210: switch to generated wmi.h
982882 I7eac78d7beb90436d24468547aeb789f7c8ec878 wil6210: protect synchronous wmi commands handling
994255 Ic0934d795c2c7c20332358a3da603e093f94d980 ARM: dts: msm: Move SMD packet node to GLINK packet for
1000118 I95fbcd5a1b70816cb3b03b7e3652243b1c3e527e msm: defconfig: Enable CONFIG_QCOM_KGSL in msmcortex_def
998162 I625a8970e800487746d458c8f51f63c1b371f08c soc: qcom: Add avtimer device tree documentation
1000722 I2187343430efea1dc20523d6e8a5965f360864e6 soc: qcom: spm: Add SAW v4.1 support
982882 I11fa67f7040c4a728f0cd7633f4fbb829ac165d0 wil6210: prevent access to vring_tx_data lock during its
989126 I5ad87614edb1307cffaa798f9b393d816dce012a soc: qcom: msm_glink_pkt: remove the wakeup source durin
1000176 995213 Id347f540f866be6b8442d5f166c6cf7b0ae4c000 iommu/arm-smmu: Fix DOMAIN_ATTR_S1_BYPASS check
998162 Ie176b5e67263e56b296ae144e1a414b4bfa51e80 ASoC: msmcobalt: Add machine driver support for msmcobal
994871 I907adfb5f5d24c06dd038b07a17b31d42b91dfad soc: qcom: ipc_router_mhi_xprt: Code Refactor to handle
988580 I8205df6ecbeed8eca7ff9a81534edadf51309fe1 msm: camera: Change API to populate regulator name
982882 I66a6a23239710c85b9cdb5824c205692c4b53866 wil6210: wait for disconnect completion
982882 I0e438d437154b1b47c572218072a736da5013c80 wil6210: AP: prevent connecting to already connected sta
999684 I469e8609bf23bee97b3f9c612401aaf92bc72a30 dwc3: gadget: Resume controller when udc_stop is called
1000176 I6653b3b6ceb071283fb5a8e07257c496e99dd1f3 iommu/arm-smmu: Support DOMAIN_ATTR_S1_BYPASS
979349 I5633baa3d687972a2038336c78555747fc489c84 soc: qcom: Add SSR support in generic interrupt handler
1000767 I12b0341148f05a3129e8b1aed3ba322277276360 arm64: Check for parity errors on synchronous aborts
999679 Id44c91481d4c184a1991768baf13adad2fae9fb3 usb: phy: qusb: Update QUSB PHY power up functionality f
998028 I5f80603633464e7eea322fde57110e377b72d84c soc: qcom: smem: Renaming smem item SMEM_SMEM_STATIC_LOG
978953 I7a9a61c8aa11bd5c0f5f2effc487a2225e27011d icnss: Add support of skiping QMI
987962 999619 Ib64384d4cc18577c4f33f140ed35311b998f4dda ARM: dts: msm: Add camera isp and ispif soc node for msm
999935 I1b24c4e13daaae3e63c5cacefcbda12b8cfbeeb8 msm: ipa3: remove odu_bridge functions from ipa.h
ARM: dts: msm: Add RTC device for msmcobalt
998951 I806ed575427b90ee82c08ac1a7f8c8692c03b6d1 defconfig: msmcortex: Enable TSENS
982882 Ia78ddf6f5243a8d28c3bfdfc29e0eb512658d0a7 wil6210: TX vring optimization
994721 I18f52fa873b332fb6ad644afc565a84bfed154cc ARM: dts: msm: Rename low power names to be same between
998740 Id59f17528ead86a7c0ac787811b716a209df1eaf icnss: Init spin lock in icnss_probe
1000759 I67181840c8e889ff31111f4fd419edbf5d8d0810 defconfig: msmcortex-perf: Enable POWER_RESET_QCOM
994255 I4a0022954d34d52899d5dd357813c4da90717e2e soc: qcom: msm_glink_pkt: Add GLINK_OPT_INITIAL_XPORT fl
447740 Ieded4bfe038ca936247fa4b638070e979b02eaa1 android/lowmemorykiller: Wait for memory to be freed
994871 I798d27248acaf7aa2ab15e8739c638a96a49b2b7 ARM: dts: msm: Add external modem to ipcrouter dtsi
987584 Ifea6c2de94071719ffede0f641f8a47526bc9e03 icnss: Allocate msa memory in icnss_probe
999679 I68ae8d863a6e438a8d11061db2c75072f4a4e012 ARM: dts: msm: Add QUSB PHY major revision for msm8996
995686 Ide2c4500cfdd0a9c684329ab5f7ac0603e4fc199 regulator: cpr3-regulator: wait for SPM availability for
993907 I55e895be945a690a707f6015c09578e31c1de693 msm: ipa: fix hdr log print
1000634 I539dc604b150f9f23fda09f343cc5e1d25a6ca47 pinctrl: qcom: Add target value for gpio interrupt on ms
995505 Iefe2d6b370f6ec303286afc139fa9913fa9a4099 cpufreq_stats: Disable cpu hotplug during stats table cr
1001094 I965a463ec4808d72ac8fc9d7aa98011ab45c984e ARM: dts: msm: Limit msmcobalt cluster frequencies to 30
954082 Ic7baf2a3da4ed8f8a9023617059e22fd81c3ba45 PM / devfreq: bw_hwmon: Fix race condition in polling in
980185 I55618784befc61e37e68d3b8d8c7c5c30f45e4fc msm: rmnet_ipa3: fix the crash issue
987593 I635d710759a94e2bb29fd3c7811816d09243de50 ARM: dts: msm: Support AVS_CTL register write for msmcob
999887 I4ef85fc64f465aa0d4901493b80dd676596affcb msm: ipa3: add ipc logging support for ipahal
999988 I59681cf42274f70d5f46b869257a838014d8bf61 pwm: Add snapshot of device tree documentation for pwm-q
987415 I5018f40be6a71b4b8c7c3ee94c8e70cfa1fb373a wil6210: Set permanent MAC address to wiphy
1000176 If2ae2021ae9ce10bd22f424967cfcd9c3f94534e arm64: dma_mapping: Support DOMAIN_ATTR_S1_BYPASS
982882 I7d6e3cf5e8abab45da5febc0129fb67830d9e6cb wil6210: remove BACK RX and TX workers
990478 I73447c5557d42817ac2214532273e0de638e13d9 msm: ipa: header change for wlan VA mapping
986484 I5921dc3978bf96221b50148bb2f86b0ffed3b5fb icnss: Update WLAN mode in wlan_firmware_service
998951 I22b8c5834a278d6ebb943e73c70966f37a7b3dcd arm: enable configurable thermal trips for ARCH_QCOM tar
1001094 I6224ecb800bcbca821f42abec43bc57ee701ce80 clk: msm: clock-osm: support OPP table with single frequ
982931 I05b99ec66b0da41697f41c547aab0b0497dd9be6 wil6210: add support for discovery mode during scan
994871 I23d391546a191eb104fb4c50e19aef8a8b566adb defconfig: msm: Enable IPC Router MHI transport
999530 Ia5d76ea4de29dbafe309a831f8a2418c058cba94 soc: qcom: Service locator for kernel clients
1000176 I2f78d5c798d0d2575d52b341aaf29b35294c93f1 ion: Fix typo in ion system secure heap
987415 Ie6684664743694f004289da9ec041f685ec0c05e wil6210: replay attack detection
1000636 I5a77c08532bb5e841f8c1e8e494857e1361dfc40 ARM: dts: msm: Modem PIL clock change for MSMCOBALT
999988 I96761cd2bf18bce6ef7795b6686c5da72fe11a89 defconfig: arm64: msmcortex: enable PWM support for msmc
999935 Ib5109681c62137d1310539daa816d5229bc08098 msm: ipa3: add odu_bridge to ipa_clients folder
Id72e67e31fb52e07f01fb6e234b102f63b400aa5 arm64: process management: Add TIF_MM_RELEASED
995744 Ie763455df2cffcb4fc9447a1bbcc8d9c7d577c6c msm: camera: isp: Add camif raw path output format suppo
952834 I5fe327ea61eb2d16591861b1246fdca2ecce2b1c soc: qcom: glink_smd_xprt: Fix handling subsystem restar
986135 I796b06fae4376cda792d7f26a430ad4580899846 wil6210: add support for platform specific notification
979349 I14504819e04c3e952fcdbceba5a20f876b92ae88 ARM: dts: msm: Add SPSS SSR support for MSMCOBALT.
990478 Ib0cdd0c7614916e53f2731f61d0399959d4b739d msm: ipa: header file change for WDI2.0
982931 I9f26a8ff8433268240eb9443befadc0d279a0293 cfg80211: basic support for PBSS network type
998162 Icc1ddddfdce35ab1ca70dc68fb4878f7c0c36dc7 ARM: msm: dts: Add support for audio on msmcobalt
991098 I45809876336633a496d03e507403944c12f0abb9 ARM: dts: msm: Add bluetooth DT for msm8998
1000770 I26cc21856e9a26be71af6aa91d50e5af2f9fefc6 ARM: dts: msm: Add RTC device for msmcobalt
999530 I37cb319638ce5b6285b2f2ff4386fd92cbda83fd soc: qcom: Add infrastructure to test service locator
990478 I4ac096336f5aeb01fbba8241cda987f56edc1232 msm: ipa: change for WDI2.0
I7d8a8fd39ca5625e6448ed2efebfb621f6e93845 android/lowmemorykiller: Check all tasks for death pendi
982082 I77753fd25d5a4256a4a4cdd74518facd63becf25 msm: camera: sensor: Update actuator specific I2C struct
996222 I18f1ce72dfe93da2fdb80725ed66218eb0af2f49 msm: camera: Add support to enable eLDOs through GPIOs
999935 Ic6da089ebd7878f0d7ceebde7cd8e8549c30182e msm: ipa3: include ipa.h from ipa_odu_bridge.h
998870 I53113d6454de577d4e68f226975a078889d6b2c3 wil6210: disable PCIe relaxed ordering
998162 Ia06b7877b35c599fdb7a38c09e1cc003d88ec46b defconfig: Add support for audio drivers on msmcobalt
990478 I910ed12f79f58dd1a0b0a58fb1cceb7d79ceaaa4 ARM: dts: msm: Add IPA WDI2.0 support for MSMcobalt
999935 Iadfcf4a88472c54fbfe066fa6304146140b76201 msm: ipa3: add ipc logging for odu_bridge driver
991098 Ibf0e4a0ebd55adaadb6d26b335c3d0a9edbe8845 bluetooth: Add WCN3990 power control
Change-Id: I43cbfc16fb8ce9039622425df3a0377fb12b950b
CRs-Fixed: 1000634, 986484, 986135, 979349, 999684, 998028, 1000759, 994871, 1000770, 998951, 994721, 995744, 987962, 1001094, 987584, 980185, 999887, 993907, 982882, 999530, 987415, 998870, 999988, 988580, 998740, 995686, 998162, 982931, 994255, 999679, 996222, 989126, 969563, 1000722, 447740, 987593, 1000767, 999935, 999619, 952834, 991098, 1000118, 990478, 978953, 995213, 954082, 1000176, 995505, 1000636, 982082
Diffstat (limited to 'include')
| -rw-r--r-- | include/linux/bluetooth-power.h | 2 | ||||
| -rw-r--r-- | include/linux/ipa.h | 82 | ||||
| -rw-r--r-- | include/linux/ipa_odu_bridge.h | 84 | ||||
| -rw-r--r-- | include/media/msm_cam_sensor.h | 4 | ||||
| -rw-r--r-- | include/net/cfg80211.h | 8 | ||||
| -rw-r--r-- | include/soc/qcom/icnss.h | 2 | ||||
| -rw-r--r-- | include/soc/qcom/service-locator.h | 88 | ||||
| -rw-r--r-- | include/soc/qcom/smem.h | 4 | ||||
| -rw-r--r-- | include/uapi/linux/nl80211.h | 7 | ||||
| -rw-r--r-- | include/uapi/media/msm_cam_sensor.h | 4 | ||||
| -rw-r--r-- | include/uapi/media/msm_camsensor_sdk.h | 4 |
11 files changed, 213 insertions, 76 deletions
diff --git a/include/linux/bluetooth-power.h b/include/linux/bluetooth-power.h index a411520a83b2..7211c48dbc7b 100644 --- a/include/linux/bluetooth-power.h +++ b/include/linux/bluetooth-power.h @@ -27,6 +27,8 @@ struct bt_power_vreg_data { /* voltage levels to be set */ unsigned int low_vol_level; unsigned int high_vol_level; + /* current level to be set */ + unsigned int load_uA; /* * is set voltage supported for this regulator? * false => set voltage is not supported diff --git a/include/linux/ipa.h b/include/linux/ipa.h index fe99c620b85b..3a87177b623f 100644 --- a/include/linux/ipa.h +++ b/include/linux/ipa.h @@ -907,12 +907,23 @@ struct IpaHwStatsWDIInfoData_t { * Rx buffers) * @rdy_ring_size: size of the Rx ring in bytes * @rdy_ring_rp_pa: physical address of the location through which IPA uc is + * reading (WDI-1.0) + * @rdy_comp_ring_base_pa: physical address of the base of the Rx completion + * ring (WDI-2.0) + * @rdy_comp_ring_wp_pa: physical address of the location through which IPA + * uc is writing (WDI-2.0) + * @rdy_comp_ring_size: size of the Rx_completion ring in bytes * expected to communicate about the Read pointer into the Rx Ring */ struct ipa_wdi_ul_params { phys_addr_t rdy_ring_base_pa; u32 rdy_ring_size; phys_addr_t rdy_ring_rp_pa; + phys_addr_t rdy_comp_ring_base_pa; + phys_addr_t rdy_comp_ring_wp_pa; + u32 rdy_comp_ring_size; + u32 *rdy_ring_rp_va; + u32 *rdy_comp_ring_wp_va; }; /** @@ -926,6 +937,9 @@ struct ipa_wdi_ul_params_smmu { struct sg_table rdy_ring; u32 rdy_ring_size; phys_addr_t rdy_ring_rp_pa; + struct sg_table rdy_comp_ring; + phys_addr_t rdy_comp_ring_wp_pa; + u32 rdy_comp_ring_size; }; /** @@ -1038,30 +1052,6 @@ struct ipa_wdi_buffer_info { }; /** - * struct odu_bridge_params - parameters for odu bridge initialization API - * - * @netdev_name: network interface name - * @priv: private data that will be supplied to client's callback - * @tx_dp_notify: callback for handling SKB. the following event are supported: - * IPA_WRITE_DONE: will be called after client called to odu_bridge_tx_dp() - * Client is expected to free the skb. - * IPA_RECEIVE: will be called for delivering skb to APPS. - * Client is expected to deliver the skb to network stack. - * @send_dl_skb: callback for sending skb on downlink direction to adapter. - * Client is expected to free the skb. - * @device_ethaddr: device Ethernet address in network order. - * @ipa_desc_size: IPA Sys Pipe Desc Size - */ -struct odu_bridge_params { - const char *netdev_name; - void *priv; - ipa_notify_cb tx_dp_notify; - int (*send_dl_skb)(void *priv, struct sk_buff *skb); - u8 device_ethaddr[ETH_ALEN]; - u32 ipa_desc_size; -}; - -/** * enum ipa_mhi_event_type - event type for mhi callback * * @IPA_MHI_EVENT_READY: IPA MHI is ready and IPA uC is loaded. After getting @@ -1424,20 +1414,6 @@ enum ipacm_client_enum ipa_get_client(int pipe_idx); bool ipa_get_client_uplink(int pipe_idx); /* - * ODU bridge - */ - -int odu_bridge_init(struct odu_bridge_params *params); - -int odu_bridge_connect(void); - -int odu_bridge_disconnect(void); - -int odu_bridge_tx_dp(struct sk_buff *skb, struct ipa_tx_meta *metadata); - -int odu_bridge_cleanup(void); - -/* * IPADMA */ int ipa_dma_init(void); @@ -2090,36 +2066,6 @@ static inline bool ipa_get_client_uplink(int pipe_idx) return -EPERM; } - -/* - * ODU bridge - */ -static inline int odu_bridge_init(struct odu_bridge_params *params) -{ - return -EPERM; -} - -static inline int odu_bridge_disconnect(void) -{ - return -EPERM; -} - -static inline int odu_bridge_connect(void) -{ - return -EPERM; -} - -static inline int odu_bridge_tx_dp(struct sk_buff *skb, - struct ipa_tx_meta *metadata) -{ - return -EPERM; -} - -static inline int odu_bridge_cleanup(void) -{ - return -EPERM; -} - /* * IPADMA */ diff --git a/include/linux/ipa_odu_bridge.h b/include/linux/ipa_odu_bridge.h new file mode 100644 index 000000000000..5d30a9784998 --- /dev/null +++ b/include/linux/ipa_odu_bridge.h @@ -0,0 +1,84 @@ +/* Copyright (c) 2012-2016, The Linux Foundation. All rights reserved. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 and + * only version 2 as published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + */ + +#ifndef _IPA_ODO_BRIDGE_H_ +#define _IPA_ODO_BRIDGE_H_ + +#include <linux/ipa.h> + +/** + * struct odu_bridge_params - parameters for odu bridge initialization API + * + * @netdev_name: network interface name + * @priv: private data that will be supplied to client's callback + * @tx_dp_notify: callback for handling SKB. the following event are supported: + * IPA_WRITE_DONE: will be called after client called to odu_bridge_tx_dp() + * Client is expected to free the skb. + * IPA_RECEIVE: will be called for delivering skb to APPS. + * Client is expected to deliver the skb to network stack. + * @send_dl_skb: callback for sending skb on downlink direction to adapter. + * Client is expected to free the skb. + * @device_ethaddr: device Ethernet address in network order. + * @ipa_desc_size: IPA Sys Pipe Desc Size + */ +struct odu_bridge_params { + const char *netdev_name; + void *priv; + ipa_notify_cb tx_dp_notify; + int (*send_dl_skb)(void *priv, struct sk_buff *skb); + u8 device_ethaddr[ETH_ALEN]; + u32 ipa_desc_size; +}; + +#if defined CONFIG_IPA || defined CONFIG_IPA3 + +int odu_bridge_init(struct odu_bridge_params *params); + +int odu_bridge_connect(void); + +int odu_bridge_disconnect(void); + +int odu_bridge_tx_dp(struct sk_buff *skb, struct ipa_tx_meta *metadata); + +int odu_bridge_cleanup(void); + +#else + +static inline int odu_bridge_init(struct odu_bridge_params *params) +{ + return -EPERM; +} + +static inline int odu_bridge_disconnect(void) +{ + return -EPERM; +} + +static inline int odu_bridge_connect(void) +{ + return -EPERM; +} + +static inline int odu_bridge_tx_dp(struct sk_buff *skb, + struct ipa_tx_meta *metadata) +{ + return -EPERM; +} + +static inline int odu_bridge_cleanup(void) +{ + return -EPERM; +} + +#endif /* CONFIG_IPA || defined CONFIG_IPA3 */ + +#endif /* _IPA_ODO_BRIDGE_H */ diff --git a/include/media/msm_cam_sensor.h b/include/media/msm_cam_sensor.h index 66c0e8f43883..fb650ab2693f 100644 --- a/include/media/msm_cam_sensor.h +++ b/include/media/msm_cam_sensor.h @@ -135,8 +135,8 @@ struct msm_actuator_params_t32 { uint16_t init_setting_size; uint32_t i2c_addr; enum i2c_freq_mode_t i2c_freq_mode; - enum msm_actuator_addr_type i2c_addr_type; - enum msm_actuator_data_type i2c_data_type; + enum msm_camera_i2c_reg_addr_type i2c_addr_type; + enum msm_camera_i2c_data_type i2c_data_type; compat_uptr_t reg_tbl_params; compat_uptr_t init_settings; struct park_lens_data_t park_lens; diff --git a/include/net/cfg80211.h b/include/net/cfg80211.h index 1d67f3873e10..63568caf0de8 100644 --- a/include/net/cfg80211.h +++ b/include/net/cfg80211.h @@ -712,6 +712,8 @@ struct cfg80211_acl_data { * @p2p_opp_ps: P2P opportunistic PS * @acl: ACL configuration used by the drivers which has support for * MAC address based access control + * @pbss: If set, start as a PCP instead of AP. Relevant for DMG + * networks. */ struct cfg80211_ap_settings { struct cfg80211_chan_def chandef; @@ -730,6 +732,7 @@ struct cfg80211_ap_settings { u8 p2p_ctwindow; bool p2p_opp_ps; const struct cfg80211_acl_data *acl; + bool pbss; }; /** @@ -1888,6 +1891,8 @@ struct cfg80211_ibss_params { * @ht_capa_mask: The bits of ht_capa which are to be used. * @vht_capa: VHT Capability overrides * @vht_capa_mask: The bits of vht_capa which are to be used. + * @pbss: if set, connect to a PCP instead of AP. Valid for DMG + * networks. */ struct cfg80211_connect_params { struct ieee80211_channel *channel; @@ -1910,6 +1915,7 @@ struct cfg80211_connect_params { struct ieee80211_ht_cap ht_capa_mask; struct ieee80211_vht_cap vht_capa; struct ieee80211_vht_cap vht_capa_mask; + bool pbss; }; /** @@ -3488,6 +3494,7 @@ struct cfg80211_cached_keys; * registered for unexpected class 3 frames (AP mode) * @conn: (private) cfg80211 software SME connection state machine data * @connect_keys: (private) keys to set after connection is established + * @conn_bss_type: connecting/connected BSS type * @ibss_fixed: (private) IBSS is using fixed BSSID * @ibss_dfs_possible: (private) IBSS may change to a DFS channel * @event_list: (private) list for internal event processing @@ -3518,6 +3525,7 @@ struct wireless_dev { u8 ssid_len, mesh_id_len, mesh_id_up_len; struct cfg80211_conn *conn; struct cfg80211_cached_keys *connect_keys; + enum ieee80211_bss_type conn_bss_type; struct list_head event_list; spinlock_t event_lock; diff --git a/include/soc/qcom/icnss.h b/include/soc/qcom/icnss.h index 14a22fd1b55f..27ae1332947c 100644 --- a/include/soc/qcom/icnss.h +++ b/include/soc/qcom/icnss.h @@ -72,6 +72,8 @@ enum icnss_driver_mode { ICNSS_EPPING, ICNSS_WALTEST, ICNSS_OFF, + ICNSS_CCPM, + ICNSS_QVIT, }; struct icnss_soc_info { diff --git a/include/soc/qcom/service-locator.h b/include/soc/qcom/service-locator.h new file mode 100644 index 000000000000..be1a2b431dd9 --- /dev/null +++ b/include/soc/qcom/service-locator.h @@ -0,0 +1,88 @@ +/* + * Copyright (c) 2015, The Linux Foundation. All rights reserved. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 and + * only version 2 as published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * Process Domain Service Locator API header + */ + +#ifndef _SERVICE_LOCATOR_H +#define _SERVICE_LOCATOR_H + +#define QMI_SERVREG_LOC_NAME_LENGTH_V01 64 +#define QMI_SERVREG_LOC_LIST_LENGTH_V01 32 + +/* + * @name: The full process domain path for a process domain which provides + * a particular service + * @instance_id: The QMI instance id corresponding to the root process + * domain which is responsible for notifications for this + * process domain + * @service_data_valid: Indicates if service_data field has valid data + * @service_data: Optional service data provided by the service locator + */ +struct servreg_loc_entry_v01 { + char name[QMI_SERVREG_LOC_NAME_LENGTH_V01 + 1]; + uint32_t instance_id; + uint8_t service_data_valid; + uint32_t service_data; +}; + +/* + * @client_name: Name of the client calling the api + * @service_name: Name of the service for which the list of process domains + * is requested + * @total_domains: Length of the process domain list + * @db_rev_count: Process domain list database revision number + * @domain_list: List of process domains providing the service + */ +struct pd_qmi_client_data { + char client_name[QMI_SERVREG_LOC_NAME_LENGTH_V01 + 1]; + char service_name[QMI_SERVREG_LOC_NAME_LENGTH_V01 + 1]; + int total_domains; + int db_rev_count; + struct servreg_loc_entry_v01 *domain_list; +}; + +#if defined(CONFIG_MSM_SERVICE_LOCATOR) +/* + * Use this api to request information regarding the process domains on which + * a particular service runs. The client name and the service name inside the + * pd_qmi_client_data structure need to be filled in by the client calling the + * api. The total domains, db revision and the domain list will be filled in + * by the service locator. + * Returns 0 on success; otherwise a value < 0 if no valid subsystem is found. + */ +int get_service_location(struct pd_qmi_client_data *data); + +/* + * Use this api to request information regarding the subsystem the process + * domain runs on. + * @pd_path: The name field from inside the servreg_loc_entry that one + * gets back using the get_processdomains api. + * Returns 0 on success; otherwise a value < 0 if no valid subsystem is found. + */ +int find_subsys(const char *pd_path, char *subsys); + +#else + +static inline int get_service_location(struct pd_qmi_client_data *data) +{ + return 0; +} + +static inline int find_subsys(const char *pd_path, const char *subsys) +{ + return 0; +} + +#endif /* CONFIG_MSM_SERVICE_LOCATOR */ + +#endif diff --git a/include/soc/qcom/smem.h b/include/soc/qcom/smem.h index c83caede1763..d8ee4d523880 100644 --- a/include/soc/qcom/smem.h +++ b/include/soc/qcom/smem.h @@ -1,4 +1,4 @@ -/* Copyright (c) 2013-2015, The Linux Foundation. All rights reserved. +/* Copyright (c) 2013-2016, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and @@ -76,7 +76,7 @@ enum { SMEM_SMD_BASE_ID, SMEM_SMEM_LOG_IDX = SMEM_SMD_BASE_ID + SMEM_NUM_SMD_STREAM_CHANNELS, SMEM_SMEM_LOG_EVENTS, - SMEM_SMEM_STATIC_LOG_IDX, + SMEM_XBL_LOADER_CORE_INFO, SMEM_SMEM_STATIC_LOG_EVENTS, SMEM_SMEM_SLOW_CLOCK_SYNC, SMEM_SMEM_SLOW_CLOCK_VALUE, diff --git a/include/uapi/linux/nl80211.h b/include/uapi/linux/nl80211.h index 1f0b4cf5dd03..25627f584405 100644 --- a/include/uapi/linux/nl80211.h +++ b/include/uapi/linux/nl80211.h @@ -1783,6 +1783,11 @@ enum nl80211_commands { * between scans. The scan plans are executed sequentially. * Each scan plan is a nested attribute of &enum nl80211_sched_scan_plan. * + * @NL80211_ATTR_PBSS: flag attribute. If set it means operate + * in a PBSS. Specified in %NL80211_CMD_CONNECT to request + * connecting to a PCP, and in %NL80211_CMD_START_AP to start + * a PCP instead of AP. Relevant for DMG networks only. + * * @NUM_NL80211_ATTR: total number of nl80211_attrs available * @NL80211_ATTR_MAX: highest attribute number currently defined * @__NL80211_ATTR_AFTER_LAST: internal use @@ -2157,6 +2162,8 @@ enum nl80211_attrs { NL80211_ATTR_MAX_SCAN_PLAN_ITERATIONS, NL80211_ATTR_SCHED_SCAN_PLANS, + NL80211_ATTR_PBSS, + /* add attributes here, update the policy in nl80211.c */ __NL80211_ATTR_AFTER_LAST, diff --git a/include/uapi/media/msm_cam_sensor.h b/include/uapi/media/msm_cam_sensor.h index c534911d864a..d83e00876fd5 100644 --- a/include/uapi/media/msm_cam_sensor.h +++ b/include/uapi/media/msm_cam_sensor.h @@ -409,8 +409,8 @@ struct msm_actuator_params_t { uint16_t init_setting_size; uint32_t i2c_addr; enum i2c_freq_mode_t i2c_freq_mode; - enum msm_actuator_addr_type i2c_addr_type; - enum msm_actuator_data_type i2c_data_type; + enum msm_camera_i2c_reg_addr_type i2c_addr_type; + enum msm_camera_i2c_data_type i2c_data_type; struct msm_actuator_reg_params_t *reg_tbl_params; struct reg_settings_t *init_settings; struct park_lens_data_t park_lens; diff --git a/include/uapi/media/msm_camsensor_sdk.h b/include/uapi/media/msm_camsensor_sdk.h index eab853bf137f..3985e9750af7 100644 --- a/include/uapi/media/msm_camsensor_sdk.h +++ b/include/uapi/media/msm_camsensor_sdk.h @@ -367,9 +367,9 @@ struct region_params_t { struct reg_settings_t { unsigned short reg_addr; - enum msm_actuator_addr_type addr_type; + enum msm_camera_i2c_reg_addr_type addr_type; unsigned short reg_data; - enum msm_actuator_data_type data_type; + enum msm_camera_i2c_data_type data_type; enum msm_actuator_i2c_operation i2c_operation; unsigned int delay; }; |
