mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-12-13 14:04:05 +08:00
ALSA: seq: Treat snd_seq_client object directly in client drivers
Introduce the new helpers, snd_seq_kernel_client_get() and _put() for kernel client drivers to treat the snd_seq_client more directly. This allows us to reduce the exported symbols and APIs at each time we need to access some field in future. Reviewed-by: Jaroslav Kysela <perex@perex.cz> Link: https://lore.kernel.org/r/20230523075358.9672-20-tiwai@suse.de Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
parent
ea46f79709
commit
d0c8308fc5
@ -2390,6 +2390,21 @@ int snd_seq_kernel_client_write_poll(int clientid, struct file *file, poll_table
|
||||
}
|
||||
EXPORT_SYMBOL(snd_seq_kernel_client_write_poll);
|
||||
|
||||
/* get a sequencer client object; for internal use from a kernel client */
|
||||
struct snd_seq_client *snd_seq_kernel_client_get(int id)
|
||||
{
|
||||
return snd_seq_client_use_ptr(id);
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(snd_seq_kernel_client_get);
|
||||
|
||||
/* put a sequencer client object; for internal use from a kernel client */
|
||||
void snd_seq_kernel_client_put(struct snd_seq_client *cptr)
|
||||
{
|
||||
if (cptr)
|
||||
snd_seq_client_unlock(cptr);
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(snd_seq_kernel_client_put);
|
||||
|
||||
/*---------------------------------------------------------------------------*/
|
||||
|
||||
#ifdef CONFIG_SND_PROC_FS
|
||||
|
@ -88,4 +88,8 @@ void snd_seq_client_ioctl_unlock(int clientid);
|
||||
|
||||
extern int seq_client_load[15];
|
||||
|
||||
/* for internal use between kernel sequencer clients */
|
||||
struct snd_seq_client *snd_seq_kernel_client_get(int client);
|
||||
void snd_seq_kernel_client_put(struct snd_seq_client *cptr);
|
||||
|
||||
#endif
|
||||
|
Loading…
Reference in New Issue
Block a user