3.5. 數字電視網路 kABI

struct dvb_net

描述 DVB 網路介面

定義:

struct dvb_net {
    struct dvb_device *dvbdev;
    struct net_device *device[DVB_NET_DEVICES_MAX];
    int state[DVB_NET_DEVICES_MAX];
    unsigned int exit:1;
    struct dmx_demux *demux;
    struct mutex ioctl_mutex;
    struct mutex remove_mutex;
};

成員

dvbdev

指向 struct dvb_device 的指標。

device

指向 struct net_device 的指標陣列。

state

每個網路裝置的整數陣列。大於零的值表示介面正在使用中。

exit

標誌,指示裝置何時被移除。

demux

指向 struct dmx_demux 的指標。

ioctl_mutex

保護對此結構的訪問。

remove_mutex

互斥鎖,避免在硬體斷開連線時呼叫的回撥與 dvb_net 的 file_operations 之間的競爭條件。

描述

當前,核心最多支援 DVB_NET_DEVICES_MAX (10) 個網路裝置。

int dvb_net_init(struct dvb_adapter *adap, struct dvb_net *dvbnet, struct dmx_demux *dmxdemux)

初始化數字電視網路裝置並註冊它。

引數

struct dvb_adapter *adap

指向 struct dvb_adapter 的指標。

struct dvb_net *dvbnet

指向 struct dvb_net 的指標。

struct dmx_demux *dmxdemux

指向 struct dmx_demux 的指標。

void dvb_net_release(struct dvb_net *dvbnet)

釋放數字電視網路裝置並取消註冊。

引數

struct dvb_net *dvbnet

指向 struct dvb_net 的指標。