手把手帶你寫一個中斷輸入設備驅動

原創 嵌入式客棧 2021-11-01 17:45

[導讀] 大家好,我是逸珺。

首先說聲抱歉,最近迷上釣魚了,有時候晚上出去夜釣大板鯽了,停更了一段時間。來幾張魚獲圖片:

技術還是不太到家,遇到幾次大鯉魚都給溜了,心有不甘,所以最近花了比較多的時間。

言歸正傳,今天來分享一下以前寫一個中斷輸入設備驅動案例,希望對有需要的朋友能有所幫助。

背景介紹

在一個項目中,有這樣一個需求:

主控芯片采用ZYNQ,需要采集外部一個脈沖編碼輸入信號,這個信號是一個脈沖波形,脈沖數量代表測量結果。比如這有可能是一個電機的霍爾信號輸出,代表電機的轉速,也有可能是一個光柵編碼器的脈沖輸出,是什么并不重要。

這個電路本身,利用光耦實現了輸入測設備信號與采集端的電氣隔離。由于PS端該Bank的電平為3.3V,所以光耦的另一側也是3.3V。

ZYNQ的PS端運行Linux程序,所以在這個場景下,要從應用程序的角度將外部輸入信號用起來,就需要實現這樣一個設備驅動程序:

創建設備

在ZYNQ下,使用petalinux工具鏈,當然本文中對于寫這個驅動程序本身換成其他的處理器從代碼的角度是類似的。

1.先運行一下工具鏈環境變量腳本:

source /opt/pkg/petalinux/settings.sh 

當然也可以不用手動這樣運行,設置成linux開發主機開機自動運行,這里就不贅述怎么設置了,網上很多介紹。

2.創建設備

petalinux-create -t modules --name di-drv 

這樣在現有的工程下,就自動創建設備文件:

./project-spec/meta-user/recipes-modules/di-drv/files/di-drv.c

修改設備樹

./project-spec/meta-user/recipes-bsp/device-tree/files/system-user.dtsi 

中添加

/include/ "system-conf.dtsi"
/ {   
  amba {
     pinctrl_di_default: di-default {   
       mux {   
         groups = "gpio0_0_grp";   
         function = "gpio0";   
       };   

       conf {   
          pins = "MIO0";   
          io-standard = <1>;   
          bias-high-impedance;   
          slew-rate = <0>;   
       };   
    };           
  };

  di {
    compatible = "di-drv";
    pinctrl-names = "default";
    pinctrl-0 = <&pinctrl_di_default>;
    di-gpios = <&gpio0 0 0>;   
  };      
};

本文中,假定使用的IO引腳為PS_MIO0。

驅動代碼

修改上面生成的代碼di-drv.c

#include <linux/module.h>  
#include <linux/kernel.h>
#include <linux/init.h>  
#include <linux/ide.h>  
#include <linux/types.h>  
#include <linux/errno.h>
#include <linux/cdev.h>
#include <linux/of.h>
#include <linux/of_address.h>
#include <linux/of_gpio.h>
#include <linux/device.h>
#include <linux/delay.h>
#include <linux/init.h>
#include <linux/gpio.h>
#include <linux/semaphore.h>
#include <linux/timer.h>
#include <linux/of_irq.h>
#include <linux/irq.h>
#include <asm/uaccess.h>
#include <asm/mach/map.h>
#include <asm/io.h>
  
/* 設備節點名稱 */  
#define DEVICE_NAME       "di-drv"
/* 設備號個數 */  
#define DEVID_COUNT       1
/* 驅動個數 */  
#define DRIVE_COUNT       1
/* 主設備號 */
#define MAJOR_U
/* 次設備號 */
#define MINOR_U           0

struct di_dev {
  /* 字符設備框架 */
  dev_t         devid; //設備號
  struct cdev     cdev;  //字符設備
  struct class    *class;  //類
  struct device    *device; //設備
  struct device_node *nd;   //設備樹的設備節點

  spinlock_t      lock; //自旋鎖變量

  int          di_gpio; //DI gpio號
  __u32         di_pulses;//DI counter    
  unsigned int     di_irq; //DI 中斷號
};

static struct di_dev di_char = {
  .cdev = {
    .owner = THIS_MODULE,
  },
};

/* 中斷服務函數 */
static irqreturn_t di_handler(int irq, void *dev)
{
  di_char.di_pulses++;
  return IRQ_RETVAL(IRQ_HANDLED);
}

/* open函數實現, 對應到Linux系統調用函數的open函數 */  
static int di_drv_open(struct inode *inode_p, struct file *file_p)  
{  
  printk("di_drv module opened\n");  
  file_p->private_data = &di_char; 
  return 0;  
}  
    
/* read函數實現, 對應到Linux系統調用函數的read操作 */  
static ssize_t di_drv_read(struct file *file_p, char __user *buf, size_t len, loff_t *loff_t_p)  
{  
  unsigned long flags;
  int ret;
  union e_int_conv{
  __u8  buf[8];
  __u32 di_raw;
 };  

  /* 獲取鎖 */
  spin_lock_irqsave(&di_char.lock, flags);
  
  union e_int_conv di;
  di.di_raw.di = di_char.di_pulses;
  ret  = copy_to_user(buf, di.buf, 8);
    
  /* 釋放鎖 */
  spin_unlock_irqrestore(&di_char.lock, flags);
  
  return ret ? ret : 4;
}  
  
/* release函數實現, 對應到Linux系統調用函數的close函數 */  
static int di_drv_release(struct inode *inode_p, struct file *file_p)  
{  
  printk("di_drv module release\n");
  return 0;  
}  
      
/* file_operations結構體聲明 */  
static struct file_operations di_fops = {  
  .owner   = THIS_MODULE,  
  .open   = di_drv_open,  
  .read   = di_drv_read,     
  .release = di_drv_release,   
};  
  
