在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

關(guān)于MPSoC的中斷處理介紹

YCqV_FPGA_EETre ? 來源:賽靈思中文社區(qū)論壇 ? 作者:付漢杰 ? 2021-05-07 15:34 ? 次閱讀

目錄1. MPSoC的中斷處理介紹

2. 擴(kuò)展PL中斷

3. 擴(kuò)展AXI Intc中斷

3.1. AXI Intc PL連接

3.2. AXI Intc Device Tree

3.3. AXI Intc外設(shè)的Device Tree

4. 擴(kuò)展MIO中斷

4.1. GPIO中斷控制器

4.2. 外設(shè)使用GPIO中斷控制器5. 檢查Linux中斷信息

01

MPSoC的中斷處理介紹

MPSoC是帶ARM處理器FPGA(PL)的SoC,包含4核A53及其常用外部模塊(PS)。A53(PS)使用Arm GIC-400,屬于GICv2架構(gòu)。如果想了解GIC-400的具體細(xì)節(jié),請參考文檔APU GIC: CoreLink GIC-400 Generic Interrupt Controller, DDI 0471B, r0p1。

MPSoC的A53(PS)的中斷細(xì)節(jié),在Xilinx的UG1085的Table 13‐1: System Interrupts部分做了詳細(xì)介紹。

需要注意的是,UG1085的Table 13‐1描述的是芯片的內(nèi)部連線,是硬件中斷號,和Linux Kernel使用的軟件中斷號(邏輯中斷號)有區(qū)別。有的SOC只有一個中斷控制器,有的SOC有多個串聯(lián)/并聯(lián)的中斷控制器。Linux Kernel為了各種處理復(fù)雜的中斷控制器設(shè)計,并給中斷提供統(tǒng)一的API,在內(nèi)部使用統(tǒng)一編址的的軟件中斷號。同時,GIC的Linux Kernel驅(qū)動內(nèi)部有一個表,用于轉(zhuǎn)換硬件中斷號和軟件中斷號。這樣的好處是,即使不同SoC系統(tǒng)里有不同的中斷控制器結(jié)構(gòu),驅(qū)動程序也可以忽略這些細(xì)節(jié),使用統(tǒng)一的API,比如platform_get_irq,從Device Tree里獲取中斷號,并向Linux Kernel注冊驅(qū)動程序的中斷處理程序。另外,設(shè)備的Device Tree里的中斷號是局部的,在它所屬的中斷控制器里保持唯一即可。Linux Kernel使用的軟件中斷號,是整個Linux Kernel系統(tǒng)的,需要在Linux Kernel范圍內(nèi)保持唯一。

更多信息可以參考Linux Kernel代碼,以及Linux kernel的中斷子系統(tǒng)之(二):IRQ Domain介紹。

MPSoC的Device Tree的軟件中斷號,比UG1085的Table 13‐1提供的硬件中斷號小32。這是因為A53內(nèi)部的中斷號0-31是私有中斷。

以GEM0為例,UG1085的Table 13‐1提供的硬件中斷號是89,Device Tree里的設(shè)備號是0x39(57),驅(qū)動程序里使用platform_get_irq(pdev, 0)獲取軟件中斷號。

VCU TRD 2020.2基于zcu106_llp2_xv20的PetaLinux工程里的GEM0的中斷信息:

ethernet@ff0b0000 {

compatible = “cdns,zynqmp-gemcdns,gem”;

interrupt-parent = 《0x04》;

interrupts = 《0x00 0x39 0x04 0x00 0x39 0x04》;

};

UG1085的Table 13‐1里GEM0的硬件中斷號

UG1085的Table 35‐6: PS-PL Interrupts Summary,使用的是Device Tree里的軟件中斷號。

需要更多信息,可以參考MPSoC Device tree interrupt number for PL-PS interrupt, Zynq-7000 mapping irq number into device tree value。

02

擴(kuò)展PL中斷

在FPGA(PL)部分,可以的擴(kuò)展很多外部設(shè)備,比如串口、I2CCan等。A53(PS)為PL的外部設(shè)備預(yù)留了16個中斷,相關(guān)描述如下。

PS-PL Interrupts

