Example #1
0
bool rtl88eu_phy_bb_config(struct adapter *adapt)
{
	int rtstatus = true;
	struct hal_data_8188e	*hal_data = GET_HAL_DATA(adapt);
	u32 regval;
	u8 crystal_cap;

	rtl88e_phy_init_bb_rf_register_definition(adapt);

	/*  Enable BB and RF */
	regval = usb_read16(adapt, REG_SYS_FUNC_EN);
	usb_write16(adapt, REG_SYS_FUNC_EN,
		    (u16)(regval | BIT(13) | BIT(0) | BIT(1)));

	usb_write8(adapt, REG_RF_CTRL, RF_EN | RF_RSTB | RF_SDMRSTB);

	usb_write8(adapt, REG_SYS_FUNC_EN, FEN_USBA |
		   FEN_USBD | FEN_BB_GLB_RSTn | FEN_BBRSTB);

	/*  Config BB and AGC */
	rtstatus = config_parafile(adapt);

	/*  write 0x24[16:11] = 0x24[22:17] = crystal_cap */
	crystal_cap = hal_data->CrystalCap & 0x3F;
	phy_set_bb_reg(adapt, REG_AFE_XTAL_CTRL, 0x7ff800,
		       (crystal_cap | (crystal_cap << 6)));

	return rtstatus;
}
Example #2
0
int proc_get_read_reg(char *page, char **start,
			  off_t offset, int count,
			  int *eof, void *data)
{
	struct net_device *dev = data;
	struct adapter *padapter = (struct adapter *)rtw_netdev_priv(dev);

	int len = 0;

	if (proc_get_read_addr == 0xeeeeeeee) {
		*eof = 1;
		return len;
	}

	switch (proc_get_read_len) {
	case 1:
		len += snprintf(page + len, count - len, "usb_read8(0x%x)=0x%x\n", proc_get_read_addr, usb_read8(padapter, proc_get_read_addr));
		break;
	case 2:
		len += snprintf(page + len, count - len, "usb_read16(0x%x)=0x%x\n", proc_get_read_addr, usb_read16(padapter, proc_get_read_addr));
		break;
	case 4:
		len += snprintf(page + len, count - len, "usb_read32(0x%x)=0x%x\n", proc_get_read_addr, usb_read32(padapter, proc_get_read_addr));
		break;
	default:
		len += snprintf(page + len, count - len, "error read length=%d\n", proc_get_read_len);
		break;
	}

	*eof = 1;
	return len;
}