#include <linux/module.h>#include <linux/delay.h>#include <linux/dmascc.h>#include <linux/errno.h>#include <linux/if_arp.h>#include <linux/in.h>#include <linux/interrupt.h>#include <linux/ioport.h>#include <linux/kernel.h>#include <linux/mm.h>#include <linux/netdevice.h>#include <linux/sockios.h>#include <linux/tqueue.h>#include <linux/version.h>#include <asm/atomic.h>#include <asm/bitops.h>#include <asm/dma.h>#include <asm/io.h>#include <asm/irq.h>#include <asm/segment.h>#include <net/ax25.h>#include "z8530.h"Include dependency graph for dmascc.c:

Go to the source code of this file.
Defines | |
| #define | __init |
| #define | __initdata |
| #define | __initfunc(x) x |
| #define | MODULE_AUTHOR(x) |
| #define | MODULE_DESCRIPTION(x) |
| #define | MODULE_PARM(x, y) |
| #define | copy_to_user(x, y, z) memcpy_tofs(x,y,z) |
| #define | copy_from_user(x, y, z) memcpy_fromfs(x,y,z) |
| #define | test_and_set_bit(x, y) set_bit(x,y) |
| #define | register_netdevice(x) register_netdev(x) |
| #define | unregister_netdevice(x) unregister_netdev(x) |
| #define | dev_kfree_skb(x) dev_kfree_skb(x,FREE_WRITE) |
| #define | SET_DEV_INIT(x) (x=dmascc_dev_init) |
| #define | SHDLCE 0x01 |
| #define | AUTOEOM 0x02 |
| #define | RXFIFOH 0x08 |
| #define | TXFIFOE 0x20 |
| #define | NUM_TX_BUF 2 |
| #define | NUM_RX_BUF 2 |
| #define | BUF_SIZE 2016 |
| #define | HW_PI |
| #define | HW_PI2 |
| #define | HW_TWIN |
| #define | HARDWARE { HW_PI, HW_PI2, HW_TWIN } |
| #define | TYPE_PI 0 |
| #define | TYPE_PI2 1 |
| #define | TYPE_TWIN 2 |
| #define | NUM_TYPES 3 |
| #define | MAX_NUM_DEVS 32 |
| #define | Z8530 0 |
| #define | Z85C30 1 |
| #define | Z85230 2 |
| #define | CHIPNAMES { "Z8530", "Z85C30", "Z85230" } |
| #define | SCCB_CMD 0x00 |
| #define | SCCB_DATA 0x01 |
| #define | SCCA_CMD 0x02 |
| #define | SCCA_DATA 0x03 |
| #define | TMR_CNT0 0x00 |
| #define | TMR_CNT1 0x01 |
| #define | TMR_CNT2 0x02 |
| #define | TMR_CTRL 0x03 |
| #define | PI_DREQ_MASK 0x04 |
| #define | TWIN_INT_REG 0x08 |
| #define | TWIN_CLR_TMR1 0x09 |
| #define | TWIN_CLR_TMR2 0x0a |
| #define | TWIN_SPARE_1 0x0b |
| #define | TWIN_DMA_CFG 0x08 |
| #define | TWIN_SERIAL_CFG 0x09 |
| #define | TWIN_DMA_CLR_FF 0x0a |
| #define | TWIN_SPARE_2 0x0b |
| #define | TWIN_SCC_MSK 0x01 |
| #define | TWIN_TMR1_MSK 0x02 |
| #define | TWIN_TMR2_MSK 0x04 |
| #define | TWIN_INT_MSK 0x07 |
| #define | TWIN_DTRA_ON 0x01 |
| #define | TWIN_DTRB_ON 0x02 |
| #define | TWIN_EXTCLKA 0x04 |
| #define | TWIN_EXTCLKB 0x08 |
| #define | TWIN_LOOPA_ON 0x10 |
| #define | TWIN_LOOPB_ON 0x20 |
| #define | TWIN_EI 0x80 |
| #define | TWIN_DMA_HDX_T1 0x08 |
| #define | TWIN_DMA_HDX_R1 0x0a |
| #define | TWIN_DMA_HDX_T3 0x14 |
| #define | TWIN_DMA_HDX_R3 0x16 |
| #define | TWIN_DMA_FDX_T3R1 0x1b |
| #define | TWIN_DMA_FDX_T1R3 0x1d |
| #define | TX_IDLE 0 |
| #define | TX_OFF 1 |
| #define | TX_TXDELAY 2 |
| #define | TX_ACTIVE 3 |
| #define | TX_SQDELAY 4 |
Functions | |
| static int | dmascc_dev_init (struct device *dev) |
| static void | dev_init_buffers (struct device *dev) |
| int | dmascc_init (void) |
| __initfunc (void dmascc_setup(char *str, int *ints)) | |
| __initfunc (int dmascc_init(void)) | |
| __initfunc (int setup_adapter(int io, int h, int n)) | |
| static void | write_scc (int ctl, int reg, int val) |
| static int | read_scc (int ctl, int reg) |
| static int | scc_open (struct device *dev) |
| static int | scc_close (struct device *dev) |
| static int | scc_ioctl (struct device *dev, struct ifreq *ifr, int cmd) |
| static int | scc_send_packet (struct sk_buff *skb, struct device *dev) |
| static struct enet_statistics * | scc_get_stats (struct device *dev) |
| static int | scc_set_mac_address (struct device *dev, void *sa) |
| static void | scc_isr (int irq, void *dev_id, struct pt_regs *regs) |
| static void | z8530_isr (struct scc_info *info) |
| static void | rx_isr (struct device *dev) |
| static void | special_condition (struct device *dev, int rc) |
| static void | rx_bh (void *arg) |
| static void | tx_isr (struct device *dev) |
| static void | es_isr (struct device *dev) |
| static void | tm_isr (struct device *dev) |
| static void | delay (struct device *dev, int t) |
| static unsigned char | random (void) |
Variables | |
| static struct scc_hardware hw[NUM_TYPES] | __initdata = HARDWARE |
| static struct scc_info * | first = NULL |
| static unsigned long | rand |
|
|
|
|
|
|
|
|
|
|
|
Definition at line 70 of file dmascc.c. Referenced by init_channel(), and scc_open(). |
|
|
|
|
|
Definition at line 132 of file dmascc.c. Referenced by __initfunc(). |
|
|
|
|
|
|
|
|
|
|
|
|
Value: { "Ottawa PI", 0x300, 0x20, 0x10, 8, \
0, 8, 1843200, 3686400 }
|
|
|
Value: { "Ottawa PI2", 0x300, 0x20, 0x10, 8, \
0, 8, 3686400, 7372800 }
|
|
|
Value: { "Gracilis PackeTwin", 0x200, 0x10, 0x10, 32, \
0, 4, 6144000, 6144000 }
|
|
|
Definition at line 123 of file dmascc.c. Referenced by __initfunc(). |
|
|
|
|
|
|
|
|
|
|
|
Definition at line 103 of file dmascc.c. Referenced by es_isr(), rx_bh(), and special_condition(). |
|
|
Definition at line 102 of file dmascc.c. Referenced by es_isr(), and scc_send_packet(). |
|
|
|
|
|
Definition at line 150 of file dmascc.c. Referenced by __initfunc(), rx_bh(), scc_close(), scc_isr(), scc_open(), and scc_send_packet(). |
|
|
Definition at line 63 of file dmascc.c. Referenced by __initfunc(), arcnet_open(), bpq_new_device(), comx_mkdir(), hdlc_fr_pvc(), init_etherdev(), ipgre_tunnel_locate(), ipip6_tunnel_locate(), ipip_tunnel_locate(), irport_open(), irtty_open(), nsc_ircc_open(), register_hdlc_device(), register_netdev(), scc_net_setup(), slip_open(), toshoboe_open(), and w83977af_open(). |
|
|
Definition at line 71 of file dmascc.c. Referenced by scc_open(). |
|
|
Definition at line 140 of file dmascc.c. Referenced by __initfunc(), and z8530_isr(). |
|
|
Definition at line 141 of file dmascc.c. Referenced by __initfunc(). |
|
|
Definition at line 138 of file dmascc.c. Referenced by __initfunc(). |
|
|
Definition at line 139 of file dmascc.c. Referenced by __initfunc(). |
|
|
Definition at line 66 of file dmascc.c. Referenced by __initfunc(). |
|
|
Definition at line 68 of file dmascc.c. Referenced by __initfunc(), init_channel(), and scc_open(). |
|
|
|
|
|
Definition at line 144 of file dmascc.c. Referenced by __initfunc(). |
|
|
Definition at line 145 of file dmascc.c. Referenced by __initfunc(). |
|
|
Definition at line 146 of file dmascc.c. Referenced by __initfunc(). |
|
|
Definition at line 147 of file dmascc.c. Referenced by __initfunc(). |
|
|
Definition at line 154 of file dmascc.c. Referenced by __initfunc(), and scc_isr(). |
|
|
Definition at line 155 of file dmascc.c. Referenced by __initfunc(), and scc_isr(). |
|
|
Definition at line 157 of file dmascc.c. Referenced by __initfunc(), es_isr(), scc_close(), and tm_isr(). |
|
|
|
|
|
|
|
|
|
|
|
Definition at line 182 of file dmascc.c. Referenced by es_isr(). |
|
|
Definition at line 184 of file dmascc.c. Referenced by es_isr(). |
|
|
Definition at line 181 of file dmascc.c. Referenced by tm_isr(). |
|
|
Definition at line 183 of file dmascc.c. Referenced by tm_isr(). |
|
|
Definition at line 172 of file dmascc.c. Referenced by scc_close(), and scc_open(). |
|
|
Definition at line 173 of file dmascc.c. Referenced by scc_close(), and scc_open(). |
|
|
Definition at line 178 of file dmascc.c. Referenced by __initfunc(), and scc_open(). |
|
|
Definition at line 174 of file dmascc.c. Referenced by scc_open(). |
|
|
Definition at line 175 of file dmascc.c. Referenced by scc_open(). |
|
|
Definition at line 169 of file dmascc.c. Referenced by scc_isr(). |
|
|
Definition at line 153 of file dmascc.c. Referenced by scc_isr(). |
|
|
|
|
|
|
|
|
Definition at line 166 of file dmascc.c. Referenced by scc_isr(). |
|
|
Definition at line 158 of file dmascc.c. Referenced by __initfunc(), scc_close(), and scc_open(). |
|
|
|
|
|
|
|
|
Definition at line 167 of file dmascc.c. Referenced by scc_isr(). |
|
|
|
|
|
|
|
|
Definition at line 192 of file dmascc.c. Referenced by es_isr(), scc_open(), scc_send_packet(), and tm_isr(). |
|
|
Definition at line 193 of file dmascc.c. Referenced by es_isr(), scc_set_param(), scc_stop_calibrate(), t_idle(), t_tail(), tm_isr(), yam_arbitrate(), and yam_tx_byte(). |
|
|
|
|
|
Definition at line 194 of file dmascc.c. Referenced by es_isr(), scc_send_packet(), and tm_isr(). |
|
|
Definition at line 72 of file dmascc.c. Referenced by scc_open(). |
|
|
Definition at line 118 of file dmascc.c. Referenced by __initfunc(), and scc_isr(). |
|
|
Definition at line 119 of file dmascc.c. Referenced by __initfunc(), es_isr(), rx_bh(), scc_close(), scc_isr(), scc_open(), and scc_send_packet(). |
|
|
Definition at line 120 of file dmascc.c. Referenced by __initfunc(), es_isr(), scc_close(), scc_isr(), scc_open(), and tm_isr(). |
|
|
Definition at line 64 of file dmascc.c. Referenced by __initfunc(), arcnet_close(), bpq_check_devices(), comx_mkdir(), destroy_pvc_list(), hdlc_fr_pvc(), ipgre_tunnel_ioctl(), ipip6_tunnel_ioctl(), ipip_tunnel_ioctl(), ipmr_new_tunnel(), irport_close(), irtty_close(), sl_alloc(), streamer_scan(), unregister_hdlc_device(), unregister_netdev(), vif_delete(), and w83977af_close(). |
|
|
Definition at line 130 of file dmascc.c. Referenced by __initfunc(), es_isr(), scc_open(), z8530_flush_fifo(), z8530_init(), and z8530_tx_begin(). |
|
|
Definition at line 128 of file dmascc.c. Referenced by __initfunc(), tm_isr(), and z8530_init(). |
|
|
Definition at line 129 of file dmascc.c. Referenced by __initfunc(), scc_open(), slvl_init(), sv11_init(), and z8530_init(). |
|
|
Definition at line 457 of file dmascc.c. References ARPHRD_AX25, ax25_encapsulate(), ax25_rebuild_header(), ax25_test, scc_param::brg_tc, scc_priv::channel, scc_info::chip, chip, CHIPNAMES, scc_param::clocks, scc_priv::cmd, CTSIE, tq_struct::data, scc_priv::data, scc_info::dev, dev, dev_init_buffers(), device, EXT_INT_ENAB, FHWRES, HZ, inb_p, scc_priv::info, irq, irqs, jiffies, kmalloc(), memcpy, memset, MIE, scc_priv::name, name, scc_info::next, NULL, NV, outb_p, |