Changes in uspace/drv/nic/rtl8139/driver.c [3f74275:c9e88da] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/drv/nic/rtl8139/driver.c
r3f74275 rc9e88da 125 125 126 126 127 /** Disableinterrupts on controller127 /** Set interrupts on controller 128 128 * 129 129 * @param rtl8139 The card private structure 130 130 */ 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) 131 inline static void rtl8139_hw_int_set(rtl8139_t *rtl8139) 140 132 { 141 133 pio_write_16(rtl8139->io_port + IMR, rtl8139->int_mask); … … 274 266 } 275 267 276 /** Provide OR in the 32bit register (set selected bits to 1)277 *278 * @param rtl8139 The rtl8139 structure279 * @param reg_offset Register offset in the device IO space280 * @param bits_add The value to or281 */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 290 268 /** Unset selected bits in 8bit register 291 269 * … … 301 279 pio_write_8(rtl8139->io_port + reg_offset, value); 302 280 } 303 304 /** Unset selected bits in 32bit register305 *306 * @param rtl8139 The rtl8139 structure307 * @param reg_offset Register offset in the device IO space308 * @param bits_add The mask of bits to remove309 */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 318 281 319 282 static int rtl8139_set_addr(ddf_fun_t *fun, const nic_address_t *); … … 871 834 872 835 /* Turn the interrupts on again */ 873 rtl8139_hw_int_ enable(rtl8139);836 rtl8139_hw_int_set(rtl8139); 874 837 }; 875 838 … … 955 918 956 919 rtl8139->int_mask = RTL_DEFAULT_INTERRUPTS; 957 rtl8139_hw_int_ enable(rtl8139);920 rtl8139_hw_int_set(rtl8139); 958 921 959 922 int rc = irc_enable_interrupt(rtl8139->irq); … … 2120 2083 /* Disable timer interrupts while working with timer-related data */ 2121 2084 rtl8139->int_mask = 0; 2122 rtl8139_hw_int_ enable(rtl8139);2085 rtl8139_hw_int_set(rtl8139); 2123 2086 2124 2087 rtl8139->poll_timer = new_timer; … … 2143 2106 } 2144 2107 2145 rtl8139_hw_int_ enable(rtl8139);2108 rtl8139_hw_int_set(rtl8139); 2146 2109 2147 2110 fibril_mutex_unlock(&rtl8139->rx_lock);
Note:
See TracChangeset
for help on using the changeset viewer.