/** * Copyright (C) 2008, Creative Technology Ltd. All Rights Reserved. * * This source file is released under GPL v2 license (no other versions). * See the COPYING file included in the main directory of this source * distribution for the license terms and conditions. * * @File ctdaio.h * * @Brief * This file contains the definition of Digital Audio Input Output * resource management object. * * @Author Liu Chun * @Date May 23 2008 * */ #ifndef CTDAIO_H #define CTDAIO_H #include "ctresource.h" #include "ctimap.h" #include #include #include /* Define the descriptor of a daio resource */ enum DAIOTYP { LINEO1, LINEO2, LINEO3, LINEO4, SPDIFOO, /* S/PDIF Out (Flexijack/Optical) */ LINEIM, SPDIFIO, /* S/PDIF In (Flexijack/Optical) on the card */ MIC, /* Dedicated mic on Titanium HD */ SPDIFI1, /* S/PDIF In on internal Drive Bay */ NUM_DAIOTYP }; struct dao_rsc_ops; struct dai_rsc_ops; struct daio_mgr; struct daio { struct rsc rscl; /* Basic resource info for left TX/RX */ struct rsc rscr; /* Basic resource info for right TX/RX */ enum DAIOTYP type; }; struct dao { struct daio daio; const struct dao_rsc_ops *ops; /* DAO specific operations */ struct imapper **imappers; struct daio_mgr *mgr; struct hw *hw; void *ctrl_blk; }; struct dai { struct daio daio; const struct dai_rsc_ops *ops; /* DAI specific operations */ struct hw *hw; void *ctrl_blk; }; struct dao_desc { unsigned int msr:4; unsigned int passthru:1; }; struct dao_rsc_ops { int (*set_spos)(struct dao *dao, unsigned int spos); int (*commit_write)(struct dao *dao); int (*get_spos)(struct dao *dao, unsigned int *spos); int (*reinit)(struct dao *dao, const struct dao_desc *desc); int (*set_left_input)(struct dao *dao, struct rsc *input); int (*set_right_input)(struct dao *dao, struct rsc *input); int (*clear_left_input)(struct dao *dao); int (*clear_right_input)(struct dao *dao); }; struct dai_rsc_ops { int (*set_srt_srcl)(struct dai *dai, struct rsc *src); int (*set_srt_srcr)(struct dai *dai, struct rsc *src); int (*set_srt_msr)(struct dai *dai, unsigned int msr); int (*set_enb_src)(struct dai *dai, unsigned int enb); int (*set_enb_srt)(struct dai *dai, unsigned int enb); int (*commit_write)(struct dai *dai); }; /* Define daio resource request description info */ struct daio_desc { unsigned int type:4; unsigned int msr:4; unsigned int passthru:1; }; struct daio_mgr { struct rsc_mgr mgr; /* Basic resource manager info */ struct snd_card *card; /* pointer to this card */ spinlock_t mgr_lock; spinlock_t imap_lock; struct list_head imappers; struct imapper *init_imap; unsigned int init_imap_added; /* request one daio resource */ int (*get_daio)(struct daio_mgr *mgr, const struct daio_desc *desc, struct daio **rdaio); /* return one daio resource */ int (*put_daio)(struct daio_mgr *mgr, struct daio *daio); int (*daio_enable)(struct daio_mgr *mgr, struct daio *daio); int (*daio_disable)(struct daio_mgr *mgr, struct daio *daio); int (*imap_add)(struct daio_mgr *mgr, struct imapper *entry); int (*imap_delete)(struct daio_mgr *mgr, struct imapper *entry); int (*commit_write)(struct daio_mgr *mgr); }; /* Constructor and destructor of daio resource manager */ int daio_mgr_create(struct hw *hw, struct daio_mgr **rdaio_mgr); int daio_mgr_destroy(struct daio_mgr *daio_mgr); #endif /* CTDAIO_H */ pf.h?h=nds-private-remove&id=930a42ded3fede7ca3acafc9153f4f2d0f56a92c'>libbpf.h
alue='9'>9
AgeCommit message (Expand)AuthorFilesLines
space:
mode:
authorArnd Bergmann <arnd@arndb.de>2017-01-27 13:32:14 +0100
committerDavid S. Miller <davem@davemloft.net>2017-01-27 11:27:34 -0500
commit950eabbd6ddedc1b08350b9169a6a51b130ebaaf (patch)
treed95059bdeef0a9c6ca498940c088b6c63f70cf7a /drivers/usb/serial/ftdi_sio_ids.h
parent9d162ed69f51cbd9ee5a0c7e82aba7acc96362ff (diff)
ISDN: eicon: silence misleading array-bounds warning
With some gcc versions, we get a warning about the eicon driver, and that currently shows up as the only remaining warning in one of the build bots: In file included from ../drivers/isdn/hardware/eicon/message.c:30:0: eicon/message.c: In function 'mixer_notify_update': eicon/platform.h:333:18: warning: array subscript is above array bounds [-Warray-bounds] The code is easily changed to open-code the unusual PUT_WORD() line causing this to avoid the warning. Cc: stable@vger.kernel.org Link: http://arm-soc.lixom.net/buildlogs/stable-rc/v4.4.45/ Signed-off-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/usb/serial/ftdi_sio_ids.h')