Commit 5cbe4be9e721d7aaa286a33da0370642580b1848

Con Kolivas 2013-10-14T15:13:30

Incorporate hf protocol header changes.

diff --git a/hf_protocol.h b/hf_protocol.h
index d862c76..62fff65 100644
--- a/hf_protocol.h
+++ b/hf_protocol.h
@@ -83,7 +83,7 @@ struct hf_hash_serial {
 	uint32_t nonce_loops;                   // How many nonces to search, or 0 for 2^32
 	uint16_t ntime_loops:12;                // How many times to roll timestamp, or 0
 	uint16_t spare1:4;
-	uint8_t  search_difficulty;             // Search difficulty to use, number of leading '0' bits required
+	uint8_t  search_difficulty;             // Search difficulty to use, # of '0' digits required
 	uint8_t  option;
 	uint32_t group:8;
 	uint32_t spare3:24;
@@ -100,9 +100,9 @@ struct hf_hash_usb {
 	uint32_t nonce_loops;                   // How many nonces to search, or 0 for 2^32
 	uint16_t ntime_loops:12;                // How many times to roll timestamp, or 0
 	uint16_t spare1:4;
-	uint8_t  search_difficulty;             // Search difficulty to use, number of leading '0' bits required
+	uint8_t  search_difficulty;             // Search difficulty to use, # of '0' digits required
 	uint8_t  group;                         // Non-zero for valid group
-} __attribute__((packed,aligned(4)));           // 64 bytes total, including CRC
+} __attribute__((packed,aligned(4)));
 
 // OP_NONCE data
 struct hf_candidate_nonce {
@@ -210,13 +210,15 @@ struct hf_usb_init_header {
 #define PROTOCOL_GLOBAL_WORK_QUEUE      1
 
 // Options (only if present) that may be appended to the above header
-// Each option involving a numerical value will only be in effect if bit 15 of the
-// uint16_t containing that value (15 bits max) is set. This allows the user to
-// select only those options desired for modification. Do not use this facility
-// unless you are an expert - loading inconsistent settings will not work.
+// Each option involving a numerical value will only be in effect if the value is non-zero
+// This allows the user to select only those options desired for modification. Do not
+// use this facility unless you are an expert - loading inconsistent settings will not work.
 struct hf_usb_init_options {
 	uint16_t group_ntime_roll;                  // Total ntime roll amount per group
 	uint16_t core_ntime_roll;                   // Total core ntime roll amount
+	uint8_t  low_operating_temp_limit;          // Lowest normal operating limit
+	uint8_t  high_operating_temp_limit;         // Highest normal operating limit
+	uint16_t spare;
 } __attribute__((packed,aligned(4)));
 
 // Base item returned from device for OP_USB_INIT
@@ -259,6 +261,8 @@ struct hf_gwq_data {
 	uint64_t hash_count;                        // Add this to host's cumulative hash count
 	uint16_t sequence_head;                     // The latest, internal, active sequence #
 	uint16_t sequence_tail;                     // The latest, internal, inactive sequence #
+	uint16_t shed_count;                        // # of cores have been shedded for thermal control
+	uint16_t spare;
 } __attribute__((packed,aligned(4)));