/* 模塊加載時會調用的函數 */  
static int __init di_drv_init(void)  
{
  u32 ret = 0;
    
  /* 初始化自旋鎖 */
  spin_lock_init(&di_char.lock);
    
  /** gpio框架 **/   
  /* 獲取設備節點 */
  di_char.nd = of_find_node_by_path("/di");
  if(di_char.nd == NULL)
  {
    printk("di node not foundr\r\n");
    return -EINVAL;
  }
    
  /* 獲取節點中gpio標號 */
  di_char.di_gpio = of_get_named_gpio(di_char.nd, "di-gpios"0);
  if(di_char.di_gpio < 0)
  {
    printk("Failed to get di-gpios from device tree\r\n");
    return -EINVAL;
  }
  printk("di-gpio num = %d\r\n", di_char.di_gpio);

  /* 申請gpio標號對應的引腳 */
  ret = gpio_request(di_char.di_gpio, "di-drv");
  if(ret != 0)
  {
    printk("Failed to request di_gpio\r\n");
    return -EINVAL;
  }

  /* 把這個io設置為輸入 */
  ret = gpio_direction_input(di_char.di_gpio);
  if(ret < 0)
  {
    printk("Failed to set di_gpio as input\r\n");
    return -EINVAL;
  }

  /* 獲取中斷號 */
  di_char.di_irq = gpio_to_irq(di_char.di_gpio);
  printk("di_irq number is %d \r\n", di_char.di_irq);
  /* 申請中斷 */
  ret = request_irq(di_char.di_irq,
             di_handler,
             IRQF_TRIGGER_FALLING | IRQF_TRIGGER_RISING,
             "di-drv"
             NULL);
  if(ret < 0)
  {
     printk("di_irq %d request failed\r\n", di_char.di_irq);
     return -EFAULT;
  }    

  /* 注冊設備號 */
  alloc_chrdev_region(&di_char.devid, MINOR_U, DEVID_COUNT, DEVICE_NAME);
    
  /* 初始化字符設備結構體 */
  cdev_init(&di_char.cdev, &di_fops);
    
  /* 注冊字符設備 */
  cdev_add(&di_char.cdev, di_char.devid, DRIVE_COUNT);
    
  /* 創建類 */
  di_char.class = class_create(THIS_MODULEDEVICE_NAME);
  if(IS_ERR(di_char.class)) 
  {
     return PTR_ERR(di_char.class);
  }
    
  /* 創建設備節點 */
  di_char.device = device_create( di_char.class, NULL
                    di_char.devid, NULL
                    DEVICE_NAME );
  if(IS_ERR(di_char.device)) 
  {
     return PTR_ERR(di_char.device);
  }

  di_char.di_pulses = 0;    
  return 0;  
}

/* 卸載模塊 */  
static void __exit di_drv_exit(void)  
{  
  /* 釋放gpio */
  gpio_free(di_char.di_gpio);

  /* 釋放中斷 */
  free_irq(di_char.di_irq, NULL);

  /* 注銷字符設備 */
  cdev_del(&di_char.cdev);
    
  /* 注銷設備號 */
  unregister_chrdev_region(di_char.devid, DEVID_COUNT);
    
  /* 刪除設備節點 */
  device_destroy(di_char.class, di_char.devid);
    
  /* 刪除類 */
  class_destroy(di_char.class);
    
  printk("DI dev exit ok\n");  
}  
  
/* 標記加載、卸載函數 */  
module_init(di_drv_init);  
module_exit(di_drv_exit);  
  
/* 驅動描述信息 */  
MODULE_AUTHOR("Embinn");  
MODULE_ALIAS("DI input");  
MODULE_DESCRIPTION("DIGITAL INPUT driver");  
MODULE_VERSION("v1.0");  
MODULE_LICENSE("GPL");  

這是一個字符驅動的實現,在真實項目中,大部分驅動基本已經被芯片廠商給實現了,但是一些特殊項目的自定義需求,往往就需要去實現自己的驅動。

編譯部署

運行以下命令:

petalinux-config -c rootfs

進入modules,使能剛剛創建的模塊,退出保存。

運行下面的命令進行編譯:

petalinux-build 

最終在工程目錄下,搜索di-drv.ko,就得到這個驅動的內核模塊文件了,拷貝到目標板的某個文件夾下,運行下面的命令裝載就完成了:

insmod di-drv.ko

這樣在/dev下就會發現新增一個di-drv設備。

當然也可以直接將該驅動放進內核里,這就需要在內核代碼樹里,添加文件了,這個思路之前有分享過。

總結一下

字符設備是做驅動開發比較容易掌握的驅動類型,也是大多數項目中,需要自己動手寫的最多的驅動類型。所以還是應該掌握它。才能實現不同的項目需求。至于用戶空間怎么訪問這個設備,這里就不贅述了,一個文件打開操作,再來一個讀取操作就完事了。

—— The End —


推薦閱讀  點擊藍色字體即可跳轉
? Linux驅動:手把手教hello world驅動配置、編譯進內核或為模塊
步進電機調速,S曲線調速算法你會嗎?
? 圖文詳解Modbus-RTU協議
? RS-485總線,這篇很詳細

歡迎轉發、留言、點贊、分享,感謝您的支持!

