USB电力输送中的隧道传送的制作方法

文档序号:11142163阅读:400来源:国知局
USB电力输送中的隧道传送的制造方法与工艺
电子系统诸如计算机通常包括由于各种原因连接到计算机的外围设备和计算机相关的器件。例如,电源适配器可以耦合到计算机以向计算机提供操作电力。然而,可能的是,不是由计算机的制造商制造的电源适配器用于连接到计算机。不可信的电源适配器可能不能安全地向计算机提供充电电源。技术实现要素:在一个实施例中,一种电子系统包括计算机和电源适配器。计算机包括耦合到计算机电力输送(PD)控制器的嵌入式控制器(EC)。电源适配器包括连接到从设备的电源适配器PD控制器,并且经配置通过通信链路与计算机通信。通信链路包括信号,通过所述信号在计算机PD控制器和电源适配器PD控制器之间进行电力协商。计算机PD控制器经配置接收来自EC的命令,并且响应于所接收到的命令,生成并通过通信链路传送通用串行总线(USB)供应商定义消息(VDM)报头和包括传送命令的有效载荷的信息的一个或更多个供应商定义对象(VDO)。电源适配器PD控制器经配置通过以下方式响应于一个或更多个VDO:通过改变到连接至电源适配器PD控制器的从设备的输出信号,将电源适配器PD控制器的通用输入/输出(GPIO)引脚的状态报告回计算机PD控制器,或者改变GPIO引脚的状态。在另一实施例中,计算设备包括EC和计算机PD控制器,计算机PD控制器耦合到EC并且经配置通过通信链路与适配器中的PD控制器通信,从而协商PD控制器之间的电力分配。计算机PD控制器经配置从EC接收命令,并且响应于所接收到的命令,以生成并且经过通信链路隧道传送(tunnel)通用串行总线(USB)供应商定义消息(VDM)报头和包括来自所接收到的命令的信息的一个或更多个供应商定义对象(VDO),从而与耦合到适配器PD控制器的从设备通信。计算机PD控制器还经配置经过通信链路从适配器PD控制器接收指示电源适配器PD控制器的通用输入/输出(GPIO)引脚的逻辑状态的状态消息。在又一实施例中,一种方法包括从计算机中的嵌入式控制器向计算机中的PD控制器发送唤醒命令,以唤醒适配器中的从设备。该方法进一步包括由计算机PD控制器将命令隧道传送到适配器中的PD控制器,以使从设备唤醒,由电源适配器PD控制器将隧道传送的命令中继到从设备,并且唤醒从设备。附图说明图1示出根据各种示例的系统。图2示出根据各种示例的方法,通过该方法,计算机中的嵌入式控制器能够将命令隧道传送到电源适配器以唤醒电源适配器中的从设备。图3示出根据各种示例的方法,通过该方法,嵌入式控制器能够将命令隧道传送到电源适配器以认证电源适配器中的从设备。图4示出一种方法,通过该方法,嵌入式控制器能够唤醒并认证在计算机中的本地从设备。图5示出适于实施本文所述的各种控制器的硬件体系结构。具体实施方式以下描述允许计算机中的嵌入式控制器使命令通过USB电力输送接口隧道传送到适配器(例如,电源适配器)的实施例。隧道传送的命令可以执行各种功能中的任何功能,诸如唤醒电源适配器中的从设备,认证从设备(并且因此认证适配器)。图1示出包括耦合到计算设备诸如计算机150的电源适配器110的电子系统100的示例。在该示例中,计算机150是便携式计算设备,诸如笔记本计算机、平板计算机、智能电话、个人数字助理(PDA)或任何其他类型的便携式计算设备。在其他示例中,计算机150可以是台式计算机。电源适配器110接收交流(AC)电压,并且向计算机150提供一个或更多个直流(DC)电压,以向计算机提供操作电力。操作电力通过通信链路130从电源适配器110提供到计算机150。在该示例中,计算机150包括通过总线158耦合到计算机电力输送(PD)控制器155的嵌入式控制器(EC)160。从设备170也可以包括在计算机中并且如虚线所示地耦合到计算机PD控制器155或EC160。电源适配器110还包括电源适配器PD控制器115。电源适配器PD控制器115通过总线117耦合到从设备120,并且还可以提供一个或更多个通用输入/输出(GPIO)引脚116。在一个示例中,电源适配器110可以是用于计算机150的对接站的一部分,并且GPIO引脚可以用于指示用户何时想要脱离计算机。在这种情形下,用户可以按下改变GPIO引脚116的逻辑状态的按钮。通过在PD控制器115和155之间隧道传送命令,计算机150中的EC160能够读取GPIO引脚的状态,并且因此知道用户期望何时脱离计算机。在一个示例中,电源适配器PD控制器可以通过通信链路将消息隧道传送到计算机PD控制器,从而指示电源适配器PD控制器的GPIO引脚116已经改变状态。计算机PD控制器可以通过断言计算机PD控制器的GPIO引脚159做出响应,以向EC160发信号通知事件已经发生(事件是电源适配器的PD控制器115的GPIO引脚116的状态变化)。将电源适配器PD控制器115和从设备120以及EC160分别耦合到计算机PD控制器155的总线117和158可以是任何合适类型的总线。在一个示例中,此类总线可以被实施为系统管理总线(SMBus)、内部集成电路(I2C),从数据队列(SDQ)总线、高速数据队列(HDQ)、通用异步接收器/发送器(UART)或串行外围接口(SPI)。总线117和158可以实施相同的总线协议或不同的协议。电源适配器110和计算机150之间的通信链路130包括多条电线,其中电线中的一些电线可以传输数据,而其他电线传输电力。在一个示例中,通信链路符合USB类型-C规范(例如,USB类型-C规范1.0)。下面的表1提供了USB类型-C通信链路的各种引脚的描述。USB类型-C通信引脚分布使得电缆两端的连接器是可逆的,不同于USB标准的先前版本。表1.USB类型-C连接器引脚分布通信链路130中的信号线中的一条信号线是通信信道(CC)信号线。CC信号线能够分别由电源适配器110和计算机150的PD控制器115和155使用,以协商电力分配。在一个示例中,使用CC信号线在PD控制器115、155之间交换电力信息,使得计算机150和电源适配器115能够商定电源适配器110将向计算机150供应多少电力。一些电源适配器115可以经配置根据计算机的需要提供在电力分配范围内(例如,45瓦、60瓦、100瓦)的多种电力分配中的任何电力分配。从设备120、170能够为任何期望的应用所期望的任何合适类型的设备。在一种实施中,每个从设备120、170是认证设备,诸如由德州仪器公司(TexasInstrumentsInc)提供的具有SDQ接口的基于BQ26100SHA-1/HMAC的安全和认证集成电路。该设备提供认证方法。当在电源适配器110中使用时,EC160能够使用BQ26100来认证电源适配器110,从而确保仅认证的电源适配器被启用以提供给计算机150,或者未被认证的电源适配器由计算机150在它们能够提供给计算机多少电力方面进行限制。BQ26100通过单线双向串行接口(SDQ)总线117与PD控制器115通信。计算机150还可以包括BQ26100,BQ26100能够用于计算对认证质询字符串的正确响应。该计算能够非常复杂,因此在一些情况下,将计算卸载到诸如BQ26100的外部组件可以是有益的。根据所公开的实施例,PD控制器115、155能够用于在EC160和连接到电源适配器PD控制器115的从设备120(即,电源适配器中的从设备)之间“隧道传送”命令和数据。隧道传送此类信息指的是使用一种协议或接口来发送信息,这将通过不同的协议或接口在下游提供。如下所述,命令被定义为使用USB电力输送通信提供发送供应商定义消息(VDM)分组中的信息以及描述符的方式。描述符使得此类分组的接收器能够使用不同的协议来中继信息。例如,可以提取来自VDM分组的字节并使用I2C或SMBus协议将其传送到另一设备,诸如从设备120、170。其他协议,诸如SDQ、HDQ、UART或SPI也可以用适当的描述符来支持。本文描述的接口在一定程度上将USBPD控制器与信息交易的细节解耦,以向用户提供必要的灵活性,而不需要(可能昂贵的)自定义USBPD控制器本身。因此,EC能够有效地与在电源适配器110中的从设备120通信。在下面提供了一组合适的SMBus命令(对于其中总线158是SMBus接口的示例)和供应商定义消息(VDM)命令以实施该系统。以下描述对使用VDM的PD控制器115和155之间的消息传送进行了描述。VDM分组结构包括前导码,随后是分组开始序列,随后是消息报头(其包含分组的长度),随后是VDM报头,随后是一个或更多个供应商定义对象(VDO)。当经过信道传送时,可以附加32位循环冗余校验(CRC),并且可以使用4b5b编码来对位(以消息报头开始)进行编码,并且最后可以附加5位分组结束序列。下面的表2示出VDM报头的示例。表2.用于认证的VDM报头供应商标识符(VID)是分配给发出分组的PD控制器的供应商的标识符。上面的示例定义了八种类型的分组请求。认证开始/停止(VDM类型00h)通过EC160启动旨在针对从设备120的认证过程。也就是说,计算机150中的EC160开始一种方法,通过该方法,电源适配器110中的从设备120将得到计算机的认证。认证质询(VDM类型01h)传递认证质询值的一部分,认证质询部分2(VDM类型02h)传递认证质询值的剩余部分。VDM类型03h用于认证响应。认证响应VDM返回对由认证质询VDM启动的认证质询的响应。VDM类型04h是计算机PD控制器155对电源适配器110的增加其对计算机的电力分配的请求,并且VDM类型05h是一种消息,通过该消息计算机PD控制器155请求电源适配器PD控制器115退出增加电力模式。VDM类型06h和07h涉及电源适配器PD控制器115上的GPIO引脚116。GPIO_StatusVDM类型(06h)由计算机PD控制器155进行,以读取电源适配器PD控制器的GPIO引脚116的状态,并且GPIO_Write(VDM类型07h)允许计算机PD控制器155改变GPIO引脚116的逻辑状态。以上指出的VDM类型中的一些还包括一个或更多个VDO,一个或更多个VDO的示例在下面描述并且在表3-13中定义。例如,表3定义由电源适配器PD控制器115响应于来自计算机PD控制器155的GPIO_StatusVDM而提供的VDO中的位。在该示例中,在电源适配器PD控制器115上提供两个GPIO引脚116(GPIO)和GPIO1),并且在VDO中提供每个GPIO引脚的状态。位30和31对GPIO0的状态进行编码,并且位30和31对GPIO1的状态进行编码。表3.用于GPIO_Status非结构化的VDM的VDO表4定义了在与使用GPIO_WriteVDM类型改变GPIO引脚的状态相关的VDO中的位。每个GPIO引脚能够单独写为逻辑高、逻辑低或置于高阻抗(高z)状态中。位30和31用于设置GPIO0的状态,并且位28和29用于设置GPIO1的状态。表4.用于GPIO_Write非结构化VDM的VDO,在这种情况下仅1个VDO下面的表5提供了用于认证开始/停止VDM的VDO的位的定义。该VDO包括各种字段。到外部芯片字段的接口(位29至31)能够用于指定待使用的电接口的类型,通过该电接口执行针对PD控制器本地的从设备(例如,连接到计算机PD控制器155的从设备170)的认证方法。该接口是否用于中继VDM中包含的信息或者USB电力输送通信是否用于通过通信链路130中继VDM由位16指定。从设备的地址能够在位0至15中指定并且位28指定是否有从地址或者从地址是否在位0至15中指定。特殊信号极性位(位27)能够用于将从设备120置于休眠模式或者将设备从休眠模式唤醒,并且在VDM类型为00h时使用。该保持被应用到用于I2C或SMBus或单线总线(例如,SDQ)的SDA。位24至26可用于指定由位22至23指定的信号线的保持时间。表5.用于认证开始/停止非结构化VDM的VDO能够从EC160向待认证的设备诸如电源适配器110中的从设备120提供多字节质询仅使用一次随机数(nonce)。能够通过表6至11中所示的VDO在PD控制器之间提供多字节质询仅使用一次随机数(例如,其可以是随机数字)。可需要多个VDO,并在下面的示例中示出了6个VDO(VDO#1至VDO#6)。在这六个VDO中能够提供22字节的质询仅使用一次随机数,但是如下所述,甚至更长的质询仅使用一次随机数也是可能的。表6中所示的VDO(VDO#1)包括上述相同字段中的一些,诸如位29至31(到外部芯片的接口字段)、位28(是否包括从地址)以及位0至15,以包括从地址(如果提供了一个)。如果没有提供从地址,则使用位0至15来提供质询仅使用一次随机数的头两个字节。位23至27是5位值,该5位值指定要为以下VDO中的质询仅使用一次随机数所提取的字节的数目。字节的顺序可以首先是最低有效字节。位20能够用于指定位8至15包含质询仅使用一次随机数中的第n个字节,并且在质询仅使用一次随机数的长度是否大于预定极限(例如,22)的情况下使用。表6.用于认证质询和认证质询部分2的VDO#1表7、8、9和10定义了在表6的VDO之后的VDO的位,并包括质询仅使用一次随机数的字节。在该示例中,质询仅使用一次随机数的字节3至6在VDO#2中。质询仅使用一次随机数的字节7至10在VDO#3中。质询仅使用一次随机数的字节11至14在VDO#4中。质询仅使用一次随机数的字节15至18在VDO#5中。质询仅使用一次随机数的字节19至22在VDO#6中。表7.用于认证质询非结构化VDM的VDO#2位描述B31..24字节3B23..16字节4B15..8字节5B7..0字节6表8.用于认证质询非结构化VDM的VDO#3表9.用于认证质询非结构化VDM的VDO#4位描述B31..24字节11B23..16字节12B15..8字节13B7..0字节14表10.用于认证质询非结构化VDM的VDO#5位描述B31..24字节15B23..16字节16B15..8字节17B7..0字节18表11.用于认证质询非结构化VDM的VDO#6位描述B31..24字节19B23..16字节20B15..8字节21B7..0字节22表12提供了VDO的示例,该示例提供认证响应。位29至31提供响应类型。值000b指示从设备未提供有效的响应。值001b指示从设备完成了确认。值010b指示接收到否定确认,并且值011b指示接收到某种类型的错误代码。位28指示位0至15是否包括从地址或质询响应的头两个字节。位23至27提供5位值,该5位值指定要为针对错误代码的接收自从设备的任何数据所提取的字节的数目。字节的顺序可以首先是最低有效字节。位20能够用于指定位8至15包含错误代码值中的第n个字节,并且在错误代码的长度是否大于预定极限(例如,22)的情况下使用。表12.用于认证响应非结构化VDM的VDO#1根据错误代码的长度数目包括附加的VDO。表13示出了包括错误代码的字节3至6的下一个VDO(VDO#2)。可以包括以及需要附加的VDO,并且附加的VDO通常遵循与表8至11相同的格式。表13.用于认证响应非结构化VDM的VDO#2位描述B31..24字节3B23..16字节4B15..8字节5B7..0字节6以下讨论提供了从EC160到计算机PD控制器155的命令的示例。在一个示例中,EC160通过是SMBus(或I2C)接口的总线158与计算机PD控制器155通信。从EC160到USBPD控制器155的SMBus命令的位字段可以具有与上述VDM分组的位字段相同的定义,因此不再在此重复。存在可用于使得经过通信链路130能够进行隧道传送的多个命令。认证开始/停止能够用于唤醒从设备。然后EC160能够根据上述格式填入VDM_PAYLOAD_TX,以使信号由PD控制器115、155使用指定的外部接口发送。能够由EC160向PD控制器155发出各种命令。此类命令的示例包括STATUS_ALERT、STATUS_OTHER、STATUS_OTHER_MASK、STATUS_ALERT_MASK、GPIO_STATUS、GPIO_WRITE、AUTHENTICATESTART/STOP、VDM_PAYLOAD_RX、VDM_PAYLOAD_TX、GENERICWRITE和GENERICREAD。以下对这些命令的描述和对特定位的参考仅仅是说明性的-特定位能够不同于下面所述的特定位。STATUS_ALERT命令(命令代码02h)是读取/写入命令,并且可以具有命令代码02h。当发生VDM_PAYLOAD_RX命令(见下文)并且该命令包含新数据时,可以断言该命令的位11。位15可以是StatusOther位,当STATUS_OTHER命令中的未屏蔽位已经被断言时,StatusOther位被断言。所述位通过写入1进行清除。STATUS_OTHER命令(命令代码0Eh)是读取/写入命令。位0是在VDM_PAYLOAD_TX、GENERICWRITE或AUTHENTICATESTART/STOP中的数据已成功传送时被断言的CommandSendComplete位。位1是CommandSendFailed位,如果计算机PD控制器155不能成功传送在VDM_PAYLOAD_TX、GENERICWRITE或AUTHENTICATESTART/STOP命令中的数据,则CommandSendFailed位被断言。位31是当新数据通过GENERICREAD命令可用时被断言的GenericReadAvailable位。将位写为1以将它们清除。STATUS_OTHER_MASK命令(命令代码0Fh)允许STATUS_OTHER命令中的位被屏蔽,以使它们不影响STATUS_ALERT命令的StatusOther位(位15)。STATUS_ALERT_MASK命令(命令代码2Eh)允许STATUS_ALERT命令中的位被屏蔽,使得它们不影响ALRT引脚。GPIO_STATUS命令(命令代码41h)允许EC160读取电源适配器110中的电源适配器PD控制器115的GPIO引脚116的状态。GPIO_WRITE命令(命令代码42h)允许EC160改变电源适配器110中的电源适配器PD控制器115的GPIO引脚116的状态。AUTHENTICATESTART/STOP命令(命令代码46h)允许EC160启动针对电源适配器110中的从设备的认证过程。位31:29可以用于指定要在电源适配器PD控制器115上使用的以执行认证的接口。位28可以用于指示是否包括从地址,并且位15:0可以指定从地址(如果包括)。位27、位26:24、位23:22和位16可以分别指示信号极性、保持定时、特殊信号线选择信息和本地从通信信息,如先前关于表5的认证开始/停止VDM所述。通过关于由PD控制器155、115经过通信链路130通信的VDM来相同或类似地定义来自EC的AUTHENTICATESTART/STOP命令中的位字段,使得命令的隧道传送相对简单。VDM_PAYLOAD_RX命令(命令代码49h)是只读命令,其包含在所接收的最后一个VDM分组中的数据。VDM_PAYLOAD_TX命令(命令代码4Ah)是能够用EC160所期望的任何数据来填充的读/写块命令。例如,置于该命令中的数据能够与针对VDM分组描述的隧道传送命令相同地格式化。例如,GENERICWRITE命令(命令代码4Bh)是可以包括多达24个字节的读/写块命令。下面的表14提供了该命令的位定义的示例。表14.GENERICWRITECOMMAND例如,GENERICREAD命令(命令代码4Ch)是也可以包括多达24个字节的读/写块命令。下面的表15提供了该命令的位定义的示例。表15.GENERICWRITECOMMAND图2至图4示出可在电子系统100上实施的各种方法。在一些实施例中,从设备120、170可以在执行所请求的动作之后自动转换到睡眠(较低功率)模式。因此,为使从设备执行新的动作,首先唤醒从设备。图2示出一种方法,通过该方法,EC160能够唤醒在电源适配器110中的从设备120。通常,EC100经由总线158(例如,SMBus)向计算机PD控制器155发送命令,该命令包含EC160想要发送到电源适配器中的从设备120的命令。计算机PD控制器155使用USBPDVDM分组将该命令中继到电源适配器PD控制器115,电源适配器PD控制器115继而通过总线117(例如,1-wire接口协议)将命令中继到电源适配器中的本地从设备120。在各种实施例中,此类VDM的格式使得电源适配器PD控制器115能够容易地将位中继到从设备120。能够以所示的顺序或以不同的顺序执行图2所示的操作。进一步地,可以并行地而不是顺序地执行操作中的两个或更多个。在202处,EC160发送旨在针对电源适配器的从设备120的唤醒命令。使用上面详细描述的VDM_PAYLOAD_TX命令(命令代码4Ah)将唤醒命令提供给计算机PD控制器155。VDM_PAYLOAD_TX命令的特定内容可以是到具体从设备的唤醒命令所需的特定位,并且因此是专用的。在204处,计算机PD控制器155生成VDM分组,以将唤醒命令隧道传送到电源适配器PD控制器115。在206处,计算机PD控制器155还将STATUS_OTHER命令发送回EC160,其中CommandSendComplete(位0)被断言,以向EC160指示唤醒命令被成功地隧道传送到电源适配器PD控制器115。EC160可以在相对于从设备120采取任何进一步的动作之前等待预定的一段时间,以给予从设备足够的时间来完成其唤醒过程。在208处,电源适配器PD控制器115将唤醒命令中继到电源适配器从设备120。在210处,唤醒从设备120并且准备好用于进行附加操作,诸如执行认证过程。在一些实施例中,从设备120由EC160认证,从而认证电源适配器110。图3示出一种方法的示例,通过该方法,EC160认证电源适配器中的从设备120。图3所示的操作能够以所示的顺序或以不同的顺序来执行。进一步地,可以并行地而不是顺序地执行操作中的两个或更多个。在302处,EC160使用VDM_PAYLOAD_TX命令向计算机PD控制器155发送仅使用一次随机数命令。仅使用一次随机数命令可以包括由从设备针对认证过程使用的值。例如,该值可以是计数器或一天中的时间或频繁改变的任何其他值。在304处,计算机PD控制器155使用VDM分组将仅使用一次随机数命令隧道传送到电源适配器PD控制器。计算机PD控制器还可以发出STATUS_OTHER命令,其中CommandSendComplete位(位0)被断言,以指示仅使用一次随机数命令在PD控制器之间成功地转移。在306处,电源适配器控制器通过总线117将仅使用一次随机数命令中继到从设备120,并且从设备做出响应(诸如,通过在308处生成在认证过程期间使用的随机数字)。在310处,在预定的等待时段(以允许从设备有足够的时间执行仅使用一次随机数命令)之后,EC使用VDM_PAYLOAD_TX命令(读取命令是VDM_PAYLOAD_TX命令的有效载荷)向计算机PD控制器发送读取命令。在312处,计算机PD控制器155将读取命令隧道传送到电源适配器PD控制器115,电源适配器PD控制器115继而将读取命令转发到从设备120。在314处,电源适配器PD控制器115读取来自从设备的随机数字,并使用VDM分组将响应隧道传送回计算机PD控制器155。隧道传送的响应包括由从设备120生成的随机数字。在316处,EC向计算机PD控制器155发送VDM_PAYLOAD_RX命令,以读取随机数字的值。EC160在检查来自从设备的随机数字时认证从设备120。图4示出计算机150中的EC160能够如何经由计算机PD控制器155与其本地从设备170通信的示例。EC160经由总线158(例如,SMBus)向计算机PD控制器155发送命令,该命令包含EC想要发送到其本地从设备170的命令。计算机PD控制器155从命令提取字节,并且诸如通过在PD控制器155和从设备170之间使用1-wire协议将所提取的字节中继到从设备170。EC160和计算机PD控制器155之间的命令的格式使得计算机PD控制器155能够容易地将位中继到从设备。图4所示的操作能够以所示的顺序或以不同的顺序执行。进一步地,可以并行地而不是顺序地执行操作中的两个或更多个。在402处,EC使用其中位16被断言的AUTHENTICATESTART/STOP命令(命令代码46h)向计算机从设备170发送唤醒命令。如上所述,位16指定命令将被发送到本地从设备170,而不是隧道传送到电源适配器中的PD控制器115。在404处,计算机PD控制器155根据位16将唤醒命令中继到本地从设备170。在406处,唤醒从设备170。在408处,EC然后向计算机PD控制器155发送旨在用于从设备170的其中Blk0:位16被断言的GENERICWRITE命令,以向从设备提供随机命令。在410处,计算机PD控制器155将随机命令中继到从设备170,并且该从设备执行该命令。在412处,EC160然后使用其中Blk0:位16被断言的GENERICWRITE命令发送旨在用于本地从设备170的读取命令,以使得读取命令被提供给从设备170。在414处,计算机PD控制器155将读取命令中继到从设备,并且从设备将响应发送回PD控制器。在416处,作为认证过程的一部分,EC发出GENERICREAD命令以读取由从设备170返回的响应。图5示出能够被实施用于EC160、电源适配器PD控制器115和计算机PD控制器155中的任一个或全部的体系结构500。说明性的体系结构包括控制逻辑502,控制逻辑502可以是微处理器、微控制器、状态机或适于实施本文描述的操作的任何其他类型的硬件。控制逻辑502可以具有一个或更多个GPIO信号,并且可以耦合到各种接口,诸如接口504和506。接口504、506可以用于实施到从设备120、170的接口,PD控制器之间的接口和/或EC160和计算机PD控制器155之间的接口。在权利要求的保护范围内,可以在所描述的实施例中进行修改,并且其他实施例是可能的。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1