HelenOS sources

nic               199 uspace/drv/nic/ar9271/ar9271.c static errno_t ar9271_on_multicast_mode_change(nic_t *nic,
nic               222 uspace/drv/nic/ar9271/ar9271.c static errno_t ar9271_on_unicast_mode_change(nic_t *nic, nic_unicast_mode_t mode,
nic               248 uspace/drv/nic/ar9271/ar9271.c static errno_t ar9271_on_broadcast_mode_change(nic_t *nic,
nic                77 uspace/drv/nic/ar9271/htc.c 	nic_t *nic =
nic                79 uspace/drv/nic/ar9271/htc.c 	nic_query_address(nic, &addr);
nic               164 uspace/drv/nic/ar9271/hw.c 	nic_t *nic = nic_get_from_ddf_dev(ar9271->ddf_dev);
nic               166 uspace/drv/nic/ar9271/hw.c 	errno_t rc = nic_report_address(nic, &ar9271_address);
nic                69 uspace/drv/nic/e1k/e1k.c #define DRIVER_DATA_NIC(nic) \
nic                70 uspace/drv/nic/e1k/e1k.c 	((e1000_t *) nic_get_specific(nic))
nic               835 uspace/drv/nic/e1k/e1k.c static errno_t e1000_on_multicast_mode_change(nic_t *nic, nic_multicast_mode_t mode,
nic               838 uspace/drv/nic/e1k/e1k.c 	e1000_t *e1000 = DRIVER_DATA_NIC(nic);
nic               847 uspace/drv/nic/e1k/e1k.c 		nic_report_hw_filtering(nic, -1, 1, -1);
nic               858 uspace/drv/nic/e1k/e1k.c 			nic_report_hw_filtering(nic, -1, 0, -1);
nic               862 uspace/drv/nic/e1k/e1k.c 			nic_report_hw_filtering(nic, -1, 1, -1);
nic               868 uspace/drv/nic/e1k/e1k.c 		nic_report_hw_filtering(nic, -1, 1, -1);
nic               889 uspace/drv/nic/e1k/e1k.c static errno_t e1000_on_unicast_mode_change(nic_t *nic, nic_unicast_mode_t mode,
nic               892 uspace/drv/nic/e1k/e1k.c 	e1000_t *e1000 = DRIVER_DATA_NIC(nic);
nic               902 uspace/drv/nic/e1k/e1k.c 		nic_report_hw_filtering(nic, 1, -1, -1);
nic               908 uspace/drv/nic/e1k/e1k.c 		nic_report_hw_filtering(nic, 1, -1, -1);
nic               915 uspace/drv/nic/e1k/e1k.c 			nic_report_hw_filtering(nic, 0, -1, -1);
nic               919 uspace/drv/nic/e1k/e1k.c 			nic_report_hw_filtering(nic, 1, -1, -1);
nic               926 uspace/drv/nic/e1k/e1k.c 		nic_report_hw_filtering(nic, 1, -1, -1);
nic               945 uspace/drv/nic/e1k/e1k.c static errno_t e1000_on_broadcast_mode_change(nic_t *nic, nic_broadcast_mode_t mode)
nic               947 uspace/drv/nic/e1k/e1k.c 	e1000_t *e1000 = DRIVER_DATA_NIC(nic);
nic              1013 uspace/drv/nic/e1k/e1k.c static void e1000_on_vlan_mask_change(nic_t *nic,
nic              1016 uspace/drv/nic/e1k/e1k.c 	e1000_t *e1000 = DRIVER_DATA_NIC(nic);
nic              1097 uspace/drv/nic/e1k/e1k.c static void e1000_fill_new_rx_descriptor(nic_t *nic, size_t offset)
nic              1099 uspace/drv/nic/e1k/e1k.c 	e1000_t *e1000 = DRIVER_DATA_NIC(nic);
nic              1136 uspace/drv/nic/e1k/e1k.c static void e1000_clear_tx_descriptor(nic_t *nic, unsigned int offset)
nic              1138 uspace/drv/nic/e1k/e1k.c 	e1000_t *e1000 = DRIVER_DATA_NIC(nic);
nic              1173 uspace/drv/nic/e1k/e1k.c static void e1000_receive_frames(nic_t *nic)
nic              1175 uspace/drv/nic/e1k/e1k.c 	e1000_t *e1000 = DRIVER_DATA_NIC(nic);
nic              1188 uspace/drv/nic/e1k/e1k.c 		nic_frame_t *frame = nic_alloc_frame(nic, frame_size);
nic              1191 uspace/drv/nic/e1k/e1k.c 			nic_received_frame(nic, frame);
nic              1196 uspace/drv/nic/e1k/e1k.c 		e1000_fill_new_rx_descriptor(nic, next_tail);
nic              1237 uspace/drv/nic/e1k/e1k.c static void e1000_interrupt_handler_impl(nic_t *nic, uint32_t icr)
nic              1240 uspace/drv/nic/e1k/e1k.c 		e1000_receive_frames(nic);
nic              1253 uspace/drv/nic/e1k/e1k.c 	nic_t *nic = NIC_DATA_DEV(dev);
nic              1254 uspace/drv/nic/e1k/e1k.c 	e1000_t *e1000 = DRIVER_DATA_NIC(nic);
nic              1256 uspace/drv/nic/e1k/e1k.c 	e1000_interrupt_handler_impl(nic, icr);
nic              1272 uspace/drv/nic/e1k/e1k.c inline static errno_t e1000_register_int_handler(nic_t *nic,
nic              1275 uspace/drv/nic/e1k/e1k.c 	e1000_t *e1000 = DRIVER_DATA_NIC(nic);
nic              1284 uspace/drv/nic/e1k/e1k.c 	errno_t rc = register_interrupt_handler(nic_get_ddf_dev(nic), e1000->irq,
nic              1296 uspace/drv/nic/e1k/e1k.c static void e1000_poll(nic_t *nic)
nic              1298 uspace/drv/nic/e1k/e1k.c 	assert(nic);
nic              1300 uspace/drv/nic/e1k/e1k.c 	e1000_t *e1000 = nic_get_specific(nic);
nic              1304 uspace/drv/nic/e1k/e1k.c 	e1000_interrupt_handler_impl(nic, icr);
nic              1328 uspace/drv/nic/e1k/e1k.c static errno_t e1000_poll_mode_change(nic_t *nic, nic_poll_mode_t mode,
nic              1331 uspace/drv/nic/e1k/e1k.c 	assert(nic);
nic              1333 uspace/drv/nic/e1k/e1k.c 	e1000_t *e1000 = nic_get_specific(nic);
nic              1382 uspace/drv/nic/e1k/e1k.c static errno_t e1000_initialize_rx_structure(nic_t *nic)
nic              1384 uspace/drv/nic/e1k/e1k.c 	e1000_t *e1000 = DRIVER_DATA_NIC(nic);
nic              1425 uspace/drv/nic/e1k/e1k.c 		e1000_fill_new_rx_descriptor(nic, i);
nic              1459 uspace/drv/nic/e1k/e1k.c static void e1000_uninitialize_rx_structure(nic_t *nic)
nic              1461 uspace/drv/nic/e1k/e1k.c 	e1000_t *e1000 = DRIVER_DATA_NIC(nic);
nic              1689 uspace/drv/nic/e1k/e1k.c static void e1000_clear_tx_ring(nic_t *nic)
nic              1695 uspace/drv/nic/e1k/e1k.c 		e1000_clear_tx_descriptor(nic, offset);
nic              1727 uspace/drv/nic/e1k/e1k.c static errno_t e1000_reset(nic_t *nic)
nic              1729 uspace/drv/nic/e1k/e1k.c 	e1000_t *e1000 = DRIVER_DATA_NIC(nic);
nic              1758 uspace/drv/nic/e1k/e1k.c static errno_t e1000_on_activating(nic_t *nic)
nic              1760 uspace/drv/nic/e1k/e1k.c 	assert(nic);
nic              1762 uspace/drv/nic/e1k/e1k.c 	e1000_t *e1000 = DRIVER_DATA_NIC(nic);
nic              1782 uspace/drv/nic/e1k/e1k.c 	e1000_clear_tx_ring(nic);
nic              1804 uspace/drv/nic/e1k/e1k.c static errno_t e1000_on_down_unlocked(nic_t *nic)
nic              1806 uspace/drv/nic/e1k/e1k.c 	e1000_t *e1000 = DRIVER_DATA_NIC(nic);
nic              1835 uspace/drv/nic/e1k/e1k.c static errno_t e1000_on_down(nic_t *nic)
nic              1837 uspace/drv/nic/e1k/e1k.c 	e1000_t *e1000 = DRIVER_DATA_NIC(nic);
nic              1843 uspace/drv/nic/e1k/e1k.c 	errno_t rc = e1000_on_down_unlocked(nic);
nic              1860 uspace/drv/nic/e1k/e1k.c static errno_t e1000_on_stopping(nic_t *nic)
nic              1862 uspace/drv/nic/e1k/e1k.c 	e1000_t *e1000 = DRIVER_DATA_NIC(nic);
nic              1868 uspace/drv/nic/e1k/e1k.c 	errno_t rc = e1000_on_down_unlocked(nic);
nic              1870 uspace/drv/nic/e1k/e1k.c 		rc = e1000_reset(nic);
nic              1886 uspace/drv/nic/e1k/e1k.c 	nic_t *nic = nic_create_and_bind(dev);
nic              1887 uspace/drv/nic/e1k/e1k.c 	if (!nic)
nic              1899 uspace/drv/nic/e1k/e1k.c 	nic_set_specific(nic, e1000);
nic              1900 uspace/drv/nic/e1k/e1k.c 	nic_set_send_frame_handler(nic, e1000_send_frame);
nic              1901 uspace/drv/nic/e1k/e1k.c 	nic_set_state_change_handlers(nic, e1000_on_activating,
nic              1903 uspace/drv/nic/e1k/e1k.c 	nic_set_filtering_change_handlers(nic,
nic              1906 uspace/drv/nic/e1k/e1k.c 	nic_set_poll_handlers(nic, e1000_poll_mode_change, e1000_poll);
nic              2146 uspace/drv/nic/e1k/e1k.c 	nic_t *nic = ddf_dev_data_get(dev);
nic              2147 uspace/drv/nic/e1k/e1k.c 	e1000_t *e1000 = DRIVER_DATA_NIC(nic);
nic              2168 uspace/drv/nic/e1k/e1k.c 	fun = ddf_fun_create(nic_get_ddf_dev(nic), fun_exposed, "port0");
nic              2171 uspace/drv/nic/e1k/e1k.c 	nic_set_ddf_fun(nic, fun);
nic              2175 uspace/drv/nic/e1k/e1k.c 	rc = e1000_register_int_handler(nic, &irq_handle);
nic              2180 uspace/drv/nic/e1k/e1k.c 	rc = e1000_initialize_rx_structure(nic);
nic              2186 uspace/drv/nic/e1k/e1k.c 	rc = nic_report_address(nic, &e1000_address);
nic              2193 uspace/drv/nic/e1k/e1k.c 	rc = nic_report_poll_mode(nic, NIC_POLL_PERIODIC, &period);
nic              2211 uspace/drv/nic/e1k/e1k.c 	e1000_uninitialize_rx_structure(nic);
nic              2216 uspace/drv/nic/e1k/e1k.c 	nic_set_ddf_fun(nic, NULL);
nic              2302 uspace/drv/nic/e1k/e1k.c 	nic_t *nic = NIC_DATA_FUN(fun);
nic              2303 uspace/drv/nic/e1k/e1k.c 	e1000_t *e1000 = DRIVER_DATA_NIC(nic);
nic              2308 uspace/drv/nic/e1k/e1k.c 	errno_t rc = nic_report_address(nic, addr);
nic              2340 uspace/drv/nic/e1k/e1k.c static void e1000_send_frame(nic_t *nic, void *data, size_t size)
nic              2342 uspace/drv/nic/e1k/e1k.c 	assert(nic);
nic              2344 uspace/drv/nic/e1k/e1k.c 	e1000_t *e1000 = DRIVER_DATA_NIC(nic);
nic                74 uspace/drv/nic/virtio-net/virtio-net.c 	nic_t *nic = ddf_dev_data_get(dev);
nic                75 uspace/drv/nic/virtio-net/virtio-net.c 	virtio_net_t *virtio_net = nic_get_specific(nic);
nic                91 uspace/drv/nic/virtio-net/virtio-net.c 		nic_frame_t *frame = nic_alloc_frame(nic, len - sizeof(*hdr));
nic                94 uspace/drv/nic/virtio-net/virtio-net.c 			nic_received_frame(nic, frame);
nic               115 uspace/drv/nic/virtio-net/virtio-net.c 	nic_t *nic = ddf_dev_data_get(dev);
nic               116 uspace/drv/nic/virtio-net/virtio-net.c 	virtio_net_t *virtio_net = nic_get_specific(nic);
nic               122 uspace/drv/nic/virtio-net/virtio-net.c 	errno_t rc = nic_get_resources(nic, &res);
nic               171 uspace/drv/nic/virtio-net/virtio-net.c 	nic_t *nic = nic_create_and_bind(dev);
nic               172 uspace/drv/nic/virtio-net/virtio-net.c 	if (!nic)
nic               181 uspace/drv/nic/virtio-net/virtio-net.c 	nic_set_specific(nic, virtio_net);
nic               281 uspace/drv/nic/virtio-net/virtio-net.c 	rc = nic_report_address(nic, &nic_addr);
nic               316 uspace/drv/nic/virtio-net/virtio-net.c 	nic_t *nic = ddf_dev_data_get(dev);
nic               317 uspace/drv/nic/virtio-net/virtio-net.c 	virtio_net_t *virtio_net = (virtio_net_t *) nic_get_specific(nic);
nic               327 uspace/drv/nic/virtio-net/virtio-net.c static void virtio_net_send(nic_t *nic, void *data, size_t size)
nic               329 uspace/drv/nic/virtio-net/virtio-net.c 	virtio_net_t *virtio_net = nic_get_specific(nic);
nic               362 uspace/drv/nic/virtio-net/virtio-net.c static errno_t virtio_net_on_multicast_mode_change(nic_t *nic,
nic               368 uspace/drv/nic/virtio-net/virtio-net.c 		nic_report_hw_filtering(nic, -1, 0, -1);
nic               371 uspace/drv/nic/virtio-net/virtio-net.c 		nic_report_hw_filtering(nic, -1, 0, -1);
nic               374 uspace/drv/nic/virtio-net/virtio-net.c 		nic_report_hw_filtering(nic, -1, 0, -1);
nic               382 uspace/drv/nic/virtio-net/virtio-net.c static errno_t virtio_net_on_broadcast_mode_change(nic_t *nic,
nic               409 uspace/drv/nic/virtio-net/virtio-net.c 	nic_t *nic = ddf_dev_data_get(dev);
nic               410 uspace/drv/nic/virtio-net/virtio-net.c 	nic_set_ddf_fun(nic, fun);
nic               413 uspace/drv/nic/virtio-net/virtio-net.c 	nic_set_send_frame_handler(nic, virtio_net_send);
nic               414 uspace/drv/nic/virtio-net/virtio-net.c 	nic_set_filtering_change_handlers(nic, NULL,
nic               447 uspace/drv/nic/virtio-net/virtio-net.c 	nic_t *nic = nic_get_from_ddf_fun(fun);
nic               448 uspace/drv/nic/virtio-net/virtio-net.c 	if (!nic)
nic               550 uspace/lib/ieee80211/src/ieee80211.c static void ieee80211_send_frame(nic_t *nic, void *data, size_t size)
nic               553 uspace/lib/ieee80211/src/ieee80211.c 	    nic_get_specific(nic);
nic               753 uspace/lib/ieee80211/src/ieee80211.c 	nic_t *nic = nic_create_and_bind(ddf_dev);
nic               754 uspace/lib/ieee80211/src/ieee80211.c 	if (!nic)
nic               757 uspace/lib/ieee80211/src/ieee80211.c 	nic_set_specific(nic, ieee80211_dev);
nic               783 uspace/lib/ieee80211/src/ieee80211.c 	nic_t *nic = nic_get_from_ddf_dev(ieee80211_dev->ddf_dev);
nic               786 uspace/lib/ieee80211/src/ieee80211.c 	nic_set_send_frame_handler(nic, ieee80211_send_frame);
nic               793 uspace/lib/ieee80211/src/ieee80211.c 	nic_set_ddf_fun(nic, fun);
nic               856 uspace/lib/ieee80211/src/ieee80211.c 	nic_t *nic = nic_get_from_ddf_dev(ieee80211_dev->ddf_dev);
nic               858 uspace/lib/ieee80211/src/ieee80211.c 	nic_query_address(nic, &nic_address);
nic               923 uspace/lib/ieee80211/src/ieee80211.c 	nic_t *nic = nic_get_from_ddf_dev(ieee80211_dev->ddf_dev);
nic               925 uspace/lib/ieee80211/src/ieee80211.c 	nic_query_address(nic, &nic_address);
nic               973 uspace/lib/ieee80211/src/ieee80211.c 	nic_t *nic = nic_get_from_ddf_dev(ieee80211_dev->ddf_dev);
nic               975 uspace/lib/ieee80211/src/ieee80211.c 	nic_query_address(nic, &nic_address);
nic              1066 uspace/lib/ieee80211/src/ieee80211.c 	nic_t *nic = nic_get_from_ddf_dev(ieee80211_dev->ddf_dev);
nic              1068 uspace/lib/ieee80211/src/ieee80211.c 	nic_query_address(nic, &nic_address);
nic              1446 uspace/lib/ieee80211/src/ieee80211.c 	nic_t *nic = nic_get_from_ddf_dev(ieee80211_dev->ddf_dev);
nic              1448 uspace/lib/ieee80211/src/ieee80211.c 	nic_query_address(nic, &nic_address);
nic              1575 uspace/lib/ieee80211/src/ieee80211.c 	ieee80211_send_frame(nic, output_buffer, output_size);
nic              1643 uspace/lib/ieee80211/src/ieee80211.c 		nic_t *nic = nic_get_from_ddf_dev(ieee80211_dev->ddf_dev);
nic              1666 uspace/lib/ieee80211/src/ieee80211.c 		nic_frame_t *frame = nic_alloc_frame(nic, frame_size);
nic              1685 uspace/lib/ieee80211/src/ieee80211.c 		nic_received_frame(nic, frame);
nic                49 uspace/lib/nic/include/nic.h struct nic;
nic                50 uspace/lib/nic/include/nic.h typedef struct nic nic_t;
nic              1047 uspace/lib/nic/src/nic_driver.c 	nic_t *nic = data;
nic              1048 uspace/lib/nic/src/nic_driver.c 	struct sw_poll_info *info = &nic->sw_poll_info;
nic              1050 uspace/lib/nic/src/nic_driver.c 		fibril_rwlock_read_lock(&nic->main_lock);
nic              1053 uspace/lib/nic/src/nic_driver.c 		struct timespec remaining = nic->poll_period;
nic              1054 uspace/lib/nic/src/nic_driver.c 		fibril_rwlock_read_unlock(&nic->main_lock);
nic              1093 uspace/lib/nic/src/nic_driver.c 		fibril_rwlock_read_lock(&nic->main_lock);
nic              1095 uspace/lib/nic/src/nic_driver.c 			nic->on_poll_request(nic);
nic              1097 uspace/lib/nic/src/nic_driver.c 		fibril_rwlock_read_unlock(&nic->main_lock);
nic               197 uspace/lib/nic/src/nic_impl.c 	nic_t *nic = nic_get_from_ddf_fun(fun);
nic               198 uspace/lib/nic/src/nic_impl.c 	fibril_rwlock_write_lock(&nic->main_lock);
nic               200 uspace/lib/nic/src/nic_impl.c 	nic->client_session = async_callback_receive(EXCHANGE_SERIALIZE);
nic               201 uspace/lib/nic/src/nic_impl.c 	if (nic->client_session == NULL) {
nic               202 uspace/lib/nic/src/nic_impl.c 		fibril_rwlock_write_unlock(&nic->main_lock);
nic               206 uspace/lib/nic/src/nic_impl.c 	fibril_rwlock_write_unlock(&nic->main_lock);
nic                53 uspace/srv/net/ethip/arp.c static errno_t arp_send_packet(ethip_nic_t *nic, arp_eth_packet_t *packet);
nic                55 uspace/srv/net/ethip/arp.c void arp_received(ethip_nic_t *nic, eth_frame_t *frame)
nic                70 uspace/srv/net/ethip/arp.c 	ethip_link_addr_t *laddr = ethip_nic_addr_find(nic, &addr);
nic                88 uspace/srv/net/ethip/arp.c 		reply.sender_hw_addr = nic->mac_addr;
nic                93 uspace/srv/net/ethip/arp.c 		arp_send_packet(nic, &reply);
nic                97 uspace/srv/net/ethip/arp.c errno_t arp_translate(ethip_nic_t *nic, addr32_t src_addr, addr32_t ip_addr,
nic               113 uspace/srv/net/ethip/arp.c 	packet.sender_hw_addr = nic->mac_addr;
nic               118 uspace/srv/net/ethip/arp.c 	rc = arp_send_packet(nic, &packet);
nic               125 uspace/srv/net/ethip/arp.c static errno_t arp_send_packet(ethip_nic_t *nic, arp_eth_packet_t *packet)
nic               153 uspace/srv/net/ethip/arp.c 	rc = ethip_nic_send(nic, fdata, fsize);
nic                99 uspace/srv/net/ethip/ethip.c errno_t ethip_iplink_init(ethip_nic_t *nic)
nic               109 uspace/srv/net/ethip/ethip.c 	iplink_srv_init(&nic->iplink);
nic               110 uspace/srv/net/ethip/ethip.c 	nic->iplink.ops = &ethip_iplink_ops;
nic               111 uspace/srv/net/ethip/ethip.c 	nic->iplink.arg = nic;
nic               125 uspace/srv/net/ethip/ethip.c 	nic->iplink_sid = sid;
nic               149 uspace/srv/net/ethip/ethip.c 	ethip_nic_t *nic;
nic               154 uspace/srv/net/ethip/ethip.c 	nic = ethip_nic_find_by_iplink_sid(sid);
nic               155 uspace/srv/net/ethip/ethip.c 	if (nic == NULL) {
nic               160 uspace/srv/net/ethip/ethip.c 	iplink_conn(icall, &nic->iplink);
nic               179 uspace/srv/net/ethip/ethip.c 	ethip_nic_t *nic = (ethip_nic_t *) srv->arg;
nic               182 uspace/srv/net/ethip/ethip.c 	errno_t rc = arp_translate(nic, sdu->src, sdu->dest, &frame.dest);
nic               189 uspace/srv/net/ethip/ethip.c 	frame.src = nic->mac_addr;
nic               200 uspace/srv/net/ethip/ethip.c 	rc = ethip_nic_send(nic, data, size);
nic               210 uspace/srv/net/ethip/ethip.c 	ethip_nic_t *nic = (ethip_nic_t *) srv->arg;
nic               214 uspace/srv/net/ethip/ethip.c 	frame.src = nic->mac_addr;
nic               225 uspace/srv/net/ethip/ethip.c 	rc = ethip_nic_send(nic, data, size);
nic               234 uspace/srv/net/ethip/ethip.c 	ethip_nic_t *nic = (ethip_nic_t *) srv->arg;
nic               249 uspace/srv/net/ethip/ethip.c 		arp_received(nic, &frame);
nic               256 uspace/srv/net/ethip/ethip.c 		rc = iplink_ev_recv(&nic->iplink, &sdu, ip_v4);
nic               263 uspace/srv/net/ethip/ethip.c 		rc = iplink_ev_recv(&nic->iplink, &sdu, ip_v6);
nic               285 uspace/srv/net/ethip/ethip.c 	ethip_nic_t *nic = (ethip_nic_t *) srv->arg;
nic               286 uspace/srv/net/ethip/ethip.c 	*mac = nic->mac_addr;
nic               295 uspace/srv/net/ethip/ethip.c 	ethip_nic_t *nic = (ethip_nic_t *) srv->arg;
nic               296 uspace/srv/net/ethip/ethip.c 	nic->mac_addr = *mac;
nic               303 uspace/srv/net/ethip/ethip.c 	ethip_nic_t *nic = (ethip_nic_t *) srv->arg;
nic               305 uspace/srv/net/ethip/ethip.c 	return ethip_nic_addr_add(nic, addr);
nic               310 uspace/srv/net/ethip/ethip.c 	ethip_nic_t *nic = (ethip_nic_t *) srv->arg;
nic               312 uspace/srv/net/ethip/ethip.c 	return ethip_nic_addr_remove(nic, addr);
nic                87 uspace/srv/net/ethip/ethip_nic.c 		list_foreach(ethip_nic_list, link, ethip_nic_t, nic) {
nic                88 uspace/srv/net/ethip/ethip_nic.c 			if (nic->svc_id == svcs[i]) {
nic               109 uspace/srv/net/ethip/ethip_nic.c 	ethip_nic_t *nic = calloc(1, sizeof(ethip_nic_t));
nic               110 uspace/srv/net/ethip/ethip_nic.c 	if (nic == NULL) {
nic               116 uspace/srv/net/ethip/ethip_nic.c 	link_initialize(&nic->link);
nic               117 uspace/srv/net/ethip/ethip_nic.c 	list_initialize(&nic->addr_list);
nic               119 uspace/srv/net/ethip/ethip_nic.c 	return nic;
nic               137 uspace/srv/net/ethip/ethip_nic.c static void ethip_nic_delete(ethip_nic_t *nic)
nic               139 uspace/srv/net/ethip/ethip_nic.c 	if (nic->svc_name != NULL)
nic               140 uspace/srv/net/ethip/ethip_nic.c 		free(nic->svc_name);
nic               142 uspace/srv/net/ethip/ethip_nic.c 	free(nic);
nic               156 uspace/srv/net/ethip/ethip_nic.c 	ethip_nic_t *nic = ethip_nic_new();
nic               157 uspace/srv/net/ethip/ethip_nic.c 	if (nic == NULL)
nic               160 uspace/srv/net/ethip/ethip_nic.c 	errno_t rc = loc_service_get_name(sid, &nic->svc_name);
nic               166 uspace/srv/net/ethip/ethip_nic.c 	nic->sess = loc_service_connect(sid, INTERFACE_DDF, 0);
nic               167 uspace/srv/net/ethip/ethip_nic.c 	if (nic->sess == NULL) {
nic               168 uspace/srv/net/ethip/ethip_nic.c 		log_msg(LOG_DEFAULT, LVL_ERROR, "Failed connecting '%s'", nic->svc_name);
nic               172 uspace/srv/net/ethip/ethip_nic.c 	nic->svc_id = sid;
nic               174 uspace/srv/net/ethip/ethip_nic.c 	rc = nic_callback_create(nic->sess, ethip_nic_cb_conn, nic);
nic               177 uspace/srv/net/ethip/ethip_nic.c 		    "from '%s'", nic->svc_name);
nic               181 uspace/srv/net/ethip/ethip_nic.c 	log_msg(LOG_DEFAULT, LVL_DEBUG, "Opened NIC '%s'", nic->svc_name);
nic               182 uspace/srv/net/ethip/ethip_nic.c 	list_append(&nic->link, &ethip_nic_list);
nic               185 uspace/srv/net/ethip/ethip_nic.c 	rc = ethip_iplink_init(nic);
nic               189 uspace/srv/net/ethip/ethip_nic.c 	rc = nic_get_address(nic->sess, &nic_address);
nic               192 uspace/srv/net/ethip/ethip_nic.c 		    nic->svc_name);
nic               196 uspace/srv/net/ethip/ethip_nic.c 	eth_addr_decode(nic_address.address, &nic->mac_addr);
nic               198 uspace/srv/net/ethip/ethip_nic.c 	rc = nic_set_state(nic->sess, NIC_STATE_ACTIVE);
nic               201 uspace/srv/net/ethip/ethip_nic.c 		    nic->svc_name);
nic               205 uspace/srv/net/ethip/ethip_nic.c 	rc = nic_broadcast_set_mode(nic->sess, NIC_BROADCAST_ACCEPTED);
nic               208 uspace/srv/net/ethip/ethip_nic.c 		    "reception of broadcast frames on '%s'.", nic->svc_name);
nic               218 uspace/srv/net/ethip/ethip_nic.c 		list_remove(&nic->link);
nic               220 uspace/srv/net/ethip/ethip_nic.c 	if (nic->sess != NULL)
nic               221 uspace/srv/net/ethip/ethip_nic.c 		async_hangup(nic->sess);
nic               223 uspace/srv/net/ethip/ethip_nic.c 	ethip_nic_delete(nic);
nic               232 uspace/srv/net/ethip/ethip_nic.c static void ethip_nic_addr_changed(ethip_nic_t *nic, ipc_call_t *call)
nic               248 uspace/srv/net/ethip/ethip_nic.c 	memcpy(&nic->mac_addr, addr, sizeof(nic->mac_addr));
nic               250 uspace/srv/net/ethip/ethip_nic.c 	rc = iplink_ev_change_addr(&nic->iplink, &nic->mac_addr);
nic               260 uspace/srv/net/ethip/ethip_nic.c static void ethip_nic_received(ethip_nic_t *nic, ipc_call_t *call)
nic               266 uspace/srv/net/ethip/ethip_nic.c 	log_msg(LOG_DEFAULT, LVL_DEBUG, "ethip_nic_received() nic=%p", nic);
nic               278 uspace/srv/net/ethip/ethip_nic.c 	rc = ethip_received(&nic->iplink, data, size);
nic               286 uspace/srv/net/ethip/ethip_nic.c static void ethip_nic_device_state(ethip_nic_t *nic, ipc_call_t *call)
nic               294 uspace/srv/net/ethip/ethip_nic.c 	ethip_nic_t *nic = (ethip_nic_t *)arg;
nic               309 uspace/srv/net/ethip/ethip_nic.c 			ethip_nic_addr_changed(nic, &call);
nic               312 uspace/srv/net/ethip/ethip_nic.c 			ethip_nic_received(nic, &call);
nic               315 uspace/srv/net/ethip/ethip_nic.c 			ethip_nic_device_state(nic, &call);
nic               341 uspace/srv/net/ethip/ethip_nic.c 	list_foreach(ethip_nic_list, link, ethip_nic_t, nic) {
nic               343 uspace/srv/net/ethip/ethip_nic.c 		if (nic->iplink_sid == iplink_sid) {
nic               344 uspace/srv/net/ethip/ethip_nic.c 			log_msg(LOG_DEFAULT, LVL_DEBUG, "ethip_nic_find_by_iplink_sid - found %p", nic);
nic               345 uspace/srv/net/ethip/ethip_nic.c 			return nic;
nic               353 uspace/srv/net/ethip/ethip_nic.c errno_t ethip_nic_send(ethip_nic_t *nic, void *data, size_t size)
nic               357 uspace/srv/net/ethip/ethip_nic.c 	rc = nic_send_frame(nic->sess, data, size);
nic               368 uspace/srv/net/ethip/ethip_nic.c static errno_t ethip_nic_setup_multicast(ethip_nic_t *nic)
nic               376 uspace/srv/net/ethip/ethip_nic.c 	list_foreach(nic->addr_list, link, ethip_link_addr_t, laddr) {
nic               383 uspace/srv/net/ethip/ethip_nic.c 		return nic_multicast_set_mode(nic->sess, NIC_MULTICAST_BLOCKED,
nic               394 uspace/srv/net/ethip/ethip_nic.c 	list_foreach(nic->addr_list, link, ethip_link_addr_t, laddr) {
nic               428 uspace/srv/net/ethip/ethip_nic.c 	errno_t rc = nic_multicast_set_mode(nic->sess, NIC_MULTICAST_LIST,
nic               435 uspace/srv/net/ethip/ethip_nic.c errno_t ethip_nic_addr_add(ethip_nic_t *nic, inet_addr_t *addr)
nic               443 uspace/srv/net/ethip/ethip_nic.c 	list_append(&laddr->link, &nic->addr_list);
nic               445 uspace/srv/net/ethip/ethip_nic.c 	return ethip_nic_setup_multicast(nic);
nic               448 uspace/srv/net/ethip/ethip_nic.c errno_t ethip_nic_addr_remove(ethip_nic_t *nic, inet_addr_t *addr)
nic               452 uspace/srv/net/ethip/ethip_nic.c 	ethip_link_addr_t *laddr = ethip_nic_addr_find(nic, addr);
nic               459 uspace/srv/net/ethip/ethip_nic.c 	return ethip_nic_setup_multicast(nic);
nic               462 uspace/srv/net/ethip/ethip_nic.c ethip_link_addr_t *ethip_nic_addr_find(ethip_nic_t *nic,
nic               467 uspace/srv/net/ethip/ethip_nic.c 	list_foreach(nic->addr_list, link, ethip_link_addr_t, laddr) {
HelenOS homepage, sources at GitHub