Changes in uspace/drv/nic/rtl8139/driver.c [c9e88da:3f74275] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/drv/nic/rtl8139/driver.c
rc9e88da r3f74275 125 125 126 126 127 /** Setinterrupts on controller127 /** Disable interrupts on controller 128 128 * 129 129 * @param rtl8139 The card private structure 130 130 */ 131 inline static void rtl8139_hw_int_set(rtl8139_t *rtl8139) 131 inline static void rtl8139_hw_int_disable(rtl8139_t *rtl8139) 132 { 133 pio_write_16(rtl8139->io_port + IMR, 0x0); 134 } 135 /** Enable interrupts on controller 136 * 137 * @param rtl8139 The card private structure 138 */ 139 inline static void rtl8139_hw_int_enable(rtl8139_t *rtl8139) 132 140 { 133 141 pio_write_16(rtl8139->io_port + IMR, rtl8139->int_mask); … … 266 274 } 267 275 276 /** Provide OR in the 32bit register (set selected bits to 1) 277 * 278 * @param rtl8139 The rtl8139 structure 279 * @param reg_offset Register offset in the device IO space 280 * @param bits_add The value to or 281 */ 282 inline static void rtl8139_hw_reg_add_32(rtl8139_t * rtl8139, size_t reg_offset, 283 uint32_t bits_add) 284 { 285 uint32_t value = pio_read_32(rtl8139->io_port + reg_offset); 286 value |= bits_add; 287 pio_write_32(rtl8139->io_port + reg_offset, value); 288 } 289 268 290 /** Unset selected bits in 8bit register 269 291 * … … 279 301 pio_write_8(rtl8139->io_port + reg_offset, value); 280 302 } 303 304 /** Unset selected bits in 32bit register 305 * 306 * @param rtl8139 The rtl8139 structure 307 * @param reg_offset Register offset in the device IO space 308 * @param bits_add The mask of bits to remove 309 */ 310 inline static void rtl8139_hw_reg_rem_32(rtl8139_t * rtl8139, size_t reg_offset, 311 uint32_t bits_add) 312 { 313 uint32_t value = pio_read_32(rtl8139->io_port + reg_offset); 314 value &= ~bits_add; 315 pio_write_32(rtl8139->io_port + reg_offset, value); 316 } 317 281 318 282 319 static int rtl8139_set_addr(ddf_fun_t *fun, const nic_address_t *); … … 834 871 835 872 /* Turn the interrupts on again */ 836 rtl8139_hw_int_ set(rtl8139);873 rtl8139_hw_int_enable(rtl8139); 837 874 }; 838 875 … … 918 955 919 956 rtl8139->int_mask = RTL_DEFAULT_INTERRUPTS; 920 rtl8139_hw_int_ set(rtl8139);957 rtl8139_hw_int_enable(rtl8139); 921 958 922 959 int rc = irc_enable_interrupt(rtl8139->irq); … … 2083 2120 /* Disable timer interrupts while working with timer-related data */ 2084 2121 rtl8139->int_mask = 0; 2085 rtl8139_hw_int_ set(rtl8139);2122 rtl8139_hw_int_enable(rtl8139); 2086 2123 2087 2124 rtl8139->poll_timer = new_timer; … … 2106 2143 } 2107 2144 2108 rtl8139_hw_int_ set(rtl8139);2145 rtl8139_hw_int_enable(rtl8139); 2109 2146 2110 2147 fibril_mutex_unlock(&rtl8139->rx_lock);
Note:
See TracChangeset
for help on using the changeset viewer.