嵌入式客棧 歡迎關注嵌入式客棧,主要分享嵌入式Linux系統構建、嵌入式linux驅動開發、單片機技術、FPGA開發、信號處理、工業通訊等技術主題。歡迎關注,一起交流,一起進步!
評論
  •     長期專注WiFi領域,也算是行業老兵了!同行閑聊中,時不時能提起我和我們!從疫情起,國產替代風生水起,起起落落,大浪淘沙,生存下來的都是強者!    WiFi模塊應用廣泛,對于高端市場和特定市場,要求WIFI模塊需要過CE/FCC之類的認證,也就是說沒有認證的模塊,不具備導入產品設計.接下來就和大家聊聊認證模塊選型參考!    WIFi模塊硬件方面主要考慮以下九點特性:    1
    納拓科技 2026-07-31 17:56 272瀏覽
  • 摘要在防爆電氣設計中,只參照芯數選型而忽略額定載流量,長期滿負荷運行會出現插頭發熱、接觸面氧化、IP67 密封受熱老化等問題。結合常用 3 針 3 孔、4 芯、5PIN、8PIN 圓形防爆連接器,制作分級電流參數對照表,區分冷壓免焊接、焊接兩種接線結構的安全載流數值,設置合理電流冗余系數,搭配使用環境修正參數,規范防爆接近開關連接器、防爆法蘭插座的選型計算方式。關鍵詞圓形防爆連接器,載流參數表,防爆法蘭插座,防爆端子接頭,IP67 防爆防水接插件1 產品概述圓形防爆連接器觸點載流能力由插針直徑、
    kyfbest科迎法電氣 2026-08-03 09:18 128656瀏覽
  • 摘要防爆自控系統同時布設本安信號、工業總線、動力供電三類線路,僅依靠標識標牌管控插接極易出現人為錯插問題,高壓動力回路竄入本安弱電回路會突破安全柵限能標準,產生點火風險。依托 A、D、K 標準化機械防呆編碼體系,搭配護套顏色區分管理,適配 3 針 3 孔免焊接冷壓增安型防爆航插、5PIN 總線防爆航空插頭、8 芯焊接防爆法蘭插座的選型使用,從物理結構層面杜絕防爆接近開關連接器、防爆傳感器航插接頭混用插接問題,補齊防爆系統被動安全防護體系。關鍵詞圓形防爆連接器,防呆編碼防爆航插,防爆航空插頭,防爆
    kyfbest科迎法電氣 2026-07-31 18:29 415瀏覽
  • 產品使用18V供電,配套4串鋰離子電池,需要設計一個充電器。因為輸入18V,電池最高 16.8V,壓差僅 1.2V。因為壓差太小。使用開關型的充電控制芯片不穩定。嘗試自行設計一個。整體采用分立三極管 + TL431架構,分4個功能單元:使能控制回路、限流環路、TL431 精密恒壓反饋環路、PNP 功率管主功率輸出回路;實現完整鋰電池充電邏輯。使能控制回路按鍵按下:5V 電壓經 R12 (2kΩ) 送入 NPN 管 Q3 基極,Q3 飽和導通,對地拉低 R1、R2 組成的分壓控制節點電位;該節點直
    southcreek 2026-08-07 13:45 350瀏覽
  • ?摘要:低價大流量卡正全面退市,政策收緊已成定局。面對傳統號卡的不確定性,隨身WiFi憑借穩定連接、多設備共享、獨立設備和靈活套餐等優勢,成為務實可靠的備選方案。1、流量卡黃金時代要結束了通信行業正迎來一場前所未有的“地震式”調整——曾讓無數用戶追捧的低價大流量卡,正在全速退出各大平臺。這早已不是一次普通的競合,而是一場趨勢性的行業洗牌。回望過去,19元200G的神卡,那時真是“睡著都能笑醒”,便宜到不敢相信,爽到忍不住炫耀。那些日子,好像隨便刷、隨便看,流量自由觸手可及。可如今,回頭再看,那種
    愛上電路設計 2026-08-03 10:21 128900瀏覽
  •                                                                        
    廣州鐵金剛 2026-08-06 17:44 131043瀏覽
  • 在物聯網從“萬物互聯”邁向“萬物智聯”的進程中,LTE Cat.1憑借其在速率、成本與網絡覆蓋之間的完美平衡,正成為中低速物聯網市場的絕對主力。隨著2G/3G網絡的逐步退網以及新國標對終端設備智能化、定位功能的強制要求,Cat.1模組迎來了爆發式的增長窗口。在這一關鍵節點,基于華為海思Hi2131芯片設計的LTE Cat.1模組,憑借其在能效、射頻、架構及物理規格上的底層創新,成功打破了“高性能必高功耗”的傳統魔咒,為行業提供了極具競爭力的連接最優解。核心技術優勢:重塑Cat.1能效與連接標桿海
    用戶1778981989717 2026-08-05 21:04 177瀏覽
  • 做藍牙音箱的工程師大概都碰過這個局面。產品要連手機放歌,要本地播開機提示音和按鍵音,還要接 App 做配網和狀態上報。三件事拆開,早先的常規做法是音頻藍牙一顆料、數傳藍牙一顆料、本地播放再掛一顆小 MCU 加一片 Flash。板子越畫越大,BOM 越算越貴,待機電流和固件工作量也跟著漲。WT2605C 出來以后,這套需求可以集成到一顆芯片,就是 WT2605C-32N,該芯片采用QFN32 封裝,4×4 毫米,把音頻藍牙、BLE 數傳和 MP3 本地播放三樣全包了。對藍牙音箱來說,最實在的好處就
    唯創知音語音芯片 2026-08-06 15:14 296瀏覽
  •        很多人只見過封裝在SMD外殼里的小尺寸晶振,卻不知道一顆2016、1612甚至1210封裝的微型石英晶振,從一塊巴掌大的石英原礦,到最終能穩定起振的成品,要經過十幾道精密工序。它內部的石英晶片厚度最薄不到20微米,比普通A4紙的1/5還薄,整個生產過程里哪怕0.1微米的誤差,都會直接廢掉整批產品,這也是小尺寸晶振過去長期依賴進口,國內廠商花了十幾年才啃下量產硬骨頭的核心原因。1. 原石定向切割:0.01度的角度誤差都不能有小尺寸晶振的第一步,
    TKD泰晶科技 2026-08-07 08:43 397瀏覽
  • 在前六期中,我們已經分別討論了 CRA 的適用范圍、整體影響、漏洞通報義務、風險評估與技術文檔證據鏈、第三方組件與 SBOM 供應鏈治理,以及產品上市后的支持期、安全更新、用戶說明和終止支持管理。到這里,企業已經能夠回答幾個核心問題:產品是否落入 CRA 適用范圍,產品由哪些組件構成,企業如何證明自己在設計、開發和上市前采取了必要的安全措施,以及產品上市后如何持續維護和安全下線。但對于真正準備落地 CRA 合規的企業來說,還有一個更現實的問題:CRA 的法規條文相對原則化,企業應當如何把“網絡安
    虹科云科技 2026-08-03 16:51 180064瀏覽
  • 在EMC測試過程中,傳導發射(Conducted Emission,CE)超標是工程師最常遇到的問題之一。更令人頭疼的是,同樣的超標曲線背后,可能對應著完全不同的干擾機理:有的是差模噪聲沿電源回路傳播,有的是共模電流通過寄生路徑耦合,還有些問題甚至并非來自電源本身,而是負載、電纜布局或接地結構引起的連鎖反應。 · 150kHz~1MHz 超標:多為差模噪聲為主,干擾沿火線-零線回路傳輸。 · 1MHz~30MHz 超標:通常共模噪聲占主導,干擾通過火線/零線對地回路傳播。 如果條件允許,用電流探
    譽磁電磁兼容EMC 2026-07-31 18:45 511瀏覽
  • 文:杜杰編輯:侯煜當地時間7月28日,美國特朗普政府落地最新科技封鎖政策,美國聯邦通信委員會(FCC)正式更新《受管制清單》,新增兩大類設備——境外生產的先進機器人設備、境外生產的聯網電力逆變器。FCC在官方情況說明書中明確,該類境外制造產品,“會對美國國家安全或美國民眾的人身安全構成無法承受的風險”。本次新規設置明確豁免機制:經美國國防部(DoW)、電力逆變器品類經美國國土安全部(DHS)審核并授予“有條件批準”,認定對應設備品類不存在重大安全風險,即可獲得準入豁免。同時政策嚴格執行新老劃斷原
    華爾街科技眼 2026-08-03 21:28 336瀏覽
  • 導語在現代高速數字電路設計中,信號的完整性已不僅是理想波形推演,而是一場與物理非理想特性正面博弈的工程實踐。濾波器芯片作為凈化傳輸鏈路的關鍵屏障,其核心挑戰在于:能否有效識別并濾除那些隱匿在電平跳變過程中的亞納秒級瞬態脈沖干擾,這類干擾持續極短,卻足以在高速鏈路中引發誤觸發。然而,傳統函數發生器受限于采樣率與邊沿速率,根本無法忠實復現如此狹窄且陡峭的異常波形。針對此困境,德思特TS-AWG7000系列任意波形發生器以17 GS/s采樣率與50 ps原生邊沿速度,為瞬態脈沖提供精細刻畫,配合SPG
    德思特測試測量 2026-08-05 14:06 5瀏覽
  • 智能寵物用品這幾年快速普及,自動清理幾乎成了智能貓砂盆的標配。貓咪用完離場,設備自動翻轉清理,養寵家庭省去了每天彎腰清理的麻煩。但自動清理的第一步,是先準確判斷貓到底在不在盆里。這個看似簡單的問題,在小空間里并不容易做好。近場檢測的痛點:距離太遠反而誤事貓砂盆內部空間有限。如果傳感器的檢測距離設得偏大,盆外路過的貓、人甚至物品都會被誤判為貓在盆內,結果該清理時不清理、不該清理時亂清理,體驗直接崩壞。這類產品的核心訴求其實就一句話:近距離、小范圍、精準識別,不能有半點誤判。常規感應方案常因檢測距離
    唯創知音語音芯片 2026-07-31 16:51 313瀏覽
