From 7300c28a5ce537300e5fa99f4f8a5500b14b7d8c Mon Sep 17 00:00:00 2001 From: Umesh Pandey Date: Tue, 16 Aug 2016 19:17:29 -0700 Subject: msm: vidc: Add Colorspace in sequence change event For HDR playback, the userspace needs info on the colorspace info for DPB decision. Venus firmware sends a color space info to the driver with the port settings changed event, which is triggered as an insufficient event to userpace if colorspace changes. CRs-Fixed: 1081102 Change-Id: I9665dfc1c52d77dc8953042101d726e7f7ba1807 Signed-off-by: Umesh Pandey --- include/uapi/linux/videodev2.h | 1 + 1 file changed, 1 insertion(+) (limited to 'include') diff --git a/include/uapi/linux/videodev2.h b/include/uapi/linux/videodev2.h index 4a3b35f10257..7be4c28cc1ca 100644 --- a/include/uapi/linux/videodev2.h +++ b/include/uapi/linux/videodev2.h @@ -2161,6 +2161,7 @@ struct v4l2_streamparm { #define V4L2_EVENT_BITDEPTH_FLAG 0x1 #define V4L2_EVENT_PICSTRUCT_FLAG 0x2 +#define V4L2_EVENT_COLOUR_SPACE_FLAG 0x4 #define V4L2_EVENT_MSM_VIDC_START (V4L2_EVENT_PRIVATE_START + 0x00001000) #define V4L2_EVENT_MSM_VIDC_FLUSH_DONE (V4L2_EVENT_MSM_VIDC_START + 1) -- cgit v1.2.3 From 76d0d08e1166f5b2bf85204a1ddfe5f00b322992 Mon Sep 17 00:00:00 2001 From: Amit Nischal Date: Mon, 24 Oct 2016 18:06:02 +0530 Subject: clk: msm: Add COMMON_CLK branch memory flags clk_set_flags would fail for clients using the branch memory flags as the macros vary between the COMMON_CLK_QCOM and COMMON_CLK_MSM. Fix the same by adding the enum definitions. Change-Id: I30cd3fb0435e085e76a60043b80b6ff7aded2819 Signed-off-by: Amit Nischal --- include/linux/clk/msm-clk.h | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'include') diff --git a/include/linux/clk/msm-clk.h b/include/linux/clk/msm-clk.h index 22587e8852e2..964909d25021 100644 --- a/include/linux/clk/msm-clk.h +++ b/include/linux/clk/msm-clk.h @@ -14,6 +14,16 @@ #include +#if defined(CONFIG_COMMON_CLK_QCOM) +enum branch_mem_flags { + CLKFLAG_RETAIN_PERIPH, + CLKFLAG_NORETAIN_PERIPH, + CLKFLAG_RETAIN_MEM, + CLKFLAG_NORETAIN_MEM, + CLKFLAG_PERIPH_OFF_SET, + CLKFLAG_PERIPH_OFF_CLEAR, +}; +#elif defined(CONFIG_COMMON_CLK_MSM) #define CLKFLAG_INVERT 0x00000001 #define CLKFLAG_NOINVERT 0x00000002 #define CLKFLAG_NONEST 0x00000004 @@ -32,6 +42,7 @@ #define CLKFLAG_EPROBE_DEFER 0x00010000 #define CLKFLAG_PERIPH_OFF_SET 0x00020000 #define CLKFLAG_PERIPH_OFF_CLEAR 0x00040000 +#endif struct clk_lookup; struct clk; -- cgit v1.2.3 From e1cf6bb611cb9788fc1095a86926b1e1bf70048a Mon Sep 17 00:00:00 2001 From: Ghanim Fodi Date: Wed, 5 Oct 2016 11:59:18 +0300 Subject: msm: ipa3: Support IPA-USB suspend sequence without remote wake-up Today IPA-USB uses disconnect sequence when USB initiates suspend without remote wake-up, and uses suspend sequence when USB initiates suspend with remote wake-up. In accordance with USB-GSI driver, changing this behavior to use suspend sequence in both of the cases. This is to overcome some USB H/W malfunction when using disconnect sequence in case of suspend scenario. Change-Id: Iba43e192905ab37d196aea4b5d00861b9cb7c347 CRs-Fixed: 1068949 Signed-off-by: Ghanim Fodi --- include/linux/ipa_usb.h | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'include') diff --git a/include/linux/ipa_usb.h b/include/linux/ipa_usb.h index 0fe0e36c551f..de1163348c05 100644 --- a/include/linux/ipa_usb.h +++ b/include/linux/ipa_usb.h @@ -253,6 +253,7 @@ int ipa_usb_deinit_teth_prot(enum ipa_usb_teth_prot teth_prot); * @dl_clnt_hdl: client handle previously obtained from * ipa_usb_xdci_connect() for IN channel * @teth_prot: tethering protocol + * @with_remote_wakeup: Does host support remote wakeup? * * Note: Should not be called from atomic context * Note: for DPL, the ul will be ignored as irrelevant @@ -260,7 +261,8 @@ int ipa_usb_deinit_teth_prot(enum ipa_usb_teth_prot teth_prot); * @Return 0 on success, negative on failure */ int ipa_usb_xdci_suspend(u32 ul_clnt_hdl, u32 dl_clnt_hdl, - enum ipa_usb_teth_prot teth_prot); + enum ipa_usb_teth_prot teth_prot, + bool with_remote_wakeup); /** * ipa_usb_xdci_resume - Peripheral should call this function to resume @@ -313,7 +315,8 @@ static inline int ipa_usb_deinit_teth_prot(enum ipa_usb_teth_prot teth_prot) } static inline int ipa_usb_xdci_suspend(u32 ul_clnt_hdl, u32 dl_clnt_hdl, - enum ipa_usb_teth_prot teth_prot) + enum ipa_usb_teth_prot teth_prot, + bool with_remote_wakeup) { return -EPERM; } -- cgit v1.2.3 From 63288e7dc94dcee420413ea2c5d0ecab5b5d9569 Mon Sep 17 00:00:00 2001 From: Satish kumar sugasi Date: Mon, 17 Oct 2016 15:12:11 -0700 Subject: Bluetooth:Add ioctl to power control connectivity chip Added new ioctl command to perform power on/off operations on connectivity chipset from userspace process. CRs-Fixed: 1049512 Change-Id: Id254a12ba8fc2d57951d158c8fce80168375586d Signed-off-by: Satish kumar sugasi Signed-off-by: Bhakthavatsala Raghavendra --- include/linux/bluetooth-power.h | 1 + 1 file changed, 1 insertion(+) (limited to 'include') diff --git a/include/linux/bluetooth-power.h b/include/linux/bluetooth-power.h index 7be94d298b88..a822ba8c07d1 100644 --- a/include/linux/bluetooth-power.h +++ b/include/linux/bluetooth-power.h @@ -85,4 +85,5 @@ struct bluetooth_power_platform_data { int bt_register_slimdev(struct device *dev); #define BT_CMD_SLIM_TEST 0xbfac +#define BT_CMD_PWR_CTRL 0xbfad #endif /* __LINUX_BLUETOOTH_POWER_H */ -- cgit v1.2.3 From 9b8f3f2e319a47e1f60141e2a5ce9f2857fd7ff1 Mon Sep 17 00:00:00 2001 From: Purushottam Kushwaha Date: Thu, 27 Oct 2016 16:25:38 +0530 Subject: cfg80211: pass struct to interface combination check/iter Move the growing parameter list to a structure for the interface combination check and iteration functions in cfg80211 and mac80211 to make the code easier to understand. Signed-off-by: Purushottam Kushwaha [edit commit message] Signed-off-by: Johannes Berg Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/jberg/mac80211-next.git Git-commit: e227300c8395dffaa7614ce7c7666a82180ebc60 CRs-fixed: 1025311 Change-Id: Ic4c7f66e84c8898d9db630d373b8a3cc8472e826 Signed-off-by: Purushottam Kushwaha --- include/net/cfg80211.h | 48 +++++++++++++++++++++++++----------------------- 1 file changed, 25 insertions(+), 23 deletions(-) (limited to 'include') diff --git a/include/net/cfg80211.h b/include/net/cfg80211.h index 9076fd9f92b2..35c527c7d2e4 100644 --- a/include/net/cfg80211.h +++ b/include/net/cfg80211.h @@ -783,6 +783,26 @@ struct cfg80211_csa_settings { u8 count; }; +/** + * struct iface_combination_params - input parameters for interface combinations + * + * Used to pass interface combination parameters + * + * @num_different_channels: the number of different channels we want + * to use for verification + * @radar_detect: a bitmap where each bit corresponds to a channel + * width where radar detection is needed, as in the definition of + * &struct ieee80211_iface_combination.@radar_detect_widths + * @iftype_num: array with the number of interfaces of each interface + * type. The index is the interface type as specified in &enum + * nl80211_iftype. + */ +struct iface_combination_params { + int num_different_channels; + u8 radar_detect; + int iftype_num[NUM_NL80211_IFTYPES]; +}; + /** * enum station_parameters_apply_mask - station parameter values to apply * @STATION_PARAM_APPLY_UAPSD: apply new uAPSD parameters (uapsd_queues, max_sp) @@ -5333,36 +5353,20 @@ unsigned int ieee80211_get_num_supported_channels(struct wiphy *wiphy); * cfg80211_check_combinations - check interface combinations * * @wiphy: the wiphy - * @num_different_channels: the number of different channels we want - * to use for verification - * @radar_detect: a bitmap where each bit corresponds to a channel - * width where radar detection is needed, as in the definition of - * &struct ieee80211_iface_combination.@radar_detect_widths - * @iftype_num: array with the numbers of interfaces of each interface - * type. The index is the interface type as specified in &enum - * nl80211_iftype. - * + * @params: the interface combinations parameter +* * This function can be called by the driver to check whether a * combination of interfaces and their types are allowed according to * the interface combinations. */ int cfg80211_check_combinations(struct wiphy *wiphy, - const int num_different_channels, - const u8 radar_detect, - const int iftype_num[NUM_NL80211_IFTYPES]); + struct iface_combination_params *params); /** * cfg80211_iter_combinations - iterate over matching combinations * * @wiphy: the wiphy - * @num_different_channels: the number of different channels we want - * to use for verification - * @radar_detect: a bitmap where each bit corresponds to a channel - * width where radar detection is needed, as in the definition of - * &struct ieee80211_iface_combination.@radar_detect_widths - * @iftype_num: array with the numbers of interfaces of each interface - * type. The index is the interface type as specified in &enum - * nl80211_iftype. + * @params: the interface combinations parameter * @iter: function to call for each matching combination * @data: pointer to pass to iter function * @@ -5371,9 +5375,7 @@ int cfg80211_check_combinations(struct wiphy *wiphy, * purposes. */ int cfg80211_iter_combinations(struct wiphy *wiphy, - const int num_different_channels, - const u8 radar_detect, - const int iftype_num[NUM_NL80211_IFTYPES], + struct iface_combination_params *params, void (*iter)(const struct ieee80211_iface_combination *c, void *data), void *data); -- cgit v1.2.3 From cfc8fc0fd5d53c189bc4030e99c149f56bee7d33 Mon Sep 17 00:00:00 2001 From: Benet Clark Date: Fri, 18 Dec 2015 07:51:08 -0800 Subject: msm: mdss: Add Rec2020 YUV conversion to CSC tables Rec2020 CSC type will be set by hwcomposer when incoming YUV data is of the same type. CRs-Fixed: 1081779 Change-Id: I321bd79d04e135030764dcdf83a58fee3c4e72c8 Signed-off-by: Benet Clark --- include/uapi/linux/msm_mdp.h | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'include') diff --git a/include/uapi/linux/msm_mdp.h b/include/uapi/linux/msm_mdp.h index 1df65c7f90b3..f0ac02e9c7a8 100644 --- a/include/uapi/linux/msm_mdp.h +++ b/include/uapi/linux/msm_mdp.h @@ -1406,12 +1406,21 @@ enum { MDP_WRITEBACK_MIRROR_RESUME, }; +/* + * The enum values are continued below as preprocessor macro definitions + */ enum mdp_color_space { MDP_CSC_ITU_R_601, MDP_CSC_ITU_R_601_FR, MDP_CSC_ITU_R_709, }; +/* + * These definitions are a continuation of the mdp_color_space enum above + */ +#define MDP_CSC_ITU_R_2020 (MDP_CSC_ITU_R_709 + 1) +#define MDP_CSC_ITU_R_2020_FR (MDP_CSC_ITU_R_2020 + 1) + enum { mdp_igc_v1_7 = 1, mdp_igc_vmax, -- cgit v1.2.3