Symbol: bgx
drivers/net/ethernet/cavium/thunder/nic_main.c
1034
bgx = NIC_GET_BGX_FROM_VF_LMAC_MAP(nic->vf_lmac_map[lmac]);
drivers/net/ethernet/cavium/thunder/nic_main.c
1036
bgx_set_lmac_mac(nic->node, bgx, lmac, mbx.mac.mac_addr);
drivers/net/ethernet/cavium/thunder/nic_main.c
1095
bgx = NIC_GET_BGX_FROM_VF_LMAC_MAP(nic->vf_lmac_map[vf]);
drivers/net/ethernet/cavium/thunder/nic_main.c
1097
bgx_reset_xcast_mode(nic->node, bgx, lmac,
drivers/net/ethernet/cavium/thunder/nic_main.c
1107
bgx = NIC_GET_BGX_FROM_VF_LMAC_MAP(nic->vf_lmac_map[vf]);
drivers/net/ethernet/cavium/thunder/nic_main.c
1109
bgx_set_dmac_cam_filter(nic->node, bgx, lmac,
drivers/net/ethernet/cavium/thunder/nic_main.c
1120
bgx = NIC_GET_BGX_FROM_VF_LMAC_MAP(nic->vf_lmac_map[vf]);
drivers/net/ethernet/cavium/thunder/nic_main.c
1122
bgx_set_xcast_mode(nic->node, bgx, lmac, mbx.xcast.mode);
drivers/net/ethernet/cavium/thunder/nic_main.c
231
static void nic_get_bgx_stats(struct nicpf *nic, struct bgx_stats_msg *bgx)
drivers/net/ethernet/cavium/thunder/nic_main.c
236
bgx_idx = NIC_GET_BGX_FROM_VF_LMAC_MAP(nic->vf_lmac_map[bgx->vf_id]);
drivers/net/ethernet/cavium/thunder/nic_main.c
237
lmac = NIC_GET_LMAC_FROM_VF_LMAC_MAP(nic->vf_lmac_map[bgx->vf_id]);
drivers/net/ethernet/cavium/thunder/nic_main.c
240
mbx.bgx_stats.vf_id = bgx->vf_id;
drivers/net/ethernet/cavium/thunder/nic_main.c
241
mbx.bgx_stats.rx = bgx->rx;
drivers/net/ethernet/cavium/thunder/nic_main.c
242
mbx.bgx_stats.idx = bgx->idx;
drivers/net/ethernet/cavium/thunder/nic_main.c
243
if (bgx->rx)
drivers/net/ethernet/cavium/thunder/nic_main.c
245
lmac, bgx->idx);
drivers/net/ethernet/cavium/thunder/nic_main.c
248
lmac, bgx->idx);
drivers/net/ethernet/cavium/thunder/nic_main.c
249
nic_send_msg_to_vf(nic, bgx->vf_id, &mbx);
drivers/net/ethernet/cavium/thunder/nic_main.c
255
int bgx, lmac, lmac_cnt;
drivers/net/ethernet/cavium/thunder/nic_main.c
261
bgx = NIC_GET_BGX_FROM_VF_LMAC_MAP(nic->vf_lmac_map[vf]);
drivers/net/ethernet/cavium/thunder/nic_main.c
263
lmac += bgx * MAX_LMAC_PER_BGX;
drivers/net/ethernet/cavium/thunder/nic_main.c
268
lmac_cnt = bgx_get_lmac_count(nic->node, bgx);
drivers/net/ethernet/cavium/thunder/nic_main.c
320
int bgx, next_bgx_lmac = 0;
drivers/net/ethernet/cavium/thunder/nic_main.c
326
for (bgx = 0; bgx < nic->hw->bgx_cnt; bgx++) {
drivers/net/ethernet/cavium/thunder/nic_main.c
327
if (!(bgx_map & (1 << bgx)))
drivers/net/ethernet/cavium/thunder/nic_main.c
329
lmac_cnt = bgx_get_lmac_count(nic->node, bgx);
drivers/net/ethernet/cavium/thunder/nic_main.c
332
NIC_SET_VF_LMAC_MAP(bgx, lmac);
drivers/net/ethernet/cavium/thunder/nic_main.c
341
lmac = bgx * MAX_LMAC_PER_BGX;
drivers/net/ethernet/cavium/thunder/nic_main.c
342
for (; lmac < lmac_cnt + (bgx * MAX_LMAC_PER_BGX); lmac++)
drivers/net/ethernet/cavium/thunder/nic_main.c
475
u32 vnic, bgx, lmac, chan;
drivers/net/ethernet/cavium/thunder/nic_main.c
481
bgx = NIC_GET_BGX_FROM_VF_LMAC_MAP(nic->vf_lmac_map[vnic]);
drivers/net/ethernet/cavium/thunder/nic_main.c
484
chan = (lmac * hw->chans_per_lmac) + (bgx * hw->chans_per_bgx);
drivers/net/ethernet/cavium/thunder/nic_main.c
53
#define NIC_SET_VF_LMAC_MAP(bgx, lmac) (((bgx & 0xF) << 4) | (lmac & 0xF))
drivers/net/ethernet/cavium/thunder/nic_main.c
615
u32 bgx, lmac, chan;
drivers/net/ethernet/cavium/thunder/nic_main.c
627
bgx = NIC_GET_BGX_FROM_VF_LMAC_MAP(nic->vf_lmac_map[pqs_vnic]);
drivers/net/ethernet/cavium/thunder/nic_main.c
637
tl4 = bgx * (hw->tl4_cnt / hw->bgx_cnt);
drivers/net/ethernet/cavium/thunder/nic_main.c
669
chan = (lmac * hw->chans_per_lmac) + (bgx * hw->chans_per_bgx);
drivers/net/ethernet/cavium/thunder/nic_main.c
692
lmac + (bgx * MAX_LMAC_PER_BGX));
drivers/net/ethernet/cavium/thunder/nic_main.c
848
int bgx, lmac;
drivers/net/ethernet/cavium/thunder/nic_main.c
855
bgx = NIC_GET_BGX_FROM_VF_LMAC_MAP(nic->vf_lmac_map[vf]);
drivers/net/ethernet/cavium/thunder/nic_main.c
858
bgx_lmac_rx_tx_enable(nic->node, bgx, lmac, enable);
drivers/net/ethernet/cavium/thunder/nic_main.c
863
int bgx, lmac;
drivers/net/ethernet/cavium/thunder/nic_main.c
869
bgx = NIC_GET_BGX_FROM_VF_LMAC_MAP(nic->vf_lmac_map[vf]);
drivers/net/ethernet/cavium/thunder/nic_main.c
873
bgx_lmac_get_pfc(nic->node, bgx, lmac, &pfc);
drivers/net/ethernet/cavium/thunder/nic_main.c
880
bgx_lmac_set_pfc(nic->node, bgx, lmac, cfg);
drivers/net/ethernet/cavium/thunder/nic_main.c
931
u8 bgx, lmac;
drivers/net/ethernet/cavium/thunder/nic_main.c
936
bgx = NIC_GET_BGX_FROM_VF_LMAC_MAP(nic->vf_lmac_map[vf]);
drivers/net/ethernet/cavium/thunder/nic_main.c
940
bgx_get_lmac_link_state(nic->node, bgx, lmac, &link);
drivers/net/ethernet/cavium/thunder/nic_main.c
960
int bgx, lmac;
drivers/net/ethernet/cavium/thunder/nicvf_main.c
192
static void nicvf_read_bgx_stats(struct nicvf *nic, struct bgx_stats_msg *bgx)
drivers/net/ethernet/cavium/thunder/nicvf_main.c
194
if (bgx->rx)
drivers/net/ethernet/cavium/thunder/nicvf_main.c
195
nic->bgx_stats.rx_stats[bgx->idx] = bgx->stats;
drivers/net/ethernet/cavium/thunder/nicvf_main.c
197
nic->bgx_stats.tx_stats[bgx->idx] = bgx->stats;
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1008
bgx_reg_modify(lmac->bgx, lmac->lmacid,
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1010
bgx_poll_reg(lmac->bgx, lmac->lmacid, BGX_SPUX_STATUS1,
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1013
spu_link = bgx_reg_read(lmac->bgx, lmac->lmacid, BGX_SPUX_STATUS1);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1014
smu_link = bgx_reg_read(lmac->bgx, lmac->lmacid, BGX_SMUX_RX_CTL);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1055
static int bgx_lmac_enable(struct bgx *bgx, u8 lmacid)
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1060
lmac = &bgx->lmac[lmacid];
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1061
lmac->bgx = bgx;
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1067
if (bgx_lmac_sgmii_init(bgx, lmac))
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
107
static u64 bgx_reg_read(struct bgx *bgx, u8 lmac, u64 offset)
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1071
if (bgx_lmac_xaui_init(bgx, lmac))
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1076
cfg = bgx_reg_read(bgx, lmacid, BGX_GMP_GMI_TXX_APPEND);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1078
bgx_reg_modify(bgx, lmacid, BGX_GMP_GMI_TXX_APPEND, cfg);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1079
bgx_reg_write(bgx, lmacid, BGX_GMP_GMI_TXX_MIN_PKT, 60 - 1);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1081
cfg = bgx_reg_read(bgx, lmacid, BGX_SMUX_TX_APPEND);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1083
bgx_reg_modify(bgx, lmacid, BGX_SMUX_TX_APPEND, cfg);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1084
bgx_reg_write(bgx, lmacid, BGX_SMUX_TX_MIN_PKT, 60 + 4);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1088
lmac->dmacs_count = (RX_DMAC_COUNT / bgx->lmac_count);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
109
void __iomem *addr = bgx->reg_base + ((u32)lmac << 20) + offset;
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1094
bgx_reg_modify(bgx, lmacid, BGX_CMRX_CFG, CMR_EN);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1097
bgx_reg_write(bgx, lmacid, BGX_CMRX_RX_DMAC_CTL, 0x03);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1105
bgx_reg_write(bgx, lmacid,
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1139
static void bgx_lmac_disable(struct bgx *bgx, u8 lmacid)
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
114
static void bgx_reg_write(struct bgx *bgx, u8 lmac, u64 offset, u64 val)
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1144
lmac = &bgx->lmac[lmacid];
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1152
cfg = bgx_reg_read(bgx, lmacid, BGX_CMRX_CFG);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1154
bgx_reg_write(bgx, lmacid, BGX_CMRX_CFG, cfg);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1157
bgx_poll_reg(bgx, lmacid, BGX_CMRX_RX_FIFO_LEN, (u64)0x1FFF, true);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1158
bgx_poll_reg(bgx, lmacid, BGX_CMRX_TX_FIFO_LEN, (u64)0x3FFF, true);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
116
void __iomem *addr = bgx->reg_base + ((u32)lmac << 20) + offset;
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1161
cfg = bgx_reg_read(bgx, lmacid, BGX_CMRX_CFG);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1163
bgx_reg_write(bgx, lmacid, BGX_CMRX_CFG, cfg);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1167
bgx_reg_modify(bgx, lmacid,
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1170
bgx_reg_modify(bgx, lmacid,
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1174
cfg = bgx_reg_read(bgx, lmacid, BGX_CMRX_CFG);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1176
bgx_reg_write(bgx, lmacid, BGX_CMRX_CFG, cfg);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1178
bgx_flush_dmac_cam_filter(bgx, lmacid);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1190
static void bgx_init_hw(struct bgx *bgx)
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1195
bgx_reg_modify(bgx, 0, BGX_CMR_GLOBAL_CFG, CMR_GLOBAL_CFG_FCS_STRIP);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1196
if (bgx_reg_read(bgx, 0, BGX_CMR_BIST_STATUS))
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1197
dev_err(&bgx->pdev->dev, "BGX%d BIST failed\n", bgx->bgx_id);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1200
for (i = 0; i < bgx->lmac_count; i++) {
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1201
lmac = &bgx->lmac[i];
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1202
bgx_reg_write(bgx, i, BGX_CMRX_CFG,
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1204
bgx->lmac[i].lmacid_bd = lmac_count;
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1208
bgx_reg_write(bgx, 0, BGX_CMR_TX_LMACS, bgx->lmac_count);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1209
bgx_reg_write(bgx, 0, BGX_CMR_RX_LMACS, bgx->lmac_count);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
121
static void bgx_reg_modify(struct bgx *bgx, u8 lmac, u64 offset, u64 val)
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1212
for (i = 0; i < bgx->lmac_count; i++)
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1213
bgx_reg_modify(bgx, 0, BGX_CMR_CHAN_MSK_AND,
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1219
bgx_reg_write(bgx, 0, BGX_CMR_RX_DMACX_CAM + (i * 8), 0x00);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1223
bgx_reg_write(bgx, 0, BGX_CMR_RX_STEERING + (i * 8), 0x00);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1226
static u8 bgx_get_lane2sds_cfg(struct bgx *bgx, struct lmac *lmac)
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1228
return (u8)(bgx_reg_read(bgx, lmac->lmacid, BGX_CMRX_CFG) & 0xFF);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
123
void __iomem *addr = bgx->reg_base + ((u32)lmac << 20) + offset;
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1231
static void bgx_print_qlm_mode(struct bgx *bgx, u8 lmacid)
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1233
struct device *dev = &bgx->pdev->dev;
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1237
if (!bgx->is_dlm && lmacid)
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1240
lmac = &bgx->lmac[lmacid];
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1241
if (!bgx->is_dlm)
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1242
sprintf(str, "BGX%d QLM mode", bgx->bgx_id);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1244
sprintf(str, "BGX%d LMAC%d mode", bgx->bgx_id, lmacid);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
128
static int bgx_poll_reg(struct bgx *bgx, u8 lmac, u64 reg, u64 mask, bool zero)
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1280
static void lmac_set_lane2sds(struct bgx *bgx, struct lmac *lmac)
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1301
lmac->lane_to_sds = bgx_get_lane2sds_cfg(bgx, lmac);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1309
static void lmac_set_training(struct bgx *bgx, struct lmac *lmac, int lmacid)
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1317
lmac->use_training = bgx_reg_read(bgx, lmacid, BGX_SPUX_BR_PMD_CRTL) &
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1321
static void bgx_set_lmac_config(struct bgx *bgx, u8 idx)
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1328
lmac = &bgx->lmac[idx];
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1330
if (!bgx->is_dlm || bgx->is_rgx) {
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1334
cmr_cfg = bgx_reg_read(bgx, 0, BGX_CMRX_CFG);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1336
if (bgx->is_rgx)
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1338
lmac_set_training(bgx, lmac, 0);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1339
lmac_set_lane2sds(bgx, lmac);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
134
reg_val = bgx_reg_read(bgx, lmac, reg);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1348
cmr_cfg = bgx_reg_read(bgx, idx, BGX_CMRX_CFG);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1357
lmac_set_training(bgx, lmac, lmac->lmacid);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1360
static void bgx_get_qlm_mode(struct bgx *bgx)
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1366
for (idx = 0; idx < bgx->max_lmac; idx++) {
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1367
lmac = &bgx->lmac[idx];
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1374
bgx->lmac_count = bgx_reg_read(bgx, 0, BGX_CMR_RX_LMACS) & 0x7;
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1375
if (bgx->lmac_count > bgx->max_lmac)
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1376
bgx->lmac_count = bgx->max_lmac;
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1378
for (idx = 0; idx < bgx->lmac_count; idx++) {
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1379
bgx_set_lmac_config(bgx, idx);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1380
bgx_print_qlm_mode(bgx, idx);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1408
struct bgx *bgx = context;
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1409
struct device *dev = &bgx->pdev->dev;
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1416
acpi_get_mac_address(dev, adev, bgx->lmac[bgx->acpi_lmac_idx].mac);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1418
SET_NETDEV_DEV(bgx->lmac[bgx->acpi_lmac_idx].netdev, dev);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1420
bgx->lmac[bgx->acpi_lmac_idx].lmacid = bgx->acpi_lmac_idx;
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1421
bgx->acpi_lmac_idx++; /* move to next LMAC */
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1430
struct bgx *bgx = context;
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1433
snprintf(bgx_sel, sizeof(bgx_sel), "BGX%d", bgx->bgx_id);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1445
bgx_acpi_register_phy, NULL, bgx, NULL);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1451
static int bgx_init_acpi_phy(struct bgx *bgx)
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1453
acpi_get_devices(NULL, bgx_acpi_match_id, bgx, (void **)NULL);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1459
static int bgx_init_acpi_phy(struct bgx *bgx)
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1468
static int bgx_init_of_phy(struct bgx *bgx)
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1474
device_for_each_child_node(&bgx->pdev->dev, fwn) {
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1485
of_get_mac_address(node, bgx->lmac[lmac].mac);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1487
SET_NETDEV_DEV(bgx->lmac[lmac].netdev, &bgx->pdev->dev);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1488
bgx->lmac[lmac].lmacid = lmac;
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1503
bgx->lmac[lmac].phydev = pd;
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1509
if (lmac == bgx->max_lmac) {
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1522
if (bgx->lmac[lmac].phydev) {
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1523
put_device(&bgx->lmac[lmac].phydev->mdio.dev);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1524
bgx->lmac[lmac].phydev = NULL;
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1533
static int bgx_init_of_phy(struct bgx *bgx)
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1540
static int bgx_init_phy(struct bgx *bgx)
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1543
return bgx_init_acpi_phy(bgx);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1545
return bgx_init_of_phy(bgx);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1550
struct bgx *bgx = (struct bgx *)data;
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1554
for (lmac = 0; lmac < bgx->lmac_count; lmac++) {
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1555
status = bgx_reg_read(bgx, lmac, BGX_GMP_GMI_TXX_INT);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1557
pci_err(bgx->pdev, "BGX%d lmac%d UNDFLW\n",
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1558
bgx->bgx_id, lmac);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1559
val = bgx_reg_read(bgx, lmac, BGX_CMRX_CFG);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1561
bgx_reg_write(bgx, lmac, BGX_CMRX_CFG, val);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1563
bgx_reg_write(bgx, lmac, BGX_CMRX_CFG, val);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1566
bgx_reg_write(bgx, lmac, BGX_GMP_GMI_TXX_INT, status);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1574
struct bgx *bgx = pci_get_drvdata(pdev);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1585
bgx, "BGX%d", bgx->bgx_id);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1587
pci_free_irq(pdev, GMPX_GMI_TX_INT, bgx);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1594
struct bgx *bgx = NULL;
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1598
bgx = devm_kzalloc(dev, sizeof(*bgx), GFP_KERNEL);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1599
if (!bgx)
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1601
bgx->pdev = pdev;
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1603
pci_set_drvdata(pdev, bgx);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1618
bgx->reg_base = pcim_iomap(pdev, PCI_CFG_REG_BAR_NUM, 0);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1619
if (!bgx->reg_base) {
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1629
bgx->bgx_id = (pci_resource_start(pdev,
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1631
bgx->bgx_id += nic_get_node_id(pdev) * max_bgx_per_node;
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1632
bgx->max_lmac = MAX_LMAC_PER_BGX;
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1633
bgx_vnic[bgx->bgx_id] = bgx;
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1635
bgx->is_rgx = true;
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1636
bgx->max_lmac = 1;
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1637
bgx->bgx_id = MAX_BGX_PER_CN81XX - 1;
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1638
bgx_vnic[bgx->bgx_id] = bgx;
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1647
((sdevid == PCI_SUBSYS_DEVID_83XX_BGX) && (bgx->bgx_id == 2)))
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1648
bgx->is_dlm = true;
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1650
bgx_get_qlm_mode(bgx);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1652
for (lmac = 0; lmac < bgx->lmac_count; lmac++) {
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1655
lmacp = &bgx->lmac[lmac];
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1660
free_netdev(bgx->lmac[i].netdev);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1669
err = bgx_init_phy(bgx);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1673
bgx_init_hw(bgx);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1678
for (lmac = 0; lmac < bgx->lmac_count; lmac++) {
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1679
err = bgx_lmac_enable(bgx, lmac);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1682
bgx->bgx_id, lmac);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1684
bgx_lmac_disable(bgx, --lmac);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
169
static struct bgx *get_bgx(int node, int bgx_idx)
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1692
bgx_vnic[bgx->bgx_id] = NULL;
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1693
pci_free_irq(pdev, GMPX_GMI_TX_INT, bgx);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1701
struct bgx *bgx = pci_get_drvdata(pdev);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1705
for (lmac = 0; lmac < bgx->lmac_count; lmac++) {
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1706
bgx_lmac_disable(bgx, lmac);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1707
free_netdev(bgx->lmac[lmac].netdev);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1710
pci_free_irq(pdev, GMPX_GMI_TX_INT, bgx);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
1712
bgx_vnic[bgx->bgx_id] = NULL;
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
194
struct bgx *bgx;
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
196
bgx = get_bgx(node, bgx_idx);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
197
if (bgx)
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
198
return bgx->lmac_count;
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
208
struct bgx *bgx;
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
211
bgx = get_bgx(node, bgx_idx);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
212
if (!bgx)
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
215
lmac = &bgx->lmac[lmacid];
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
225
struct bgx *bgx = get_bgx(node, bgx_idx);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
227
if (bgx)
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
228
return bgx->lmac[lmacid].mac;
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
236
struct bgx *bgx = get_bgx(node, bgx_idx);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
238
if (!bgx)
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
241
ether_addr_copy(bgx->lmac[lmacid].mac, mac);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
245
static void bgx_flush_dmac_cam_filter(struct bgx *bgx, int lmacid)
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
250
lmac = &bgx->lmac[lmacid];
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
253
bgx_reg_write(bgx, 0, BGX_CMR_RX_DMACX_CAM +
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
311
static int bgx_set_dmac_cam_filter_mac(struct bgx *bgx, int lmacid,
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
318
if (!cam_dmac || !bgx)
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
321
lmac = &bgx->lmac[lmacid];
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
326
bgx_reg_write(bgx, 0, BGX_CMR_RX_DMACX_CAM +
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
334
struct bgx *bgx = get_bgx(node, bgx_idx);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
337
if (!bgx)
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
340
lmac = &bgx->lmac[lmacid];
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
356
struct bgx *bgx = get_bgx(node, bgx_idx);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
361
if (!bgx)
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
364
lmac = &bgx->lmac[lmacid];
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
366
cfg = bgx_reg_read(bgx, lmacid, BGX_CMRX_RX_DMAC_CTL);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
381
bgx_set_dmac_cam_filter_mac(bgx, lmacid,
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
384
bgx_reg_write(bgx, lmacid, BGX_CMRX_RX_DMAC_CTL, cfg);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
390
struct bgx *bgx = get_bgx(node, bgx_idx);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
392
if (!bgx)
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
395
bgx_lmac_remove_filters(&bgx->lmac[lmacid], vf_id);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
396
bgx_flush_dmac_cam_filter(bgx, lmacid);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
404
struct bgx *bgx = get_bgx(node, bgx_idx);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
408
if (!bgx)
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
410
lmac = &bgx->lmac[lmacid];
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
412
cfg = bgx_reg_read(bgx, lmacid, BGX_CMRX_CFG);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
417
bgx_reg_modify(bgx, lmacid, BGX_GMP_GMI_TXX_INT_ENA_W1S,
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
423
bgx_reg_modify(bgx, lmacid, BGX_GMP_GMI_TXX_INT_ENA_W1C,
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
426
bgx_reg_write(bgx, lmacid, BGX_CMRX_CFG, cfg);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
428
if (bgx->is_rgx)
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
43
struct bgx *bgx;
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
436
struct bgx *bgx = get_bgx(node, bgx_idx);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
440
if (!bgx)
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
443
lmac = &bgx->lmac[lmacid];
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
452
cfg = bgx_reg_read(bgx, lmacid, csr_offset);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
458
bgx_reg_write(bgx, lmacid, csr_offset, cfg);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
465
struct bgx *bgx = get_bgx(node, bgx_idx);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
469
if (!bgx)
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
471
lmac = &bgx->lmac[lmacid];
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
475
cfg = bgx_reg_read(bgx, lmacid, BGX_SMUX_CBFC_CTL);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
485
struct bgx *bgx = get_bgx(node, bgx_idx);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
489
if (!bgx)
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
491
lmac = &bgx->lmac[lmacid];
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
495
cfg = bgx_reg_read(bgx, lmacid, BGX_SMUX_CBFC_CTL);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
499
bgx_reg_write(bgx, lmacid, BGX_SMUX_CBFC_CTL, cfg);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
505
struct bgx *bgx = lmac->bgx;
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
511
cmr_cfg = bgx_reg_read(bgx, lmac->lmacid, BGX_CMRX_CFG);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
515
bgx_reg_write(bgx, lmac->lmacid, BGX_CMRX_CFG, cmr_cfg);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
518
if (bgx_poll_reg(bgx, lmac->lmacid, BGX_GMP_GMI_PRTX_CFG,
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
520
dev_err(&bgx->pdev->dev, "BGX%d LMAC%d GMI RX not idle\n",
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
521
bgx->bgx_id, lmac->lmacid);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
526
if (bgx_poll_reg(bgx, lmac->lmacid, BGX_GMP_GMI_PRTX_CFG,
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
528
dev_err(&bgx->pdev->dev, "BGX%d LMAC%d GMI TX not idle\n",
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
529
bgx->bgx_id, lmac->lmacid);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
533
port_cfg = bgx_reg_read(bgx, lmac->lmacid, BGX_GMP_GMI_PRTX_CFG);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
534
misc_ctl = bgx_reg_read(bgx, lmac->lmacid, BGX_GMP_PCS_MISCX_CTL);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
551
bgx_reg_write(bgx, lmac->lmacid, BGX_GMP_GMI_TXX_SLOT, 64);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
552
bgx_reg_write(bgx, lmac->lmacid, BGX_GMP_GMI_TXX_BURST, 0);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
560
bgx_reg_write(bgx, lmac->lmacid, BGX_GMP_GMI_TXX_SLOT, 64);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
561
bgx_reg_write(bgx, lmac->lmacid, BGX_GMP_GMI_TXX_BURST, 0);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
569
bgx_reg_write(bgx, lmac->lmacid, BGX_GMP_GMI_TXX_SLOT, 512);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
571
bgx_reg_write(bgx, lmac->lmacid,
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
574
bgx_reg_write(bgx, lmac->lmacid,
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
580
bgx_reg_write(bgx, lmac->lmacid, BGX_GMP_PCS_MISCX_CTL, misc_ctl);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
581
bgx_reg_write(bgx, lmac->lmacid, BGX_GMP_GMI_PRTX_CFG, port_cfg);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
585
bgx_reg_write(bgx, lmac->lmacid, BGX_CMRX_CFG, cmr_cfg);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
587
if (bgx->is_rgx && (cmr_cfg & (CMR_PKT_RX_EN | CMR_PKT_TX_EN)))
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
631
struct bgx *bgx;
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
633
bgx = get_bgx(node, bgx_idx);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
634
if (!bgx)
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
639
return bgx_reg_read(bgx, lmac, BGX_CMRX_RX_STAT0 + (idx * 8));
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
645
struct bgx *bgx;
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
647
bgx = get_bgx(node, bgx_idx);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
648
if (!bgx)
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
651
return bgx_reg_read(bgx, lmac, BGX_CMRX_TX_STAT0 + (idx * 8));
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
659
struct bgx *bgx;
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
663
bgx = get_bgx(node, bgx_idx);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
664
if (!bgx)
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
667
lmac = &bgx->lmac[lmac_idx];
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
669
cfg = bgx_reg_read(bgx, lmac_idx, BGX_GMP_PCS_MRX_CTL);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
674
bgx_reg_write(bgx, lmac_idx, BGX_GMP_PCS_MRX_CTL, cfg);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
676
cfg = bgx_reg_read(bgx, lmac_idx, BGX_SPUX_CONTROL1);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
681
bgx_reg_write(bgx, lmac_idx, BGX_SPUX_CONTROL1, cfg);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
686
static int bgx_lmac_sgmii_init(struct bgx *bgx, struct lmac *lmac)
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
691
bgx_reg_modify(bgx, lmacid, BGX_GMP_GMI_TXX_THRESH, 0x30);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
693
bgx_reg_modify(bgx, lmacid, BGX_GMP_GMI_RXX_JABBER, MAX_FRAME_SIZE);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
696
cfg = bgx_reg_read(bgx, lmacid, BGX_GMP_GMI_TXX_APPEND);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
698
bgx_reg_write(bgx, lmacid, BGX_GMP_GMI_TXX_SGMII_CTL, 0);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
701
bgx_reg_modify(bgx, lmacid, BGX_CMRX_CFG, CMR_EN);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
704
bgx_reg_modify(bgx, lmacid, BGX_GMP_PCS_MRX_CTL, PCS_MRX_CTL_RESET);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
705
if (bgx_poll_reg(bgx, lmacid, BGX_GMP_PCS_MRX_CTL,
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
707
dev_err(&bgx->pdev->dev, "BGX PCS reset not completed\n");
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
712
cfg = bgx_reg_read(bgx, lmacid, BGX_GMP_PCS_MRX_CTL);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
725
bgx_reg_write(bgx, lmacid, BGX_GMP_PCS_MRX_CTL, cfg);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
729
cfg = bgx_reg_read(bgx, lmacid, BGX_GMP_PCS_MISCX_CTL);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
731
bgx_reg_write(bgx, lmacid, BGX_GMP_PCS_MISCX_CTL, cfg);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
736
if (bgx_poll_reg(bgx, lmacid, BGX_GMP_PCS_MRX_STATUS,
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
738
dev_err(&bgx->pdev->dev, "BGX AN_CPT not completed\n");
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
746
static int bgx_lmac_xaui_init(struct bgx *bgx, struct lmac *lmac)
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
752
bgx_reg_modify(bgx, lmacid, BGX_SPUX_CONTROL1, SPU_CTL_RESET);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
753
if (bgx_poll_reg(bgx, lmacid, BGX_SPUX_CONTROL1, SPU_CTL_RESET, true)) {
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
754
dev_err(&bgx->pdev->dev, "BGX SPU reset not completed\n");
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
759
cfg = bgx_reg_read(bgx, lmacid, BGX_CMRX_CFG);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
761
bgx_reg_write(bgx, lmacid, BGX_CMRX_CFG, cfg);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
763
bgx_reg_modify(bgx, lmacid, BGX_SPUX_CONTROL1, SPU_CTL_LOW_POWER);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
766
bgx_reg_modify(bgx, lmacid, BGX_SPUX_MISC_CONTROL,
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
770
cfg = bgx_reg_read(bgx, lmacid, BGX_SPUX_MISC_CONTROL);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
772
bgx_reg_write(bgx, lmacid, BGX_SPUX_MISC_CONTROL, cfg);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
775
cfg = bgx_reg_read(bgx, lmacid, BGX_SMUX_RX_INT);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
776
bgx_reg_write(bgx, lmacid, BGX_SMUX_RX_INT, cfg);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
777
cfg = bgx_reg_read(bgx, lmacid, BGX_SMUX_TX_INT);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
778
bgx_reg_write(bgx, lmacid, BGX_SMUX_TX_INT, cfg);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
779
cfg = bgx_reg_read(bgx, lmacid, BGX_SPUX_INT);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
780
bgx_reg_write(bgx, lmacid, BGX_SPUX_INT, cfg);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
783
bgx_reg_write(bgx, lmacid, BGX_SPUX_BR_PMD_LP_CUP, 0x00);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
784
bgx_reg_write(bgx, lmacid, BGX_SPUX_BR_PMD_LD_CUP, 0x00);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
785
bgx_reg_write(bgx, lmacid, BGX_SPUX_BR_PMD_LD_REP, 0x00);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
787
bgx_reg_modify(bgx, lmacid,
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
79
static struct bgx *bgx_vnic[MAX_BGX_THUNDER];
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
792
bgx_reg_modify(bgx, lmacid, BGX_SMUX_TX_APPEND, SMU_TX_APPEND_FCS_D);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
795
cfg = bgx_reg_read(bgx, lmacid, BGX_SPUX_FEC_CONTROL);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
797
bgx_reg_write(bgx, lmacid, BGX_SPUX_FEC_CONTROL, cfg);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
800
cfg = bgx_reg_read(bgx, lmacid, BGX_SPUX_AN_CONTROL);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
802
bgx_reg_write(bgx, lmacid, BGX_SPUX_AN_CONTROL, cfg);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
804
cfg = bgx_reg_read(bgx, lmacid, BGX_SPUX_AN_ADV);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
812
bgx_reg_write(bgx, lmacid, BGX_SPUX_AN_ADV, cfg);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
814
cfg = bgx_reg_read(bgx, 0, BGX_SPU_DBG_CONTROL);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
816
bgx_reg_write(bgx, 0, BGX_SPU_DBG_CONTROL, cfg);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
819
bgx_reg_modify(bgx, lmacid, BGX_CMRX_CFG, CMR_EN);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
821
cfg = bgx_reg_read(bgx, lmacid, BGX_SPUX_CONTROL1);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
823
bgx_reg_write(bgx, lmacid, BGX_SPUX_CONTROL1, cfg);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
825
cfg = bgx_reg_read(bgx, lmacid, BGX_SMUX_TX_CTL);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
828
bgx_reg_write(bgx, lmacid, BGX_SMUX_TX_CTL, cfg);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
831
bgx_reg_write(bgx, lmacid, BGX_SMUX_CBFC_CTL, ((0xffffULL << 32) |
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
834
bgx_reg_write(bgx, lmacid,
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
836
cfg = bgx_reg_read(bgx, lmacid, BGX_SMUX_TX_PAUSE_PKT_INTERVAL);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
838
bgx_reg_write(bgx, lmacid, BGX_SMUX_TX_PAUSE_PKT_INTERVAL,
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
840
bgx_reg_write(bgx, lmacid, BGX_SMUX_TX_PAUSE_ZERO, 0x01);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
843
bgx_reg_modify(bgx, lmacid, BGX_SMUX_TX_THRESH, (0x100 - 1));
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
845
bgx_reg_modify(bgx, lmacid, BGX_SMUX_RX_JABBER, MAX_FRAME_SIZE);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
852
struct bgx *bgx = lmac->bgx;
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
858
cfg = bgx_reg_read(bgx, lmacid, BGX_SPUX_INT);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
861
bgx_reg_write(bgx, lmacid, BGX_SPUX_INT, cfg);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
862
cfg = bgx_reg_read(bgx, lmacid, BGX_SPUX_BR_PMD_CRTL);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
864
bgx_reg_write(bgx, lmacid, BGX_SPUX_BR_PMD_CRTL, cfg);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
870
if (bgx_poll_reg(bgx, lmacid, BGX_SPUX_CONTROL1, SPU_CTL_RESET, true)) {
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
871
dev_err(&bgx->pdev->dev, "BGX SPU reset not completed\n");
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
877
if (bgx_poll_reg(bgx, lmacid, BGX_SPUX_BR_STATUS1,
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
879
dev_err(&bgx->pdev->dev,
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
884
if (bgx_poll_reg(bgx, lmacid, BGX_SPUX_BX_STATUS,
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
886
dev_err(&bgx->pdev->dev,
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
893
if (bgx_reg_read(bgx, lmacid, BGX_SPUX_STATUS2) & SPU_STATUS2_RCVFLT)
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
894
bgx_reg_modify(bgx, lmacid,
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
896
if (bgx_reg_read(bgx, lmacid, BGX_SPUX_STATUS2) & SPU_STATUS2_RCVFLT) {
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
897
dev_err(&bgx->pdev->dev, "Receive fault, retry training\n");
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
899
cfg = bgx_reg_read(bgx, lmacid, BGX_SPUX_INT);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
902
bgx_reg_write(bgx, lmacid, BGX_SPUX_INT, cfg);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
903
cfg = bgx_reg_read(bgx, lmacid,
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
906
bgx_reg_write(bgx, lmacid,
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
915
if (bgx_poll_reg(bgx, lmacid, BGX_SMUX_CTL, SMU_CTL_RX_IDLE, false)) {
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
916
dev_err(&bgx->pdev->dev, "SMU RX not idle\n");
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
921
if (bgx_poll_reg(bgx, lmacid, BGX_SMUX_CTL, SMU_CTL_TX_IDLE, false)) {
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
922
dev_err(&bgx->pdev->dev, "SMU TX not idle\n");
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
927
cfg = bgx_reg_read(bgx, lmacid, BGX_SMUX_RX_CTL);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
936
bgx_lmac_xaui_init(bgx, lmac);
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
946
pcs_link = bgx_reg_read(lmac->bgx, lmac->lmacid,
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
951
pcs_link = bgx_reg_read(lmac->bgx, lmac->lmacid,
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
954
if (bgx_poll_reg(lmac->bgx, lmac->lmacid, BGX_GMP_PCS_MRX_STATUS,
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
963
an_result = bgx_reg_read(lmac->bgx, lmac->lmacid,
drivers/net/ethernet/cavium/thunder/thunder_bgx.h
224
int bgx_get_lmac_count(int node, int bgx);
drivers/video/fbdev/matrox/matroxfb_accel.c
339
static void matroxfb_cfb4_clear(struct matrox_fb_info *minfo, u_int32_t bgx,
drivers/video/fbdev/matrox/matroxfb_accel.c
365
mga_outl(M_FCOL, bgx);
drivers/video/fbdev/matrox/matroxfb_accel.c
377
u_int8_t bgx2 = bgx & 0xF0;
drivers/video/fbdev/matrox/matroxfb_accel.c
386
u_int8_t bgx2 = bgx & 0x0F;
drivers/video/fbdev/matrox/matroxfb_accel.c
408
u_int32_t bgx, const u_int8_t *chardata,
drivers/video/fbdev/matrox/matroxfb_accel.c
444
mga_outl(M_BCOL, bgx);
drivers/video/fbdev/matrox/matroxfb_accel.c
507
u_int32_t fgx, bgx;
drivers/video/fbdev/matrox/matroxfb_accel.c
510
bgx = ((u_int32_t*)info->pseudo_palette)[image->bg_color];
drivers/video/fbdev/matrox/matroxfb_accel.c
511
matroxfb_1bpp_imageblit(minfo, fgx, bgx, image->data, image->width, image->height, image->dy, image->dx);
drivers/video/fbdev/pm2fb.c
1161
u32 fgx, bgx;
drivers/video/fbdev/pm2fb.c
1179
bgx = image->bg_color;
drivers/video/fbdev/pm2fb.c
1184
bgx = par->palette[image->bg_color];
drivers/video/fbdev/pm2fb.c
1189
bgx |= bgx << 8;
drivers/video/fbdev/pm2fb.c
1193
bgx |= bgx << 16;
drivers/video/fbdev/pm2fb.c
1214
pm2_WR(par, PM2R_CONSTANT_COLOR, bgx);
drivers/video/fbdev/pm2fb.c
1228
pm2_WR(par, PM2R_FB_BLOCK_COLOR, bgx);
drivers/video/fbdev/pm3fb.c
516
u32 fgx, bgx;
drivers/video/fbdev/pm3fb.c
528
bgx = image->bg_color;
drivers/video/fbdev/pm3fb.c
533
bgx = par->palette[image->bg_color];
drivers/video/fbdev/pm3fb.c
543
bgx |= bgx << 8;
drivers/video/fbdev/pm3fb.c
547
bgx |= bgx << 16;
drivers/video/fbdev/pm3fb.c
553
PM3_WRITE_REG(par, PM3BackgroundColor, bgx);
drivers/video/fbdev/riva/fbdev.c
1488
u32 fgx = 0, bgx = 0, width, tmp;
drivers/video/fbdev/riva/fbdev.c
1501
bgx = image->bg_color;
drivers/video/fbdev/riva/fbdev.c
1507
bgx = ((u32 *)info->pseudo_palette)[image->bg_color];
drivers/video/fbdev/riva/fbdev.c
1510
bgx = par->palette[image->bg_color];
drivers/video/fbdev/riva/fbdev.c
1513
convert_bgcolor_16(&bgx);
drivers/video/fbdev/riva/fbdev.c
1523
NV_WR32(&par->riva.Bitmap->Color0E, 0, bgx);