CC: [email protected]
CC: [email protected]
TO: Cezary Rojewski <[email protected]>
CC: Mark Brown <[email protected]>

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 
master
head:   04300d66f0a06d572d9f2ad6768c38cabde22179
commit: abf31feea26c0f412a191c83f408311a0de7435c ASoC: Intel: Update 
request-reply IPC model
date:   12 months ago
:::::: branch date: 10 hours ago
:::::: commit date: 12 months ago
config: i386-randconfig-m031-20200726 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-14) 9.3.0

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <[email protected]>
Reported-by: Dan Carpenter <[email protected]>

smatch warnings:
sound/soc/intel/haswell/sst-haswell-ipc.c:856 sst_hsw_stream_set_volume() warn: 
should 'stream->reply.stream_hw_id << 16' be a 64 bit type?
sound/soc/intel/haswell/sst-haswell-ipc.c:858 sst_hsw_stream_set_volume() warn: 
should 'stage_id << 10' be a 64 bit type?
sound/soc/intel/haswell/sst-haswell-ipc.c:942 sst_hsw_mixer_set_volume() warn: 
should 'hsw->mixer_info.mixer_hw_id << 16' be a 64 bit type?
sound/soc/intel/haswell/sst-haswell-ipc.c:944 sst_hsw_mixer_set_volume() warn: 
should 'stage_id << 10' be a 64 bit type?

# 
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=abf31feea26c0f412a191c83f408311a0de7435c
git remote add linus 
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
git remote update linus
git checkout abf31feea26c0f412a191c83f408311a0de7435c
vim +856 sound/soc/intel/haswell/sst-haswell-ipc.c