The interrupts from the processing system I/O peripherals (IOP) are routed to the PL. In the

other direction, the PL can asynchronously assert 16 interrupts to the PS. These interrupts

are assigned a priority level routed to interrupt controllers which aggregate and route them

to appropriate processor. Additionally, FIQ/IRQ interrupts are available which are routed

directly to the private peripheral interrupt unit of the interrupt controller. Table 35-6

summarizes the interrupts.

PL到A53(PS)的外部設(shè)備預(yù)留了16個中斷,在Table 13‐1有如下表述。

VCU TRD 2020.2設(shè)計里,使用了很多PL中斷。以Video Phy為例,在工程zcu106_llp2_xv20里,它連接到了PL中斷的第3位(從0開始計數(shù)),對應(yīng)的硬件中斷號是124,減去32后是92(0x5c)。

在以zcu106_llp2_xv20為硬件工程編譯的PetaLinux工程里,Video Phy的中斷信息如下,確實是0x5c。

vid_phy_controller@a0130000 {

compatible = “xlnx,vid-phy-controller-2.2xlnx,vid-phy-controller-2.1”;

interrupt-names = “irq”;

interrupt-parent = 《0x04》;

interrupts = 《0x00 0x5c 0x04》;

};

03

擴(kuò)展AXI Intc中斷

有時候,PL-PS的中斷還不夠用。這時可以使用Xilinx的axi_intc(AXI Interrupt controller)做擴(kuò)展。Xilinx Wiki網(wǎng)站上的文章Cascade Interrupt Controller support in DTG有詳細(xì)描述。

總結(jié)起來,有下面三步。

3.1. AXI Intc PL連接

在PL設(shè)計里添加axi_intc(AXI Interrupt controller),把a(bǔ)xi_intc的中斷輸出連接到GIC的PL中斷輸入,把其它外設(shè)的中斷輸出連接到axi_intc的中斷輸入。

3.2. AXI Intc Device Tree

然后在Device Tree里,聲明axi_intc的輸出在GIC的中斷號。

axi_interrupt-controller {

interrupt-parent = “gic”

interrupts = 《 0 89 1》;

}

3.3. AXI Intc外設(shè)的Device Tree

外設(shè)的Device Tree里,需要聲明interrupt-parent是axi_intc,并聲明它在axi_intc內(nèi)部的中斷號。interrupt-parent后面的字符串,是Device Tree里axi_intc里的標(biāo)號。如果有多個axi_intc,每個axi_intc的標(biāo)號(Label)不一樣。每個外設(shè)的Device Tree里,需要指定自己對應(yīng)的axi_intc的標(biāo)號(Label)。

axi_gpio {

interrupt-parent = “axi_intc”;

interrupts = 《0 1》;

}

axi_intc的文檔,也可以參考 Xilinx Interrupt Controller 。

04

擴(kuò)展MIO中斷

下面整合之前的文章,通過MIO接入外設(shè)中斷。

Zynq-7000和MPSoC有很多MIO管腳。如果外設(shè)有中斷,也可以通過MIO連接中斷。這時候,MIO作為GPIO控制器,加載GPIO驅(qū)動。下面的描述中,GPIO就是MIO對應(yīng)的GPIO設(shè)備。

4.1. GPIO中斷控制器

按下列模式,在GPIO的設(shè)備樹里聲明為中斷控制器

&gpio0 {

#interrupt-cells = 《2》;

interrupt-controller;

};

GPIO的中斷說明,在Linux的文件

Documentation/devicetree/bindings/gpio/gpio-zynq.txt里。主要內(nèi)容如下:

- interrupt-controller : Marks the device node as an interrupt controller.

- #interrupt-cells : Should be 2. The first cell is the GPIO number.

The second cell bits[3:0] is used to specify trigger type and level flags:

1 = low-to-high edge triggered.

2 = high-to-low edge triggered.

4 = active high level-sensitive.

8 = active low level-sensitive.

4.2. 外設(shè)使用GPIO中斷控制器

外設(shè)的設(shè)備樹里,添加下列行,聲明gpio0為自己的中斷控制器,并聲明對應(yīng)的MIO引腳和中斷內(nèi)心。

