IP Library Granted Patent US 8,214,544
Granted Patent B2
US 8,214,544 · App. 12/827,101 · Granted Jul 3, 2012

Register access protocol

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 8,214,544
App. No.
12/827,101
Granted
Jul 3, 2012
Kind
B2
Abstract

A system and a method are disclosed for allowing a host device to communicate with an accessory device using a lightweight communications protocol. A communications link is first established between the connected accessory and host device. The host device sends a request for a register map file (RMF) to the accessory device. A RMF identifies registers for elements of the accessory device. The accessory device sends the RMF to host device, responsive to the request and the host device maps the RMF to interface with a higher level language such as C++ or JavaScript, allowing the host to act on the register mapping. Such interaction can be handled at the driver layer of an operating system, the application framework layer or the application layer. This permits both a layered service model and a fine-grant access at the application layer of the host device.

Claims (39)

1. A computer implemented method executable by host device for communicating with a connected accessory device, the method comprising:

establishing a communications link with the connected accessory device;

sending an interrogation request to the accessory device, the request being performed via register read/write commands and requesting a register map file;

receiving a register map file responsive to the interrogation request, the register map file identifying registers for elements of the accessory device; and

mapping the register map file, allowing one or more high level programming languages to interface with the registers comprising the register map file.

2. The method of claim 1 , wherein the register map file comprises a file that maps virtual I/O space for elements of an accessory device.

3. The method of claim 1 , wherein the received register map file is mapped using a universal service.

4. The method of claim 1 , wherein the received register map file is mapped using a JavaScript compiler.

5. The method of claim 1 , wherein the accessory device comprises a computing accessory and the host device comprises a computing device.

6. The method of claim 1 , wherein the computing accessory comprises one of a physical accessory or a software accessory.

7. A computer readable storage medium, storing instructions thereon, the instructions when executed by a processor cause the processor to:

communicatively couple with the host device;

send an interrogation request to the accessory device, the request being performed via register read/write commands and requesting a register map file;

receive a register map file responsive to the interrogation request, the register map file identifying registers for elements of an accessory device; and

map the register map file, allowing one or more high level programming languages to interface with the registers comprising the register map file.

8. The computer readable storage medium of claim 7 , wherein the register map file comprises a file that maps virtual I/O space for elements of an accessory device.

9. The computer readable storage medium of claim 7 , wherein the received register map file is mapped using a universal service.

10. The computer readable storage medium of claim 7 , wherein the received register map file is mapped using a JavaScript compiler.

11. The computer readable storage medium of claim 7 , wherein the accessory device comprises a computing accessory and the host device comprises a computing device.

12. The computer readable storage medium of claim 7 , wherein the computing accessory comprises one of a physical accessory or a software accessory.

13. A computer implemented method executable by an accessory device for communicating with a connected host device, the method comprising:

receiving an interrogation request;

identifying a register map file responsive to the interrogation request, the register map file identifying registers for elements of the accessory device; and

sending the register map file to the host device.

14. The method of claim 13 , wherein the communication between the host and the accessory device is performed using register read/write operations.

15. The method of claim 13 , wherein the accessory device receives instructions from the host device to operate a register described in the register map file.

16. The method of claim 15 , wherein the accessory device executes the instructions by performing read/write operations on the specified registers.

17. The method of claim 13 , wherein the accessory device comprises a computing accessory and the host device comprises a computing device.

18. The method of claim 13 , wherein the computing accessory comprises one of a physical accessory or a software accessory.

19. A computer readable storage medium, storing instructions thereon, the instructions when executed by a processor cause the processor within an accessory device to:

communicatively couple with a host device;

receive an interrogation request from the host device, the request for a register map file;

identifying the register map file responsive to the interrogation request; and

sending the register map file to the host device.

20. The computer readable storage medium of claim 19 , wherein the communication between the host and the accessory device is performed using register read/write operations.

21. The computer readable storage medium of claim 19 , wherein the accessory device receives instructions from the host device to operate a register described in the register map file.

22. The computer readable storage medium of claim 21 , wherein the accessory device executes the instructions by performing read/write operations on the specified registers.

23. The computer readable storage medium of claim 19 , wherein the accessory device comprises a computing accessory and the host device comprises a computing device.

24. The computer readable storage medium of claim 19 , wherein the computing accessory comprises one of a physical accessory or a software accessory.

Assignments (6)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 28, 2014
From: HEWLETT-PACKARD COMPANY; HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.; PALM, INC.
To: QUALCOMM INCORPORATED
Reel/Frame 032132/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 18, 2013
From: PALM, INC.
To: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
Reel/Frame 031837/0239 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 18, 2013
From: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
To: PALM, INC.
Reel/Frame 031837/0544 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 18, 2013
From: PALM, INC.
To: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
Reel/Frame 031837/0659 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 3, 2013
From: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
To: PALM, INC.
Reel/Frame 030341/0459 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 28, 2010
From: PALM, INC.
To: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
Reel/Frame 025204/0809 →