a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  840  
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  841  /* stream volume */
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  842  int sst_hsw_stream_set_volume(struct sst_hsw *hsw,
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  843       struct sst_hsw_stream *stream, u32 stage_id, u32 channel, 
u32 volume)
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  844  {
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  845       struct sst_hsw_ipc_volume_req *req;
abf31feea26c0f4 sound/soc/intel/haswell/sst-haswell-ipc.c Cezary Rojewski 
2019-07-23  846       struct sst_ipc_message request;
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  847       int ret;
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  848  
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  849       trace_ipc_request("set stream volume", 
stream->reply.stream_hw_id);
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  850  
f1e5982546edf96 sound/soc/intel/sst-haswell-ipc.c         Jie Yang        
2014-11-25  851       if (channel >= 2 && channel != SST_HSW_CHANNELS_ALL)
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  852               return -EINVAL;
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  853  
abf31feea26c0f4 sound/soc/intel/haswell/sst-haswell-ipc.c Cezary Rojewski 
2019-07-23  854       request.header = IPC_GLB_TYPE(IPC_GLB_STREAM_MESSAGE) |
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  855               IPC_STR_TYPE(IPC_STR_STAGE_MESSAGE);
abf31feea26c0f4 sound/soc/intel/haswell/sst-haswell-ipc.c Cezary Rojewski 
2019-07-23 @856       request.header |= (stream->reply.stream_hw_id << 
IPC_STR_ID_SHIFT);
abf31feea26c0f4 sound/soc/intel/haswell/sst-haswell-ipc.c Cezary Rojewski 
2019-07-23  857       request.header |= (IPC_STG_SET_VOLUME << 
IPC_STG_TYPE_SHIFT);
abf31feea26c0f4 sound/soc/intel/haswell/sst-haswell-ipc.c Cezary Rojewski 
2019-07-23 @858       request.header |= (stage_id << IPC_STG_ID_SHIFT);
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  859  
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  860       req = &stream->vol_req;
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  861       req->target_volume = volume;
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  862  
f1e5982546edf96 sound/soc/intel/sst-haswell-ipc.c         Jie Yang        
2014-11-25  863       /* set both at same time ? */
f1e5982546edf96 sound/soc/intel/sst-haswell-ipc.c         Jie Yang        
2014-11-25  864       if (channel == SST_HSW_CHANNELS_ALL) {
f1e5982546edf96 sound/soc/intel/sst-haswell-ipc.c         Jie Yang        
2014-11-25  865               if (hsw->mute[0] && hsw->mute[1]) {
f1e5982546edf96 sound/soc/intel/sst-haswell-ipc.c         Jie Yang        
2014-11-25  866                       hsw->mute_volume[0] = hsw->mute_volume[1] 
= volume;
f1e5982546edf96 sound/soc/intel/sst-haswell-ipc.c         Jie Yang        
2014-11-25  867                       return 0;
f1e5982546edf96 sound/soc/intel/sst-haswell-ipc.c         Jie Yang        
2014-11-25  868               } else if (hsw->mute[0])
f1e5982546edf96 sound/soc/intel/sst-haswell-ipc.c         Jie Yang        
2014-11-25  869                       req->channel = 1;
f1e5982546edf96 sound/soc/intel/sst-haswell-ipc.c         Jie Yang        
2014-11-25  870               else if (hsw->mute[1])
f1e5982546edf96 sound/soc/intel/sst-haswell-ipc.c         Jie Yang        
2014-11-25  871                       req->channel = 0;
f1e5982546edf96 sound/soc/intel/sst-haswell-ipc.c         Jie Yang        
2014-11-25  872               else
f1e5982546edf96 sound/soc/intel/sst-haswell-ipc.c         Jie Yang        
2014-11-25  873                       req->channel = SST_HSW_CHANNELS_ALL;
f1e5982546edf96 sound/soc/intel/sst-haswell-ipc.c         Jie Yang        
2014-11-25  874       } else {
f1e5982546edf96 sound/soc/intel/sst-haswell-ipc.c         Jie Yang        
2014-11-25  875               /* set only 1 channel */
f1e5982546edf96 sound/soc/intel/sst-haswell-ipc.c         Jie Yang        
2014-11-25  876               if (hsw->mute[channel]) {
f1e5982546edf96 sound/soc/intel/sst-haswell-ipc.c         Jie Yang        
2014-11-25  877                       hsw->mute_volume[channel] = volume;
f1e5982546edf96 sound/soc/intel/sst-haswell-ipc.c         Jie Yang        
2014-11-25  878                       return 0;
f1e5982546edf96 sound/soc/intel/sst-haswell-ipc.c         Jie Yang        
2014-11-25  879               }
f1e5982546edf96 sound/soc/intel/sst-haswell-ipc.c         Jie Yang        
2014-11-25  880               req->channel = channel;
f1e5982546edf96 sound/soc/intel/sst-haswell-ipc.c         Jie Yang        
2014-11-25  881       }
f1e5982546edf96 sound/soc/intel/sst-haswell-ipc.c         Jie Yang        
2014-11-25  882  
abf31feea26c0f4 sound/soc/intel/haswell/sst-haswell-ipc.c Cezary Rojewski 
2019-07-23  883       request.data = req;
abf31feea26c0f4 sound/soc/intel/haswell/sst-haswell-ipc.c Cezary Rojewski 
2019-07-23  884       request.size = sizeof(*req);
abf31feea26c0f4 sound/soc/intel/haswell/sst-haswell-ipc.c Cezary Rojewski 
2019-07-23  885       ret = sst_ipc_tx_message_wait(&hsw->ipc, request, NULL);
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  886       if (ret < 0) {
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  887               dev_err(hsw->dev, "error: set stream volume 
failed\n");
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  888               return ret;
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  889       }
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  890  
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  891       return 0;
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  892  }
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  893  
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  894  int sst_hsw_mixer_get_volume(struct sst_hsw *hsw, u32 
stage_id, u32 channel,
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  895       u32 *volume)
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  896  {
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  897       if (channel > 1)
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  898               return -EINVAL;
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  899  
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  900       sst_dsp_read(hsw->dsp, volume,
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  901               hsw->mixer_info.volume_register_address[channel],
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  902               sizeof(*volume));
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  903  
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  904       return 0;
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  905  }
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  906  
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  907  /* global mixer volume */
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  908  int sst_hsw_mixer_set_volume(struct sst_hsw *hsw, u32 
stage_id, u32 channel,
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  909       u32 volume)
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  910  {
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  911       struct sst_hsw_ipc_volume_req req;
abf31feea26c0f4 sound/soc/intel/haswell/sst-haswell-ipc.c Cezary Rojewski 
2019-07-23  912       struct sst_ipc_message request;
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  913       int ret;
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  914  
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  915       trace_ipc_request("set mixer volume", volume);
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  916  
f1e5982546edf96 sound/soc/intel/sst-haswell-ipc.c         Jie Yang        
2014-11-25  917       if (channel >= 2 && channel != SST_HSW_CHANNELS_ALL)
f1e5982546edf96 sound/soc/intel/sst-haswell-ipc.c         Jie Yang        
2014-11-25  918               return -EINVAL;
f1e5982546edf96 sound/soc/intel/sst-haswell-ipc.c         Jie Yang        
2014-11-25  919  
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  920       /* set both at same time ? */
f1e5982546edf96 sound/soc/intel/sst-haswell-ipc.c         Jie Yang        
2014-11-25  921       if (channel == SST_HSW_CHANNELS_ALL) {
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  922               if (hsw->mute[0] && hsw->mute[1]) {
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  923                       hsw->mute_volume[0] = hsw->mute_volume[1] 
= volume;
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  924                       return 0;
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  925               } else if (hsw->mute[0])
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  926                       req.channel = 1;
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  927               else if (hsw->mute[1])
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  928                       req.channel = 0;
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  929               else
f1e5982546edf96 sound/soc/intel/sst-haswell-ipc.c         Jie Yang        
2014-11-25  930                       req.channel = SST_HSW_CHANNELS_ALL;
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  931       } else {
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  932               /* set only 1 channel */
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  933               if (hsw->mute[channel]) {
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  934                       hsw->mute_volume[channel] = volume;
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  935                       return 0;
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  936               }
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  937               req.channel = channel;
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  938       }
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  939  
abf31feea26c0f4 sound/soc/intel/haswell/sst-haswell-ipc.c Cezary Rojewski 
2019-07-23  940       request.header = IPC_GLB_TYPE(IPC_GLB_STREAM_MESSAGE) |
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  941               IPC_STR_TYPE(IPC_STR_STAGE_MESSAGE);
abf31feea26c0f4 sound/soc/intel/haswell/sst-haswell-ipc.c Cezary Rojewski 
2019-07-23 @942       request.header |= (hsw->mixer_info.mixer_hw_id << 
IPC_STR_ID_SHIFT);
abf31feea26c0f4 sound/soc/intel/haswell/sst-haswell-ipc.c Cezary Rojewski 
2019-07-23  943       request.header |= (IPC_STG_SET_VOLUME << 
IPC_STG_TYPE_SHIFT);
abf31feea26c0f4 sound/soc/intel/haswell/sst-haswell-ipc.c Cezary Rojewski 
2019-07-23 @944       request.header |= (stage_id << IPC_STG_ID_SHIFT);
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  945  
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  946       req.curve_duration = hsw->curve_duration;
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  947       req.curve_type = hsw->curve_type;
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  948       req.target_volume = volume;
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  949  
abf31feea26c0f4 sound/soc/intel/haswell/sst-haswell-ipc.c Cezary Rojewski 
2019-07-23  950       request.data = &req;
abf31feea26c0f4 sound/soc/intel/haswell/sst-haswell-ipc.c Cezary Rojewski 
2019-07-23  951       request.size = sizeof(req);
abf31feea26c0f4 sound/soc/intel/haswell/sst-haswell-ipc.c Cezary Rojewski 
2019-07-23  952       ret = sst_ipc_tx_message_wait(&hsw->ipc, request, NULL);
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  953       if (ret < 0) {
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  954               dev_err(hsw->dev, "error: set mixer volume 
failed\n");
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  955               return ret;
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  956       }
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  957  
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  958       return 0;
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  959  }
a4b12990b680792 sound/soc/intel/sst-haswell-ipc.c         Mark Brown      
2014-03-12  960  

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/[email protected]

Attachment: .config.gz
Description: application/gzip

_______________________________________________
kbuild mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to