Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/drv/nic/rtl8139/driver.c

    r870841cf rfafb8e5  
    11/*
    2  * Copyright (c) 2025 Jiri Svoboda
    32 * Copyright (c) 2011 Jiri Michalec
    43 * All rights reserved.
     
    7574 *
    7675 */
    77 static void rtl8139_lock_all(rtl8139_t *rtl8139)
     76inline static void rtl8139_lock_all(rtl8139_t *rtl8139)
    7877{
    7978        assert(rtl8139);
     
    8786 *
    8887 */
    89 static void rtl8139_unlock_all(rtl8139_t *rtl8139)
     88inline static void rtl8139_unlock_all(rtl8139_t *rtl8139)
    9089{
    9190        assert(rtl8139);
     
    128127 *  @param rtl8139  The card private structure
    129128 */
    130 static void rtl8139_hw_int_set(rtl8139_t *rtl8139)
     129inline static void rtl8139_hw_int_set(rtl8139_t *rtl8139)
    131130{
    132131        pio_write_16(rtl8139->io_port + IMR, rtl8139->int_mask);
     
    139138 *  @return Nonzero if empty, zero otherwise
    140139 */
    141 static int rtl8139_hw_buffer_empty(rtl8139_t *rtl8139)
     140inline static int rtl8139_hw_buffer_empty(rtl8139_t *rtl8139)
    142141{
    143142        return pio_read_16(rtl8139->io_port + CR) & CR_BUFE;
     
    167166 *  @param mask     The mask to set
    168167 */
    169 static void rtl8139_hw_set_mcast_mask(rtl8139_t *rtl8139,
     168inline static void rtl8139_hw_set_mcast_mask(rtl8139_t *rtl8139,
    170169    uint64_t mask)
    171170{
     
    181180 *  @param bit_val  If bit_val is zero pmen is set to 0, otherwise pmen is set to 1
    182181 */
    183 static void rtl8139_hw_pmen_set(rtl8139_t *rtl8139, uint8_t bit_val)
     182inline static void rtl8139_hw_pmen_set(rtl8139_t *rtl8139, uint8_t bit_val)
    184183{
    185184        uint8_t config1 = pio_read_8(rtl8139->io_port + CONFIG1);
     
    223222 *  @return EOK if succeed, error code otherwise
    224223 */
    225 static void rtl8139_hw_get_addr(rtl8139_t *rtl8139,
     224inline static void rtl8139_hw_get_addr(rtl8139_t *rtl8139,
    226225    nic_address_t *addr)
    227226{
     
    262261 *   @param bits_add    The value to or
    263262 */
    264 static void rtl8139_hw_reg_add_8(rtl8139_t *rtl8139, size_t reg_offset,
     263inline static void rtl8139_hw_reg_add_8(rtl8139_t *rtl8139, size_t reg_offset,
    265264    uint8_t bits_add)
    266265{
     
    276275 *   @param bits_add    The mask of bits to remove
    277276 */
    278 static void rtl8139_hw_reg_rem_8(rtl8139_t *rtl8139, size_t reg_offset,
     277inline static void rtl8139_hw_reg_rem_8(rtl8139_t *rtl8139, size_t reg_offset,
    279278    uint8_t bits_add)
    280279{
     
    339338
    340339static errno_t rtl8139_dev_add(ddf_dev_t *dev);
    341 static errno_t rtl8139_dev_quiesce(ddf_dev_t *dev);
    342340
    343341/** Basic driver operations for RTL8139 driver */
    344342static driver_ops_t rtl8139_driver_ops = {
    345343        .dev_add = &rtl8139_dev_add,
    346         .dev_quiesce = &rtl8139_dev_quiesce
    347344};
    348345
     
    435432 *  @param io_base  The address of the i/o port mapping start
    436433 */
    437 static void rtl8139_hw_soft_reset(void *io_base)
     434inline static void rtl8139_hw_soft_reset(void *io_base)
    438435{
    439436        pio_write_8(io_base + CR, CR_RST);
     
    822819 *
    823820 * @param icall  The IPC call structure
    824  * @param arg    Argument (nic_t *)
    825  *
    826  */
    827 static void rtl8139_interrupt_handler(ipc_call_t *icall, void *arg)
    828 {
     821 * @param dev    The rtl8139 device
     822 *
     823 */
     824static void rtl8139_interrupt_handler(ipc_call_t *icall, ddf_dev_t *dev)
     825{
     826        assert(dev);
     827        assert(icall);
     828
    829829        uint16_t isr = (uint16_t) ipc_get_arg2(icall);
    830         nic_t *nic_data = (nic_t *)arg;
     830        nic_t *nic_data = nic_get_from_ddf_dev(dev);
    831831        rtl8139_t *rtl8139 = nic_get_specific(nic_data);
    832832
     
    848848 *  @return An error code otherwise.
    849849 */
    850 static errno_t rtl8139_register_int_handler(nic_t *nic_data,
     850inline static errno_t rtl8139_register_int_handler(nic_t *nic_data,
    851851    cap_irq_handle_t *handle)
    852852{
     
    861861        rtl8139_irq_code.cmds[3].addr = rtl8139->io_addr + IMR;
    862862        errno_t rc = register_interrupt_handler(nic_get_ddf_dev(nic_data),
    863             rtl8139->irq, rtl8139_interrupt_handler, (void *)nic_data,
    864             &rtl8139_irq_code, handle);
     863            rtl8139->irq, rtl8139_interrupt_handler, &rtl8139_irq_code, handle);
    865864
    866865        RTL8139_IRQ_STRUCT_UNLOCK();
     
    875874 * @param rtl8139  The card private data
    876875 */
    877 static void rtl8139_card_up(rtl8139_t *rtl8139)
     876inline static void rtl8139_card_up(rtl8139_t *rtl8139)
    878877{
    879878        void *io_base = rtl8139->io_port;
     
    12481247                }
    12491248        }
    1250 }
    1251 
    1252 static void rtl8139_quiesce(rtl8139_t *rtl8139)
    1253 {
    1254         rtl8139_hw_soft_reset(rtl8139->io_port);
    12551249}
    12561250
     
    13361330        rtl8139_dev_cleanup(dev);
    13371331        return rc;
    1338 }
    1339 
    1340 /** Quiesce RTL8139.
    1341  *
    1342  * @param dev RTL8139 device.
    1343  * @return EOK on sucess, or an error code.
    1344  */
    1345 errno_t rtl8139_dev_quiesce(ddf_dev_t *dev)
    1346 {
    1347         nic_t *nic;
    1348         rtl8139_t *rtl8139;
    1349 
    1350         ddf_msg(LVL_NOTE, "RTL8139_dev_quiesce %s (handle = %zu)",
    1351             ddf_dev_get_name(dev), ddf_dev_get_handle(dev));
    1352 
    1353         nic = nic_get_from_ddf_dev(dev);
    1354         rtl8139 = nic_get_specific(nic);
    1355 
    1356         rtl8139_quiesce(rtl8139);
    1357         return EOK;
    13581332}
    13591333
     
    17941768 *  @param was_promisc  Sign if the promiscuous mode was active before disabling
    17951769 */
    1796 static void rtl8139_rcx_promics_rem(nic_t *nic_data,
     1770inline static void rtl8139_rcx_promics_rem(nic_t *nic_data,
    17971771    nic_multicast_mode_t mcast_mode, uint8_t was_promisc)
    17981772{
Note: See TracChangeset for help on using the changeset viewer.