IP Library Granted Patent US 9,665,526
Granted Patent B2
US 9,665,526 · App. 13/997,756 · Granted May 30, 2017

Implementing IO expansion cards

Inventor: Sundeep Raniwala (Hillsboro, OR)
Assignee: Intel Corporation
G06F13/4081Y02B60/1228Y02B60/1235
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,665,526
App. No.
13/997,756
Granted
May 30, 2017
Kind
B2
Abstract

Methods and systems may provide for an expansion card including one or more peripheral ports, a connection edge having a first bus interface and a second bus interface, and an input output (IO) controller coupled to the first bus interface and at least one of the one or more peripheral ports. The expansion card can also include an embedded controller coupled to the IO controller and the second bus interface, wherein the embedded controller has logic to receive a general purpose input output (GPIO) signal from the IO controller. The logic may also notify an off-card host device of the GPIO signal via the second bus interface. In one example, the IO controller is a Thunderbolt controller, the first bus is a PCI-e bus, and the second bus is an SMBus.

Claims (52)

1. A computer implemented method comprising:

transferring a general purpose input output (GPIO) signal from an input output (IO) controller of a PCI-e compliant expansion card to an embedded controller of the expansion card, wherein the GPIO signal includes at least one of a power management signal and a hot plug signal;

using the embedded controller to translate the GPIO signal into a notification command;

issuing the notification command to a host device via a system management bus interface, wherein the notification command complies with a protocol associated with the system management bus interface and instructs the host device to issue a system management interrupt;

transferring data from the host device to the embedded controller via the system management bus interface; and

using the embedded controller to generate one or more additional GPIO signals based on the data.

2. The method of claim 1 , wherein the notification command is issued to the host device in response to receiving the GPIO signal.

3. The method of claim 1 , further including transferring a polling command from the host device to the embedded controller via the system management bus interface, wherein the notification command is issued to the host device in response to the polling command.

4. The method of claim 1 , wherein the GPIO signal is transferred from a Thunderbolt controller to the embedded controller.

5. A non-transitory computer readable storage medium comprising a set of instructions which, if executed by a processor, cause a system to:

receive a general purpose input output (GPIO) signal from an input output (IO) controller of an expansion card; and

notify an off-card host device of the GPIO signal via a system management bus interface of the expansion card.

6. The non-transitory medium of claim 5 , wherein the instructions, if executed, cause a system to:

translate the GPIO signal into a notification command based on a protocol associated with the system management bus; and

issue the notification command to the host device via the system management bus interface.

7. The non-transitory medium of claim 6 , wherein the notification command is to be issued to the host device in response to receiving the GPIO signal.

8. The non-transitory medium of claim 6 , wherein the instructions, if executed, cause a system to receive a polling command from the host device via the system management bus interface, and wherein the notification command is to be issued to the host device in response to the polling command.

9. The non-transitory medium of claim 6 , wherein the notification command is to instruct the host device to issue a system management interrupt.

10. The non-transitory medium of claim 5 , wherein the instructions, if executed, cause a system to:

receive data from the host device via the system management bus interface; and

generate one or more additional GPIO signals based on the data.

11. The non-transitory medium of claim 5 , wherein at least one of a power management signal and a hot plug signal are to be received from the IO controller.

12. The non-transitory medium of claim 5 , wherein the GPIO signal is to be received from a Thunderbolt controller.

13. A system comprising:

a motherboard including an expansion connector, a host device, a first bus coupled to the expansion connector and the host device, and a second bus coupled to the expansion connector and the host device; and

an expansion card including one or more peripheral ports, a connection edge having a first bus interface and a second bus interface, an input output (IO) controller coupled to the first bus interface and at least one of the one or more peripheral ports, and an embedded controller coupled to the IO controller and the second bus interface, wherein the embedded controller has logic to,

receive a general purpose input output (GPIO) signal from the IO controller, and

notify the host device of the GPIO signal via the second bus interface, wherein the second bus includes a system management bus.

14. The system of claim 13 , wherein the logic is to,

translate the GPIO signal into a notification command based on a protocol associated with the system management bus, and

issue the notification command to the host device via the system management bus.

15. The system of claim 14 , wherein the notification command is to be issued to the host device in response to receiving the GPIO signal.

16. The system of claim 14 , wherein the host device is to issue a polling command to the embedded controller and the notification command is to be issued to the host device in response to receiving the polling command.

17. The system of claim 14 , wherein the notification command is to instruct the host device to issue a system management interrupt.

18. The system of claim 13 , wherein the logic is to,

receive data from the host device via the system management bus, and

generate one or more additional GPIO signals based on the data.

19. The system of claim 13 , wherein at least one of a power management signal and a hot plug signal are to be received from the IO controller.

20. The system of claim 13 , wherein the IO controller includes a Thunderbolt controller.

21. The system of claim 13 , wherein the expansion connector includes a PCI-e connector having a PCI-e bus interface, and the connection edge of the expansion card is a PCI-e compliant connection edge.

22. An expansion card comprising:

one or more peripheral ports;

a connection edge including a first bus interface and a second bus interface;

an input output (IO) controller coupled to the first bus interface and at least one of the one or more peripheral ports; and

an embedded controller coupled to the IO controller and the second bus interface, wherein the embedded controller has logic to,

receive a general purpose input output (GPIO) signal from the IO controller, and

notify an off-card host device of the GPIO signal via the second bus interface, wherein the second bus interface includes a system management bus interface.

23. The expansion card of claim 22 , wherein the logic is to,

translate the GPIO signal into a notification command based on a protocol associated with the system management bus, and

issue the notification command to the host device via the system management bus.

24. The expansion card of claim 23 , wherein the notification command is to be issued to the host device in response to receiving the GPIO signal.

25. The expansion card of claim 23 , wherein the logic is to receive a polling command from the host device via the system management bus, and wherein the notification command is to be issued to the host device in response to receiving the polling command.

Continuity (1)
Related Publication 20140229649A1 · Aug 14, 2014