<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	
	>
<channel>
	<title>
	「Step to UEFI (71） &#8212;&#8211; 获得 USB 设备的 PID 和 VID」的评论	</title>
	<atom:link href="https://www.lab-z.com/getpidvid/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.lab-z.com/getpidvid/</link>
	<description></description>
	<lastBuildDate>Sat, 25 Feb 2023 13:49:18 +0000</lastBuildDate>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.0.2</generator>
	<item>
		<title>
		评论者：ziv2013		</title>
		<link>https://www.lab-z.com/getpidvid/#comment-298131</link>

		<dc:creator><![CDATA[ziv2013]]></dc:creator>
		<pubDate>Sat, 25 Feb 2023 13:49:18 +0000</pubDate>
		<guid isPermaLink="false">http://www.lab-z.com/?p=3769#comment-298131</guid>

					<description><![CDATA[回复给 &lt;a href=&quot;https://www.lab-z.com/getpidvid/#comment-298129&quot;&gt;ryanly&lt;/a&gt;。

这个文章比较老了，当时在 IA32 下编译的。你重新在 X64 下编译应该可以运行（因为你的环境是 X64 ）]]></description>
			<content:encoded><![CDATA[<p>回复给 <a href="https://www.lab-z.com/getpidvid/#comment-298129">ryanly</a>。</p>
<p>这个文章比较老了，当时在 IA32 下编译的。你重新在 X64 下编译应该可以运行（因为你的环境是 X64 ）</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		评论者：ryanly		</title>
		<link>https://www.lab-z.com/getpidvid/#comment-298129</link>

		<dc:creator><![CDATA[ryanly]]></dc:creator>
		<pubDate>Sat, 25 Feb 2023 09:20:46 +0000</pubDate>
		<guid isPermaLink="false">http://www.lab-z.com/?p=3769#comment-298129</guid>

					<description><![CDATA[getpidvid.efi程序在 UEFI  SHELL X64 跑不了, 提示:
Image type IA32 is not supported by this X64 shell]]></description>
			<content:encoded><![CDATA[<p>getpidvid.efi程序在 UEFI  SHELL X64 跑不了, 提示:<br />
Image type IA32 is not supported by this X64 shell</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		评论者：zheng		</title>
		<link>https://www.lab-z.com/getpidvid/#comment-65306</link>

		<dc:creator><![CDATA[zheng]]></dc:creator>
		<pubDate>Sun, 01 Sep 2019 15:14:13 +0000</pubDate>
		<guid isPermaLink="false">http://www.lab-z.com/?p=3769#comment-65306</guid>

					<description><![CDATA[謝謝! 我後來去掃PCI Device, 的確有USB Controller 沒錯, 目前懷疑是某個usb controller protocol 沒有正確初始化,持續Debug..]]></description>
			<content:encoded><![CDATA[<p>謝謝! 我後來去掃PCI Device, 的確有USB Controller 沒錯, 目前懷疑是某個usb controller protocol 沒有正確初始化,持續Debug..</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		评论者：ziv2013		</title>
		<link>https://www.lab-z.com/getpidvid/#comment-65031</link>

		<dc:creator><![CDATA[ziv2013]]></dc:creator>
		<pubDate>Fri, 30 Aug 2019 00:18:15 +0000</pubDate>
		<guid isPermaLink="false">http://www.lab-z.com/?p=3769#comment-65031</guid>

					<description><![CDATA[回复给 &lt;a href=&quot;https://www.lab-z.com/getpidvid/#comment-64873&quot;&gt;zheng&lt;/a&gt;。

我找人问了一下，说是 Simics 可以模拟 USB  Controller ，但是怎么开需要看具体环境。建议你再找人问问。]]></description>
			<content:encoded><![CDATA[<p>回复给 <a href="https://www.lab-z.com/getpidvid/#comment-64873">zheng</a>。</p>
<p>我找人问了一下，说是 Simics 可以模拟 USB  Controller ，但是怎么开需要看具体环境。建议你再找人问问。</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		评论者：ziv2013		</title>
		<link>https://www.lab-z.com/getpidvid/#comment-64938</link>

		<dc:creator><![CDATA[ziv2013]]></dc:creator>
		<pubDate>Thu, 29 Aug 2019 01:50:55 +0000</pubDate>
		<guid isPermaLink="false">http://www.lab-z.com/?p=3769#comment-64938</guid>

					<description><![CDATA[回复给 &lt;a href=&quot;https://www.lab-z.com/getpidvid/#comment-64873&quot;&gt;zheng&lt;/a&gt;。

我找人问问哈，晚点答复你]]></description>
			<content:encoded><![CDATA[<p>回复给 <a href="https://www.lab-z.com/getpidvid/#comment-64873">zheng</a>。</p>
<p>我找人问问哈，晚点答复你</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		评论者：zheng		</title>
		<link>https://www.lab-z.com/getpidvid/#comment-64873</link>

		<dc:creator><![CDATA[zheng]]></dc:creator>
		<pubDate>Wed, 28 Aug 2019 16:10:36 +0000</pubDate>
		<guid isPermaLink="false">http://www.lab-z.com/?p=3769#comment-64873</guid>

					<description><![CDATA[回复给 &lt;a href=&quot;https://www.lab-z.com/getpidvid/#comment-64581&quot;&gt;ziv2013&lt;/a&gt;。

目前手邊沒有PS2鍵盤, 我使用
  Status = gBS-&#062;LocateHandleBuffer (
                  AllHandles, 
                  NULL, 
                  NULL,
                  &#038;HandleCount, 
                  &#038;HandleBuffer);

ProtocolsPerHandle(HandleBuffer, &#038;ProtocolBuffer, &#038;ProtocolCount);

列出所有handle下所掛的protocol GUID 以及Name
把這功能寫成Application 在Notebook 上跑可以找到UsbIo 和Controller Protocol, 寫在模擬器上Shell.c嘗試log 則都沒有Usb相關的Protocol
代表模擬器沒有USB Controller? 還是可能BIOS某些地方沒設定好呢?

謝謝]]></description>
			<content:encoded><![CDATA[<p>回复给 <a href="https://www.lab-z.com/getpidvid/#comment-64581">ziv2013</a>。</p>
<p>目前手邊沒有PS2鍵盤, 我使用<br />
  Status = gBS-&gt;LocateHandleBuffer (<br />
                  AllHandles,<br />
                  NULL,<br />
                  NULL,<br />
                  &amp;HandleCount,<br />
                  &amp;HandleBuffer);</p>
<p>ProtocolsPerHandle(HandleBuffer, &amp;ProtocolBuffer, &amp;ProtocolCount);</p>
<p>列出所有handle下所掛的protocol GUID 以及Name<br />
把這功能寫成Application 在Notebook 上跑可以找到UsbIo 和Controller Protocol, 寫在模擬器上Shell.c嘗試log 則都沒有Usb相關的Protocol<br />
代表模擬器沒有USB Controller? 還是可能BIOS某些地方沒設定好呢?</p>
<p>謝謝</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		评论者：ziv2013		</title>
		<link>https://www.lab-z.com/getpidvid/#comment-64581</link>

		<dc:creator><![CDATA[ziv2013]]></dc:creator>
		<pubDate>Mon, 26 Aug 2019 11:45:27 +0000</pubDate>
		<guid isPermaLink="false">http://www.lab-z.com/?p=3769#comment-64581</guid>

					<description><![CDATA[回复给 &lt;a href=&quot;https://www.lab-z.com/getpidvid/#comment-64570&quot;&gt;zheng&lt;/a&gt;。

这种模拟器应该能支持其他形式的键盘吧，如果能输入命令可以试试检查有没有 usb controller]]></description>
			<content:encoded><![CDATA[<p>回复给 <a href="https://www.lab-z.com/getpidvid/#comment-64570">zheng</a>。</p>
<p>这种模拟器应该能支持其他形式的键盘吧，如果能输入命令可以试试检查有没有 usb controller</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		评论者：zheng		</title>
		<link>https://www.lab-z.com/getpidvid/#comment-64570</link>

		<dc:creator><![CDATA[zheng]]></dc:creator>
		<pubDate>Mon, 26 Aug 2019 10:18:20 +0000</pubDate>
		<guid isPermaLink="false">http://www.lab-z.com/?p=3769#comment-64570</guid>

					<description><![CDATA[回复给 &lt;a href=&quot;https://www.lab-z.com/getpidvid/#comment-64392&quot;&gt;ziv2013&lt;/a&gt;。

是的, 用的是Simics模擬器, 但不確定是模擬器本身沒有Usb controller 還是Bios Code 問題, 目前就開到shell, keyboard無法輸入, 所以用cmd drivers去檢查
目前想法是Shell.c 去list 所有的handle 以及 protocol
還是有其他的方式去驗證呢?]]></description>
			<content:encoded><![CDATA[<p>回复给 <a href="https://www.lab-z.com/getpidvid/#comment-64392">ziv2013</a>。</p>
<p>是的, 用的是Simics模擬器, 但不確定是模擬器本身沒有Usb controller 還是Bios Code 問題, 目前就開到shell, keyboard無法輸入, 所以用cmd drivers去檢查<br />
目前想法是Shell.c 去list 所有的handle 以及 protocol<br />
還是有其他的方式去驗證呢?</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		评论者：ziv2013		</title>
		<link>https://www.lab-z.com/getpidvid/#comment-64392</link>

		<dc:creator><![CDATA[ziv2013]]></dc:creator>
		<pubDate>Sun, 25 Aug 2019 03:07:42 +0000</pubDate>
		<guid isPermaLink="false">http://www.lab-z.com/?p=3769#comment-64392</guid>

					<description><![CDATA[回复给 &lt;a href=&quot;https://www.lab-z.com/getpidvid/#comment-64198&quot;&gt;zheng&lt;/a&gt;。

你说的模拟的板子是什么意思？是模拟器吗？模拟器不一定有 USBIO 这个Protocol]]></description>
			<content:encoded><![CDATA[<p>回复给 <a href="https://www.lab-z.com/getpidvid/#comment-64198">zheng</a>。</p>
<p>你说的模拟的板子是什么意思？是模拟器吗？模拟器不一定有 USBIO 这个Protocol</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		评论者：zheng		</title>
		<link>https://www.lab-z.com/getpidvid/#comment-64198</link>

		<dc:creator><![CDATA[zheng]]></dc:creator>
		<pubDate>Fri, 23 Aug 2019 09:01:50 +0000</pubDate>
		<guid isPermaLink="false">http://www.lab-z.com/?p=3769#comment-64198</guid>

					<description><![CDATA[你好, 我在模拟的板子, 最后会boot到shell envorinment
Edk2\ShellPkg\Application\Shell\Shell.c
目前问题是在Shell环境键盘没有回应
我参考你的方式在Shell.c UefiMain 尝试去LocateHandleBuffer
结果发现Get USBIO count fail
追到最后发现
CoreLocateHandleBuffer
CoreLocateHandle

    //
    // Look up the protocol entry and set the head pointer
    //
    Position.ProtEntry = CoreFindProtocolEntry (Protocol, FALSE);
    if (Position.ProtEntry == NULL) {
      Status = EFI_NOT_FOUND;
      break;
    }
这段回传 EFI_NOT_FOUND;
看起来是mProtocolDatabase 里面找不到gEfiUsbIoProtocolGuid
不太理解为什么会找不到, gEfiUsbIoProtocolGuid前面应该很多地方有去Locate
不知道大大有没有什么想法or方向]]></description>
			<content:encoded><![CDATA[<p>你好, 我在模拟的板子, 最后会boot到shell envorinment<br />
Edk2\ShellPkg\Application\Shell\Shell.c<br />
目前问题是在Shell环境键盘没有回应<br />
我参考你的方式在Shell.c UefiMain 尝试去LocateHandleBuffer<br />
结果发现Get USBIO count fail<br />
追到最后发现<br />
CoreLocateHandleBuffer<br />
CoreLocateHandle</p>
<p>    //<br />
    // Look up the protocol entry and set the head pointer<br />
    //<br />
    Position.ProtEntry = CoreFindProtocolEntry (Protocol, FALSE);<br />
    if (Position.ProtEntry == NULL) {<br />
      Status = EFI_NOT_FOUND;<br />
      break;<br />
    }<br />
这段回传 EFI_NOT_FOUND;<br />
看起来是mProtocolDatabase 里面找不到gEfiUsbIoProtocolGuid<br />
不太理解为什么会找不到, gEfiUsbIoProtocolGuid前面应该很多地方有去Locate<br />
不知道大大有没有什么想法or方向</p>
]]></content:encoded>
		
			</item>
	</channel>
</rss>
