rocker             38 drivers/net/ethernet/rocker/rocker.h struct rocker;
rocker             42 drivers/net/ethernet/rocker/rocker.h 	struct rocker *rocker;
rocker             53 drivers/net/ethernet/rocker/rocker.h 					       struct rocker *rocker);
rocker             95 drivers/net/ethernet/rocker/rocker.h 	int (*init)(struct rocker *rocker);
rocker             96 drivers/net/ethernet/rocker/rocker.h 	void (*fini)(struct rocker *rocker);
rocker            134 drivers/net/ethernet/rocker/rocker.h 	int (*fib4_add)(struct rocker *rocker,
rocker            136 drivers/net/ethernet/rocker/rocker.h 	int (*fib4_del)(struct rocker *rocker,
rocker            138 drivers/net/ethernet/rocker/rocker.h 	void (*fib4_abort)(struct rocker *rocker);
rocker             96 drivers/net/ethernet/rocker/rocker_main.c static u32 rocker_msix_vector(const struct rocker *rocker, unsigned int vector)
rocker             98 drivers/net/ethernet/rocker/rocker_main.c 	return rocker->msix_entries[vector].vector;
rocker            103 drivers/net/ethernet/rocker/rocker_main.c 	return rocker_msix_vector(rocker_port->rocker,
rocker            109 drivers/net/ethernet/rocker/rocker_main.c 	return rocker_msix_vector(rocker_port->rocker,
rocker            113 drivers/net/ethernet/rocker/rocker_main.c #define rocker_write32(rocker, reg, val)	\
rocker            114 drivers/net/ethernet/rocker/rocker_main.c 	writel((val), (rocker)->hw_addr + (ROCKER_ ## reg))
rocker            115 drivers/net/ethernet/rocker/rocker_main.c #define rocker_read32(rocker, reg)	\
rocker            116 drivers/net/ethernet/rocker/rocker_main.c 	readl((rocker)->hw_addr + (ROCKER_ ## reg))
rocker            117 drivers/net/ethernet/rocker/rocker_main.c #define rocker_write64(rocker, reg, val)	\
rocker            118 drivers/net/ethernet/rocker/rocker_main.c 	writeq((val), (rocker)->hw_addr + (ROCKER_ ## reg))
rocker            119 drivers/net/ethernet/rocker/rocker_main.c #define rocker_read64(rocker, reg)	\
rocker            120 drivers/net/ethernet/rocker/rocker_main.c 	readq((rocker)->hw_addr + (ROCKER_ ## reg))
rocker            126 drivers/net/ethernet/rocker/rocker_main.c static int rocker_reg_test(const struct rocker *rocker)
rocker            128 drivers/net/ethernet/rocker/rocker_main.c 	const struct pci_dev *pdev = rocker->pdev;
rocker            134 drivers/net/ethernet/rocker/rocker_main.c 	rocker_write32(rocker, TEST_REG, rnd);
rocker            135 drivers/net/ethernet/rocker/rocker_main.c 	test_reg = rocker_read32(rocker, TEST_REG);
rocker            145 drivers/net/ethernet/rocker/rocker_main.c 	rocker_write64(rocker, TEST_REG64, rnd);
rocker            146 drivers/net/ethernet/rocker/rocker_main.c 	test_reg = rocker_read64(rocker, TEST_REG64);
rocker            156 drivers/net/ethernet/rocker/rocker_main.c static int rocker_dma_test_one(const struct rocker *rocker,
rocker            161 drivers/net/ethernet/rocker/rocker_main.c 	const struct pci_dev *pdev = rocker->pdev;
rocker            165 drivers/net/ethernet/rocker/rocker_main.c 	rocker_write32(rocker, TEST_DMA_CTRL, test_type);
rocker            185 drivers/net/ethernet/rocker/rocker_main.c static int rocker_dma_test_offset(const struct rocker *rocker,
rocker            188 drivers/net/ethernet/rocker/rocker_main.c 	struct pci_dev *pdev = rocker->pdev;
rocker            210 drivers/net/ethernet/rocker/rocker_main.c 	rocker_write64(rocker, TEST_DMA_ADDR, dma_handle);
rocker            211 drivers/net/ethernet/rocker/rocker_main.c 	rocker_write32(rocker, TEST_DMA_SIZE, ROCKER_TEST_DMA_BUF_SIZE);
rocker            214 drivers/net/ethernet/rocker/rocker_main.c 	err = rocker_dma_test_one(rocker, wait, ROCKER_TEST_DMA_CTRL_FILL,
rocker            221 drivers/net/ethernet/rocker/rocker_main.c 	err = rocker_dma_test_one(rocker, wait, ROCKER_TEST_DMA_CTRL_CLEAR,
rocker            230 drivers/net/ethernet/rocker/rocker_main.c 	err = rocker_dma_test_one(rocker, wait, ROCKER_TEST_DMA_CTRL_INVERT,
rocker            245 drivers/net/ethernet/rocker/rocker_main.c static int rocker_dma_test(const struct rocker *rocker,
rocker            252 drivers/net/ethernet/rocker/rocker_main.c 		err = rocker_dma_test_offset(rocker, wait, i);
rocker            268 drivers/net/ethernet/rocker/rocker_main.c static int rocker_basic_hw_test(const struct rocker *rocker)
rocker            270 drivers/net/ethernet/rocker/rocker_main.c 	const struct pci_dev *pdev = rocker->pdev;
rocker            274 drivers/net/ethernet/rocker/rocker_main.c 	err = rocker_reg_test(rocker);
rocker            280 drivers/net/ethernet/rocker/rocker_main.c 	err = request_irq(rocker_msix_vector(rocker, ROCKER_MSIX_VEC_TEST),
rocker            289 drivers/net/ethernet/rocker/rocker_main.c 	rocker_write32(rocker, TEST_IRQ, ROCKER_MSIX_VEC_TEST);
rocker            297 drivers/net/ethernet/rocker/rocker_main.c 	err = rocker_dma_test(rocker, &wait);
rocker            302 drivers/net/ethernet/rocker/rocker_main.c 	free_irq(rocker_msix_vector(rocker, ROCKER_MSIX_VEC_TEST), &wait);
rocker            386 drivers/net/ethernet/rocker/rocker_main.c static void rocker_desc_head_set(const struct rocker *rocker,
rocker            395 drivers/net/ethernet/rocker/rocker_main.c 	rocker_write32(rocker, DMA_DESC_HEAD(info->type), head);
rocker            413 drivers/net/ethernet/rocker/rocker_main.c static void rocker_dma_ring_credits_set(const struct rocker *rocker,
rocker            418 drivers/net/ethernet/rocker/rocker_main.c 		rocker_write32(rocker, DMA_DESC_CREDITS(info->type), credits);
rocker            427 drivers/net/ethernet/rocker/rocker_main.c static int rocker_dma_ring_create(const struct rocker *rocker,
rocker            444 drivers/net/ethernet/rocker/rocker_main.c 	info->desc = pci_alloc_consistent(rocker->pdev,
rocker            455 drivers/net/ethernet/rocker/rocker_main.c 	rocker_write32(rocker, DMA_DESC_CTRL(info->type),
rocker            457 drivers/net/ethernet/rocker/rocker_main.c 	rocker_write64(rocker, DMA_DESC_ADDR(info->type), info->mapaddr);
rocker            458 drivers/net/ethernet/rocker/rocker_main.c 	rocker_write32(rocker, DMA_DESC_SIZE(info->type), info->size);
rocker            463 drivers/net/ethernet/rocker/rocker_main.c static void rocker_dma_ring_destroy(const struct rocker *rocker,
rocker            466 drivers/net/ethernet/rocker/rocker_main.c 	rocker_write64(rocker, DMA_DESC_ADDR(info->type), 0);
rocker            468 drivers/net/ethernet/rocker/rocker_main.c 	pci_free_consistent(rocker->pdev,
rocker            474 drivers/net/ethernet/rocker/rocker_main.c static void rocker_dma_ring_pass_to_producer(const struct rocker *rocker,
rocker            485 drivers/net/ethernet/rocker/rocker_main.c 		rocker_desc_head_set(rocker, info, &info->desc_info[i]);
rocker            489 drivers/net/ethernet/rocker/rocker_main.c static int rocker_dma_ring_bufs_alloc(const struct rocker *rocker,
rocker            493 drivers/net/ethernet/rocker/rocker_main.c 	struct pci_dev *pdev = rocker->pdev;
rocker            536 drivers/net/ethernet/rocker/rocker_main.c static void rocker_dma_ring_bufs_free(const struct rocker *rocker,
rocker            540 drivers/net/ethernet/rocker/rocker_main.c 	struct pci_dev *pdev = rocker->pdev;
rocker            574 drivers/net/ethernet/rocker/rocker_main.c static int rocker_dma_cmd_ring_waits_alloc(const struct rocker *rocker)
rocker            576 drivers/net/ethernet/rocker/rocker_main.c 	const struct rocker_dma_ring_info *cmd_ring = &rocker->cmd_ring;
rocker            593 drivers/net/ethernet/rocker/rocker_main.c static void rocker_dma_cmd_ring_waits_free(const struct rocker *rocker)
rocker            595 drivers/net/ethernet/rocker/rocker_main.c 	const struct rocker_dma_ring_info *cmd_ring = &rocker->cmd_ring;
rocker            602 drivers/net/ethernet/rocker/rocker_main.c static int rocker_dma_rings_init(struct rocker *rocker)
rocker            604 drivers/net/ethernet/rocker/rocker_main.c 	const struct pci_dev *pdev = rocker->pdev;
rocker            607 drivers/net/ethernet/rocker/rocker_main.c 	err = rocker_dma_ring_create(rocker, ROCKER_DMA_CMD,
rocker            609 drivers/net/ethernet/rocker/rocker_main.c 				     &rocker->cmd_ring);
rocker            615 drivers/net/ethernet/rocker/rocker_main.c 	spin_lock_init(&rocker->cmd_ring_lock);
rocker            617 drivers/net/ethernet/rocker/rocker_main.c 	err = rocker_dma_ring_bufs_alloc(rocker, &rocker->cmd_ring,
rocker            624 drivers/net/ethernet/rocker/rocker_main.c 	err = rocker_dma_cmd_ring_waits_alloc(rocker);
rocker            630 drivers/net/ethernet/rocker/rocker_main.c 	err = rocker_dma_ring_create(rocker, ROCKER_DMA_EVENT,
rocker            632 drivers/net/ethernet/rocker/rocker_main.c 				     &rocker->event_ring);
rocker            638 drivers/net/ethernet/rocker/rocker_main.c 	err = rocker_dma_ring_bufs_alloc(rocker, &rocker->event_ring,
rocker            644 drivers/net/ethernet/rocker/rocker_main.c 	rocker_dma_ring_pass_to_producer(rocker, &rocker->event_ring);
rocker            648 drivers/net/ethernet/rocker/rocker_main.c 	rocker_dma_ring_destroy(rocker, &rocker->event_ring);
rocker            650 drivers/net/ethernet/rocker/rocker_main.c 	rocker_dma_ring_bufs_free(rocker, &rocker->cmd_ring,
rocker            653 drivers/net/ethernet/rocker/rocker_main.c 	rocker_dma_cmd_ring_waits_free(rocker);
rocker            655 drivers/net/ethernet/rocker/rocker_main.c 	rocker_dma_ring_destroy(rocker, &rocker->cmd_ring);
rocker            659 drivers/net/ethernet/rocker/rocker_main.c static void rocker_dma_rings_fini(struct rocker *rocker)
rocker            661 drivers/net/ethernet/rocker/rocker_main.c 	rocker_dma_ring_bufs_free(rocker, &rocker->event_ring,
rocker            663 drivers/net/ethernet/rocker/rocker_main.c 	rocker_dma_ring_destroy(rocker, &rocker->event_ring);
rocker            664 drivers/net/ethernet/rocker/rocker_main.c 	rocker_dma_cmd_ring_waits_free(rocker);
rocker            665 drivers/net/ethernet/rocker/rocker_main.c 	rocker_dma_ring_bufs_free(rocker, &rocker->cmd_ring,
rocker            667 drivers/net/ethernet/rocker/rocker_main.c 	rocker_dma_ring_destroy(rocker, &rocker->cmd_ring);
rocker            674 drivers/net/ethernet/rocker/rocker_main.c 	const struct rocker *rocker = rocker_port->rocker;
rocker            675 drivers/net/ethernet/rocker/rocker_main.c 	struct pci_dev *pdev = rocker->pdev;
rocker            725 drivers/net/ethernet/rocker/rocker_main.c static void rocker_dma_rx_ring_skb_unmap(const struct rocker *rocker,
rocker            728 drivers/net/ethernet/rocker/rocker_main.c 	struct pci_dev *pdev = rocker->pdev;
rocker            740 drivers/net/ethernet/rocker/rocker_main.c static void rocker_dma_rx_ring_skb_free(const struct rocker *rocker,
rocker            749 drivers/net/ethernet/rocker/rocker_main.c 	rocker_dma_rx_ring_skb_unmap(rocker, attrs);
rocker            756 drivers/net/ethernet/rocker/rocker_main.c 	const struct rocker *rocker = rocker_port->rocker;
rocker            770 drivers/net/ethernet/rocker/rocker_main.c 		rocker_dma_rx_ring_skb_free(rocker, &rx_ring->desc_info[i]);
rocker            777 drivers/net/ethernet/rocker/rocker_main.c 	const struct rocker *rocker = rocker_port->rocker;
rocker            781 drivers/net/ethernet/rocker/rocker_main.c 		rocker_dma_rx_ring_skb_free(rocker, &rx_ring->desc_info[i]);
rocker            786 drivers/net/ethernet/rocker/rocker_main.c 	struct rocker *rocker = rocker_port->rocker;
rocker            789 drivers/net/ethernet/rocker/rocker_main.c 	err = rocker_dma_ring_create(rocker,
rocker            798 drivers/net/ethernet/rocker/rocker_main.c 	err = rocker_dma_ring_bufs_alloc(rocker, &rocker_port->tx_ring,
rocker            806 drivers/net/ethernet/rocker/rocker_main.c 	err = rocker_dma_ring_create(rocker,
rocker            815 drivers/net/ethernet/rocker/rocker_main.c 	err = rocker_dma_ring_bufs_alloc(rocker, &rocker_port->rx_ring,
rocker            828 drivers/net/ethernet/rocker/rocker_main.c 	rocker_dma_ring_pass_to_producer(rocker, &rocker_port->rx_ring);
rocker            833 drivers/net/ethernet/rocker/rocker_main.c 	rocker_dma_ring_bufs_free(rocker, &rocker_port->rx_ring,
rocker            836 drivers/net/ethernet/rocker/rocker_main.c 	rocker_dma_ring_destroy(rocker, &rocker_port->rx_ring);
rocker            838 drivers/net/ethernet/rocker/rocker_main.c 	rocker_dma_ring_bufs_free(rocker, &rocker_port->tx_ring,
rocker            841 drivers/net/ethernet/rocker/rocker_main.c 	rocker_dma_ring_destroy(rocker, &rocker_port->tx_ring);
rocker            847 drivers/net/ethernet/rocker/rocker_main.c 	struct rocker *rocker = rocker_port->rocker;
rocker            850 drivers/net/ethernet/rocker/rocker_main.c 	rocker_dma_ring_bufs_free(rocker, &rocker_port->rx_ring,
rocker            852 drivers/net/ethernet/rocker/rocker_main.c 	rocker_dma_ring_destroy(rocker, &rocker_port->rx_ring);
rocker            853 drivers/net/ethernet/rocker/rocker_main.c 	rocker_dma_ring_bufs_free(rocker, &rocker_port->tx_ring,
rocker            855 drivers/net/ethernet/rocker/rocker_main.c 	rocker_dma_ring_destroy(rocker, &rocker_port->tx_ring);
rocker            861 drivers/net/ethernet/rocker/rocker_main.c 	u64 val = rocker_read64(rocker_port->rocker, PORT_PHYS_ENABLE);
rocker            867 drivers/net/ethernet/rocker/rocker_main.c 	rocker_write64(rocker_port->rocker, PORT_PHYS_ENABLE, val);
rocker            876 drivers/net/ethernet/rocker/rocker_main.c 	struct rocker *rocker = dev_id;
rocker            881 drivers/net/ethernet/rocker/rocker_main.c 	spin_lock(&rocker->cmd_ring_lock);
rocker            882 drivers/net/ethernet/rocker/rocker_main.c 	while ((desc_info = rocker_desc_tail_get(&rocker->cmd_ring))) {
rocker            891 drivers/net/ethernet/rocker/rocker_main.c 	spin_unlock(&rocker->cmd_ring_lock);
rocker            892 drivers/net/ethernet/rocker/rocker_main.c 	rocker_dma_ring_credits_set(rocker, &rocker->cmd_ring, credits);
rocker            909 drivers/net/ethernet/rocker/rocker_main.c static int rocker_event_link_change(const struct rocker *rocker,
rocker            925 drivers/net/ethernet/rocker/rocker_main.c 	if (port_number >= rocker->port_count)
rocker            928 drivers/net/ethernet/rocker/rocker_main.c 	rocker_port = rocker->ports[port_number];
rocker            943 drivers/net/ethernet/rocker/rocker_main.c static int rocker_event_mac_vlan_seen(const struct rocker *rocker,
rocker            962 drivers/net/ethernet/rocker/rocker_main.c 	if (port_number >= rocker->port_count)
rocker            965 drivers/net/ethernet/rocker/rocker_main.c 	rocker_port = rocker->ports[port_number];
rocker            969 drivers/net/ethernet/rocker/rocker_main.c static int rocker_event_process(const struct rocker *rocker,
rocker            986 drivers/net/ethernet/rocker/rocker_main.c 		return rocker_event_link_change(rocker, info);
rocker            988 drivers/net/ethernet/rocker/rocker_main.c 		return rocker_event_mac_vlan_seen(rocker, info);
rocker            996 drivers/net/ethernet/rocker/rocker_main.c 	struct rocker *rocker = dev_id;
rocker            997 drivers/net/ethernet/rocker/rocker_main.c 	const struct pci_dev *pdev = rocker->pdev;
rocker           1002 drivers/net/ethernet/rocker/rocker_main.c 	while ((desc_info = rocker_desc_tail_get(&rocker->event_ring))) {
rocker           1008 drivers/net/ethernet/rocker/rocker_main.c 			err = rocker_event_process(rocker, desc_info);
rocker           1014 drivers/net/ethernet/rocker/rocker_main.c 		rocker_desc_head_set(rocker, &rocker->event_ring, desc_info);
rocker           1017 drivers/net/ethernet/rocker/rocker_main.c 	rocker_dma_ring_credits_set(rocker, &rocker->event_ring, credits);
rocker           1046 drivers/net/ethernet/rocker/rocker_main.c 	struct rocker *rocker = rocker_port->rocker;
rocker           1052 drivers/net/ethernet/rocker/rocker_main.c 	spin_lock_irqsave(&rocker->cmd_ring_lock, lock_flags);
rocker           1054 drivers/net/ethernet/rocker/rocker_main.c 	desc_info = rocker_desc_head_get(&rocker->cmd_ring);
rocker           1056 drivers/net/ethernet/rocker/rocker_main.c 		spin_unlock_irqrestore(&rocker->cmd_ring_lock, lock_flags);
rocker           1066 drivers/net/ethernet/rocker/rocker_main.c 		spin_unlock_irqrestore(&rocker->cmd_ring_lock, lock_flags);
rocker           1070 drivers/net/ethernet/rocker/rocker_main.c 	rocker_desc_head_set(rocker, &rocker->cmd_ring, desc_info);
rocker           1072 drivers/net/ethernet/rocker/rocker_main.c 	spin_unlock_irqrestore(&rocker->cmd_ring_lock, lock_flags);
rocker           1433 drivers/net/ethernet/rocker/rocker_main.c static int rocker_world_init(struct rocker *rocker, u8 mode)
rocker           1440 drivers/net/ethernet/rocker/rocker_main.c 		dev_err(&rocker->pdev->dev, "port mode \"%d\" is not supported\n",
rocker           1444 drivers/net/ethernet/rocker/rocker_main.c 	rocker->wops = wops;
rocker           1445 drivers/net/ethernet/rocker/rocker_main.c 	rocker->wpriv = kzalloc(wops->priv_size, GFP_KERNEL);
rocker           1446 drivers/net/ethernet/rocker/rocker_main.c 	if (!rocker->wpriv)
rocker           1450 drivers/net/ethernet/rocker/rocker_main.c 	err = wops->init(rocker);
rocker           1452 drivers/net/ethernet/rocker/rocker_main.c 		kfree(rocker->wpriv);
rocker           1456 drivers/net/ethernet/rocker/rocker_main.c static void rocker_world_fini(struct rocker *rocker)
rocker           1458 drivers/net/ethernet/rocker/rocker_main.c 	struct rocker_world_ops *wops = rocker->wops;
rocker           1462 drivers/net/ethernet/rocker/rocker_main.c 	wops->fini(rocker);
rocker           1463 drivers/net/ethernet/rocker/rocker_main.c 	kfree(rocker->wpriv);
rocker           1468 drivers/net/ethernet/rocker/rocker_main.c 	struct rocker *rocker = rocker_port->rocker;
rocker           1474 drivers/net/ethernet/rocker/rocker_main.c 		dev_err(&rocker->pdev->dev, "failed to get port mode\n");
rocker           1477 drivers/net/ethernet/rocker/rocker_main.c 	if (rocker->wops) {
rocker           1478 drivers/net/ethernet/rocker/rocker_main.c 		if (rocker->wops->mode != mode) {
rocker           1479 drivers/net/ethernet/rocker/rocker_main.c 			dev_err(&rocker->pdev->dev, "hardware has ports in different worlds, which is not supported\n");
rocker           1484 drivers/net/ethernet/rocker/rocker_main.c 	return rocker_world_init(rocker, mode);
rocker           1489 drivers/net/ethernet/rocker/rocker_main.c 	struct rocker_world_ops *wops = rocker_port->rocker->wops;
rocker           1505 drivers/net/ethernet/rocker/rocker_main.c 	struct rocker_world_ops *wops = rocker_port->rocker->wops;
rocker           1514 drivers/net/ethernet/rocker/rocker_main.c 	struct rocker_world_ops *wops = rocker_port->rocker->wops;
rocker           1523 drivers/net/ethernet/rocker/rocker_main.c 	struct rocker_world_ops *wops = rocker_port->rocker->wops;
rocker           1533 drivers/net/ethernet/rocker/rocker_main.c 	struct rocker_world_ops *wops = rocker_port->rocker->wops;
rocker           1542 drivers/net/ethernet/rocker/rocker_main.c 	struct rocker_world_ops *wops = rocker_port->rocker->wops;
rocker           1553 drivers/net/ethernet/rocker/rocker_main.c 	struct rocker_world_ops *wops = rocker_port->rocker->wops;
rocker           1570 drivers/net/ethernet/rocker/rocker_main.c 	struct rocker_world_ops *wops = rocker_port->rocker->wops;
rocker           1583 drivers/net/ethernet/rocker/rocker_main.c 	struct rocker_world_ops *wops = rocker_port->rocker->wops;
rocker           1606 drivers/net/ethernet/rocker/rocker_main.c 	struct rocker_world_ops *wops = rocker_port->rocker->wops;
rocker           1624 drivers/net/ethernet/rocker/rocker_main.c 	struct rocker_world_ops *wops = rocker_port->rocker->wops;
rocker           1641 drivers/net/ethernet/rocker/rocker_main.c 	struct rocker_world_ops *wops = rocker_port->rocker->wops;
rocker           1656 drivers/net/ethernet/rocker/rocker_main.c 	struct rocker_world_ops *wops = rocker_port->rocker->wops;
rocker           1670 drivers/net/ethernet/rocker/rocker_main.c 	struct rocker_world_ops *wops = rocker_port->rocker->wops;
rocker           1682 drivers/net/ethernet/rocker/rocker_main.c 	struct rocker_world_ops *wops = rocker_port->rocker->wops;
rocker           1692 drivers/net/ethernet/rocker/rocker_main.c 	struct rocker_world_ops *wops = rocker_port->rocker->wops;
rocker           1702 drivers/net/ethernet/rocker/rocker_main.c 	struct rocker_world_ops *wops = rocker_port->rocker->wops;
rocker           1712 drivers/net/ethernet/rocker/rocker_main.c 	struct rocker_world_ops *wops = rocker_port->rocker->wops;
rocker           1722 drivers/net/ethernet/rocker/rocker_main.c 	struct rocker_world_ops *wops = rocker_port->rocker->wops;
rocker           1733 drivers/net/ethernet/rocker/rocker_main.c 	struct rocker_world_ops *wops = rocker_port->rocker->wops;
rocker           1740 drivers/net/ethernet/rocker/rocker_main.c static int rocker_world_fib4_add(struct rocker *rocker,
rocker           1743 drivers/net/ethernet/rocker/rocker_main.c 	struct rocker_world_ops *wops = rocker->wops;
rocker           1747 drivers/net/ethernet/rocker/rocker_main.c 	return wops->fib4_add(rocker, fen_info);
rocker           1750 drivers/net/ethernet/rocker/rocker_main.c static int rocker_world_fib4_del(struct rocker *rocker,
rocker           1753 drivers/net/ethernet/rocker/rocker_main.c 	struct rocker_world_ops *wops = rocker->wops;
rocker           1757 drivers/net/ethernet/rocker/rocker_main.c 	return wops->fib4_del(rocker, fen_info);
rocker           1760 drivers/net/ethernet/rocker/rocker_main.c static void rocker_world_fib4_abort(struct rocker *rocker)
rocker           1762 drivers/net/ethernet/rocker/rocker_main.c 	struct rocker_world_ops *wops = rocker->wops;
rocker           1765 drivers/net/ethernet/rocker/rocker_main.c 		wops->fib4_abort(rocker);
rocker           1838 drivers/net/ethernet/rocker/rocker_main.c 	const struct rocker *rocker = rocker_port->rocker;
rocker           1839 drivers/net/ethernet/rocker/rocker_main.c 	struct pci_dev *pdev = rocker->pdev;
rocker           1869 drivers/net/ethernet/rocker/rocker_main.c 	const struct rocker *rocker = rocker_port->rocker;
rocker           1870 drivers/net/ethernet/rocker/rocker_main.c 	struct pci_dev *pdev = rocker->pdev;
rocker           1902 drivers/net/ethernet/rocker/rocker_main.c 	struct rocker *rocker = rocker_port->rocker;
rocker           1942 drivers/net/ethernet/rocker/rocker_main.c 	rocker_desc_head_set(rocker, &rocker_port->tx_ring, desc_info);
rocker           2041 drivers/net/ethernet/rocker/rocker_main.c 	const struct rocker *rocker = rocker_port->rocker;
rocker           2043 drivers/net/ethernet/rocker/rocker_main.c 	ppid->id_len = sizeof(rocker->hw.id);
rocker           2044 drivers/net/ethernet/rocker/rocker_main.c 	memcpy(&ppid->id, &rocker->hw.id, ppid->id_len);
rocker           2147 drivers/net/ethernet/rocker/rocker_main.c 	struct rocker *rocker;
rocker           2155 drivers/net/ethernet/rocker/rocker_main.c 	struct rocker *rocker = fib_work->rocker;
rocker           2163 drivers/net/ethernet/rocker/rocker_main.c 		err = rocker_world_fib4_add(rocker, &fib_work->fen_info);
rocker           2165 drivers/net/ethernet/rocker/rocker_main.c 			rocker_world_fib4_abort(rocker);
rocker           2169 drivers/net/ethernet/rocker/rocker_main.c 		rocker_world_fib4_del(rocker, &fib_work->fen_info);
rocker           2176 drivers/net/ethernet/rocker/rocker_main.c 			rocker_world_fib4_abort(rocker);
rocker           2188 drivers/net/ethernet/rocker/rocker_main.c 	struct rocker *rocker = container_of(nb, struct rocker, fib_nb);
rocker           2203 drivers/net/ethernet/rocker/rocker_main.c 	fib_work->rocker = rocker;
rocker           2237 drivers/net/ethernet/rocker/rocker_main.c 	queue_work(rocker->rocker_owq, &fib_work->work);
rocker           2420 drivers/net/ethernet/rocker/rocker_main.c 	const struct rocker *rocker = rocker_port->rocker;
rocker           2451 drivers/net/ethernet/rocker/rocker_main.c 	rocker_dma_ring_credits_set(rocker, &rocker_port->tx_ring, credits);
rocker           2456 drivers/net/ethernet/rocker/rocker_main.c static int rocker_port_rx_proc(const struct rocker *rocker,
rocker           2474 drivers/net/ethernet/rocker/rocker_main.c 	rocker_dma_rx_ring_skb_unmap(rocker, attrs);
rocker           2499 drivers/net/ethernet/rocker/rocker_main.c 	const struct rocker *rocker = rocker_port->rocker;
rocker           2513 drivers/net/ethernet/rocker/rocker_main.c 			err = rocker_port_rx_proc(rocker, rocker_port,
rocker           2523 drivers/net/ethernet/rocker/rocker_main.c 		rocker_desc_head_set(rocker, &rocker_port->rx_ring, desc_info);
rocker           2530 drivers/net/ethernet/rocker/rocker_main.c 	rocker_dma_ring_credits_set(rocker, &rocker_port->rx_ring, credits);
rocker           2541 drivers/net/ethernet/rocker/rocker_main.c 	const struct rocker *rocker = rocker_port->rocker;
rocker           2542 drivers/net/ethernet/rocker/rocker_main.c 	u64 link_status = rocker_read64(rocker, PORT_PHYS_LINK_STATUS);
rocker           2552 drivers/net/ethernet/rocker/rocker_main.c static void rocker_remove_ports(struct rocker *rocker)
rocker           2557 drivers/net/ethernet/rocker/rocker_main.c 	for (i = 0; i < rocker->port_count; i++) {
rocker           2558 drivers/net/ethernet/rocker/rocker_main.c 		rocker_port = rocker->ports[i];
rocker           2566 drivers/net/ethernet/rocker/rocker_main.c 	rocker_world_fini(rocker);
rocker           2567 drivers/net/ethernet/rocker/rocker_main.c 	kfree(rocker->ports);
rocker           2572 drivers/net/ethernet/rocker/rocker_main.c 	const struct rocker *rocker = rocker_port->rocker;
rocker           2573 drivers/net/ethernet/rocker/rocker_main.c 	const struct pci_dev *pdev = rocker->pdev;
rocker           2586 drivers/net/ethernet/rocker/rocker_main.c static int rocker_probe_port(struct rocker *rocker, unsigned int port_number)
rocker           2588 drivers/net/ethernet/rocker/rocker_main.c 	struct pci_dev *pdev = rocker->pdev;
rocker           2599 drivers/net/ethernet/rocker/rocker_main.c 	rocker_port->rocker = rocker;
rocker           2634 drivers/net/ethernet/rocker/rocker_main.c 	rocker->ports[port_number] = rocker_port;
rocker           2645 drivers/net/ethernet/rocker/rocker_main.c 	rocker->ports[port_number] = NULL;
rocker           2655 drivers/net/ethernet/rocker/rocker_main.c static int rocker_probe_ports(struct rocker *rocker)
rocker           2661 drivers/net/ethernet/rocker/rocker_main.c 	alloc_size = sizeof(struct rocker_port *) * rocker->port_count;
rocker           2662 drivers/net/ethernet/rocker/rocker_main.c 	rocker->ports = kzalloc(alloc_size, GFP_KERNEL);
rocker           2663 drivers/net/ethernet/rocker/rocker_main.c 	if (!rocker->ports)
rocker           2665 drivers/net/ethernet/rocker/rocker_main.c 	for (i = 0; i < rocker->port_count; i++) {
rocker           2666 drivers/net/ethernet/rocker/rocker_main.c 		err = rocker_probe_port(rocker, i);
rocker           2673 drivers/net/ethernet/rocker/rocker_main.c 	rocker_remove_ports(rocker);
rocker           2677 drivers/net/ethernet/rocker/rocker_main.c static int rocker_msix_init(struct rocker *rocker)
rocker           2679 drivers/net/ethernet/rocker/rocker_main.c 	struct pci_dev *pdev = rocker->pdev;
rocker           2688 drivers/net/ethernet/rocker/rocker_main.c 	if (msix_entries != ROCKER_MSIX_VEC_COUNT(rocker->port_count))
rocker           2691 drivers/net/ethernet/rocker/rocker_main.c 	rocker->msix_entries = kmalloc_array(msix_entries,
rocker           2694 drivers/net/ethernet/rocker/rocker_main.c 	if (!rocker->msix_entries)
rocker           2698 drivers/net/ethernet/rocker/rocker_main.c 		rocker->msix_entries[i].entry = i;
rocker           2700 drivers/net/ethernet/rocker/rocker_main.c 	err = pci_enable_msix_exact(pdev, rocker->msix_entries, msix_entries);
rocker           2707 drivers/net/ethernet/rocker/rocker_main.c 	kfree(rocker->msix_entries);
rocker           2711 drivers/net/ethernet/rocker/rocker_main.c static void rocker_msix_fini(const struct rocker *rocker)
rocker           2713 drivers/net/ethernet/rocker/rocker_main.c 	pci_disable_msix(rocker->pdev);
rocker           2714 drivers/net/ethernet/rocker/rocker_main.c 	kfree(rocker->msix_entries);
rocker           2837 drivers/net/ethernet/rocker/rocker_main.c 	queue_work(rocker_port->rocker->rocker_owq,
rocker           2892 drivers/net/ethernet/rocker/rocker_main.c 	struct rocker *rocker;
rocker           2895 drivers/net/ethernet/rocker/rocker_main.c 	rocker = kzalloc(sizeof(*rocker), GFP_KERNEL);
rocker           2896 drivers/net/ethernet/rocker/rocker_main.c 	if (!rocker)
rocker           2932 drivers/net/ethernet/rocker/rocker_main.c 	rocker->hw_addr = ioremap(pci_resource_start(pdev, 0),
rocker           2934 drivers/net/ethernet/rocker/rocker_main.c 	if (!rocker->hw_addr) {
rocker           2941 drivers/net/ethernet/rocker/rocker_main.c 	rocker->pdev = pdev;
rocker           2942 drivers/net/ethernet/rocker/rocker_main.c 	pci_set_drvdata(pdev, rocker);
rocker           2944 drivers/net/ethernet/rocker/rocker_main.c 	rocker->port_count = rocker_read32(rocker, PORT_PHYS_COUNT);
rocker           2946 drivers/net/ethernet/rocker/rocker_main.c 	err = rocker_msix_init(rocker);
rocker           2952 drivers/net/ethernet/rocker/rocker_main.c 	err = rocker_basic_hw_test(rocker);
rocker           2958 drivers/net/ethernet/rocker/rocker_main.c 	rocker_write32(rocker, CONTROL, ROCKER_CONTROL_RESET);
rocker           2960 drivers/net/ethernet/rocker/rocker_main.c 	err = rocker_dma_rings_init(rocker);
rocker           2964 drivers/net/ethernet/rocker/rocker_main.c 	err = request_irq(rocker_msix_vector(rocker, ROCKER_MSIX_VEC_CMD),
rocker           2966 drivers/net/ethernet/rocker/rocker_main.c 			  rocker_driver_name, rocker);
rocker           2972 drivers/net/ethernet/rocker/rocker_main.c 	err = request_irq(rocker_msix_vector(rocker, ROCKER_MSIX_VEC_EVENT),
rocker           2974 drivers/net/ethernet/rocker/rocker_main.c 			  rocker_driver_name, rocker);
rocker           2980 drivers/net/ethernet/rocker/rocker_main.c 	rocker->rocker_owq = alloc_ordered_workqueue(rocker_driver_name,
rocker           2982 drivers/net/ethernet/rocker/rocker_main.c 	if (!rocker->rocker_owq) {
rocker           2987 drivers/net/ethernet/rocker/rocker_main.c 	err = rocker_probe_ports(rocker);
rocker           2996 drivers/net/ethernet/rocker/rocker_main.c 	rocker->fib_nb.notifier_call = rocker_router_fib_event;
rocker           2997 drivers/net/ethernet/rocker/rocker_main.c 	err = register_fib_notifier(&rocker->fib_nb, NULL);
rocker           3014 drivers/net/ethernet/rocker/rocker_main.c 	rocker->hw.id = rocker_read64(rocker, SWITCH_ID);
rocker           3017 drivers/net/ethernet/rocker/rocker_main.c 		 (int)sizeof(rocker->hw.id), &rocker->hw.id);
rocker           3024 drivers/net/ethernet/rocker/rocker_main.c 	unregister_fib_notifier(&rocker->fib_nb);
rocker           3026 drivers/net/ethernet/rocker/rocker_main.c 	rocker_remove_ports(rocker);
rocker           3028 drivers/net/ethernet/rocker/rocker_main.c 	destroy_workqueue(rocker->rocker_owq);
rocker           3030 drivers/net/ethernet/rocker/rocker_main.c 	free_irq(rocker_msix_vector(rocker, ROCKER_MSIX_VEC_EVENT), rocker);
rocker           3032 drivers/net/ethernet/rocker/rocker_main.c 	free_irq(rocker_msix_vector(rocker, ROCKER_MSIX_VEC_CMD), rocker);
rocker           3034 drivers/net/ethernet/rocker/rocker_main.c 	rocker_dma_rings_fini(rocker);
rocker           3037 drivers/net/ethernet/rocker/rocker_main.c 	rocker_msix_fini(rocker);
rocker           3039 drivers/net/ethernet/rocker/rocker_main.c 	iounmap(rocker->hw_addr);
rocker           3047 drivers/net/ethernet/rocker/rocker_main.c 	kfree(rocker);
rocker           3053 drivers/net/ethernet/rocker/rocker_main.c 	struct rocker *rocker = pci_get_drvdata(pdev);
rocker           3060 drivers/net/ethernet/rocker/rocker_main.c 	unregister_fib_notifier(&rocker->fib_nb);
rocker           3061 drivers/net/ethernet/rocker/rocker_main.c 	rocker_remove_ports(rocker);
rocker           3062 drivers/net/ethernet/rocker/rocker_main.c 	rocker_write32(rocker, CONTROL, ROCKER_CONTROL_RESET);
rocker           3063 drivers/net/ethernet/rocker/rocker_main.c 	destroy_workqueue(rocker->rocker_owq);
rocker           3064 drivers/net/ethernet/rocker/rocker_main.c 	free_irq(rocker_msix_vector(rocker, ROCKER_MSIX_VEC_EVENT), rocker);
rocker           3065 drivers/net/ethernet/rocker/rocker_main.c 	free_irq(rocker_msix_vector(rocker, ROCKER_MSIX_VEC_CMD), rocker);
rocker           3066 drivers/net/ethernet/rocker/rocker_main.c 	rocker_dma_rings_fini(rocker);
rocker           3067 drivers/net/ethernet/rocker/rocker_main.c 	rocker_msix_fini(rocker);
rocker           3068 drivers/net/ethernet/rocker/rocker_main.c 	iounmap(rocker->hw_addr);
rocker           3069 drivers/net/ethernet/rocker/rocker_main.c 	pci_release_regions(rocker->pdev);
rocker           3070 drivers/net/ethernet/rocker/rocker_main.c 	pci_disable_device(rocker->pdev);
rocker           3071 drivers/net/ethernet/rocker/rocker_main.c 	kfree(rocker);
rocker           3086 drivers/net/ethernet/rocker/rocker_main.c 					struct rocker *rocker)
rocker           3094 drivers/net/ethernet/rocker/rocker_main.c 	if (rocker_port->rocker != rocker)
rocker           3101 drivers/net/ethernet/rocker/rocker_main.c 	struct rocker *rocker;
rocker           3110 drivers/net/ethernet/rocker/rocker_main.c 	if (rocker_port_dev_check_under(lower_dev, data->rocker)) {
rocker           3119 drivers/net/ethernet/rocker/rocker_main.c 					       struct rocker *rocker)
rocker           3123 drivers/net/ethernet/rocker/rocker_main.c 	if (rocker_port_dev_check_under(dev, rocker))
rocker           3126 drivers/net/ethernet/rocker/rocker_main.c 	data.rocker = rocker;
rocker            174 drivers/net/ethernet/rocker/rocker_ofdpa.c 	struct rocker *rocker;
rocker           1439 drivers/net/ethernet/rocker/rocker_ofdpa.c 	rocker_port = ofdpa->rocker->ports[port_index];
rocker           1448 drivers/net/ethernet/rocker/rocker_ofdpa.c 	unsigned int port_count = ofdpa->rocker->port_count;
rocker           1494 drivers/net/ethernet/rocker/rocker_ofdpa.c 	unsigned int port_count = ofdpa->rocker->port_count;
rocker           2346 drivers/net/ethernet/rocker/rocker_ofdpa.c static int ofdpa_init(struct rocker *rocker)
rocker           2348 drivers/net/ethernet/rocker/rocker_ofdpa.c 	struct ofdpa *ofdpa = rocker->wpriv;
rocker           2350 drivers/net/ethernet/rocker/rocker_ofdpa.c 	ofdpa->rocker = rocker;
rocker           2375 drivers/net/ethernet/rocker/rocker_ofdpa.c static void ofdpa_fini(struct rocker *rocker)
rocker           2377 drivers/net/ethernet/rocker/rocker_ofdpa.c 	struct ofdpa *ofdpa = rocker->wpriv;
rocker           2389 drivers/net/ethernet/rocker/rocker_ofdpa.c 	flush_workqueue(rocker->rocker_owq);
rocker           2422 drivers/net/ethernet/rocker/rocker_ofdpa.c 	ofdpa_port->ofdpa = rocker_port->rocker->wpriv;
rocker           2724 drivers/net/ethernet/rocker/rocker_ofdpa.c 						    struct rocker *rocker)
rocker           2728 drivers/net/ethernet/rocker/rocker_ofdpa.c 	rocker_port = rocker_port_dev_lower_find(dev, rocker);
rocker           2732 drivers/net/ethernet/rocker/rocker_ofdpa.c static int ofdpa_fib4_add(struct rocker *rocker,
rocker           2735 drivers/net/ethernet/rocker/rocker_ofdpa.c 	struct ofdpa *ofdpa = rocker->wpriv;
rocker           2743 drivers/net/ethernet/rocker/rocker_ofdpa.c 	ofdpa_port = ofdpa_port_dev_lower_find(nh->fib_nh_dev, rocker);
rocker           2755 drivers/net/ethernet/rocker/rocker_ofdpa.c static int ofdpa_fib4_del(struct rocker *rocker,
rocker           2758 drivers/net/ethernet/rocker/rocker_ofdpa.c 	struct ofdpa *ofdpa = rocker->wpriv;
rocker           2765 drivers/net/ethernet/rocker/rocker_ofdpa.c 	ofdpa_port = ofdpa_port_dev_lower_find(nh->fib_nh_dev, rocker);
rocker           2774 drivers/net/ethernet/rocker/rocker_ofdpa.c static void ofdpa_fib4_abort(struct rocker *rocker)
rocker           2776 drivers/net/ethernet/rocker/rocker_ofdpa.c 	struct ofdpa *ofdpa = rocker->wpriv;
rocker           2794 drivers/net/ethernet/rocker/rocker_ofdpa.c 		ofdpa_port = ofdpa_port_dev_lower_find(nh->fib_nh_dev, rocker);