touchscreen@0 {

interrupt-parent = 《&gpio0》;

interrupts = 《52 2》; /* MIO 52, falling edge */

};

05

檢查Linux中斷信息

Linux在/proc/interrupts文件里,提供了系統(tǒng)的中斷信息。使用命令“cat /proc/interrupts”,可以顯示軟件中斷號、中斷在各CPU發(fā)生的次數(shù)、中斷所屬中斷控制器名稱、硬件中斷號,驅(qū)動程序名稱。

讀“/proc/interrupts”的內(nèi)容時,會調(diào)用kernelirqProc.c中的函數(shù)int show_interrupts(struct seq_file *p, void *v)。

下面是一個例子。

root@zcu106_vcu_llp2_nv16:~# cat /proc/interrupts

CPU0 CPU1 CPU2 CPU3

3: 18945 9421 13324 23628 GICv2 30 Level arch_timer

6: 0 0 0 0 GICv2 67 Level zynqmp_ipi

12: 0 0 0 0 GICv2 155 Level axi-pmon, axi-pmon

13: 0 0 0 0 GICv2 156 Level zynqmp-dma

14: 0 0 0 0 GICv2 157 Level zynqmp-dma

15: 0 0 0 0 GICv2 158 Level zynqmp-dma

16: 0 0 0 0 GICv2 159 Level zynqmp-dma

17: 0 0 0 0 GICv2 160 Level zynqmp-dma

18: 0 0 0 0 GICv2 161 Level zynqmp-dma

19: 0 0 0 0 GICv2 162 Level zynqmp-dma

20: 0 0 0 0 GICv2 163 Level zynqmp-dma

21: 0 0 0 0 GICv2 164 Level Mali_GP_MMU, Mali_GP, Mali_PP0_MMU, Mali_PP0, Mali_PP1_MMU, Mali_PP1

22: 0 0 0 0 GICv2 109 Level zynqmp-dma

23: 0 0 0 0 GICv2 110 Level zynqmp-dma

24: 0 0 0 0 GICv2 111 Level zynqmp-dma

25: 0 0 0 0 GICv2 112 Level zynqmp-dma

26: 0 0 0 0 GICv2 113 Level zynqmp-dma

27: 0 0 0 0 GICv2 114 Level zynqmp-dma

28: 0 0 0 0 GICv2 115 Level zynqmp-dma

29: 0 0 0 0 GICv2 116 Level zynqmp-dma

31: 144 0 0 0 GICv2 95 Level eth0, eth0

33: 121 0 0 0 GICv2 49 Level cdns-i2c

34: 140 0 0 0 GICv2 50 Level cdns-i2c

35: 0 0 0 0 GICv2 42 Level ff960000.memory-controller

36: 0 0 0 0 GICv2 57 Level axi-pmon, axi-pmon

37: 43 0 0 0 GICv2 47 Level ff0f0000.spi

38: 0 0 0 0 GICv2 58 Level ffa60000.rtc

39: 0 0 0 0 GICv2 59 Level ffa60000.rtc

40: 0 0 0 0 GICv2 165 Level ahci-ceva[fd0c0000.ahci]

41: 232 0 0 0 GICv2 81 Level mmc0

42: 133 0 0 0 GICv2 53 Level xuartps

44: 0 0 0 0 GICv2 84 Edge ff150000.watchdog

45: 0 0 0 0 GICv2 88 Level ams-irq

46: 12 0 0 0 GICv2 154 Level fd4c0000.dma

47: 0 0 0 0 GICv2 151 Level fd4a0000.zynqmp-display

48: 0 0 0 0 GICv2 122 Level xilinx_framebuffer

49: 0 0 0 0 GICv2 141 Level xilinx_framebuffer

50: 0 0 0 0 GICv2 142 Level xilinx_framebuffer

51: 0 0 0 0 GICv2 143 Level xilinx_framebuffer

52: 0 0 0 0 GICv2 123 Level xilinx-hdmi-rx

53: 0 0 0 0 GICv2 121 Level xilinx_framebuffer

54: 1 0 0 42423 GICv2 125 Level xilinx-hdmitxss

55: 0 0 0 42426 GICv2 127 Level xlnx-mixer

56: 81 0 0 0 GICv2 126 Level a00d0000.i2c

