- 07 12月, 2017 1 次提交
-
-
由 Puneeth Prabhu 提交于
All nodes of hdmi codec widgets are not updated in sysfs interface (/sys/bus/hdaudio/devices/<dev>/widgets/) as the vendor widget is not programmed to enable all the converters and pins during init. So, refresh the sysfs widget interface after enabling all pins and converters. Signed-off-by: NPuneeth Prabhu <puneethx.prabhu@intel.com> Signed-off-by: NSubhransu S. Prusty <subhransu.s.prusty@intel.com> Signed-off-by: NGuneshwor Singh <guneshwor.o.singh@intel.com> Acked-By: NVinod Koul <vinod.koul@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 01 12月, 2017 3 次提交
-
-
由 Ughreja, Rakesh A 提交于
This patch renames all the variable instances of hdac_device with hdev to prepare the code base to remove the usage of hdac_ext_device data structures done in the following patches. Existing code uses hdev and hdac as variable names for hdac_device as well as hdac_ext_device, which creates confusion. Signed-off-by: NRakesh Ughreja <rakesh.a.ughreja@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Ughreja, Rakesh A 提交于
Existing code uses hdac and edev inconsistently to represent hdac_ext_device structure which creates confusion because hdac is used even to represent hdac_device. So this patch replaces all the variable instances of hdac_ext_device with edev. In the later patch all the variable instances of hdac_device will be replaced with hdev. This prepares the code base to remove the usage of hdac_ext_device data structures done in the subsequent patches. Signed-off-by: NRakesh Ughreja <rakesh.a.ughreja@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Ughreja, Rakesh A 提交于
This patch replaces the direct access of HDMI private data with macro hdev_to_hdmi_priv in order to prepare the code to remove hdac_ext_device usage in the subsequent patch. Signed-off-by: NRakesh Ughreja <rakesh.a.ughreja@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 09 11月, 2017 3 次提交
-
-
由 Subhransu S. Prusty 提交于
During failure, widgets in cvt_list and pin_list are not freed. So fix the possible memory leak by freeing them when failure occurs. Signed-off-by: NSubhransu S. Prusty <subhransu.s.prusty@intel.com> Signed-off-by: NGuneshwor Singh <guneshwor.o.singh@intel.com> Acked-By: NVinod Koul <vinod.koul@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Subhransu S. Prusty 提交于
Pointers hdac_hdmi_pcm and hda_device_id can be NULL, so add check for valid pointer to avoid NULL pointer dereference. Signed-off-by: NSubhransu S. Prusty <subhransu.s.prusty@intel.com> Signed-off-by: NGuneshwor Singh <guneshwor.o.singh@intel.com> Acked-By: NVinod Koul <vinod.koul@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Subhransu S. Prusty 提交于
Use snprintf instead of sprintf to shut the warning. Signed-off-by: NSubhransu S. Prusty <subhransu.s.prusty@intel.com> Signed-off-by: NGuneshwor Singh <guneshwor.o.singh@intel.com> Acked-By: NVinod Koul <vinod.koul@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 18 8月, 2017 1 次提交
-
-
由 Arvind Yadav 提交于
snd_soc_dai_ops are not supposed to change at runtime. All functions working with snd_soc_dai_ops provided by <sound/soc-dai.h> work with const snd_soc_dai_ops. So mark the non-const structs as const. Signed-off-by: NArvind Yadav <arvind.yadav.cs@gmail.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 10 8月, 2017 1 次提交
-
-
由 Bhumika Goyal 提交于
Declare snd_soc_codec_driver structures as const as they are only passed as an argument to the function snd_soc_register_codec. This argument is of type const, so declare the structures with this property as const. In file codecs/sn95031.c, snd_soc_codec_driver structure is also used in a copy operation along with getting passed to snd_soc_register_codec. So, it can be made const too. Done using Coccinelle: @match disable optional_qualifier@ identifier s; position p; @@ static struct snd_soc_codec_driver s@p={...}; @good1@ identifier match.s; position p; @@ snd_soc_register_codec(...,&s@p,...) @bad@ identifier match.s; position p!={match.p,good1.p}; @@ s@p @depends on !bad disable optional_qualifier@ identifier match.s; @@ static +const struct snd_soc_codec_driver s={...}; Signed-off-by: NBhumika Goyal <bhumirks@gmail.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 20 7月, 2017 1 次提交
-
-
由 Pradeep Tewani 提交于
Geminilake HDMI codec has the different vendor nid. This patch adds the vendor nid as the part of driver data and uses it. Signed-off-by: NPradeep Tewani <pradeep.d.tewani@intel.com> Acked-By: NVinod Koul <vinod.koul@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 17 7月, 2017 1 次提交
-
-
由 Gustavo A. R. Silva 提交于
This structure is only stored in the ops field of a snd_soc_dai_driver structure. That field is declared const, so snd_soc_dai_ops structures that have this property can be declared as const also. Signed-off-by: NGustavo A. R. Silva <garsilva@embeddedor.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 29 3月, 2017 1 次提交
-
-
由 Jeeja KP 提交于
When creating the codec dai, use sig_bits to update the max bps based on the codec capability. So both the link DMA and codec format will be calculated based on DAI sig_bits. So update the sig_bits with converter capability and use the sig_bits for HDA format calculation. Signed-off-by: NJeeja KP <jeeja.kp@intel.com> Acked-by: NVinod Koul <vinod.koul@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 06 3月, 2017 2 次提交
-
-
由 Jeeja KP 提交于
Fix not to update the iterator element, instead use list_del to remove entry from the list. This fixes the following coccinelle and static checker warning: sound/soc/codecs/hdac_hdmi.c:1884:2-21:iterator with update on line 1885 sound/soc/codecs/hdac_hdmi.c:2011 hdac_hdmi_dev_remove() error: potential NULL dereference 'port'. Fixes: e0e5d3e5('ASoC: hdac_hdmi: Add support for multiple ports to a PCM') Reported-by: NJulia Lawall <Julia.Lawall@lip6.fr> Reported-by: NDan Carpenter <dan.carpenter@oracle.com> Signed-off-by: NJeeja KP <jeeja.kp@intel.com> Acked-by: NVinod Koul <vinod.koul@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Jeeja KP 提交于
Using pin list array iterator outside the iteration of the list can point to dummy element, which can be invalid. So don't use pin variable outside the pin list iteration. This fixes the following coccinelle warning: sound/soc/codecs/hdac_hdmi.c:1419:5-8: ERROR: invalid reference to the index variable of the iterator Fixes: 2acd8309('ASoC: hdac_hdmi: Add support to handle MST capable pin') Reported-by: NJulia Lawall <Julia.Lawall@lip6.fr> Signed-off-by: NJeeja KP <jeeja.kp@intel.com> Acked-by: NVinod Koul <vinod.koul@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 17 2月, 2017 7 次提交
-
-
由 Vinod Koul 提交于
Geminilake is new Intel SoC, so add codec entry for HDMI Signed-off-by: NVinod Koul <vinod.koul@intel.com> Signed-off-by: NSenthilnathan Veppur <senthilnathanx.veppur@intel.com> Signed-off-by: NSubhransu S. Prusty <subhransu.s.prusty@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Jeeja KP 提交于
Represent each port as machine DAPM pin widget. This helps in enable/disable pin when monitor is connected/disconnected in case pcm is rendered to multiple ports. Create machine pin widgets and pin switch kcontrol for each port and report based on the pin status Signed-off-by: NJeeja KP <jeeja.kp@intel.com> Acked-by: NVinod Koul <vinod.koul@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Jeeja KP 提交于
Use snd_soc_jack instead of snd_jack and create the jack in machine driver and pass the jack pointer to hdac_hdmi driver for jack reporting. Signed-off-by: NJeeja KP <jeeja.kp@intel.com> Acked-by: NVinod Koul <vinod.koul@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Jeeja KP 提交于
Since we have the MST feature enabled and Pin-Port mux for user to select the converter routing, multiple port mapping to same converter needs to be supported. To support multiple port mapped to same converter following changes are done for this:. o Add port list to pcm, so that multiple ports can be mapped to a PCM. o Jack reporting in case where multiple port are attached to same PCM. o Change hdac_hdmi_get_port_from_cvt(), channel_map, remove functions to parse through all ports mapped to same the PCM. Signed-off-by: NJeeja KP <jeeja.kp@intel.com> Acked-by: NVinod Koul <vinod.koul@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Jeeja KP 提交于
To enable stream on a specific port of a MST capable pin, the port needs to be selected before we configure the pin widget verb. When port is selected, all the pin widget verb controlling the sink device operation will be directed to selected port. So add port selection before configuring the pin widget verb. Signed-off-by: NJeeja KP <jeeja.kp@intel.com> Acked-by: NVinod Koul <vinod.koul@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Jeeja KP 提交于
The ELD notification can be received asynchronously from the graphics side and this may happen just at the moment the sound driver is initializing and notification will be missed. Similarly at system resume, the notification is ignored as the ELD and connection states are updated in anyway at the end of the resume. So check the jack status in boot/resume by querying the port presence based on pin caps and report the jack status. Signed-off-by: NJeeja KP <jeeja.kp@intel.com> Acked-by: NVinod Koul <vinod.koul@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Jeeja KP 提交于
To support DP MST audio, new pin verbs/params are added. This patch adds helper functions to do following: o To set a specific port o To get the currently selected port o To get the length of port. Signed-off-by: NJeeja KP <jeeja.kp@intel.com> Acked-by: NVinod Koul <vinod.koul@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 09 2月, 2017 2 次提交
-
-
由 Jeeja KP 提交于
To handle jack event and configuration of the pin widget for MST capable pin, this patch adds: o Flag to identify the pin is MST capable. o In notify callback(), based on the pipe and port information marks if the port is mst_capable. In case of non MST, port is defaulted to zero. Signed-off-by: NJeeja KP <jeeja.kp@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Jeeja KP 提交于
With MST each pin contains several ports to which device can be connected. As a preparatory work to support DP MST this patch adds below changes: 1. Defines the port structure and moves all stream related information like ELD, converter list, chmap to port. 2. Creates ports for each pin based on the max_ports support. 3. Based on Pin-Port combination creates DAPM Mux widget instead of Pin to allow user to select a converter. 4. Port zero is the default port when pin does not support MST. Signed-off-by: NJeeja KP <jeeja.kp@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 04 2月, 2017 1 次提交
-
-
由 Jeeja KP 提交于
Channel info is part of the pcm parameter and channel map control is created for each pcm. So move channel info to pcm instead of pin structure and the mutex lock to pcm. Signed-off-by: NJeeja KP <jeeja.kp@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 25 1月, 2017 1 次提交
-
-
由 Jeeja KP 提交于
In case of hdmi connect/disconnect or when stream need to be route to multiple monitors, corresponding port and audio infoframe needs to be reconfigured. Currently all the configuration are done in DAI ops which results in silence playback. So use dapm widget event handlers to program audio infoframe and enable /disable port configuration when widget is power on/off. Signed-off-by: NJeeja KP <jeeja.kp@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 20 1月, 2017 1 次提交
-
-
由 Sandeep Tayal 提交于
With codec read sometimes the pin_sense shows invalid monitor present and eld_valid. Currently driver polls for few times to get the valid eld data. To avoid the latency, Instead of reading ELD from codec, read it directly from the display driver using audio component framework. and removed the unused direct codec helper functions. Signed-off-by: NSandeep Tayal <sandeepx.tayal@intel.com> Signed-off-by: NJeeja KP <jeeja.kp@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 19 1月, 2017 1 次提交
-
-
由 Jeeja KP 提交于
Instead of enabling pin and cvt in pcm_open(), need to restore pin and cvt state after system resume to restart the playback which is paused/stopped before system suspend. So enable pin and cvt in playback_prepare and call prepare when trigger cmd is paused/started and resume to reconfigure pin and cvt. Signed-off-by: NSachin Mokashi <sachinx.mokashi@intel.com> Signed-off-by: NJeeja KP <jeeja.kp@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 15 12月, 2016 1 次提交
-
-
由 Vinod Koul 提交于
In hdac_hdmi_playback_cleanup(), a variable 'dai_map' is initialized but not used. Also while removing this two mare variables 'edev' and 'hdmi' become unused, so remove all these as well. sound/soc/codecs/hdac_hdmi.c: In function ‘hdac_hdmi_playback_cleanup’: sound/soc/codecs/hdac_hdmi.c:470:32: warning: variable ‘dai_map’ set but not used [-Wunused-but-set-variable] struct hdac_hdmi_dai_pin_map *dai_map; Signed-off-by: NVinod Koul <vinod.koul@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 26 9月, 2016 1 次提交
-
-
由 Mark Brown 提交于
The audio component framework code has not yet landed in the i915 driver so drop the use of the API for the time being. Signed-off-by: NMark Brown <broonie@kernel.org> Cc: Jeeja KP <jeeja.kp@intel.com>
-
- 25 9月, 2016 1 次提交
-
-
由 Sandeep Tayal 提交于
With codec read sometimes the pin_sense shows invalid monitor present and eld_valid. Currently driver polls for few times to get the valid ELD data. To avoid the latency, Instead of reading ELD from codec, read it directly from the display driver using audio component framework. Removed the direct codec helper functions. Signed-off-by: NSandeep Tayal <sandeepx.tayal@intel.com> Signed-off-by: NJeeja KP <jeeja.kp@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 23 9月, 2016 1 次提交
-
-
由 Pandiyan, Dhinakaran 提交于
DP MST provides the capability to send multiple video and audio streams through a single port. This requires the API's between i915 and audio drivers to distinguish between multiple audio capable displays that can be connected to a port. Currently only the port identity is shared in the APIs. This patch adds support for MST with an additional parameter 'int pipe'. The existing parameter 'port' does not change it's meaning. pipe = MST : display pipe that the stream originates from Non-MST : -1 Affected APIs: struct i915_audio_component_ops - int (*sync_audio_rate)(struct device *, int port, int rate); + int (*sync_audio_rate)(struct device *, int port, int pipe, + int rate); - int (*get_eld)(struct device *, int port, bool *enabled, - unsigned char *buf, int max_bytes); + int (*get_eld)(struct device *, int port, int pipe, + bool *enabled, unsigned char *buf, int max_bytes); struct i915_audio_component_audio_ops - void (*pin_eld_notify)(void *audio_ptr, int port); + void (*pin_eld_notify)(void *audio_ptr, int port, int pipe); This patch makes dummy changes in the audio drivers (thanks Libin) for build to succeed. The audio side drivers will send the right 'pipe' values for MST in patches that will follow. v2: Renamed the new API parameter from 'dev_id' to 'pipe'. (Jim, Ville) Included Asoc driver API compatibility changes from Jeeja. Added WARN_ON() for invalid pipe in get_saved_encoder(). (Takashi) Added comment for av_enc_map[] definition. (Takashi) v3: Fixed logic error introduced while renaming 'dev_id' as 'pipe' (Ville) Renamed get_saved_encoder() to get_saved_enc() to reduce line length v4: Rebased. Parameter check for pipe < -1 values in get_saved_enc() (Ville) Switched to for_each_pipe() in get_saved_enc() (Ville) Renamed 'pipe' to 'dev_id' in audio side code (Takashi) v5: Included a comment for the dev_id arg. (Libin) Signed-off-by: NDhinakaran Pandiyan <dhinakaran.pandiyan@intel.com> Reviewed-by: NTakashi Iwai <tiwai@suse.de> Reviewed-by: NVille Syrjälä <ville.syrjala@linux.intel.com> Signed-off-by: NRodrigo Vivi <rodrigo.vivi@intel.com> Link: http://patchwork.freedesktop.org/patch/msgid/1474488168-2343-1-git-send-email-dhinakaran.pandiyan@intel.com
-
- 02 9月, 2016 1 次提交
-
-
由 Colin Ian King 提交于
Trivial fix to spelling mistake in dev_warn message. Signed-off-by: NColin Ian King <colin.king@canonical.com> Acked-by: NVinod Koul <vinod.koul@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 12 7月, 2016 2 次提交
-
-
由 Shreyas NC 提交于
Kabylake platform is similar to Skylake. So, add the device id. Signed-off-by: NShreyas NC <shreyas.nc@intel.com> Signed-off-by: NVinod Koul <vinod.koul@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Vinod Koul 提交于
Static checker warns: Pointer 'hlink' returned from call to function 'snd_hdac_ext_bus_get_link' at line may be NULL and will be dereferenced" So we should always check the return of snd_hdac_ext_bus_get_link() before referencing the link pointer Signed-off-by: NVinod Koul <vinod.koul@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 27 6月, 2016 1 次提交
-
-
由 Vedang Patel 提交于
The hdac_hdmi codec driver prints the ELD information everytime an external monitor is connected. Make it so that the information is only printed when someone trying to debug the driver explicitly enables it. print_hex_dump_bytes (which just calls print_hex_dump) uses printk(KERN_DEBUG,... which is different from dev_dbg used elsewhere in the driver: it's always enabled at compile-time. Change it to print_hex_dump_debug for logging consistency. Signed-off-by: NVedang Patel <vedang.patel@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 31 5月, 2016 1 次提交
-
-
由 Vinod Koul 提交于
Static checker warns: Pointer 'hlink' returned from call to function 'snd_hdac_ext_bus_get_link' at line may be NULL and will be dereferenced" So we should always check the return of snd_hdac_ext_bus_get_link() before referencing the link pointer Signed-off-by: NVinod Koul <vinod.koul@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 17 5月, 2016 1 次提交
-
-
由 Fabio Estevam 提交于
Commit b2047e99 ("ASoC: hdac_hdmi: add link management") introuduced the following build warning: sound/soc/codecs/hdac_hdmi.c:1721:16: warning: unused variable 'timeout' [-Wunused-variable] Remove the unused 'timeout' variable. Signed-off-by: NFabio Estevam <fabio.estevam@nxp.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 13 5月, 2016 1 次提交
-
-
由 Vinod Koul 提交于
Manage the hda idisp link using shiny new link APIs. We need to keep link On while we probe and also hold the reference in runtime resume and drop in suspend Signed-off-by: NJeeja KP <jeeja.kp@intel.com> Signed-off-by: NVinod Koul <vinod.koul@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 04 5月, 2016 1 次提交
-
-
由 Dan Carpenter 提交于
We intended || here instead of &&. The original code potentially leads to a NULL dereference. Fixes: 2889099e ('ASoC: hdac_hdmi: Register chmap controls and ops') Signed-off-by: NDan Carpenter <dan.carpenter@oracle.com> Reviewd-by: NTakashi Sakamoto <o-takashi@sakamocchi.jp> Acked-by: NVinod Koul <vinod.koul@intel.com> Tested-by: NSachin Mokashi <sachinx.mokashi@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 29 4月, 2016 1 次提交
-
-
由 Subhransu S. Prusty 提交于
With this patch, chmap controls are created and user space can set the channel map. Signed-off-by: NSubhransu S. Prusty <subhransu.s.prusty@intel.com> Signed-off-by: NVinod Koul <vinod.koul@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-