????JFIF??x?x????'
Server IP : 79.136.114.73 / Your IP : 18.190.154.145 Web Server : Apache/2.4.7 (Ubuntu) PHP/5.5.9-1ubuntu4.29 OpenSSL/1.0.1f System : Linux b8009 3.13.0-170-generic #220-Ubuntu SMP Thu May 9 12:40:49 UTC 2019 x86_64 User : www-data ( 33) PHP Version : 5.5.9-1ubuntu4.29 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority, MySQL : ON | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /usr/src/linux-headers-3.13.0-170/include/linux/ |
Upload File : |
/* * This file is subject to the terms and conditions of the GNU General Public * License. See the file "COPYING" in the main directory of this archive * for more details. * * Copyright (c) 2005 Stanislaw Skowronek <skylark@linux-mips.org> */ #ifndef _LINUX_IOC3_H #define _LINUX_IOC3_H #include <asm/sn/ioc3.h> #define IOC3_MAX_SUBMODULES 32 #define IOC3_CLASS_NONE 0 #define IOC3_CLASS_BASE_IP27 1 #define IOC3_CLASS_BASE_IP30 2 #define IOC3_CLASS_MENET_123 3 #define IOC3_CLASS_MENET_4 4 #define IOC3_CLASS_CADDUO 5 #define IOC3_CLASS_SERIAL 6 /* One of these per IOC3 */ struct ioc3_driver_data { struct list_head list; int id; /* IOC3 sequence number */ /* PCI mapping */ unsigned long pma; /* physical address */ struct ioc3 __iomem *vma; /* pointer to registers */ struct pci_dev *pdev; /* PCI device */ /* IRQ stuff */ int dual_irq; /* set if separate IRQs are used */ int irq_io, irq_eth; /* IRQ numbers */ /* GPIO magic */ spinlock_t gpio_lock; unsigned int gpdr_shadow; /* NIC identifiers */ char nic_part[32]; char nic_serial[16]; char nic_mac[6]; /* submodule set */ int class; void *data[IOC3_MAX_SUBMODULES]; /* for submodule use */ int active[IOC3_MAX_SUBMODULES]; /* set if probe succeeds */ /* is_ir_lock must be held while * modifying sio_ie values, so * we can be sure that sio_ie is * not changing when we read it * along with sio_ir. */ spinlock_t ir_lock; /* SIO_IE[SC] mod lock */ }; /* One per submodule */ struct ioc3_submodule { char *name; /* descriptive submodule name */ struct module *owner; /* owning kernel module */ int ethernet; /* set for ethernet drivers */ int (*probe) (struct ioc3_submodule *, struct ioc3_driver_data *); int (*remove) (struct ioc3_submodule *, struct ioc3_driver_data *); int id; /* assigned by IOC3, index for the "data" array */ /* IRQ stuff */ unsigned int irq_mask; /* IOC3 IRQ mask, leave clear for Ethernet */ int reset_mask; /* non-zero if you want the ioc3.c module to reset interrupts */ int (*intr) (struct ioc3_submodule *, struct ioc3_driver_data *, unsigned int); /* private submodule data */ void *data; /* assigned by submodule */ }; /********************************** * Functions needed by submodules * **********************************/ #define IOC3_W_IES 0 #define IOC3_W_IEC 1 /* registers a submodule for all existing and future IOC3 chips */ extern int ioc3_register_submodule(struct ioc3_submodule *); /* unregisters a submodule */ extern void ioc3_unregister_submodule(struct ioc3_submodule *); /* enables IRQs indicated by irq_mask for a specified IOC3 chip */ extern void ioc3_enable(struct ioc3_submodule *, struct ioc3_driver_data *, unsigned int); /* ackowledges specified IRQs */ extern void ioc3_ack(struct ioc3_submodule *, struct ioc3_driver_data *, unsigned int); /* disables IRQs indicated by irq_mask for a specified IOC3 chip */ extern void ioc3_disable(struct ioc3_submodule *, struct ioc3_driver_data *, unsigned int); /* atomically sets GPCR bits */ extern void ioc3_gpcr_set(struct ioc3_driver_data *, unsigned int); /* general ireg writer */ extern void ioc3_write_ireg(struct ioc3_driver_data *idd, uint32_t value, int reg); #endif