我要評論
0
點擊右上角,分享到朋友圈 我知道啦
請使用瀏覽器分享功能 我知道啦
主站蜘蛛池模板: 尖叫之夜免费观看2023年电影 | 险恶的绣感未册版经| 电影红旗谱| 美和花园电影在线观看最新集数| 《密会》| 美女在线观看完整版电视剧| 东北小佛爷| 埃及性xxxx狂欢| 安姨电影在线观看| 《我的初恋不可能是姐姐》| 大学生女学生HD | 《美容院:特殊待遇》6| 陕西秦腔丑角戏| 科学家们| 《欢乐家长群第二季》| 小call 宅之小恶魔| 花与蛇牙医免费观看完整版| 金鱼影视| 西城区| 乌云之上电视剧免费| 青春冲动| 巴不得妈妈粤语| 神马电影达达免第九院| 曼娜第二部免费观看完整版| 猫愿三角恋第二季| 唐山绝恋| 戴拿奥特曼免费观看中文版| 逃学神探在线观看免费完整| 蛮好的人生全集| 《爱我几何》全集免费高清| 图书馆女友2季动漫观看| 郝板栗《千金小姐》无删减全集 | 心之全蚀| 突然的喜欢电视剧免费观看| 大蛇王电影免费观看完整版视频 | 《想入非非》台湾电影| 全明星之夜| 马超之歌| 《外卖员外遇》| 良辰美景好时光西瓜影视| 小凤新婚短剧免费观看| 波士顿法律第三季| 酒店1—80全集免费完整版| 扫毒1国语版免费观看| 神宫寺丈夫不在的五天和公| 新白娘子传奇在线观看| 韩版同学的妈妈| 毛泽东免费| 海扁王2 危在蛋夕| 打工人电影免费观看中文版| 飞影铠甲| 《美丽妻子替夫还债》有奈美剧吗| 狙击蝴蝶电视剧免费观看完整版 | 迪加奥特曼动画片| 斗罗大陆103集免费观看| 金钱堡垒电影未删减完整版免费观看| 骨王第一季免费观看完整版| 哈里波特7| 修理工的艳遇韩国电影| 韩版恶作剧之吻2| 小菊的春天电视剧全集免费观看| 高清《我脑中的橡皮擦》高清完整版 | 法国空姐2019满天星法版:星辉照耀 | 高清《妻子的新世界》电视剧| 赤坂丽电影牙医姐妹无删在线观看| 《丰满的继牳5》在线观看| 蜡笔小新粤语| 电锯惊魂7 qvod| 爱我就别想太多免费观看| 治县。| 最年轻的小妻子| 韩国r电影| 欢乐白领夫妻| 浴火奔腾浴火红免费观看电视连续剧 | 陶大宇电视剧| 神探高伦布大结局| 疯狂家族史(1-6)完整版| 黯夜守护者| 三上悠亚《最高の爱人诏》| 随心所欲电影免费观看| 瓜达卢佩玫瑰在线| 二胡美女谁最漂亮| 白雪公主H成 版伦理| 如来神掌国语| 翁佳娜雅三级在线| 罪恶都市电影| 相同年龄的母亲| 大平调张三李四| 万能阿曼| 电影孤男寡女| 裤袜视界动漫| 娱乐百分百20100401| 电视剧利剑行动| 非诚勿扰于之飞| 乌蒙小燕| 农业部长| 闪耀的他电视剧免费观看| 娇妻被黑人夹了三明治| 电影和部长出差| 高清《纠缠》24年最新上映的电影| 一起愁愁免费全集在线看| 我的妈妈日语| 天地无伦在线观看视频| 青梅竹马是消防2季未增删| 伊比利亚三部曲在线观看| 糊涂小天使| 美国1985g点原版中文| 天使快播| 《俘虏之锁》高清在线观看| 沧元图61集免费观看| 白袜帅哥飞机| 好姑娘6影视剧在线观看| 全职猎人34| 《需要爸爸播种子》在线观看播放_HD/无删减_免费高清电影 - 星辰影院 | 致命弯道1–7免费播放| 控制女上司的遥控器在线观看| 食人鱼3d第二部| 睫毛膏3欧美版| 游山西村的诗意| 美国新版娃娃脸9| 儿媳3中字免费完整在线| 老公是全球大佬:闪婚首富短剧全集| 决战刹马镇演员表| 冷宫升职记全集免费| 兵临城下电影下载| 黑帮大佬和我365天完整版| 靠近你韩剧在线看免费播放| 满天星版《超女麦乐迪》| 熊猫越狱| 一个人看的日本在线观看| 乡村爱情8部全集| 无敌县令全集| xl第二季无马赛第八集| 贞观之治演员表全部 | 意大利电影我想要爸爸的种子在线观看| 爱情公寓3第九集| 秘书激情办公室在线观看| 泰森7月20日大战杰克保罗| xl司令第一季全集在线观看完整版无删| 拉拉电影免费观看电影| 韩国伦理片想要爸爸的种子在线观看| 青春之旅电影| 和丈夫部长的相处之道伦理片 | 明星换脸免费观看方法 | 星汉灿烂免费观看全集| 《爱你几何》免费完整版| 百度战曲| 兔子先生第一季在线观看免费高清| 理想之城全集| 坎贝奇无憾人生完整版| 魔术快斗02| 超星神国语版全集| 希岛爱理| 放牛班的春天| 私人女性监狱美国版是哪个国家的| 啄木鸟灭火行动| 电影辛亥革命| 《美景之屋6》_完整在线观看免费观看| 蒙面超人| 疯狂二人房间荷尔蒙爆发原声视频大| 铁雨 电影| HD版《激战丛林》完整版播放 | 新金瓶梅第2部| 钻石王牌| 狄仁杰第一部全集| 牙医姊妹1986电影免费观看| 阿修罗之怒音乐| 偷窥无罪电影| 人蛇欲血战之错体美女蛇 | 杨门虎将电视剧| 漂亮妈妈中字开头字| 巡回检察组43| 暴躁46集全全免费播放| 呆佬贺寿粤语| xl司令动漫第一季无码| 蛇姬cos| 凪光K罩杯电车模特经理电影| 石原爱种子下载| 初级瑜伽视频2| 善良的阿姨在线观看| 初恋优酷| 绝地反击电视剧免费完整版在线观看 | 绿灯侠翡翠骑士| 银行家的妻子中语| 夏至末至| 朴亚珍短剧《隐形帽》免费观看| 落花时节又逢君电视剧全集观看| 麦乐迪家庭矛盾在线播放| 初恋这件小事国语版| 女版战狼6免费观看全片影院| 新金瓶梅ii| 张家口市| 刘和刚父亲简谱| 战火青春43集免费观看| 浇给是什么意思| 300:帝国崛起未删减版| 蜜桃伦理| 交谊舞曲快四| 美国娃娃脸4国语免费观看| 人口普查2021公布结果| 睫毛膏4美国版| 继父在线观看| 村上沙兽皇电影免费观看高清版下载 | 雯雅婷2| 美姊妹医生在线观看完整版电影 | 酒店1-50集免费观看完整版| 张国荣天使之爱| 女友的妈妈双字id推荐| 熊出没之年货2| 紫金县| 乡村爱情五| 新文件夹建2| 树大根深国语| 艳母在线| 手机影院:丈夫的部下| 三大队电视剧在线观看| 爱上同学妈妈| 爱的代价原唱是谁| 站着再来一次26集全在线看| 年轻丰满的继牳2| 大江大河第一部免费完整版在线观看| 鬼吹灯之精绝古城剧情介绍| 张伟 混蛋| 小舍得电视剧全集免费观看完整版| 十七岁在线观看高清电视剧| 驯服小姨子2在线观看| 荒原城堡| 公的浮之手在线观看完整版| 国王在冬眠在线观看全集电影| 继拇2| 最亲爱的你电视剧| 《阿尔法》| 无人区手机在线观看免费| 北京奥运会2008年开幕式| 夫妻换房在线| 八零弃少:重生搞钱宠媳妇全集免费| jizzwu| 扫黑风暴11集| 天海翼伦理秘密搜查官| 腹黑总裁:只对我温柔短剧全集| 传闻中的七公主国语版全集优酷| 大武生电影| 朴妮唛12部| 韩国论理电影年轻的女朋友| 狂飙在线电视剧免费观| 木子檀檀子在线观看全集免费 | 刻晴大战史莱姆免费观看绝世危龙| 500篇艳妇短篇合换爱小说| 姐妹牙医赤子板栗| 幸得相遇离婚时短剧免费观看| 电影我要爸爸播种子| 夫妻成长日记电影| 农场主的女儿们kB经曲| 一点就到家免费观看| 伙记办大事| 春咲梓美| 哈里波特7| 金牌销售无删减版| 无敌破坏王中文版免费版观看| 陈雅伦被躁120分钟电影| 爱在空气中第四集| 电影肉体的恶魔| 陈式太极拳老架一路74式| 开封王婆回应已婚男事件| 沐浴之王免费观看完整版| 道士出山| 源代码 电影| 以你的心诠释我的爱第二季电视剧| 《急诊护士》电影在线| 还珠格格第一部1一24集| 《荣誉之战》满天星版在线观看| 箭在弦上大结局| 电影《村姑》完整版| 珠江人家电视剧免费观看| 丛林肉搏4.5团该干嘛| 美容院特殊待遇4演员表| 我的女邻居免费完整版电视剧| 街头霸王之春丽传| 酒店第1-100集免费观看下载| 《与我同眠》电影| 巡回检察组完整版免费观看| 电视剧女人魂| 《卖保险的女销售》2| 花样女鬼| 售楼部的秘密| 两个妈妈id免费观看| 患难真情| 金马奖不当言论说了啥| 女教师洗澡被学生强伦| 我们多么幸福歌词| 星梦缘电视剧免费观看| 姐妹牙医电影观看免费高清| 东莞第一高楼| 电视剧怒放| 英国式家庭禁忌结局-3| 曾经是超人的男子| 不完美的受害者电视剧| 扫黑风暴28集全集网盘| 木下檩檩子电影免费观看高清版| 四平青年第一季高清| 战狼电视剧| 《特邀送货员》刘志贤| 魔兽电影完整版| 如何混合喂养| 火锋刀蓝| 人世间电视剧全集免费观看57集| 我们结婚吧电视剧免费全集| 电视剧 永不回头| 海天雄鹰电视连续剧免费播放| 强者风范| 生活中马玛丽| 朋友的女儿2| 《女销售员:满天星》电影简介| 守龙者动画片免费观看国语版| 韩国电影2018| 夜夜嗨国产精品| 抑郁症影院满天星执行秘书| 烧饼皇后| 千金女贼片花| 郑中基宣布退圈| 蔷薇风暴1-40集全免费观看| 盛唐风流完整免费观看| 新上海滩全集| 爱我几何电影完整版在线播放免费观看 | 方言版唐伯虎点秋香| 暮光之城4破晓下bd| 三国95| 我的XL司令第一季真人版| hodv-21134| 女战狼6在线高清免费观看| 哎呦叫爸爸叫爹叫亲爹| 一首情歌 任重| 富婆夜生活| 《雷霆特攻队*》| 交换上司的秘书电影在线观看| 电影我的错误免费观看完整版| 诱人的小峓子4中文字幕| 大红灯笼高高挂电视剧全集在线观看| 《死馆》电影免费观看| 一起长大电视剧免费| 高清明珠奇谭| 维修师傅的艳遇中字| 幸福里的故事| 做aj的电视剧免费播放| 美国丽人剧情| 菲梦少女第二季免费观看完整版| 雪平利左电影免费播放西瓜视频 | 唐朝诡事录2官宣| 黑白配HD1080免费全集 | 酒店1至75集免费观看| 熊猫在线观看免费版| 哲仁皇后| 赤板栗《牙医姐妹》完整| 吴尊友:新十条出台时机恰到好处| 活佛济公第三部快播| 猫之茗全集免费观看第二季| 郝蕾《颐和》片段高清| 电影华丽的外出| 王牌对王牌第五季免费| 牙医姐妹电影免费完整版| 廉狙击粤语在线观看免费高清| 妈妈辅导作业气到痉挛| 17·3电影高清免费观看| 铁齿铜牙纪晓岚第二部| 我的少年时代在线完整免费观看| 张杰回应丁太升| 高空监狱2在线观看完整免费高清原声满天星2019 | 使徒行者3粤语电视剧| 真实处破疼哭在线播放| 三大纪律八项注意简谱| 高压监狱2法版1小时43分| 来势凶猛电视剧| 最美情侣在线播放观看| 妻子的谎言大结局剧情| 花甲房东真人版免费看| 深圳光头姐| 背叛在线观看免费完整版电视剧| 丰满的女学生3| 五号特工组2| 樱花动漫免费看妖神记第五季| 爱我就别想太多在线看| 爸爸的种子bd| 同乐会 台剧| 浪客剑心追忆篇免费观看完整版| 战神王妃短剧全集| 女版黑鹰坠落满天星版最新消息| 冰与火之歌第七季| 去有风的地方电视剧免费观看| 瓜达卢佩的玫瑰无删版| 云中玫瑰国语版| 主君的太阳13集| 四对夫妇交换电影中文版| 人猿泰山hr版| 《妻子》全集观看| 只属于我的女神| 伊甸园之东大结局| 瓜达卢佩玫瑰无删减下载| 巴菲特认错| 十大奇冤电视剧| 天下长河一共多少集| 林师父在首尔| 乡村爱情8西瓜影音| 《女超人》麦乐迪版剧情| 双人舞茶山情歌| 三年大片大全在线观看免费国语| 东宫电视剧全集免费观看完整版| 学生妈妈的麦子| 迦楠大人的白给是恶魔级| 厨房激战4电影完整版| 小小姐们| 爱情公寓精装版全集| 八戒八戒电影在线观看播放| 东成西就2011百度影音| 拯救大兵瑞恩| 佐罗满天星版被禁播原因| 苍空电影完整版免费| 《勇敢的心》完整版免费观看| 新还珠格格发布会| 《女狱警》法国正版| 免费同志| 锦月如歌电视剧36集全| 男女高潮又爽又黄又无遮挡| 美国式家庭禁忌结局-3| 地雷战电影| 生死狙击百度影音| 王在山轻音乐团| 赤板栗电影完整版| 客家山歌五句板| 男生和女生拔萝卜| 东北话版猫和老鼠| 影音先锋 日本资源| 轧戏未删减| 乘风破浪2024第五季在线观看| 《法国瑜伽》在线观看| 私人航空法国成人电影| 扫黑风暴电视剧| 名字打架| 电影《法国空少》在线观看| 樊振东爆冷出局事件| 熟睡的继拇HD| 我和僵尸有个约会1国语免费观看| 箭在弦上42| 冷宫废后太后:逆袭登顶短剧全集| 地铁跑酷bug| 大江大河3部53集免费观看| 原纱央莉bt种子| 霜降是什么时候| 美国禁忌式家庭结局10| 穿越医妃:医术惊世短剧全集| 去有风的地方免费观看完整版最新| 深田咏美在线播放| 西虹市首富演员表大全| 鉴宝弃少:捡漏暴富全集免费| 绿色帽子电影完整版| 老炮儿主演| 电影斗牛下载| 迅雷机战| 我的莫格利男孩电视剧| 电影白鹿原完整版播放| 台湾版《棘手狂情》演员薛惹,恋狂情| 我比想像中爱你| 魔法使的新娘第一季| 火蓝刀锋有多少集| 空蝉之森| 韩国19禁爱情电影的新高峰| 老爸的筒子楼全集| jjzz44com| 《环太平洋2》完整版在线观看| 图书馆里的女友免费观看全集完整版动漫第一季| 怎样写请示报告| 乒乓球混双决赛直播在线观看| 《饥饿难耐2》| 1995人猿泰山H版成人版| 玛雅最新地址| 年轻的女保险销售2 | 朋友的姐姐4线在完整中字| 决战桂林| 发财秘籍| 人猿泰山意大利版劳拉主演| 狼人杀京沪大战| 我的最爱粤语高清| 哇嘎美国| 妻子的姐姐免费版电视剧在线| 坏修女电影在线高清观看| 《入室暴行3被蹂躏》韩国电影在线观| 善良的妻子1中字巴巴鱼汤饭惹人| 电影失眠| 嫂子的特殊职业| 金银梅5普通话国语版| 上海申花VS川崎前锋| 法律事务论文| 朱婷新职务曝光| 《法国空乘10》播放| 电影《法国女仆》免费观看| 金门:双方船只碰撞致大陆渔船翻覆| 女超人麦乐迪免费浏览观看完整版网站| 周星驰电影大全国语版| 满天星《牛仔》完整版| 功夫熊猫4电影免费观看完整版| 囧的呼唤97| 入室暴行魔电影免费观看高清 | 插曲的痛30集全集| 和爱了七年的女孩结婚了| 揉情港都| 《法国空乘5》观看免费| 高清《上流社会》林智妍| 济公游记| jordan大战黑人| 小时代3:刺金时代 电影| 我学生的爸爸中字ID| 《肉蔻之香》法国剧情解析| 大笑江湖优酷| 头脑特工队2电影| 美国式保罗2原版电影在线观看| 特别的酒店1993年美国| 佐野美铃| 美国空乘2019电影完整免费高清原声奔跑吧中文字幕 | 图书馆的女朋友动漫在线观看完整免费版电视剧第五集 | 鬼吹灯之怒晴湘西在线观看| 壮志凌云满天星女版在线观看| 小麻薯手帐贴纸教程| 外星生命| 私人女性临狱| 最后的希望| 战狼6免费播放观看入口| 恭喜发财2016| 大团圆结2亲情会闪闪发光| 宝贝老板2| 开局一座山| 妻子抵债| 泰安市英雄山中学| 四子王旗| 死亡笔记 日剧| 小鬼当家3国语版| 妈妈的职业5完整版结局| 高清《奇迹》克劳| 幽暗沼泽| 索命哨全集观看| 鸡毛飞上天观看免费全集 | 好运理发师| 木下檀檀| 凶灵假期| 九河入海电视剧全集| 意大利电影我想要爸爸的种子在线观看 | rosimm | 我是特种兵之火凤凰36| 变异编年史好看吗| 情侣交换日记| 横店马拉松| 韩国美女vip内部1101| 波尔多液的成分| 山河枕电视剧在线播放| 八妻子电院影| 陷入我们的热恋.| 最棒的情人沼电影| 西厂厂花| 额尔古纳市| 行尸走肉第一季04| 甜蜜惩罚全集在线观看| 电影《千金与仆人》免费播放| 身为一个胖子免费观看| 某科学超电磁炮s| 青梅竹马是消防员第一季未增删看| 《搜索》| 壮志凌云女版啄木鸟满天星法版| 蜜桃成熟时33d在线| 识骨寻踪第四季| 满天星陈宝莲版| 五台山奇情| 侠探杰克美剧| 人猿泰山意大利在线观看| 电锯惊魂全集| 电影《美容院的特殊待遇》1演员表 | 神奇女侠成人H版在线| 赛文21奥特曼全集| 晚娘2罪孽完整版免费观看视频高清 | 《交换上司的秘书2》| 时光正好电视剧| 一路向西 国语| 需要爸爸种子电影在线观看| 沐风之女电影完整免费观看| 薛平贵与王宝钗| 意大利版泰山hr版| 幸福的面包| 云南虫谷电影| 妻子8免费全集在线观看| 高清《互换性伴侣》在线观看 | 九零弃少:创业成商业巨头全集免费| 《另一个贝内特家的姐妹》| 情陷夜中环吻戏| 失恋33天mp4下载| 《吾家有姐》满天星| 《僵尸先生2》免费观看| 美丽姑娘免费观看高清| 密室大逃脱第六季在线免费观看 | 庆余年2电视剧免费全集在线观看| 这个妈咪我要了| XL司令第二季高清无马赛版下载| 帝国劫案| 苍空电影完整版在线观看| 黑白配HD1080电影在线观看| 白魔女学园| 《恶犬》短剧全集| 璧山县| 黑名单第三集| 唐宫美人天下杨幂| 24世纪性格爱情指南大结局 | 我叫金三顺电视剧| 凯登克罗斯在线播放| 罪恶都市特殊车辆任务| 包青天之打龙袍| 公之浮手完整版免费看| 超人气校园| 金瓶梅电影百度影音| 总裁的独家私宠短剧全集| 美国wwwwxxxx69| 蜜桃成熟33d高清| 《女仆的秘密》大结局| ⅹl司第一季在线观看免费| 林正英的僵尸电影| 老头同性老老头交tv| 人挤人!五一首日故宫游客爆满| 修理工的艳遇在线观看完整版 | 电影神奇女侠| 百闻不如一见造句| 七情六欲韩国版| 荣誉法则(成人版)未删减版| 战火连天| 柯南剧场版18异次元的狙击手| 兄弟换麦子6国语版1080P| 爱情公寓3 12| 叶玉卿电影全高清| 在姨妈母家的客厅| 《女教师》6在线观看| 彷徨之刃免费观看完整版| 木下檩檩子电影免费观看普通话版| 五号特工组百度影音| 旗开得胜集体舞| 肥乡县| 豪门弃妇:翻身成商业女王全集免费| 信者无敌电视剧全集| 黄色仓库免费观看| 寻秦记2018| 秋蝉免费全集| 金银悔1-5免费观看高清| 电视剧中国家庭第一部| 一代枭雄百度影音| 终极三国全集| 需要爸爸的播放美国电影在线观看 | 高清《无赦之罪》免费观看全集高清| 瑞金市| 我们家的微幸福生活电视剧| 新乌托邦7| 老婆大人1| 除却巫山2007邓家佳版本| 百变小樱国语版| 神级选择:每次都选对全集免费| 尖东老泥妹| 神奇的眼镜韩国免费观看完整版| 火烧岛之横行霸道电影在线观看| 3对1:三人一次性体检2| 满江红完整版观看免费| 魔帝归来:三界唯我独尊全集免费| 阿姨爱上小鲜肉电视剧| 男生女生一愁愁愁观看大片| 莫言作品丰乳肥臀| 妻子的叛乱国语版| 蒙古王国语版| 同学的妈妈韩国| 姨母的诱惑免费在线观看| 365天今时之欲在线观看百度| 呱达卢佩的玫瑰满天星免费观看| 《人生导师》电影在线观看免费| 乐游原电视剧40集全免费观看| 侯门深宅短剧全集| 壮志凌云女版啄木鸟满天星法版| 我叫王大锤| 与鬼同眠| 成版《壮志凌云》| 《贫女复仇记》在线观看 | 电影聊斋兰若寺免费观看| 男女一起愁愁在线看看| 林由奈jufd467在线播放 | 最后征战电视剧| 欢乐白领夫妻| 安志杰最新的电影| 体育| 电影双女任务在线观看| 八千里路云和月| 歌曲披着羊皮的狼| 美女化妆前后对比| 莺长女儿| 大地中文8在线观看免费| 蒙古草原 天气晴| 巨茎挺进李淑芬视频-高清电影电影未| 扫黑风暴在线观看| 《我最喜欢妈妈》动漫最新一集| 一个真正的女人| 需要你的种子| 乐高幻影忍者视频| 王者之风| 法国满天星《古墓丽影》| 美丽又紧致凯帕克电影在线| 咒在线观看免费观看完整2022| 能帮我弄干净吗?| 《啄木鸟:壮志凌云》观看| 罗丽星克莱尔电影在线观看免费| 冯小刚回应病危传言| 波野多结衣百度影音| tobu4美国| 老伴电视剧| 银娇在线| 幽灵行动阿尔法全集| 酒店激战1-5免费观看| 狂飙未删减电视剧全集免费播放| 唱k小鱼仙粤语| 特殊外卖员在线观看| 《流浪地球》樱花动漫| 电视剧长相思在线观看免费| 《爱我几何》完整版免费播放| 《激战丛林》意大利版| 古惑仔胜者为王国语高清| 超凡蜘蛛侠2在线观看| 和部长一起出差电影| 我是特种兵2歌曲| 倾城之恋读后感| 奔跑吧兄弟第五季免费完整版观看| 韩国电影r在线| 法国空姐4艺术片| 对你不止是喜欢电视剧| 梁河县| 硝烟散尽| 美洲杯决赛| 煮妇神探| 迷人的小婊子| 左右免费| 狂飙在线电视剧免费观| 高清《西北往事》电视剧| 牙医姐妹1986无删减版| 黄豆鸟梅子叫声| 课外授业3在线| 女销售在线播放| 古灵精怪东南亚4| 莫陌百度影音| 电影巜商务旅行戴帽子的同行2019主演| 五朵金花电视剧| 老炮儿主演| 神话电视剧土豆网| tobu8| 年轻的嫂子5电影| 仙王的日常生活免费观看完整版| 乱世三义高清全集| 《房奴试爱》开头原声| 与君相刃电视剧免费观看| 阿修罗 剧场版| 极乐宝鉴3d国语版在线观看| 还珠格格哪一年开始播的| 武装神姬| 隐形帽子电影免费| 入间同学入魔了第一季| 地狱护士另一个版本电影叫啥| 1819treejron| 国产真人做爰免费视频| 文豪野犬第五季免费观看| 牝教师~淫辱的教室| 陈坤 盗墓笔记| 食人神之山在线观看完整版| 知否连续剧全集免费观看| 《麦乐迪女超人》完整版在线观看视频 | 高清《出轨同学会2》韩国电影| 上海滩英文版| 清水河县| 馒头逼电影在线观看| 伤城之恋 电视剧| 电影韩国姐姐完整版在线观看| 女超人满星版麦乐迪北欧精灵| 人生之路电视剧全集免费观看| 年轻的母亲2在线观看木瓜网| 中国农村夫妻CHINA | 最新香港电视连续剧| 杨敏思版1-5集免费观看电视剧在线观 | 白峰电影在线观看免费第8集| 插曲的痛中文| 双胞胎姐妹齐上阵小乔大乔| 大兵的寝室| 伙头智多星动漫| 倚天屠龙记 邓超| 朋友的老婆3| 新三国免费观看1-95集普通话| 爸爸的种子播种2啥时候播| abo动画成结模拟免费观看| 加油艾米| 《坏狗》电视剧免费观看| 燕东平的微笑| 歌唱吧now| 法国电影《农场保卫战》免费观看| 非常小特工之时间大盗下载| 包青天开封奇案| 让子弹飞观看免费完整版| 后宫露营第一季未增减 0.0| 绝密543免费全集(36集全)| 我是阿卡| 卑劣的街头百度影音| 二十一世纪性格爱情指南第4集| 忠贞电影演员表| 妈妈的朋友4在线看| 师生畸恋下载| 隋唐英雄120集| 黑老大和我的365天| 激战丛林劳拉版在线观看| 哪吒之魔童降免费观看| 黑糖玛奇朵电视剧| 《正人君子》完整版电影在线观看| 姐妹牙医在线观看免费完整版| 鬼神童子国语| 刀马旦电影| 任丘市| 一场美味的飞行在线观看欢迎回来| 玉璞团之鉴宝2高清| 奔跑吧兄弟2023免费观看| 年轻的后妈在观整有限中字 | 白雪公主H成 版伦理| 有一个美丽的地方葫芦丝简谱| 一打开就是立体的贺卡| 入室暴行魔免费观看| 荣耀守则满天星免费观看高清版| 朋友的妻子2| 兽魂觉醒动漫免费观看高清| 《桃色》| 圣特罗佩姑娘们1982满天星 | 新人类毒医肥尸完整版免费观看| 木下檀檩子无删减中文字幕| 相反的你和我未删减| 时光正好短剧免费完整版| 一路向西电影qvod| 南充火车站| 修理人员的培训日本| 恋爱的味道观看| 合租男女1v1h| 硬汉1女主角| 哇嘎免费观看完整版高清在线观看 | 在异世界迷宫开宫| 巴霍巴利王开端| 法国空高压监狱伦理片| 《邻居的妻子》| 千王之王全集1至40集免费观看| 男生女生免费完整版在线观看| 天涯歌女邓丽君| 小品火炬手| 巜人妻初次按摩2在线播放| 双人调情按摩术电影免费观看 |