/** AudioScience HPI driver Copyright (C) 1997-2014 AudioScience Inc. This program is free software; you can redistribute it and/or modify it under the terms of version 2 of the GNU General Public License as published by the Free Software Foundation; This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ struct hpi_adapter_obj; /* a function that takes an adapter obj and returns an int */ typedef int adapter_int_func(struct hpi_adapter_obj *pao, u32 message); #define HPI_IRQ_NONE (0) #define HPI_IRQ_MESSAGE (1) #define HPI_IRQ_MIXER (2) struct hpi_adapter_obj { struct hpi_pci pci; /* PCI info - bus#,dev#,address etc */ u16 type; /* 0x6644 == ASI6644 etc */ u16 index; struct hpios_spinlock dsp_lock; u16 dsp_crashed; u16 has_control_cache; void *priv; adapter_int_func *irq_query_and_clear; struct hpi_hostbuffer_status *instream_host_buffer_status; struct hpi_hostbuffer_status *outstream_host_buffer_status; }; struct hpi_control_cache { /** indicates whether the structures are initialized */ u16 init; u16 adap_idx; u32 control_count; u32 cache_size_in_bytes; /** pointer to allocated memory of lookup pointers. */ struct hpi_control_cache_info **p_info; /** pointer to DSP's control cache. */ u8 *p_cache; }; struct hpi_adapter_obj *hpi_find_adapter(u16 adapter_index); u16 hpi_add_adapter(struct hpi_adapter_obj *pao); void hpi_delete_adapter(struct hpi_adapter_obj *pao); short hpi_check_control_cache(struct hpi_control_cache *pC, struct hpi_message *phm, struct hpi_response *phr); short hpi_check_control_cache_single(struct hpi_control_cache_single *pC, struct hpi_message *phm, struct hpi_response *phr); struct hpi_control_cache *hpi_alloc_control_cache(const u32 number_of_controls, const u32 size_in_bytes, u8 *pDSP_control_buffer); void hpi_free_control_cache(struct hpi_control_cache *p_cache); void hpi_cmn_control_cache_sync_to_msg(struct hpi_control_cache *pC, struct hpi_message *phm, struct hpi_response *phr); void hpi_cmn_control_cache_sync_to_msg_single(struct hpi_control_cache_single *pC, struct hpi_message *phm, struct hpi_response *phr); u16 hpi_validate_response(struct hpi_message *phm, struct hpi_response *phr); hpi_handler_func HPI_COMMON; href='/cgit.cgi/linux/net-next.git/commit/drivers?id=50b17cfb1917b207612327d354e9043dbcbde431'>drivers
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2016-12-23 11:23:25 -0800
committerLinus Torvalds <torvalds@linux-foundation.org>2016-12-23 11:23:25 -0800
commit50b17cfb1917b207612327d354e9043dbcbde431 (patch)
tree21d86469cdef37e81ade196eab3192d1889c0d7f /drivers
parenta307d0a0074c18bcbea5dec368c9f047be9dade3 (diff)
parent1636098c46ac52c7fec384fe629144e8e03487b1 (diff)
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
Pull networking fixes from David Miller: 1) We have to be careful to not try and place a checksum after the end of a rawv6 packet, fix from Dave Jones with help from Hannes Frederic Sowa. 2) Missing memory barriers in tcp_tasklet_func() lead to crashes, from Eric Dumazet. 3) Several bug fixes for the new XDP support in virtio_net, from Jason Wang. 4) Increase headroom in RX skbs in be2net driver to accomodate encapsulations such as geneve. From Kalesh A P. 5) Fix SKB frag unmapping on TX in mvpp2, from Thomas Petazzoni. 6) Pre-pulling UDP headers created a regression in RECVORIGDSTADDR socket option support, from Willem de Bruijn. 7) UID based routing added a potential OOPS in ip_do_redirect() when we see an SKB without a socket attached. We just need it for the network namespace which we can get from skb->dev instead. Fix from Lorenzo Colitti. * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (30 commits) sctp: fix recovering from 0 win with small data chunks sctp: do not loose window information if in rwnd_over virtio-net: XDP support for small buffers virtio-net: remove big packet XDP codes virtio-net: forbid XDP when VIRTIO_NET_F_GUEST_UFO is support virtio-net: make rx buf size estimation works for XDP virtio-net: unbreak csumed packets for XDP_PASS virtio-net: correctly handle XDP_PASS for linearized packets virtio-net: fix page miscount during XDP linearizing virtio-net: correctly xmit linearized page on XDP_TX virtio-net: remove the warning before XDP linearizing mlxsw: spectrum_router: Correctly remove nexthop groups mlxsw: spectrum_router: Don't reflect dead neighs neigh: Send netevent after marking neigh as dead ipv6: handle -EFAULT from skb_copy_bits inet: fix IP(V6)_RECVORIGDSTADDR for udp sockets net/sched: cls_flower: Mandate mask when matching on flags net/sched: act_tunnel_key: Fix setting UDP dst port in metadata under IPv6 stmmac: CSR clock configuration fix net: ipv4: Don't crash if passing a null sk to ip_do_redirect. ...
Diffstat (limited to 'drivers')