@@ -342,10 +342,10 @@ static s16 bme680_compensate_temp(struct bme680_data *data,
342
342
if (!calib -> par_t2 )
343
343
bme680_read_calib (data , calib );
344
344
345
- var1 = (adc_temp >> 3 ) - (calib -> par_t1 << 1 );
345
+ var1 = (adc_temp >> 3 ) - (( s32 ) calib -> par_t1 << 1 );
346
346
var2 = (var1 * calib -> par_t2 ) >> 11 ;
347
347
var3 = ((var1 >> 1 ) * (var1 >> 1 )) >> 12 ;
348
- var3 = (var3 * (calib -> par_t3 << 4 )) >> 14 ;
348
+ var3 = (var3 * (( s32 ) calib -> par_t3 << 4 )) >> 14 ;
349
349
data -> t_fine = var2 + var3 ;
350
350
calc_temp = (data -> t_fine * 5 + 128 ) >> 8 ;
351
351
@@ -368,9 +368,9 @@ static u32 bme680_compensate_press(struct bme680_data *data,
368
368
var1 = (data -> t_fine >> 1 ) - 64000 ;
369
369
var2 = ((((var1 >> 2 ) * (var1 >> 2 )) >> 11 ) * calib -> par_p6 ) >> 2 ;
370
370
var2 = var2 + (var1 * calib -> par_p5 << 1 );
371
- var2 = (var2 >> 2 ) + (calib -> par_p4 << 16 );
371
+ var2 = (var2 >> 2 ) + (( s32 ) calib -> par_p4 << 16 );
372
372
var1 = (((((var1 >> 2 ) * (var1 >> 2 )) >> 13 ) *
373
- (calib -> par_p3 << 5 )) >> 3 ) +
373
+ (( s32 ) calib -> par_p3 << 5 )) >> 3 ) +
374
374
((calib -> par_p2 * var1 ) >> 1 );
375
375
var1 = var1 >> 18 ;
376
376
var1 = ((32768 + var1 ) * calib -> par_p1 ) >> 15 ;
@@ -388,7 +388,7 @@ static u32 bme680_compensate_press(struct bme680_data *data,
388
388
var3 = ((press_comp >> 8 ) * (press_comp >> 8 ) *
389
389
(press_comp >> 8 ) * calib -> par_p10 ) >> 17 ;
390
390
391
- press_comp += (var1 + var2 + var3 + (calib -> par_p7 << 7 )) >> 4 ;
391
+ press_comp += (var1 + var2 + var3 + (( s32 ) calib -> par_p7 << 7 )) >> 4 ;
392
392
393
393
return press_comp ;
394
394
}
@@ -414,7 +414,7 @@ static u32 bme680_compensate_humid(struct bme680_data *data,
414
414
(((temp_scaled * ((temp_scaled * calib -> par_h5 ) / 100 ))
415
415
>> 6 ) / 100 ) + (1 << 14 ))) >> 10 ;
416
416
var3 = var1 * var2 ;
417
- var4 = calib -> par_h6 << 7 ;
417
+ var4 = ( s32 ) calib -> par_h6 << 7 ;
418
418
var4 = (var4 + ((temp_scaled * calib -> par_h7 ) / 100 )) >> 4 ;
419
419
var5 = ((var3 >> 14 ) * (var3 >> 14 )) >> 10 ;
420
420
var6 = (var4 * var5 ) >> 1 ;
0 commit comments