Changeset fd6bd6d in mainline for uspace/lib/c
- Timestamp:
- 2011-12-14T17:09:25Z (14 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 9916841
- Parents:
- b402dadd
- Location:
- uspace/lib/c
- Files:
-
- 5 edited
-
generic/ddi.c (modified) (4 diffs)
-
generic/device/nic.c (modified) (1 diff)
-
include/ddi.h (modified) (1 diff)
-
include/device/nic.h (modified) (1 diff)
-
include/net/device.h (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/c/generic/ddi.c
rb402dadd rfd6bd6d 75 75 } 76 76 77 int dmamem_map(dmamem_t *dmamem, size_t pages, unsigned int map_flags, 78 unsigned int dma_flags) 79 { 80 // FIXME TODO 81 return -1; 82 } 83 84 int dmamem_unmap(dmamem_t *dmamem) 85 { 86 // FIXME TODO 87 return -1; 88 } 89 90 int dmamem_lock(void *virt, void **phys, size_t pages) 91 { 92 // FIXME TODO 93 return -1; 94 } 95 96 int dmamem_unlock(void *virt, size_t pages) 97 { 98 // FIXME TODO 99 return -1; 100 } 101 77 102 /** Enable I/O space range to task. 78 103 * 79 104 * Caller of this function must have the IO_MEM_MANAGER capability. 80 105 * 81 * @param id Task ID.82 * @param ioaddr Starting address of the I/O range.83 * @param size Size of the range.106 * @param id Task ID. 107 * @param ioaddr Starting address of the I/O range. 108 * @param size Size of the range. 84 109 * 85 * @return 0 on success, EPERM if the caller lacks the 86 * CAP_IO_MANAGER capability, ENOENT if there is no task 87 * with specified ID and ENOMEM if there was some problem 88 * in allocating memory. 110 * @return EOK on success 111 * @return EPERM if the caller lacks the CAP_IO_MANAGER capability 112 * @return ENOENT if there is no task with specified ID 113 * @return ENOMEM if there was some problem in allocating memory. 114 * 89 115 */ 90 116 int iospace_enable(task_id_t id, void *ioaddr, unsigned long size) 91 117 { 92 118 ddi_ioarg_t arg; 93 119 94 120 arg.task_id = id; 95 121 arg.ioaddr = ioaddr; 96 122 arg.size = size; 97 123 98 124 return __SYSCALL1(SYS_IOSPACE_ENABLE, (sysarg_t) &arg); 99 125 } … … 101 127 /** Enable PIO for specified I/O range. 102 128 * 103 * @param pio_addr I/O start address.104 * @param size Size of the I/O region.105 * @param use_addr Address where the final address for application's PIO106 * will be stored.129 * @param pio_addr I/O start address. 130 * @param size Size of the I/O region. 131 * @param use_addr Address where the final address for 132 * application's PIO will be stored. 107 133 * 108 * @return Zero on success or negative error code. 134 * @return Zero on success or negative error code. 135 * 109 136 */ 110 137 int pio_enable(void *pio_addr, size_t size, void **use_addr) … … 114 141 size_t offset; 115 142 unsigned int pages; 116 143 117 144 #ifdef IO_SPACE_BOUNDARY 118 145 if (pio_addr < IO_SPACE_BOUNDARY) { … … 121 148 } 122 149 #endif 123 150 124 151 phys = (void *) ALIGN_DOWN((uintptr_t) pio_addr, PAGE_SIZE); 125 152 offset = pio_addr - phys; -
uspace/lib/c/generic/device/nic.c
rb402dadd rfd6bd6d 895 895 * 896 896 */ 897 int nic_vlan_set_tag(async_sess_t *dev_sess, uint16_t tag, int add, intstrip)897 int nic_vlan_set_tag(async_sess_t *dev_sess, uint16_t tag, bool add, bool strip) 898 898 { 899 899 async_exch_t *exch = async_exchange_begin(dev_sess); -
uspace/lib/c/include/ddi.h
rb402dadd rfd6bd6d 40 40 #include <task.h> 41 41 42 typedef struct { 43 /** Physical memory */ 44 void *phys; 45 46 /** Virtual memory */ 47 void *virt; 48 49 /** Size in pages */ 50 size_t size; 51 52 /** Mapping flags */ 53 unsigned int flags; 54 } dmamem_t; 55 42 56 extern int device_assign_devno(void); 43 57 extern int physmem_map(void *, void *, size_t, unsigned int); 58 extern int dmamem_map(dmamem_t *, size_t, unsigned int, unsigned int); 59 extern int dmamem_unmap(dmamem_t *); 60 extern int dmamem_lock(void *, void **, size_t); 61 extern int dmamem_unlock(void *, size_t); 44 62 extern int iospace_enable(task_id_t, void *, unsigned long); 45 63 extern int pio_enable(void *, size_t, void **); -
uspace/lib/c/include/device/nic.h
rb402dadd rfd6bd6d 127 127 extern int nic_vlan_get_mask(async_sess_t *, nic_vlan_mask_t *); 128 128 extern int nic_vlan_set_mask(async_sess_t *, const nic_vlan_mask_t *); 129 extern int nic_vlan_set_tag(async_sess_t *, uint16_t, int, int);129 extern int nic_vlan_set_tag(async_sess_t *, uint16_t, bool, bool); 130 130 131 131 extern int nic_wol_virtue_add(async_sess_t *, nic_wv_type_t, const void *, -
uspace/lib/c/include/net/device.h
rb402dadd rfd6bd6d 77 77 #define NIC_PART_NUMBER_MAX_LENGTH 64 78 78 #define NIC_SERIAL_NUMBER_MAX_LENGTH 64 79 80 #define NIC_DEFECTIVE_LONG 0x0001 81 #define NIC_DEFECTIVE_SHORT 0x0002 82 #define NIC_DEFECTIVE_BAD_CRC 0x0010 83 #define NIC_DEFECTIVE_BAD_IPV4_CHECKSUM 0x0020 84 #define NIC_DEFECTIVE_BAD_IPV6_CHECKSUM 0x0040 85 #define NIC_DEFECTIVE_BAD_TCP_CHECKSUM 0x0080 86 #define NIC_DEFECTIVE_BAD_UDP_CHECKSUM 0x0100 79 87 80 88 /**
Note:
See TracChangeset
for help on using the changeset viewer.