57: 0 0 0 0 GICv2 139 Edge a00d1000.sync_ip

58: 4 0 0 0 GICv2 128 Level a0200000.al5e, a0220000.al5d

59: 16 0 0 0 GICv2 124 Level xilinx-vphy

60: 0 0 0 0 GICv2 97 Level xhci-hcd:usb1

IPI0: 2763 1869 2597 1312 Rescheduling interrupts

IPI1: 21 26 19 36 Function call interrupts

IPI2: 0 0 0 0 CPU stop interrupts

IPI3: 0 0 0 0 CPU stop (for crash dump) interrupts

IPI4: 0 0 0 0 Timer broadcast interrupts

IPI5: 0 0 0 0 IRQ work interrupts

IPI6: 0 0 0 0 CPU wake-up interrupts

從上面打印信息,也可以看到硬件中斷號、軟件中斷號(邏輯中斷號)不一樣。

目錄/proc/irq下面會為每個rq創(chuàng)建一個以irq編號為名字的子目錄。每個子目錄最重要的文件是smp_affinity。通過更改smp_affinity的值,可以更改處理中斷的CPU。比如下面缺省情況下,讀出來中斷59的smp_affinity是f,對應(yīng)2進(jìn)制1111,表示四個處理器都能處理中斷59。后來執(zhí)行命令“echo 2 》 /proc/irq/59/smp_affinity”,把其改為2,就只有CPU-1能處理中斷59。

root@zcu106_vcu_llp2_nv16:~# ls /proc/irq/48 -l

total 0

-r--r--r-- 1 root root 0 Apr 28 06:54 affinity_hint

-r--r--r-- 1 root root 0 Apr 28 06:54 effective_affinity

-r--r--r-- 1 root root 0 Apr 28 06:54 effective_affinity_list

-r--r--r-- 1 root root 0 Apr 28 06:54 node

-rw-r--r-- 1 root root 0 Apr 28 06:25 smp_affinity

-rw-r--r-- 1 root root 0 Apr 28 06:54 smp_affinity_list

-r--r--r-- 1 root root 0 Apr 28 06:54 spurious

dr-xr-xr-x 2 root root 0 Apr 28 06:54 xilinx_framebuffer

root@zcu106_vcu_llp2_nv16:~# ls /proc/irq/59 -l

total 0

-r--r--r-- 1 root root 0 Apr 28 06:54 affinity_hint

-r--r--r-- 1 root root 0 Apr 28 06:54 effective_affinity

-r--r--r-- 1 root root 0 Apr 28 06:54 effective_affinity_list

-r--r--r-- 1 root root 0 Apr 28 06:54 node

-rw-r--r-- 1 root root 0 Apr 28 06:54 smp_affinity

-rw-r--r-- 1 root root 0 Apr 28 06:54 smp_affinity_list

-r--r--r-- 1 root root 0 Apr 28 06:54 spurious

dr-xr-xr-x 2 root root 0 Apr 28 06:54 xilinx-vphy

root@zcu106_vcu_llp2_nv16:~# cat /proc/irq/59/smp_affinity

f

root@zcu106_vcu_llp2_nv16:~# echo 2 》 /proc/irq/59/smp_affinity

root@zcu106_vcu_llp2_nv16:~# cat /proc/irq/59/smp_affinity

2

root@zcu106_vcu_llp2_nv16:~# echo 4 》 /proc/irq/59/smp_affinity

root@zcu106_vcu_llp2_nv16:~# cat /proc/irq/59/smp_affinity

4

Linux的中斷信息,可以參考問 Linux 中斷和smp_affinity, Linux 中斷和 IRQ 調(diào)節(jié)。

原文標(biāo)題:【工程師分享】擴(kuò)展MPSoC中斷

文章出處:【微信公眾號:FPGA開發(fā)圈】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

責(zé)任編輯:haq

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 控制器
    +關(guān)注

    關(guān)注

    112

    文章

    16465

    瀏覽量

    179615
  • soc
    soc
    +關(guān)注

    關(guān)注

    38

    文章

    4212

    瀏覽量

    219179

原文標(biāo)題:【工程師分享】擴(kuò)展MPSoC中斷

