@@ -229,7 +229,7 @@ static int bmm350_otp_dump_after_boot(const struct device *dev)
229
229
* @brief This API gets the PMU command status 0 value
230
230
*/
231
231
static int bmm350_get_pmu_cmd_status_0 (const struct device * dev ,
232
- struct bmm350_pmu_cmd_status_0 * pmu_cmd_stat_0 )
232
+ struct bmm350_pmu_cmd_status_0 * pmu_cmd_stat_0 )
233
233
{
234
234
/* Variable to store the function result */
235
235
int ret ;
@@ -247,10 +247,8 @@ static int bmm350_get_pmu_cmd_status_0(const struct device *dev,
247
247
pmu_cmd_stat_0 -> avr_ovwr = BMM350_GET_BITS (rx_buf [2 ], BMM350_AVG_OVWR );
248
248
pmu_cmd_stat_0 -> pwr_mode_is_normal =
249
249
BMM350_GET_BITS (rx_buf [2 ], BMM350_PWR_MODE_IS_NORMAL );
250
- pmu_cmd_stat_0 -> cmd_is_illegal =
251
- BMM350_GET_BITS (rx_buf [2 ], BMM350_CMD_IS_ILLEGAL );
252
- pmu_cmd_stat_0 -> pmu_cmd_value =
253
- BMM350_GET_BITS (rx_buf [2 ], BMM350_PMU_CMD_VALUE );
250
+ pmu_cmd_stat_0 -> cmd_is_illegal = BMM350_GET_BITS (rx_buf [2 ], BMM350_CMD_IS_ILLEGAL );
251
+ pmu_cmd_stat_0 -> pmu_cmd_value = BMM350_GET_BITS (rx_buf [2 ], BMM350_PMU_CMD_VALUE );
254
252
}
255
253
256
254
return ret ;
@@ -426,7 +424,7 @@ static int bmm350_magnetic_reset_and_wait(const struct device *dev)
426
424
* @brief This API is used to read uncompensated mag and temperature data.
427
425
*/
428
426
static int bmm350_read_uncomp_mag_temp_data (const struct device * dev ,
429
- struct bmm350_raw_mag_data * raw_data )
427
+ struct bmm350_raw_mag_data * raw_data )
430
428
{
431
429
struct bmm350_data * data = dev -> data ;
432
430
int rslt ;
@@ -440,13 +438,13 @@ static int bmm350_read_uncomp_mag_temp_data(const struct device *dev,
440
438
441
439
if (rslt == 0 ) {
442
440
raw_mag_x = (uint32_t )mag_data [2 ] + ((uint32_t )mag_data [3 ] << 8 ) +
443
- ((uint32_t )mag_data [4 ] << 16 );
441
+ ((uint32_t )mag_data [4 ] << 16 );
444
442
raw_mag_y = (uint32_t )mag_data [5 ] + ((uint32_t )mag_data [6 ] << 8 ) +
445
- ((uint32_t )mag_data [7 ] << 16 );
443
+ ((uint32_t )mag_data [7 ] << 16 );
446
444
raw_mag_z = (uint32_t )mag_data [8 ] + ((uint32_t )mag_data [9 ] << 8 ) +
447
- ((uint32_t )mag_data [10 ] << 16 );
445
+ ((uint32_t )mag_data [10 ] << 16 );
448
446
raw_temp = (uint32_t )mag_data [11 ] + ((uint32_t )mag_data [12 ] << 8 ) +
449
- ((uint32_t )mag_data [13 ] << 16 );
447
+ ((uint32_t )mag_data [13 ] << 16 );
450
448
451
449
if ((data -> axis_en & BMM350_EN_X_MSK ) == BMM350_DISABLE ) {
452
450
raw_data -> raw_xdata = BMM350_DISABLE ;
@@ -484,13 +482,13 @@ static int read_out_raw_data(const struct device *dev, int32_t *out_data)
484
482
if (rslt == 0 ) {
485
483
/* Convert mag lsb to uT and temp lsb to degC */
486
484
out_data [0 ] = ((raw_data .raw_xdata * BMM350_LSB_TO_UT_XY_COEFF ) /
487
- BMM350_LSB_TO_UT_COEFF_DIV );
485
+ BMM350_LSB_TO_UT_COEFF_DIV );
488
486
out_data [1 ] = ((raw_data .raw_ydata * BMM350_LSB_TO_UT_XY_COEFF ) /
489
- BMM350_LSB_TO_UT_COEFF_DIV );
487
+ BMM350_LSB_TO_UT_COEFF_DIV );
490
488
out_data [2 ] = ((raw_data .raw_zdata * BMM350_LSB_TO_UT_Z_COEFF ) /
491
- BMM350_LSB_TO_UT_COEFF_DIV );
489
+ BMM350_LSB_TO_UT_COEFF_DIV );
492
490
out_data [3 ] = ((raw_data .raw_data_temp * BMM350_LSB_TO_UT_TEMP_COEFF ) /
493
- BMM350_LSB_TO_UT_COEFF_DIV );
491
+ BMM350_LSB_TO_UT_COEFF_DIV );
494
492
495
493
if (out_data [3 ] > 0 ) {
496
494
temp = (out_data [3 ] - (2549 / 100 ));
@@ -524,11 +522,11 @@ bmm350_get_compensated_mag_xyz_temp_data_fixed(const struct device *dev,
524
522
525
523
if (rslt == 0 ) {
526
524
/* Apply compensation to temperature reading */
527
- out_data [3 ] = ((( BMM350_MAG_COMP_COEFF_SCALING +
528
- data -> mag_comp .dut_sensit_coef .t_sens ) *
529
- out_data [3 ]) +
530
- data -> mag_comp .dut_offset_coef .t_offs ) /
531
- BMM350_MAG_COMP_COEFF_SCALING ;
525
+ out_data [3 ] =
526
+ ((( BMM350_MAG_COMP_COEFF_SCALING + data -> mag_comp .dut_sensit_coef .t_sens ) *
527
+ out_data [3 ]) +
528
+ data -> mag_comp .dut_offset_coef .t_offs ) /
529
+ BMM350_MAG_COMP_COEFF_SCALING ;
532
530
533
531
/* Store magnetic compensation structure to an array */
534
532
dut_offset_coef [0 ] = data -> mag_comp .dut_offset_coef .offset_x ;
@@ -549,50 +547,45 @@ bmm350_get_compensated_mag_xyz_temp_data_fixed(const struct device *dev,
549
547
550
548
/* Compensate raw magnetic data */
551
549
for (indx = 0 ; indx < 3 ; indx ++ ) {
552
- out_data [indx ] = (out_data [indx ] * ( BMM350_MAG_COMP_COEFF_SCALING +
553
- dut_sensit_coef [indx ])) /
554
- BMM350_MAG_COMP_COEFF_SCALING ;
550
+ out_data [indx ] = (out_data [indx ] *
551
+ ( BMM350_MAG_COMP_COEFF_SCALING + dut_sensit_coef [indx ])) /
552
+ BMM350_MAG_COMP_COEFF_SCALING ;
555
553
out_data [indx ] = (out_data [indx ] + dut_offset_coef [indx ]);
556
- out_data [indx ] =
557
- ((out_data [indx ] * BMM350_MAG_COMP_COEFF_SCALING ) +
558
- (dut_tco [indx ] * (out_data [3 ] - data -> mag_comp .dut_t0 ))) /
559
- BMM350_MAG_COMP_COEFF_SCALING ;
560
- out_data [indx ] =
561
- (out_data [indx ] * BMM350_MAG_COMP_COEFF_SCALING ) /
562
- (BMM350_MAG_COMP_COEFF_SCALING +
563
- (dut_tcs [indx ] * (out_data [3 ] - data -> mag_comp .dut_t0 )));
554
+ out_data [indx ] = ((out_data [indx ] * BMM350_MAG_COMP_COEFF_SCALING ) +
555
+ (dut_tco [indx ] * (out_data [3 ] - data -> mag_comp .dut_t0 ))) /
556
+ BMM350_MAG_COMP_COEFF_SCALING ;
557
+ out_data [indx ] = (out_data [indx ] * BMM350_MAG_COMP_COEFF_SCALING ) /
558
+ (BMM350_MAG_COMP_COEFF_SCALING +
559
+ (dut_tcs [indx ] * (out_data [3 ] - data -> mag_comp .dut_t0 )));
564
560
}
565
561
566
- cr_ax_comp_x =
567
- ((((out_data [0 ] * BMM350_MAG_COMP_COEFF_SCALING ) -
568
- (data -> mag_comp .cross_axis .cross_x_y * out_data [1 ])) *
569
- BMM350_MAG_COMP_COEFF_SCALING ) /
562
+ cr_ax_comp_x = ((((out_data [0 ] * BMM350_MAG_COMP_COEFF_SCALING ) -
563
+ (data -> mag_comp .cross_axis .cross_x_y * out_data [1 ])) *
564
+ BMM350_MAG_COMP_COEFF_SCALING ) /
570
565
((BMM350_MAG_COMP_COEFF_SCALING * BMM350_MAG_COMP_COEFF_SCALING ) -
571
- (data -> mag_comp .cross_axis .cross_y_x *
572
- data -> mag_comp .cross_axis .cross_x_y )));
566
+ (data -> mag_comp .cross_axis .cross_y_x *
567
+ data -> mag_comp .cross_axis .cross_x_y )));
573
568
574
- cr_ax_comp_y =
575
- ((((out_data [1 ] * BMM350_MAG_COMP_COEFF_SCALING ) -
576
- (data -> mag_comp .cross_axis .cross_y_x * out_data [0 ])) *
577
- BMM350_MAG_COMP_COEFF_SCALING ) /
569
+ cr_ax_comp_y = ((((out_data [1 ] * BMM350_MAG_COMP_COEFF_SCALING ) -
570
+ (data -> mag_comp .cross_axis .cross_y_x * out_data [0 ])) *
571
+ BMM350_MAG_COMP_COEFF_SCALING ) /
578
572
((BMM350_MAG_COMP_COEFF_SCALING * BMM350_MAG_COMP_COEFF_SCALING ) -
579
- (data -> mag_comp .cross_axis .cross_y_x *
580
- data -> mag_comp .cross_axis .cross_x_y )));
573
+ (data -> mag_comp .cross_axis .cross_y_x *
574
+ data -> mag_comp .cross_axis .cross_x_y )));
581
575
582
576
cr_ax_comp_z =
583
577
(out_data [2 ] +
584
- (((out_data [0 ] * ((data -> mag_comp .cross_axis .cross_y_x *
585
- data -> mag_comp .cross_axis .cross_z_y ) -
586
- (data -> mag_comp .cross_axis .cross_z_x *
587
- BMM350_MAG_COMP_COEFF_SCALING ))) -
588
- (out_data [1 ] * ((data -> mag_comp .cross_axis .cross_z_y *
589
- BMM350_MAG_COMP_COEFF_SCALING ) -
590
- (data -> mag_comp .cross_axis .cross_x_y *
591
- data -> mag_comp .cross_axis .cross_z_x ))))) /
592
- (((BMM350_MAG_COMP_COEFF_SCALING *
593
- BMM350_MAG_COMP_COEFF_SCALING ) -
594
- data -> mag_comp .cross_axis .cross_y_x *
595
- data -> mag_comp .cross_axis .cross_x_y )));
578
+ (((out_data [0 ] * ((data -> mag_comp .cross_axis .cross_y_x *
579
+ data -> mag_comp .cross_axis .cross_z_y ) -
580
+ (data -> mag_comp .cross_axis .cross_z_x *
581
+ BMM350_MAG_COMP_COEFF_SCALING ))) -
582
+ (out_data [1 ] *
583
+ ((data -> mag_comp .cross_axis .cross_z_y * BMM350_MAG_COMP_COEFF_SCALING ) -
584
+ (data -> mag_comp .cross_axis .cross_x_y *
585
+ data -> mag_comp .cross_axis .cross_z_x ))))) /
586
+ (((BMM350_MAG_COMP_COEFF_SCALING * BMM350_MAG_COMP_COEFF_SCALING ) -
587
+ data -> mag_comp .cross_axis .cross_y_x *
588
+ data -> mag_comp .cross_axis .cross_x_y )));
596
589
597
590
out_data [0 ] = (int32_t )cr_ax_comp_x ;
598
591
out_data [1 ] = (int32_t )cr_ax_comp_y ;
@@ -724,8 +717,8 @@ static uint8_t mag_osr_to_reg(const struct sensor_value *val)
724
717
* @brief This API sets the ODR and averaging factor.
725
718
*/
726
719
static int bmm350_set_odr_performance (enum bmm350_data_rates odr ,
727
- enum bmm350_performance_parameters performance ,
728
- const struct device * dev )
720
+ enum bmm350_performance_parameters performance ,
721
+ const struct device * dev )
729
722
{
730
723
/* Variable to store the function result */
731
724
int rslt ;
@@ -1110,13 +1103,12 @@ static int bmm350_init(const struct device *dev)
1110
1103
1111
1104
/* Initializes a struct bmm350_config for an instance on an I2C bus. */
1112
1105
#define BMM350_CONFIG_I2C (inst ) .bus.i2c = I2C_DT_SPEC_INST_GET(inst), .bus_io = &bmm350_bus_io_i2c,
1113
- #define BMM350_INT_CFG (inst ) \
1114
- .drdy_int = GPIO_DT_SPEC_INST_GET_OR(inst, drdy_gpios, {0}), \
1115
- .int_flags = FIELD_PREP(BMM350_INT_CTRL_INT_POL_MSK, \
1116
- DT_INST_PROP(inst, active_high_int)) | \
1117
- FIELD_PREP(BMM350_INT_CTRL_INT_OD_MSK, DT_INST_PROP(inst, push_pull_int)) | \
1118
- BMM350_INT_CTRL_DRDY_DATA_REG_EN_MSK | \
1119
- BMM350_INT_CTRL_INT_OUTPUT_EN_MSK,
1106
+ #define BMM350_INT_CFG (inst ) \
1107
+ .drdy_int = GPIO_DT_SPEC_INST_GET_OR(inst, drdy_gpios, {0}), \
1108
+ .int_flags = \
1109
+ FIELD_PREP(BMM350_INT_CTRL_INT_POL_MSK, DT_INST_PROP(inst, active_high_int)) | \
1110
+ FIELD_PREP(BMM350_INT_CTRL_INT_OD_MSK, DT_INST_PROP(inst, push_pull_int)) | \
1111
+ BMM350_INT_CTRL_DRDY_DATA_REG_EN_MSK | BMM350_INT_CTRL_INT_OUTPUT_EN_MSK,
1120
1112
1121
1113
#define BMM350_DEFINE (inst ) \
1122
1114
static struct bmm350_data bmm350_data_##inst; \
0 commit comments