From 185757e4327acbe70d34de0ca4e5262340bc862f Mon Sep 17 00:00:00 2001 From: Tom Knot Date: Wed, 4 Jul 2018 15:22:26 +0200 Subject: [PATCH] Removed 64bit division --- modules/unipi/src/unipi_spi.c | 8 ++++---- version.txt | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/modules/unipi/src/unipi_spi.c b/modules/unipi/src/unipi_spi.c index 478eb66..46ff9a0 100644 --- a/modules/unipi/src/unipi_spi.c +++ b/modules/unipi/src/unipi_spi.c @@ -610,7 +610,7 @@ void neuronspi_spi_iio_stm_ao_set_voltage(struct iio_dev *indio_dev, struct iio_ u32 stm_v_err = 0; u32 stm_v_off = 0; u64 stm_true_val = val; - u64 stm_true_val_fraction = val2; + u64 stm_true_val_fraction = val2 / 100; u64 stm_true_ref = 0; regmap_read(n_spi->reg_map, n_spi->regstart_table->vref_int, &stm_v_int_ref); regmap_read(n_spi->reg_map, n_spi->regstart_table->vref_inp, &stm_v_inp_ref); @@ -618,7 +618,7 @@ void neuronspi_spi_iio_stm_ao_set_voltage(struct iio_dev *indio_dev, struct iio_ regmap_read(n_spi->reg_map, n_spi->regstart_table->stm_ao_vol_off, &stm_v_off); stm_true_ref = ((u64)stm_v_int_ref) * (99000 + stm_v_err) * 1000; stm_v_inp_ref = stm_v_inp_ref * 10000; - stm_true_val = ((stm_true_val * 10000) + (stm_true_val_fraction / 100) - stm_v_off) * 4095; + stm_true_val = ((stm_true_val * 10000) + (stm_true_val_fraction) - stm_v_off) * 4095; do_div(stm_true_ref, stm_v_inp_ref); stm_v_inp_ref = stm_true_ref; do_div(stm_true_val, stm_v_inp_ref); @@ -637,7 +637,7 @@ void neuronspi_spi_iio_stm_ao_set_current(struct iio_dev *indio_dev, struct iio_ u32 stm_i_err = 0; u32 stm_i_off = 0; u64 stm_true_val = val; - u64 stm_true_val_fraction = val2; + u64 stm_true_val_fraction = val2 / 100; u64 stm_true_ref = 0; regmap_read(n_spi->reg_map, n_spi->regstart_table->vref_int, &stm_v_int_ref); regmap_read(n_spi->reg_map, n_spi->regstart_table->vref_inp, &stm_v_inp_ref); @@ -645,7 +645,7 @@ void neuronspi_spi_iio_stm_ao_set_current(struct iio_dev *indio_dev, struct iio_ regmap_read(n_spi->reg_map, n_spi->regstart_table->stm_ao_curr_off, &stm_i_off); stm_true_ref = ((u64)stm_v_int_ref) * (330000 + stm_i_err) * 100; stm_v_inp_ref = stm_v_inp_ref * 1000; - stm_true_val = (((stm_true_val * 10000) + (stm_true_val_fraction / 100)) - stm_i_off) * 4095; + stm_true_val = (((stm_true_val * 10000) + (stm_true_val_fraction)) - stm_i_off) * 4095; do_div(stm_true_ref, stm_v_inp_ref); stm_v_inp_ref = stm_true_ref; do_div(stm_true_val, stm_v_inp_ref); diff --git a/version.txt b/version.txt index c28bd16..2f19025 100644 --- a/version.txt +++ b/version.txt @@ -1 +1 @@ -Repository:neuron-kernel ActiveBranch:[uart_timeout] PrecedingRelease:v.0.12 PrecedingRevision:84(3027140) LatestCommit:Wed Jul 4 15:20:25 CEST 2018 +Repository:neuron-kernel ActiveBranch:[uart_timeout] PrecedingRelease:v.0.12 PrecedingRevision:85(dc69d07) LatestCommit:Wed Jul 4 15:22:26 CEST 2018 -- 2.34.1