文章出處:【微信號:FPGA-EETrend,微信公眾號:FPGA開發(fā)圈】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    串口中斷是內(nèi)部中斷還是外部中斷,串口中斷是怎么觸發(fā)的

    串口中斷通常被視為外部中斷。雖然串口控制器(如USART、UART等)可能集成在微控制器或處理器的內(nèi)部,但從中斷的角度來看,串口中斷是由
    的頭像 發(fā)表于 01-29 15:03 ?186次閱讀

    Zynq UltraScale+ MPSoC數(shù)據(jù)手冊

    電子發(fā)燒友網(wǎng)站提供《Zynq UltraScale+ MPSoC數(shù)據(jù)手冊.pdf》資料免費下載
    發(fā)表于 12-30 14:37 ?2次下載

    OMAP5912多媒體處理中斷參考指南

    電子發(fā)燒友網(wǎng)站提供《OMAP5912多媒體處理中斷參考指南.pdf》資料免費下載
    發(fā)表于 12-17 16:25 ?0次下載
    OMAP5912多媒體<b class='flag-5'>處理</b>器<b class='flag-5'>中斷</b>參考指南

    關(guān)于中斷知識學(xué)習(xí)總結(jié)筆記

    關(guān)于中斷知識學(xué)習(xí)總結(jié)筆記》 一、中斷的核心概念 中斷是計算機(jī)運行過程中的一種重要機(jī)制,它能夠使計算機(jī)在執(zhí)行主程序時,暫停當(dāng)前任務(wù)去響應(yīng)特定的事件或請求,
    發(fā)表于 11-23 11:23

    AMD/Xilinx Zynq? UltraScale+ ? MPSoC ZCU102 評估套件

    Zynq UltraScale+ MPSoC 器件,具有四核 Arm? Cortex-A53、雙核 Cortex-R5 實時處理器和基于 AMD/Xilinx 16nm FinFET+ 可編程邏輯
    的頭像 發(fā)表于 11-20 15:32 ?564次閱讀
    AMD/Xilinx Zynq? UltraScale+ ? <b class='flag-5'>MPSoC</b> ZCU102 評估套件

    基于PYNQ和機(jī)器學(xué)習(xí)探索MPSOC筆記

    新版本中,不僅僅介紹MPSOC的體系結(jié)構(gòu)和應(yīng)用場景,更是結(jié)合當(dāng)前應(yīng)用最廣的PYNQ框架和機(jī)器學(xué)習(xí)應(yīng)用進(jìn)行分析。作為一本不可多得的免費電子英文書籍,本書既是使用Zynq MPSoC的開發(fā)人員的實用指南
    的頭像 發(fā)表于 11-16 11:32 ?394次閱讀
    基于PYNQ和機(jī)器學(xué)習(xí)探索<b class='flag-5'>MPSOC</b>筆記

    在米爾電子MPSOC實現(xiàn)12G SDI視頻采集H.265壓縮SGMII萬兆以太網(wǎng)推流

    4K UHD音視頻廣播領(lǐng)域的優(yōu)勢 1.高性能與低功耗的結(jié)合:Zynq UltraScale+ MPSoC采用了16nm FinFET工藝,集成了多核處理器和可編程邏輯,能夠在提高性能的同時降低功耗,這對
    發(fā)表于 11-01 16:56

    單片機(jī)有哪些中斷類型

    單片機(jī)中斷是指在單片機(jī)執(zhí)行程序的過程中,當(dāng)外部設(shè)備或內(nèi)部條件發(fā)生某個特定事件時,能夠暫停當(dāng)前正在執(zhí)行的程序,轉(zhuǎn)而去執(zhí)行一個特定的服務(wù)程序(稱為中斷服務(wù)程序或中斷處理程序),
    的頭像 發(fā)表于 10-17 18:12 ?942次閱讀

    在米爾電子MPSOC實現(xiàn)12G SDI視頻采集H.265壓縮SGMII萬兆以太網(wǎng)推流

    協(xié)議。 3.MPSoC與VCU架構(gòu)在4K UHD音視頻廣播領(lǐng)域的優(yōu)勢 高性能與低功耗的結(jié)合 :Zynq UltraScale+ MPSoC采用了16nm FinFET工藝,集成了多核處理器和可編程邏輯
    發(fā)表于 10-14 17:42

    ARM處理器的異常中斷響應(yīng)過程

    ARM處理器的異常中斷響應(yīng)是嵌入式系統(tǒng)設(shè)計中一個至關(guān)重要的環(huán)節(jié),它確保了系統(tǒng)在面對內(nèi)部或外部事件時能夠穩(wěn)定、可靠地運行。
    的頭像 發(fā)表于 09-10 11:18 ?1163次閱讀

    freertos中斷優(yōu)先級在哪設(shè)置

    FreeRTOS是一個流行的實時操作系統(tǒng),它廣泛應(yīng)用于嵌入式系統(tǒng)開發(fā)。在FreeRTOS中,中斷優(yōu)先級是一個重要的概念,因為它決定了中斷處理的順序和響應(yīng)時間。 1. 理解中斷優(yōu)先級 在
    的頭像 發(fā)表于 09-02 14:17 ?786次閱讀

    【GD32 MCU 入門教程】GD32 MCU 常見外設(shè)介紹(4)EXTI 中斷介紹

    EXTI(中斷/事件控制器)包含多個相互獨立的邊沿檢測電路并且能夠向處理器內(nèi)核產(chǎn)生中斷請求或喚醒事件。 EXTI 有三種觸發(fā)類型:上升沿觸發(fā)、下降沿觸發(fā)和任意沿觸發(fā)。 EXTI中的每一個邊沿檢測電路都可以獨立配置和屏蔽。
    的頭像 發(fā)表于 08-13 11:20 ?577次閱讀
    【GD32 MCU 入門教程】GD32 MCU 常見外設(shè)<b class='flag-5'>介紹</b>(4)EXTI <b class='flag-5'>中斷</b><b class='flag-5'>介紹</b>

    can總線中斷狀態(tài)什么意思呢?

    過程中的中斷處理機(jī)制。以下是關(guān)于CAN總線中斷狀態(tài)的詳細(xì)介紹。 CAN總線概述 1.1 CAN總線定義 CAN總線是一種基于時間分割的多主通
    的頭像 發(fā)表于 06-16 10:21 ?1934次閱讀

    RISC-V的中斷處理 中斷操作三個步驟

    中斷操作三個步驟: 1、中斷初始化 2、trap處理 3、用戶中斷處理
    的頭像 發(fā)表于 05-20 16:38 ?1397次閱讀

    如何停止或取消單片機(jī)的中斷處理

    處理器中的NVIC能夠處理多個可屏蔽中斷通道和可編程優(yōu)先級,中斷輸入請求可以是電平觸發(fā),也可以是最小的一個時鐘周期的脈沖信號。
    發(fā)表于 04-15 11:05 ?1528次閱讀
    如何停止或取消單片機(jī)的<b class='flag-5'>中斷</b><b class='flag-5'>處理</b>?
    主站蜘蛛池模板: 午夜高清福利 | 欧美中出在线 | 日日操天天射 | 成人a毛片高清视频 | 亚洲第一中文字幕 | 美女网站色免费 | 日韩精品免费一级视频 | 成人综合在线观看 | 天天搞一搞 | 久久lu| 在线视频网址免费播放 | 2021成人国产精品 | 亚洲网站在线观看 | 日日草天天干 | japanese 69hdxxxx日本| 年轻的护士3在线观看 | 日日做夜夜做 | 久久国内视频 | 又粗又硬又大久久久 | 五月婷婷俺也去开心 | 久久综合免费视频 | 日本黄色大片在线播放视频免费观看 | 欧美精品一区在线看 | 亚洲精品久久久久午夜福 | cijilu刺激 国产免费的 | 给我免费播放片黄色 | 乱人伦一区二区三区 | 香蕉久久精品 | 久久久久国产精品免费免费不卡 | 综合久色| 日韩在线网 | 免费在线观看的视频 | 伊人涩| 2018天堂视频免费观看 | 在线免费看高清视频大全 | 国模大胆一区二区三区 | 一二三区乱码一区二区三区码 | 色香天天 | 国产亚洲精品久久久极品美女 | 色人阁综合 | 亚洲天堂爱爱 |