亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? e1000_80003es2lan.c

?? DELL755 Intel 網(wǎng)卡驅(qū)動(dòng)
?? C
?? 第 1 頁 / 共 3 頁
字號(hào):
/*******************************************************************************  Intel PRO/1000 Linux driver  Copyright(c) 1999 - 2008 Intel Corporation.  This program is free software; you can redistribute it and/or modify it  under the terms and conditions of the GNU General Public License,  version 2, as published by the Free Software Foundation.  This program is distributed in the hope it will be useful, but WITHOUT  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for  more details.  You should have received a copy of the GNU General Public License along with  this program; if not, write to the Free Software Foundation, Inc.,  51 Franklin St - Fifth Floor, Boston, MA 02110-1301 USA.  The full GNU General Public License is included in this distribution in  the file called "COPYING".  Contact Information:  Linux NICS <linux.nics@intel.com>  e1000-devel Mailing List <e1000-devel@lists.sourceforge.net>  Intel Corporation, 5200 N.E. Elam Young Parkway, Hillsboro, OR 97124-6497*******************************************************************************//* e1000_80003es2lan */#include "e1000_hw.h"static s32  e1000_init_phy_params_80003es2lan(struct e1000_hw *hw);static s32  e1000_init_nvm_params_80003es2lan(struct e1000_hw *hw);static s32  e1000_init_mac_params_80003es2lan(struct e1000_hw *hw);static s32  e1000_acquire_phy_80003es2lan(struct e1000_hw *hw);static void e1000_release_phy_80003es2lan(struct e1000_hw *hw);static s32  e1000_acquire_nvm_80003es2lan(struct e1000_hw *hw);static void e1000_release_nvm_80003es2lan(struct e1000_hw *hw);static s32  e1000_read_phy_reg_gg82563_80003es2lan(struct e1000_hw *hw,                                                   u32 offset,                                                   u16 *data);static s32  e1000_write_phy_reg_gg82563_80003es2lan(struct e1000_hw *hw,                                                    u32 offset,                                                    u16 data);static s32  e1000_write_nvm_80003es2lan(struct e1000_hw *hw, u16 offset,                                        u16 words, u16 *data);static s32  e1000_get_cfg_done_80003es2lan(struct e1000_hw *hw);static s32  e1000_phy_force_speed_duplex_80003es2lan(struct e1000_hw *hw);static s32  e1000_get_cable_length_80003es2lan(struct e1000_hw *hw);static s32  e1000_get_link_up_info_80003es2lan(struct e1000_hw *hw, u16 *speed,                                               u16 *duplex);static s32  e1000_reset_hw_80003es2lan(struct e1000_hw *hw);static s32  e1000_init_hw_80003es2lan(struct e1000_hw *hw);static s32  e1000_setup_copper_link_80003es2lan(struct e1000_hw *hw);static void e1000_clear_hw_cntrs_80003es2lan(struct e1000_hw *hw);static s32  e1000_acquire_swfw_sync_80003es2lan(struct e1000_hw *hw, u16 mask);static s32  e1000_cfg_kmrn_10_100_80003es2lan(struct e1000_hw *hw, u16 duplex);static s32  e1000_cfg_kmrn_1000_80003es2lan(struct e1000_hw *hw);static s32  e1000_copper_link_setup_gg82563_80003es2lan(struct e1000_hw *hw);static void e1000_initialize_hw_bits_80003es2lan(struct e1000_hw *hw);static void e1000_release_swfw_sync_80003es2lan(struct e1000_hw *hw, u16 mask);static s32  e1000_read_mac_addr_80003es2lan(struct e1000_hw *hw);static void e1000_power_down_phy_copper_80003es2lan(struct e1000_hw *hw);/* * A table for the GG82563 cable length where the range is defined * with a lower bound at "index" and the upper bound at * "index + 5". */static const u16 e1000_gg82563_cable_length_table[] =         { 0, 60, 115, 150, 150, 60, 115, 150, 180, 180, 0xFF };#define GG82563_CABLE_LENGTH_TABLE_SIZE \                (sizeof(e1000_gg82563_cable_length_table) / \                 sizeof(e1000_gg82563_cable_length_table[0]))/** *  e1000_init_phy_params_80003es2lan - Init ESB2 PHY func ptrs. *  @hw: pointer to the HW structure * *  This is a function pointer entry point called by the api module. **/static s32 e1000_init_phy_params_80003es2lan(struct e1000_hw *hw){	struct e1000_phy_info *phy = &hw->phy;	s32 ret_val = E1000_SUCCESS;	DEBUGFUNC("e1000_init_phy_params_80003es2lan");	if (hw->phy.media_type != e1000_media_type_copper) {		phy->type        = e1000_phy_none;		goto out;	} else {		phy->ops.power_up = e1000_power_up_phy_copper;		phy->ops.power_down = e1000_power_down_phy_copper_80003es2lan;	}	phy->addr                = 1;	phy->autoneg_mask        = AUTONEG_ADVERTISE_SPEED_DEFAULT;	phy->reset_delay_us      = 100;	phy->type                = e1000_phy_gg82563;	phy->ops.acquire            = e1000_acquire_phy_80003es2lan;	phy->ops.check_polarity     = e1000_check_polarity_m88;	phy->ops.check_reset_block  = e1000_check_reset_block_generic;	phy->ops.commit             = e1000_phy_sw_reset_generic;	phy->ops.get_cfg_done       = e1000_get_cfg_done_80003es2lan;	phy->ops.get_info           = e1000_get_phy_info_m88;	phy->ops.release            = e1000_release_phy_80003es2lan;	phy->ops.reset              = e1000_phy_hw_reset_generic;	phy->ops.set_d3_lplu_state  = e1000_set_d3_lplu_state_generic;	phy->ops.force_speed_duplex = e1000_phy_force_speed_duplex_80003es2lan;	phy->ops.get_cable_length   = e1000_get_cable_length_80003es2lan;	phy->ops.read_reg           = e1000_read_phy_reg_gg82563_80003es2lan;	phy->ops.write_reg          = e1000_write_phy_reg_gg82563_80003es2lan;	/* This can only be done after all function pointers are setup. */	ret_val = e1000_get_phy_id(hw);	/* Verify phy id */	if (phy->id != GG82563_E_PHY_ID) {		ret_val = -E1000_ERR_PHY;		goto out;	}out:	return ret_val;}/** *  e1000_init_nvm_params_80003es2lan - Init ESB2 NVM func ptrs. *  @hw: pointer to the HW structure * *  This is a function pointer entry point called by the api module. **/static s32 e1000_init_nvm_params_80003es2lan(struct e1000_hw *hw){	struct e1000_nvm_info *nvm = &hw->nvm;	u32 eecd = E1000_READ_REG(hw, E1000_EECD);	u16 size;	DEBUGFUNC("e1000_init_nvm_params_80003es2lan");	nvm->opcode_bits        = 8;	nvm->delay_usec         = 1;	switch (nvm->override) {	case e1000_nvm_override_spi_large:		nvm->page_size    = 32;		nvm->address_bits = 16;		break;	case e1000_nvm_override_spi_small:		nvm->page_size    = 8;		nvm->address_bits = 8;		break;	default:		nvm->page_size    = eecd & E1000_EECD_ADDR_BITS ? 32 : 8;		nvm->address_bits = eecd & E1000_EECD_ADDR_BITS ? 16 : 8;		break;	}	nvm->type               = e1000_nvm_eeprom_spi;	size = (u16)((eecd & E1000_EECD_SIZE_EX_MASK) >>	                  E1000_EECD_SIZE_EX_SHIFT);	/*	 * Added to a constant, "size" becomes the left-shift value	 * for setting word_size.	 */	size += NVM_WORD_SIZE_BASE_SHIFT;	/* EEPROM access above 16k is unsupported */	if (size > 14)		size = 14;	nvm->word_size	= 1 << size;	/* Function Pointers */	nvm->ops.acquire           = e1000_acquire_nvm_80003es2lan;	nvm->ops.read              = e1000_read_nvm_eerd;	nvm->ops.release           = e1000_release_nvm_80003es2lan;	nvm->ops.update            = e1000_update_nvm_checksum_generic;	nvm->ops.valid_led_default = e1000_valid_led_default_generic;	nvm->ops.validate          = e1000_validate_nvm_checksum_generic;	nvm->ops.write             = e1000_write_nvm_80003es2lan;	return E1000_SUCCESS;}/** *  e1000_init_mac_params_80003es2lan - Init ESB2 MAC func ptrs. *  @hw: pointer to the HW structure * *  This is a function pointer entry point called by the api module. **/static s32 e1000_init_mac_params_80003es2lan(struct e1000_hw *hw){	struct e1000_mac_info *mac = &hw->mac;	s32 ret_val = E1000_SUCCESS;	DEBUGFUNC("e1000_init_mac_params_80003es2lan");	/* Set media type */	switch (hw->device_id) {	case E1000_DEV_ID_80003ES2LAN_SERDES_DPT:		hw->phy.media_type = e1000_media_type_internal_serdes;		break;	default:		hw->phy.media_type = e1000_media_type_copper;		break;	}	/* Set mta register count */	mac->mta_reg_count = 128;	/* Set rar entry count */	mac->rar_entry_count = E1000_RAR_ENTRIES;	/* Set if part includes ASF firmware */	mac->asf_firmware_present = true;	/* Set if manageability features are enabled. */	mac->arc_subsystem_valid =	        (E1000_READ_REG(hw, E1000_FWSM) & E1000_FWSM_MODE_MASK)	                ? true : false;	/* Function pointers */	/* bus type/speed/width */	mac->ops.get_bus_info = e1000_get_bus_info_pcie_generic;	/* reset */	mac->ops.reset_hw = e1000_reset_hw_80003es2lan;	/* hw initialization */	mac->ops.init_hw = e1000_init_hw_80003es2lan;	/* link setup */	mac->ops.setup_link = e1000_setup_link_generic;	/* physical interface link setup */	mac->ops.setup_physical_interface =	        (hw->phy.media_type == e1000_media_type_copper)	                ? e1000_setup_copper_link_80003es2lan	                : e1000_setup_fiber_serdes_link_generic;	/* check for link */	switch (hw->phy.media_type) {	case e1000_media_type_copper:		mac->ops.check_for_link = e1000_check_for_copper_link_generic;		break;	case e1000_media_type_fiber:		mac->ops.check_for_link = e1000_check_for_fiber_link_generic;		break;	case e1000_media_type_internal_serdes:		mac->ops.check_for_link = e1000_check_for_serdes_link_generic;		break;	default:		ret_val = -E1000_ERR_CONFIG;		goto out;		break;	}	/* check management mode */	mac->ops.check_mng_mode = e1000_check_mng_mode_generic;	/* multicast address update */	mac->ops.update_mc_addr_list = e1000_update_mc_addr_list_generic;	/* writing VFTA */	mac->ops.write_vfta = e1000_write_vfta_generic;	/* clearing VFTA */	mac->ops.clear_vfta = e1000_clear_vfta_generic;	/* setting MTA */	mac->ops.mta_set = e1000_mta_set_generic;	/* read mac address */	mac->ops.read_mac_addr = e1000_read_mac_addr_80003es2lan;	/* blink LED */	mac->ops.blink_led = e1000_blink_led_generic;	/* setup LED */	mac->ops.setup_led = e1000_setup_led_generic;	/* cleanup LED */	mac->ops.cleanup_led = e1000_cleanup_led_generic;	/* turn on/off LED */	mac->ops.led_on = e1000_led_on_generic;	mac->ops.led_off = e1000_led_off_generic;	/* remove device */	mac->ops.remove_device = e1000_remove_device_generic;	/* clear hardware counters */	mac->ops.clear_hw_cntrs = e1000_clear_hw_cntrs_80003es2lan;	/* link info */	mac->ops.get_link_up_info = e1000_get_link_up_info_80003es2lan;out:	return ret_val;}/** *  e1000_init_function_pointers_80003es2lan - Init ESB2 func ptrs. *  @hw: pointer to the HW structure * *  The only function explicitly called by the api module to initialize *  all function pointers and parameters. **/void e1000_init_function_pointers_80003es2lan(struct e1000_hw *hw){	DEBUGFUNC("e1000_init_function_pointers_80003es2lan");	e1000_init_mac_ops_generic(hw);	e1000_init_nvm_ops_generic(hw);	hw->mac.ops.init_params = e1000_init_mac_params_80003es2lan;	hw->nvm.ops.init_params = e1000_init_nvm_params_80003es2lan;	hw->phy.ops.init_params = e1000_init_phy_params_80003es2lan;}/** *  e1000_acquire_phy_80003es2lan - Acquire rights to access PHY *  @hw: pointer to the HW structure * *  A wrapper to acquire access rights to the correct PHY.  This is a *  function pointer entry point called by the api module. **/static s32 e1000_acquire_phy_80003es2lan(struct e1000_hw *hw){	u16 mask;	DEBUGFUNC("e1000_acquire_phy_80003es2lan");	mask = hw->bus.func ? E1000_SWFW_PHY1_SM : E1000_SWFW_PHY0_SM;	mask |= E1000_SWFW_CSR_SM;	return e1000_acquire_swfw_sync_80003es2lan(hw, mask);}/** *  e1000_release_phy_80003es2lan - Release rights to access PHY *  @hw: pointer to the HW structure * *  A wrapper to release access rights to the correct PHY.  This is a *  function pointer entry point called by the api module. **/static void e1000_release_phy_80003es2lan(struct e1000_hw *hw){	u16 mask;	DEBUGFUNC("e1000_release_phy_80003es2lan");	mask = hw->bus.func ? E1000_SWFW_PHY1_SM : E1000_SWFW_PHY0_SM;	mask |= E1000_SWFW_CSR_SM;	e1000_release_swfw_sync_80003es2lan(hw, mask);}/** *  e1000_acquire_nvm_80003es2lan - Acquire rights to access NVM *  @hw: pointer to the HW structure * *  Acquire the semaphore to access the EEPROM.  This is a function *  pointer entry point called by the api module. **/static s32 e1000_acquire_nvm_80003es2lan(struct e1000_hw *hw){	s32 ret_val;	DEBUGFUNC("e1000_acquire_nvm_80003es2lan");	ret_val = e1000_acquire_swfw_sync_80003es2lan(hw, E1000_SWFW_EEP_SM);	if (ret_val)		goto out;	ret_val = e1000_acquire_nvm_generic(hw);	if (ret_val)		e1000_release_swfw_sync_80003es2lan(hw, E1000_SWFW_EEP_SM);out:	return ret_val;}/** *  e1000_release_nvm_80003es2lan - Relinquish rights to access NVM *  @hw: pointer to the HW structure * *  Release the semaphore used to access the EEPROM.  This is a *  function pointer entry point called by the api module. **/static void e1000_release_nvm_80003es2lan(struct e1000_hw *hw){	DEBUGFUNC("e1000_release_nvm_80003es2lan");	e1000_release_nvm_generic(hw);	e1000_release_swfw_sync_80003es2lan(hw, E1000_SWFW_EEP_SM);}/** *  e1000_acquire_swfw_sync_80003es2lan - Acquire SW/FW semaphore *  @hw: pointer to the HW structure *  @mask: specifies which semaphore to acquire * *  Acquire the SW/FW semaphore to access the PHY or NVM.  The mask *  will also specify which port we're acquiring the lock for. **/static s32 e1000_acquire_swfw_sync_80003es2lan(struct e1000_hw *hw, u16 mask){	u32 swfw_sync;	u32 swmask = mask;	u32 fwmask = mask << 16;	s32 ret_val = E1000_SUCCESS;	s32 i = 0, timeout = 200;	DEBUGFUNC("e1000_acquire_swfw_sync_80003es2lan");	while (i < timeout) {		if (e1000_get_hw_semaphore_generic(hw)) {			ret_val = -E1000_ERR_SWFW_SYNC;			goto out;		}		swfw_sync = E1000_READ_REG(hw, E1000_SW_FW_SYNC);		if (!(swfw_sync & (fwmask | swmask)))			break;		/*		 * Firmware currently using resource (fwmask)		 * or other software thread using resource (swmask)		 */		e1000_put_hw_semaphore_generic(hw);		msec_delay_irq(5);		i++;	}	if (i == timeout) {		DEBUGOUT("Driver can't access resource, SW_FW_SYNC timeout.\n");		ret_val = -E1000_ERR_SWFW_SYNC;		goto out;	}	swfw_sync |= swmask;	E1000_WRITE_REG(hw, E1000_SW_FW_SYNC, swfw_sync);	e1000_put_hw_semaphore_generic(hw);out:	return ret_val;}/** *  e1000_release_swfw_sync_80003es2lan - Release SW/FW semaphore *  @hw: pointer to the HW structure *  @mask: specifies which semaphore to acquire * *  Release the SW/FW semaphore used to access the PHY or NVM.  The mask *  will also specify which port we're releasing the lock for. **/static void e1000_release_swfw_sync_80003es2lan(struct e1000_hw *hw, u16 mask){	u32 swfw_sync;	DEBUGFUNC("e1000_release_swfw_sync_80003es2lan");	while (e1000_get_hw_semaphore_generic(hw) != E1000_SUCCESS);	/* Empty */	swfw_sync = E1000_READ_REG(hw, E1000_SW_FW_SYNC);	swfw_sync &= ~mask;	E1000_WRITE_REG(hw, E1000_SW_FW_SYNC, swfw_sync);	e1000_put_hw_semaphore_generic(hw);}/** *  e1000_read_phy_reg_gg82563_80003es2lan - Read GG82563 PHY register *  @hw: pointer to the HW structure *  @offset: offset of the register to read *  @data: pointer to the data returned from the operation * *  Read the GG82563 PHY register.  This is a function pointer entry *  point called by the api module. **/static s32 e1000_read_phy_reg_gg82563_80003es2lan(struct e1000_hw *hw,                                                  u32 offset, u16 *data){	s32 ret_val;	u32 page_select;

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
综合久久国产九一剧情麻豆| 韩国欧美一区二区| 亚洲黄色免费电影| 综合久久久久久| 一区二区在线看| 一区二区三区丝袜| 亚洲国产精品一区二区www在线 | 国产亚洲1区2区3区| 精品免费99久久| 亚洲精品在线观| 国产日韩视频一区二区三区| 中文字幕av资源一区| 国产拍揄自揄精品视频麻豆| 国产精品视频一二| 自拍偷拍欧美精品| 亚洲主播在线观看| 午夜精品福利在线| 久久狠狠亚洲综合| 国产精品亚洲成人| 99精品一区二区| 欧美色视频在线观看| 91精品国产综合久久久久久| 精品国产乱码久久久久久浪潮| 久久蜜桃av一区精品变态类天堂| 国产精品午夜免费| 亚洲综合图片区| 美女任你摸久久 | 91精品国产91久久综合桃花| 精品国产乱码久久久久久1区2区| 久久久国产综合精品女国产盗摄| 国产精品成人在线观看| 一区二区三区不卡视频在线观看| 日韩国产成人精品| 国产成人精品亚洲777人妖 | 久久亚洲私人国产精品va媚药| 国产区在线观看成人精品| 亚洲女厕所小便bbb| 天天综合天天综合色| 国产精品一区二区视频| 色八戒一区二区三区| 日韩一区二区三区电影| 国产精品美女久久久久aⅴ| 亚洲午夜电影在线| 国产精品伊人色| 欧美性猛片xxxx免费看久爱| 精品国产a毛片| 一区二区三区日韩欧美| 极品美女销魂一区二区三区| 91视频xxxx| 奇米一区二区三区| 成人爱爱电影网址| 91精品国产综合久久久蜜臀图片| 欧美国产日韩精品免费观看| 丝袜脚交一区二区| av资源网一区| 欧美成人r级一区二区三区| 亚洲猫色日本管| 国产精品综合久久| 91精品久久久久久久久99蜜臂| 国产精品国产三级国产普通话99 | 中文字幕av一区二区三区| 午夜精品一区二区三区三上悠亚| 国产传媒欧美日韩成人| 欧美另类变人与禽xxxxx| 国产精品免费视频一区| 美女脱光内衣内裤视频久久网站| 色婷婷综合久色| 国产日韩欧美综合一区| 日本欧美在线观看| 欧美最猛黑人xxxxx猛交| 中文字幕国产一区| 久久国产三级精品| 欧美日韩国产高清一区| 1区2区3区欧美| 粉嫩绯色av一区二区在线观看| 91精品国产色综合久久久蜜香臀| 亚洲欧美日韩国产一区二区三区| 国产成人在线影院| 精品动漫一区二区三区在线观看 | 欧美日本韩国一区二区三区视频| 国产精品久久久久久久裸模| 国产伦精品一区二区三区免费迷| 欧美丰满美乳xxx高潮www| 一区二区在线免费观看| 97久久超碰国产精品| 欧美高清在线视频| 国产精品系列在线观看| 精品国产一区二区三区忘忧草 | 蜜臀91精品一区二区三区| 欧美色倩网站大全免费| 亚洲精品视频在线观看免费| 99精品视频一区二区三区| 久久精品夜色噜噜亚洲aⅴ| 国产一区二区三区四 | 免费高清在线一区| 91麻豆精品国产无毒不卡在线观看| 一区二区三区不卡视频 | 中文字幕五月欧美| 不卡一区二区在线| 国产精品美日韩| 波多野结衣91| 自拍偷在线精品自拍偷无码专区| 91在线你懂得| 亚洲最新视频在线播放| 在线亚洲高清视频| 亚洲成人综合视频| 欧美日韩精品一区二区天天拍小说 | 日本一区二区不卡视频| 国产成人午夜精品影院观看视频| 久久精品这里都是精品| 不卡的看片网站| 亚洲视频一区二区免费在线观看| 91视频免费播放| 亚洲午夜精品久久久久久久久| 欧美精品日韩一区| 九色porny丨国产精品| 久久久www成人免费无遮挡大片 | 日韩你懂的在线观看| 国产永久精品大片wwwapp| 国产婷婷精品av在线| 波多野洁衣一区| 亚洲妇熟xx妇色黄| 欧美一区二区视频在线观看2020| 久久国产综合精品| 亚洲国产精品传媒在线观看| 91丝袜美女网| 天天色天天爱天天射综合| 精品国产伦一区二区三区免费 | 欧美一区午夜视频在线观看| 韩国午夜理伦三级不卡影院| 国产精品久久毛片| 欧美中文字幕不卡| 九九**精品视频免费播放| 国产欧美日韩视频在线观看| 色94色欧美sute亚洲线路一久| 日本不卡视频在线观看| 久久亚洲综合av| 欧洲中文字幕精品| 韩国av一区二区| 一区二区三区自拍| 欧美va日韩va| 色欧美88888久久久久久影院| 日韩电影在线观看电影| 国产欧美一区二区精品忘忧草| 一本到一区二区三区| 七七婷婷婷婷精品国产| 国产精品久久久一区麻豆最新章节| 欧美自拍偷拍午夜视频| 激情六月婷婷久久| 一区二区欧美视频| 精品福利一二区| 色噜噜狠狠色综合欧洲selulu| 美女诱惑一区二区| 亚洲视频中文字幕| 久久新电视剧免费观看| 欧美性一级生活| 成人激情综合网站| 日本中文字幕一区二区有限公司| 国产精品白丝在线| 精品人伦一区二区色婷婷| 日本高清不卡视频| 国产成人综合网| 日韩一区精品视频| 亚洲视频综合在线| 国产亚洲婷婷免费| 91麻豆精品国产91久久久久| 99久久精品情趣| 国产麻豆视频一区二区| 午夜亚洲国产au精品一区二区| 国产精品久久久久影院老司| 精品女同一区二区| 欧美日韩在线播放| 91老师片黄在线观看| 国产精品综合网| 久久er99热精品一区二区| 亚洲午夜久久久久久久久电影院| 中文字幕在线播放不卡一区| 久久久亚洲欧洲日产国码αv| 欧美精品三级日韩久久| 色综合久久久久久久久久久| 国产91色综合久久免费分享| 激情文学综合丁香| 日韩国产精品大片| 亚洲二区在线视频| 91啪九色porn原创视频在线观看| 激情欧美日韩一区二区| 男人的天堂亚洲一区| 亚洲制服欧美中文字幕中文字幕| 国产精品少妇自拍| 久久久电影一区二区三区| 精品国免费一区二区三区| 欧美三级三级三级| 在线免费观看不卡av| 91丨porny丨国产| 成人a区在线观看| 成人av网站免费观看| 成人黄色在线看| 99vv1com这只有精品| 91丨九色丨黑人外教| 一本大道久久a久久精品综合|