18c2ecf20Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */ 28c2ecf20Sopenharmony_ci/* 38c2ecf20Sopenharmony_ci * IPWireless 3G PCMCIA Network Driver 48c2ecf20Sopenharmony_ci * 58c2ecf20Sopenharmony_ci * Original code 68c2ecf20Sopenharmony_ci * by Stephen Blackheath <stephen@blacksapphire.com>, 78c2ecf20Sopenharmony_ci * Ben Martel <benm@symmetric.co.nz> 88c2ecf20Sopenharmony_ci * 98c2ecf20Sopenharmony_ci * Copyrighted as follows: 108c2ecf20Sopenharmony_ci * Copyright (C) 2004 by Symmetric Systems Ltd (NZ) 118c2ecf20Sopenharmony_ci * 128c2ecf20Sopenharmony_ci * Various driver changes and rewrites, port to new kernels 138c2ecf20Sopenharmony_ci * Copyright (C) 2006-2007 Jiri Kosina 148c2ecf20Sopenharmony_ci * 158c2ecf20Sopenharmony_ci * Misc code cleanups and updates 168c2ecf20Sopenharmony_ci * Copyright (C) 2007 David Sterba 178c2ecf20Sopenharmony_ci */ 188c2ecf20Sopenharmony_ci 198c2ecf20Sopenharmony_ci#ifndef _IPWIRELESS_CS_NETWORK_H_ 208c2ecf20Sopenharmony_ci#define _IPWIRELESS_CS_NETWORK_H_ 218c2ecf20Sopenharmony_ci 228c2ecf20Sopenharmony_ci#include <linux/types.h> 238c2ecf20Sopenharmony_ci 248c2ecf20Sopenharmony_cistruct ipw_network; 258c2ecf20Sopenharmony_cistruct ipw_tty; 268c2ecf20Sopenharmony_cistruct ipw_hardware; 278c2ecf20Sopenharmony_ci 288c2ecf20Sopenharmony_ci/* Definitions of the different channels on the PCMCIA UE */ 298c2ecf20Sopenharmony_ci#define IPW_CHANNEL_RAS 0 308c2ecf20Sopenharmony_ci#define IPW_CHANNEL_DIALLER 1 318c2ecf20Sopenharmony_ci#define IPW_CHANNEL_CONSOLE 2 328c2ecf20Sopenharmony_ci#define NO_OF_IPW_CHANNELS 5 338c2ecf20Sopenharmony_ci 348c2ecf20Sopenharmony_civoid ipwireless_network_notify_control_line_change(struct ipw_network *net, 358c2ecf20Sopenharmony_ci unsigned int channel_idx, unsigned int control_lines, 368c2ecf20Sopenharmony_ci unsigned int control_mask); 378c2ecf20Sopenharmony_civoid ipwireless_network_packet_received(struct ipw_network *net, 388c2ecf20Sopenharmony_ci unsigned int channel_idx, unsigned char *data, 398c2ecf20Sopenharmony_ci unsigned int length); 408c2ecf20Sopenharmony_cistruct ipw_network *ipwireless_network_create(struct ipw_hardware *hw); 418c2ecf20Sopenharmony_civoid ipwireless_network_free(struct ipw_network *net); 428c2ecf20Sopenharmony_civoid ipwireless_associate_network_tty(struct ipw_network *net, 438c2ecf20Sopenharmony_ci unsigned int channel_idx, struct ipw_tty *tty); 448c2ecf20Sopenharmony_civoid ipwireless_disassociate_network_ttys(struct ipw_network *net, 458c2ecf20Sopenharmony_ci unsigned int channel_idx); 468c2ecf20Sopenharmony_ci 478c2ecf20Sopenharmony_civoid ipwireless_ppp_open(struct ipw_network *net); 488c2ecf20Sopenharmony_ci 498c2ecf20Sopenharmony_civoid ipwireless_ppp_close(struct ipw_network *net); 508c2ecf20Sopenharmony_ciint ipwireless_ppp_channel_index(struct ipw_network *net); 518c2ecf20Sopenharmony_ciint ipwireless_ppp_unit_number(struct ipw_network *net); 528c2ecf20Sopenharmony_ciint ipwireless_ppp_mru(const struct ipw_network *net); 538c2ecf20Sopenharmony_ci 548c2ecf20Sopenharmony_ci#endif 55