1fb448904SSepherosa Ziehau /*- 293b4e111SSepherosa Ziehau * Copyright (c) 2009-2012,2016-2017 Microsoft Corp. 3fb448904SSepherosa Ziehau * Copyright (c) 2010-2012 Citrix Inc. 4fb448904SSepherosa Ziehau * Copyright (c) 2012 NetApp Inc. 5fb448904SSepherosa Ziehau * All rights reserved. 6fb448904SSepherosa Ziehau * 7fb448904SSepherosa Ziehau * Redistribution and use in source and binary forms, with or without 8fb448904SSepherosa Ziehau * modification, are permitted provided that the following conditions 9fb448904SSepherosa Ziehau * are met: 10fb448904SSepherosa Ziehau * 1. Redistributions of source code must retain the above copyright 11fb448904SSepherosa Ziehau * notice unmodified, this list of conditions, and the following 12fb448904SSepherosa Ziehau * disclaimer. 13fb448904SSepherosa Ziehau * 2. Redistributions in binary form must reproduce the above copyright 14fb448904SSepherosa Ziehau * notice, this list of conditions and the following disclaimer in the 15fb448904SSepherosa Ziehau * documentation and/or other materials provided with the distribution. 16fb448904SSepherosa Ziehau * 17fb448904SSepherosa Ziehau * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR 18fb448904SSepherosa Ziehau * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 19fb448904SSepherosa Ziehau * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 20fb448904SSepherosa Ziehau * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 21fb448904SSepherosa Ziehau * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 22fb448904SSepherosa Ziehau * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 23fb448904SSepherosa Ziehau * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 24fb448904SSepherosa Ziehau * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 25fb448904SSepherosa Ziehau * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 26fb448904SSepherosa Ziehau * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 27fb448904SSepherosa Ziehau */ 28fb448904SSepherosa Ziehau 29fb448904SSepherosa Ziehau #ifndef _HN_RNDIS_H_ 30fb448904SSepherosa Ziehau #define _HN_RNDIS_H_ 31fb448904SSepherosa Ziehau 32fb448904SSepherosa Ziehau struct hn_softc; 33fb448904SSepherosa Ziehau 34b3b75d9cSSepherosa Ziehau int hn_rndis_attach(struct hn_softc *sc, int mtu, int *init_done); 35fb448904SSepherosa Ziehau void hn_rndis_detach(struct hn_softc *sc); 36fb448904SSepherosa Ziehau int hn_rndis_conf_rss(struct hn_softc *sc, uint16_t flags); 37fb448904SSepherosa Ziehau int hn_rndis_query_rsscaps(struct hn_softc *sc, int *rxr_cnt); 38fb448904SSepherosa Ziehau int hn_rndis_get_eaddr(struct hn_softc *sc, uint8_t *eaddr); 39fb448904SSepherosa Ziehau /* link_status: NDIS_MEDIA_STATE_ */ 40fb448904SSepherosa Ziehau int hn_rndis_get_linkstatus(struct hn_softc *sc, 41fb448904SSepherosa Ziehau uint32_t *link_status); 42eb2fe044SSepherosa Ziehau int hn_rndis_get_mtu(struct hn_softc *sc, uint32_t *mtu); 43fb448904SSepherosa Ziehau /* filter: NDIS_PACKET_TYPE_. */ 44fb448904SSepherosa Ziehau int hn_rndis_set_rxfilter(struct hn_softc *sc, uint32_t filter); 45fb448904SSepherosa Ziehau void hn_rndis_rx_ctrl(struct hn_softc *sc, const void *data, 46fb448904SSepherosa Ziehau int dlen); 47*80c3eb7bSWei Hu int hn_rndis_reconf_offload(struct hn_softc *sc, int mtu); 48fb448904SSepherosa Ziehau 49fb448904SSepherosa Ziehau #endif /* !_HN_RNDIS_H_ */ 50