]> sigrok.org Git - libsigrok.git/blobdiff - src/hardware/zeroplus-logic-cube/protocol.c
output/csv: use intermediate time_t var, silence compiler warning
[libsigrok.git] / src / hardware / zeroplus-logic-cube / protocol.c
index ce20ccf4012f1a5fadd9098b82ef32e10b0a8c50..37fcbdcc2eb04d09d3c15a8f4f18736fcef8fca0 100644 (file)
  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
  */
 
+#include <config.h>
 #include <math.h>
 #include "protocol.h"
 
-SR_PRIV unsigned int get_memory_size(int type)
+SR_PRIV size_t get_memory_size(int type)
 {
        if (type == MEMORY_SIZE_8K)
-               return 8 * 1024;
-       else if (type <= MEMORY_SIZE_8M)
+               return (8 * 1024);
+       if (type <= MEMORY_SIZE_8M)
                return (32 * 1024) << type;
-       else
-               return 0;
+       return 0;
 }
 
 static int clz(unsigned int x)
@@ -58,40 +58,28 @@ static int clz(unsigned int x)
 
 SR_PRIV int set_limit_samples(struct dev_context *devc, uint64_t samples)
 {
+       size_t mem_kb;
+
        if (samples > devc->max_sample_depth)
                samples = devc->max_sample_depth;
 
        devc->limit_samples = samples;
 
-       if (samples <= 2 * 1024)
+       if (samples <= (2 * 1024))
                devc->memory_size = MEMORY_SIZE_8K;
-       else if (samples <= 16 * 1024)
+       else if (samples <= (16 * 1024))
                devc->memory_size = MEMORY_SIZE_64K;
        else
                devc->memory_size = 19 - clz(samples - 1);
 
-       sr_info("Setting memory size to %dK.",
-               get_memory_size(devc->memory_size) / 1024);
+       mem_kb = get_memory_size(devc->memory_size) / 1024;
+       sr_info("Setting memory size to %zuK.", mem_kb);
 
        analyzer_set_memory_size(devc->memory_size);
 
        return SR_OK;
 }
 
-SR_PRIV int set_capture_ratio(struct dev_context *devc, uint64_t ratio)
-{
-       if (ratio > 100) {
-               sr_err("Invalid capture ratio: %" PRIu64 ".", ratio);
-               return SR_ERR_ARG;
-       }
-
-       devc->capture_ratio = ratio;
-
-       sr_info("Setting capture ratio to %d%%.", devc->capture_ratio);
-
-       return SR_OK;
-}
-
 SR_PRIV int set_voltage_threshold(struct dev_context *devc, double thresh)
 {
        if (thresh > 6.0)
@@ -117,7 +105,7 @@ SR_PRIV void set_triggerbar(struct dev_context *devc)
                trigger_depth = devc->limit_samples;
 
        if (devc->trigger)
-               triggerbar = trigger_depth * devc->capture_ratio / 100;
+               triggerbar = (trigger_depth * devc->capture_ratio) / 100;
        else
                triggerbar = 0;