From nobody Wed Feb 11 07:26:04 2026 Received: from mail-qv1-f49.google.com (mail-qv1-f49.google.com [209.85.219.49]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id F2847339844 for ; Tue, 10 Feb 2026 23:39:53 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.219.49 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1770766795; cv=none; b=TvP3wKJF4VrgJyqU/7xfuHp6F9lhMW3347tXAMhOzBJRWQq2J2Ft/Q7cF6z4KqCeD0UCize1wIdhzdfUfAH49xyvooARJew/sxY9wsoNw7LeD9m+p8dBaPQY4NjNIdfd2R6TWAEhELMCYNaOG1iHj572U8P6G5xVMcjuwCO+Zxs= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1770766795; c=relaxed/simple; bh=oN1PmeqnJcYZ+K6CeMFEVz3TMZG4CcujIBzbSF8qGn4=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=j2GZe1aqIYm7cXEt6uxIbdo/+umYZV749BkJeqA6wunRpYB1ZA+SYb5RYHylpQMjNQA8UjisdZ/ClF/TFcUVv1qbdfEbKOLvKWRcU/StMFuJXjm10buwMEmFI+50JzT3hzNlCNDAfB75jK1vYV77nnV37e/dqiIm5AQatoyHx5Q= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=S35lZXrK; arc=none smtp.client-ip=209.85.219.49 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="S35lZXrK" Received: by mail-qv1-f49.google.com with SMTP id 6a1803df08f44-89549b2f538so29311246d6.2 for ; Tue, 10 Feb 2026 15:39:53 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1770766793; x=1771371593; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=yar4GAzxasIOJH8BAQ12LR2P5MS8WSAHcu1zPRwg9lk=; b=S35lZXrKTaLe5Rlp59GDaYQvNUJYdOG2b4e9kILpVXc+vQdLAxNvAvHkALtK2SFAf/ lGBBD6b85XyG+gIIA4tOPI5MWNo1JW1UygS45Hj4o+iaQtUqDuSPgodwCaHg+tVXlkPS NJMXS0Eu7gXlXfDALDlZ9KjmNZv+qewDRXjPhbA37aOw2j0nKYNno8M080KC8EhezHxQ ValsrS92ewWf8X90TwjVj94cCySGBfzCqjF0L0UOy6zvKO1XjUhe8oikNMks3Xi4ycIS 8f5YUwL2HO6NR2SfWgYiRtm3EHW4CWYFBVZQ7ffVJTzzpudoTwcNbAx8pwfsEPW+3VZB Bwag== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1770766793; x=1771371593; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=yar4GAzxasIOJH8BAQ12LR2P5MS8WSAHcu1zPRwg9lk=; b=hPe2WSVeSdXF6hsqYbbWZ3rMrS1FaFIlWs4BRraWEYgkVi3UEiCcIrlihD5Pvc7rbk 0rVmTfcXwYxjYiqLnz8Ge9+eIvFj3KJW5xYvdpI2rrR1UeFJA4HU+PEKq8PvGohsJQfv LqASyJxAUxydsa78oL2nQRMNKz295ge9ZQUELuWVOMoy9NQ28ockFL4TJLKLS+sLPH7f 77TxlDEYCa2sZmLtJq5Rcfvmx6LnrCCZKiMTnSE/dGJc6rEKka0KFkUnsyfROJkMSdGY T1xhIEEITUgtlhZQQ7vAwwAWTnsE/QFNKYLTR0TJdHP1o19QfZOeVNYr4fKS/XnP+S3U vCYw== X-Forwarded-Encrypted: i=1; AJvYcCWJ4HEOiAH20ZUwtdg/2RzE0CmviYbu+k1KMyrumhexZapqUKCP44ZjAyx1+w7LXOonPIOfTqqvLqhTnag=@vger.kernel.org X-Gm-Message-State: AOJu0YzrDGb/REuY48SgtOTFH7diDaGgQqRZj89JQDGsBprPjpiT6+Ow lHpJjedQSryHBfVNaVE4CDj21w4QXRFf5O7IO0kwgaxq6bDaeANqkJvI X-Gm-Gg: AZuq6aLKuomNYVo5BDvt8PMFOo9Y8PTW76DBg2+fKZ80H4KTN9gm0Sf3EjWJx+apZdt alLvip1EOnwAhCsvmokS6R+Php4xKrBwMXywSCKEKL5xeIKnCe5ybI+qeytPlwgOa+zvZK8Pc9k iYI4n8tNhdeDXw+yctqx30NvRKJDpNjyJBm5DIbM882kMKgYisGzR9I7OV+uYqKtv1LsBXTGgSt +xPAJ/RaiM2ucoSEXHjtnE8wanY4Hlf2ZJM7QlkPxVTMdbOOG34yMQf4DLxcyiFbY4Tf4aAAW4y 76OpwqJ3XCTlmsu68L6GKs4d5qPFDRMTYLCeVKJ6v+E6W20Q6KmBl1vujpLv4182K7NjlCgjeVQ Sd6YViakkZvbQiUS7YZD0dWzO/dBVjY7J0GwQLlyn9KK+ri/oadOIKphZuRAdS+5GxsmSotR+iJ iPZWp/S9EAx37y6j1impK6nS7INqf5ekvgpgJ7+N17U0e0q4QwbGzC X-Received: by 2002:a05:622a:1981:b0:4ed:2164:5018 with SMTP id d75a77b69052e-5068128d805mr14605521cf.80.1770766792761; Tue, 10 Feb 2026 15:39:52 -0800 (PST) Received: from localhost.localdomain ([50.21.71.60]) by smtp.gmail.com with ESMTPSA id d75a77b69052e-50682f13f20sm1850561cf.14.2026.02.10.15.39.51 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 10 Feb 2026 15:39:52 -0800 (PST) From: Neel Bullywon To: jic23@kernel.org Cc: dlechner@baylibre.com, nuno.sa@analog.com, andy@kernel.org, linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org, Neel Bullywon Subject: [PATCH v6 1/3] iio: magnetometer: bmc150_magn: use automated cleanup for mutex Date: Tue, 10 Feb 2026 18:39:43 -0500 Message-ID: <20260210233945.40975-2-neelb2403@gmail.com> X-Mailer: git-send-email 2.44.0 In-Reply-To: <20260210233945.40975-1-neelb2403@gmail.com> References: <20260210233945.40975-1-neelb2403@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Use guard() and scoped_guard() to replace manual mutex lock/unlock calls. This simplifies error handling and ensures RAII-style cleanup. scoped_guard() is used in read_raw IIO_CHAN_INFO_RAW case for a multi-statement mutex-protected block, as well as in remove, runtime_suspend, and suspend where a short mutex-protected scope is needed for a single function call. guard() is used in write_raw and trig_reen where the mutex scope extends to the end of the function or case block. Case blocks in write_raw are wrapped in braces to ensure clear scope for the cleanup guards. The trigger_handler function is left unchanged as mixing guard() with goto error paths can be fragile. Signed-off-by: Neel Bullywon --- drivers/iio/magnetometer/bmc150_magn.c | 130 ++++++++++--------------- 1 file changed, 52 insertions(+), 78 deletions(-) diff --git a/drivers/iio/magnetometer/bmc150_magn.c b/drivers/iio/magnetome= ter/bmc150_magn.c index 6a73f6e2f1f0..5eb710eb020d 100644 --- a/drivers/iio/magnetometer/bmc150_magn.c +++ b/drivers/iio/magnetometer/bmc150_magn.c @@ -11,6 +11,7 @@ =20 #include #include +#include #include #include #include @@ -456,29 +457,22 @@ static int bmc150_magn_read_raw(struct iio_dev *indio= _dev, case IIO_CHAN_INFO_RAW: if (iio_buffer_enabled(indio_dev)) return -EBUSY; - mutex_lock(&data->mutex); - - ret =3D bmc150_magn_set_power_state(data, true); - if (ret < 0) { - mutex_unlock(&data->mutex); - return ret; - } + scoped_guard(mutex, &data->mutex) { + ret =3D bmc150_magn_set_power_state(data, true); + if (ret < 0) + return ret; =20 - ret =3D bmc150_magn_read_xyz(data, values); - if (ret < 0) { - bmc150_magn_set_power_state(data, false); - mutex_unlock(&data->mutex); - return ret; - } - *val =3D values[chan->scan_index]; + ret =3D bmc150_magn_read_xyz(data, values); + if (ret < 0) { + bmc150_magn_set_power_state(data, false); + return ret; + } + *val =3D values[chan->scan_index]; =20 - ret =3D bmc150_magn_set_power_state(data, false); - if (ret < 0) { - mutex_unlock(&data->mutex); - return ret; + ret =3D bmc150_magn_set_power_state(data, false); + if (ret < 0) + return ret; } - - mutex_unlock(&data->mutex); return IIO_VAL_INT; case IIO_CHAN_INFO_SCALE: /* @@ -530,45 +524,37 @@ static int bmc150_magn_write_raw(struct iio_dev *indi= o_dev, case IIO_CHAN_INFO_SAMP_FREQ: if (val > data->max_odr) return -EINVAL; - mutex_lock(&data->mutex); - ret =3D bmc150_magn_set_odr(data, val); - mutex_unlock(&data->mutex); - return ret; + guard(mutex)(&data->mutex); + return bmc150_magn_set_odr(data, val); case IIO_CHAN_INFO_OVERSAMPLING_RATIO: switch (chan->channel2) { case IIO_MOD_X: case IIO_MOD_Y: if (val < 1 || val > 511) return -EINVAL; - mutex_lock(&data->mutex); - ret =3D bmc150_magn_set_max_odr(data, val, 0, 0); - if (ret < 0) { - mutex_unlock(&data->mutex); - return ret; + { + guard(mutex)(&data->mutex); + ret =3D bmc150_magn_set_max_odr(data, val, 0, 0); + if (ret < 0) + return ret; + return regmap_update_bits(data->regmap, + BMC150_MAGN_REG_REP_XY, + BMC150_MAGN_REG_REP_DATAMASK, + BMC150_MAGN_REPXY_TO_REGVAL(val)); } - ret =3D regmap_update_bits(data->regmap, - BMC150_MAGN_REG_REP_XY, - BMC150_MAGN_REG_REP_DATAMASK, - BMC150_MAGN_REPXY_TO_REGVAL - (val)); - mutex_unlock(&data->mutex); - return ret; case IIO_MOD_Z: if (val < 1 || val > 256) return -EINVAL; - mutex_lock(&data->mutex); - ret =3D bmc150_magn_set_max_odr(data, 0, val, 0); - if (ret < 0) { - mutex_unlock(&data->mutex); - return ret; + { + guard(mutex)(&data->mutex); + ret =3D bmc150_magn_set_max_odr(data, 0, val, 0); + if (ret < 0) + return ret; + return regmap_update_bits(data->regmap, + BMC150_MAGN_REG_REP_Z, + BMC150_MAGN_REG_REP_DATAMASK, + BMC150_MAGN_REPZ_TO_REGVAL(val)); } - ret =3D regmap_update_bits(data->regmap, - BMC150_MAGN_REG_REP_Z, - BMC150_MAGN_REG_REP_DATAMASK, - BMC150_MAGN_REPZ_TO_REGVAL - (val)); - mutex_unlock(&data->mutex); - return ret; default: return -EINVAL; } @@ -782,9 +768,8 @@ static void bmc150_magn_trig_reen(struct iio_trigger *t= rig) if (!data->dready_trigger_on) return; =20 - mutex_lock(&data->mutex); + guard(mutex)(&data->mutex); ret =3D bmc150_magn_reset_intr(data); - mutex_unlock(&data->mutex); if (ret) dev_err(data->dev, "Failed to reset interrupt\n"); } @@ -794,32 +779,28 @@ static int bmc150_magn_data_rdy_trigger_set_state(str= uct iio_trigger *trig, { struct iio_dev *indio_dev =3D iio_trigger_get_drvdata(trig); struct bmc150_magn_data *data =3D iio_priv(indio_dev); - int ret =3D 0; + int ret; + + guard(mutex)(&data->mutex); =20 - mutex_lock(&data->mutex); if (state =3D=3D data->dready_trigger_on) - goto err_unlock; + return 0; =20 ret =3D regmap_update_bits(data->regmap, BMC150_MAGN_REG_INT_DRDY, BMC150_MAGN_MASK_DRDY_EN, state << BMC150_MAGN_SHIFT_DRDY_EN); if (ret < 0) - goto err_unlock; + return ret; =20 data->dready_trigger_on =3D state; =20 if (state) { ret =3D bmc150_magn_reset_intr(data); if (ret < 0) - goto err_unlock; + return ret; } - mutex_unlock(&data->mutex); =20 return 0; - -err_unlock: - mutex_unlock(&data->mutex); - return ret; } =20 static const struct iio_trigger_ops bmc150_magn_trigger_ops =3D { @@ -980,9 +961,8 @@ void bmc150_magn_remove(struct device *dev) if (data->dready_trig) iio_trigger_unregister(data->dready_trig); =20 - mutex_lock(&data->mutex); - bmc150_magn_set_power_mode(data, BMC150_MAGN_POWER_MODE_SUSPEND, true); - mutex_unlock(&data->mutex); + scoped_guard(mutex, &data->mutex) + bmc150_magn_set_power_mode(data, BMC150_MAGN_POWER_MODE_SUSPEND, true); =20 regulator_bulk_disable(ARRAY_SIZE(data->regulators), data->regulators); } @@ -995,10 +975,9 @@ static int bmc150_magn_runtime_suspend(struct device *= dev) struct bmc150_magn_data *data =3D iio_priv(indio_dev); int ret; =20 - mutex_lock(&data->mutex); - ret =3D bmc150_magn_set_power_mode(data, BMC150_MAGN_POWER_MODE_SLEEP, - true); - mutex_unlock(&data->mutex); + scoped_guard(mutex, &data->mutex) + ret =3D bmc150_magn_set_power_mode(data, BMC150_MAGN_POWER_MODE_SLEEP, + true); if (ret < 0) { dev_err(dev, "powering off device failed\n"); return ret; @@ -1026,10 +1005,9 @@ static int bmc150_magn_suspend(struct device *dev) struct bmc150_magn_data *data =3D iio_priv(indio_dev); int ret; =20 - mutex_lock(&data->mutex); - ret =3D bmc150_magn_set_power_mode(data, BMC150_MAGN_POWER_MODE_SLEEP, - true); - mutex_unlock(&data->mutex); + scoped_guard(mutex, &data->mutex) + ret =3D bmc150_magn_set_power_mode(data, BMC150_MAGN_POWER_MODE_SLEEP, + true); =20 return ret; } @@ -1038,14 +1016,10 @@ static int bmc150_magn_resume(struct device *dev) { struct iio_dev *indio_dev =3D dev_get_drvdata(dev); struct bmc150_magn_data *data =3D iio_priv(indio_dev); - int ret; - - mutex_lock(&data->mutex); - ret =3D bmc150_magn_set_power_mode(data, BMC150_MAGN_POWER_MODE_NORMAL, - true); - mutex_unlock(&data->mutex); =20 - return ret; + guard(mutex)(&data->mutex); + return bmc150_magn_set_power_mode(data, BMC150_MAGN_POWER_MODE_NORMAL, + true); } #endif =20 --=20 2.44.0 From nobody Wed Feb 11 07:26:04 2026 Received: from mail-qt1-f170.google.com (mail-qt1-f170.google.com [209.85.160.170]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id BA2D23385A3 for ; Tue, 10 Feb 2026 23:39:55 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.160.170 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1770766796; cv=none; b=XM46ckNrvP4xCr0N8XeZgKzSMsBb13aWADSpqwSLouei5bjs7fQCzZ8xbBw1lybdwVssUQgVGXnZR20pX6xB7slr35MILANW1oCWu91SCg+b7HqczxuoSPIyO0c9bDRwN+CEl0n1zga8BUw9gh24OAgUOVYkzdx0OdgCsYE//dc= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1770766796; c=relaxed/simple; bh=EF3KYgzjAoJP2SBc171ARj8KPZC16BDbu4mINKLJzKk=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=U4m7cGnOsOaoGJKOhepP1OkYSpSlyhAkE8/O27vpJblN7UusjJ3ScdL+kakUnrkhiD71/+smSyNoxq06m/5pH2wLzaCiQ0WNHgoh7Gj4TDv04Yjdj9SStRlMmbfe/FEaoeCKYG1QyXniML0qA9/3NO2bZctvKiBmQyzLKYC/kjE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=W0t+mCXK; arc=none smtp.client-ip=209.85.160.170 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="W0t+mCXK" Received: by mail-qt1-f170.google.com with SMTP id d75a77b69052e-5014600ad12so44479661cf.2 for ; Tue, 10 Feb 2026 15:39:55 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1770766795; x=1771371595; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=qdHIFvs605gqtkx0443IpAji7w6Jn7pNamC9BD3YnF8=; b=W0t+mCXKbOIQrMVeq1qxKc0T+WN9UNAS5yCv+gdLa38TQQhKyKEZw1MO3oeavYgvMj uIqoBws64yq4PnuBULwXMVnofwouG+hgi54iN+6KTJFcPyMxRqcNx7mNDC91jGJ5ZuhC vdVbcLjFzqEBhYN+MG5y8HNcBunoVVzXyWweHU+mjhrxoI5zmStcMK0uhCkms1FBLm1Q s77SK/pp1AnaFyOqI82GwF/X3hrCTlg0H0ggkTxP9/WlzaCi/ULsHBAxirHQUdB2ey6h JLn5csAyD3zW+gjH4GuHwrW3XfNS8RQnGOz7cn6kRiprHrXOFdCoEC3L7bH1CiS78RVu 1cnA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1770766795; x=1771371595; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=qdHIFvs605gqtkx0443IpAji7w6Jn7pNamC9BD3YnF8=; b=Oat0IXZu34blrCvR8AvMlgbfEdtDeIlLsqBHL06B627g1DpcTG0XH3+IjggxD1k61i ZK9kp6x+ILbFO4Lxng8fJPjhKp6+cac2PFI/kw95QX9FX7tM2XC1z7Lsw5NoiTTd8GXp j1h0tNgs31iywbhhMvboLTN+qNv6aWSItzSL35rJDFlE72o/ghgSVwbniJIPrQpwtp5X cwQ8sdzQfx0kWv47fTCa0VuTfKlgu+YmJuC02Exsba6coZkjVJyvVngN6ZRBVPLay82o EX5RDVwUL8ja2qD7ZFe8Yht7StS6YqspQ6dLUMX646jV+SC7NU4f5QvfRpyqN6UtrXZu TrYw== X-Forwarded-Encrypted: i=1; AJvYcCUFouxBAhacWfCtt4w5xJsr1Ad++qTxLE+101L7bOi26W3Uttrmq9tJMOpoiwb3nSjSZR70Us+PIjFR7o8=@vger.kernel.org X-Gm-Message-State: AOJu0YyfAJhJj6kHiIH7FH/iHjYnpyS6IKxpdwVoGn6R+mrX0H6jv/PF b+140vd+FqMrUy+EbLZtusMs77O5fUnr0NS1/e6fzHwNWh7c26L0ushw X-Gm-Gg: AZuq6aLlixV9idPqvjaKIRT9Z73LyLQIET8LgigaF3hFac+PSkXnRgHvfSE84Z6k75L h3/vYYPIXpVNPjj+yuNuYT031oLioYBI5iCtQREX29voub2Di4QsbTe3H+fvnbvCI3P6vcAN8ZU r4ZKkyEVgE7RRcmAYfpupNOuM4sdScfvIDGBTFhDuQ3X+KIYlrC5gbm8xzFtgxYU+WHKVh2JtVX wQQ+mjCqoxPz8YBnV/AdpfDKmy7jnJ6CtMclMwaUqMtPN4lkPOhIkkvuVQ7GwTGJw8/oGnKXMLf N2ZQh5aYXdl5sWZomGKzBgBmU9KKhbZJt1biDrjGzLz3eDJL8is55yrhJtNLqgUijVqtAdjTH95 f7gH9Wa5Dw4SmpJFze8lDsfwbGn1UGkAXj3QAmAd2wvD0uPWEaGKRTOHauVBM5KKUK4PWdsoAk6 8XNysqUNGDkgZLVThCdmwyYIGRc5zxm42LYzTougQmLQ== X-Received: by 2002:a05:622a:653:b0:4ee:1f22:3613 with SMTP id d75a77b69052e-50673db66c1mr53256101cf.62.1770766794786; Tue, 10 Feb 2026 15:39:54 -0800 (PST) Received: from localhost.localdomain ([50.21.71.60]) by smtp.gmail.com with ESMTPSA id d75a77b69052e-50682f13f20sm1850561cf.14.2026.02.10.15.39.54 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 10 Feb 2026 15:39:54 -0800 (PST) From: Neel Bullywon To: jic23@kernel.org Cc: dlechner@baylibre.com, nuno.sa@analog.com, andy@kernel.org, linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org, Neel Bullywon Subject: [PATCH v6 2/3] iio: magnetometer: bmc150_magn: replace msleep with fsleep Date: Tue, 10 Feb 2026 18:39:44 -0500 Message-ID: <20260210233945.40975-3-neelb2403@gmail.com> X-Mailer: git-send-email 2.44.0 In-Reply-To: <20260210233945.40975-1-neelb2403@gmail.com> References: <20260210233945.40975-1-neelb2403@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Replace msleep(5) with fsleep(5 * USEC_PER_MSEC) to allow the kernel to select the most appropriate delay mechanism based on duration. Using USEC_PER_MSEC makes the unit conversion explicit. Signed-off-by: Neel Bullywon --- drivers/iio/magnetometer/bmc150_magn.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/iio/magnetometer/bmc150_magn.c b/drivers/iio/magnetome= ter/bmc150_magn.c index 5eb710eb020d..f254774d28e5 100644 --- a/drivers/iio/magnetometer/bmc150_magn.c +++ b/drivers/iio/magnetometer/bmc150_magn.c @@ -681,7 +681,7 @@ static int bmc150_magn_init(struct bmc150_magn_data *da= ta) * 3ms power-on time according to datasheet, let's better * be safe than sorry and set this delay to 5ms. */ - msleep(5); + fsleep(5 * USEC_PER_MSEC); =20 ret =3D bmc150_magn_set_power_mode(data, BMC150_MAGN_POWER_MODE_SUSPEND, false); --=20 2.44.0 From nobody Wed Feb 11 07:26:04 2026 Received: from mail-qt1-f177.google.com (mail-qt1-f177.google.com [209.85.160.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 4907733A708 for ; Tue, 10 Feb 2026 23:39:58 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.160.177 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1770766799; cv=none; b=uhvziEpN0H8UTzbHqaPg/YTUdhEy22OIIaEqb/isUVnkuY9dEQwKHU94/iRIpqhunzrwH0LeWLL1827QWrHq9s3qKnT0RUNv7gi1y2DQW8ZRNkwIUxjZ1+2YYrq/4tSaJYK9+r1BfG2Ld700BZzveCOHFHnUZoVCGvT5c6SZibg= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1770766799; c=relaxed/simple; bh=czdkNrjo/SfaVp6cIZf1OHbVS8dBW8nubTB5FlGu98o=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=q3Y6mdk9YvZ8cP8kG33ZEMNYPPN7MvuHgcAngu0J3Wq8E9SobIXObW6UCU06lUm3/1pScOF3ftHJ/IBZrrUUl/VS6C07xlz8VzgVkOmFiDpYU63UQNhedTCxkucxJeqkwaD1c6E1SzT03ZOnCT1uu12m17veMpPQSN+cgGVkTbs= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=HbFWMK0K; arc=none smtp.client-ip=209.85.160.177 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="HbFWMK0K" Received: by mail-qt1-f177.google.com with SMTP id d75a77b69052e-505aaab61d9so12324201cf.0 for ; Tue, 10 Feb 2026 15:39:58 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1770766797; x=1771371597; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=Ef3Kj/PignqJoi3Xjlh5mQznCMdAFgdmVh4ZVGLFMGc=; b=HbFWMK0KbedwOI7NfKZHmAznF8rho0uEl40V5PXZrvzFNhp97TGQY/FYKjiWZrBKF6 6oNv+hV9EZTVcc9/SXGL7mLaKhrWKAUU8uUl9E1e4joYrxa+Ih7L/e7Wc7mQNmxPb4ht EltxwEBWGGsO6XZ9UgeTyBr4Mhsgyp9EcDpcNAXEFdXC+Hid37SisfogyhQqY0rKz8AF WDyg2flqkmef6qtA5nn7jW38cXNFMYY6AmnIQGLayC1qZjGbt/lJXWoQxBbUD1cMNhQX XzKllKmFVzUahkjxYMmggXRtlVmz23+fUMb+Ju5hj8/qg/GWKp1xkkPcNnYw0ZqXdZ3b F0Qw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1770766797; x=1771371597; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=Ef3Kj/PignqJoi3Xjlh5mQznCMdAFgdmVh4ZVGLFMGc=; b=aLd7dNPPyTZEQCuWnqOwI2VD3et9CNynsdA7kN16ZxFGbV326o8WSefKGPdDpoAz4P DlA10UbJdyIB7TLOpPCUNisEiSHlFNmyJ/DThT3lRSPjVxw0Y0L3aVH2pdv8DKXuotjG CwYZkYMvwGen4/gYI5RqManKGzagPMNU6HJFUXE434G6Vj75rf9VMEjXx7ApJOMILy+R v2coFnVs1ttVqz+8DdSAK8T5gbT1Wdt8wSDs440AxXvSBGzSPW6uilyPVW+5kd/AAYhx /ZD3BsWJ6jTGwrYU7OORoOQCwLT+L/xU5gGIPiYzS9woGBQze9cKkGozqoTrMSyd5Y3G CWyA== X-Forwarded-Encrypted: i=1; AJvYcCUTf5fHqq6fpHNdJJaXu7WyOp1d2Qc5A5opfHWMw8iv0go2mCbR0KlGbZtu2wedzMl17KZHFml1ITPG2Ds=@vger.kernel.org X-Gm-Message-State: AOJu0YynRdczGV6QtyYnBPTLvkWtw3PMl0O9y4/kJhRJ37X/4SihYau0 7PB6PnPnjOPmJYkFCs1kLPAcuZKxPROr13Gdr35qz2g1Ql8K7aZ6MpMP X-Gm-Gg: AZuq6aI/iuUO1tb9NCzCIEeX5fpSrzqB/b8A5o7wQclybArrhWj9EjdO7gTH4AF+XKW QqgDDA0yZjN+ZDh9zwYezbRbDrn3Azb2Fu0ZY4pCmgq6x+jd+2u26/Q5Jos5u8d9nLtGP62fhO0 gSv9l/Hi8JVob/XeQbioY8h5k70x/LkRX1rkcXk6ftF83GAtTLW8KS+z7yHx/zz2rlaceeKj25X jrACTS4PFmQFHJgirr3ZPuh115E0m5Zd8T3wAJ+9yaEz2+AyrsDsUPLdCc+N/D5z4ZWfBZfIsbf JgPC7IlCDmC7QyE5oMaxgiHBmb+PvJHu6JKKdAVs1fWK8zJnJMuc46oxVXc3IPvTeoZuRM7kVE0 DNqyMKRBOU/VO37R+sNsj9KSeM9tLjtVFezF+9k46HTVDuA86pk7GxmLRE0aOfo904l42iLUOj3 BZFcUbOXzUeYwJP2K902H93IKBXgKLXYmdFB7f5jYj0A== X-Received: by 2002:a05:622a:50a:b0:506:1fc3:dac7 with SMTP id d75a77b69052e-506398d46e3mr213239661cf.7.1770766797279; Tue, 10 Feb 2026 15:39:57 -0800 (PST) Received: from localhost.localdomain ([50.21.71.60]) by smtp.gmail.com with ESMTPSA id d75a77b69052e-50682f13f20sm1850561cf.14.2026.02.10.15.39.56 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 10 Feb 2026 15:39:56 -0800 (PST) From: Neel Bullywon To: jic23@kernel.org Cc: dlechner@baylibre.com, nuno.sa@analog.com, andy@kernel.org, linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org, Neel Bullywon Subject: [PATCH v6 3/3] iio: magnetometer: bmc150_magn: minor formatting cleanup Date: Tue, 10 Feb 2026 18:39:45 -0500 Message-ID: <20260210233945.40975-4-neelb2403@gmail.com> X-Mailer: git-send-email 2.44.0 In-Reply-To: <20260210233945.40975-1-neelb2403@gmail.com> References: <20260210233945.40975-1-neelb2403@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Improve initializer list style for bmc150_magn_samp_freq_table by moving the opening brace to its own line and grouping four entries per line with index comments. Add spaces inside braces for initializer lists in the preset table for consistency. Fix indentation of bmc150_magn_scan_masks array. No functional changes. Signed-off-by: Neel Bullywon --- drivers/iio/magnetometer/bmc150_magn.c | 25 +++++++++++-------------- 1 file changed, 11 insertions(+), 14 deletions(-) diff --git a/drivers/iio/magnetometer/bmc150_magn.c b/drivers/iio/magnetome= ter/bmc150_magn.c index f254774d28e5..942c2f5e97e1 100644 --- a/drivers/iio/magnetometer/bmc150_magn.c +++ b/drivers/iio/magnetometer/bmc150_magn.c @@ -149,14 +149,10 @@ struct bmc150_magn_data { static const struct { int freq; u8 reg_val; -} bmc150_magn_samp_freq_table[] =3D { {2, 0x01}, - {6, 0x02}, - {8, 0x03}, - {10, 0x00}, - {15, 0x04}, - {20, 0x05}, - {25, 0x06}, - {30, 0x07} }; +} bmc150_magn_samp_freq_table[] =3D { + { 2, 0x01 }, { 6, 0x02 }, { 8, 0x03 }, { 10, 0x00 }, /* 0 - 3 */ + { 15, 0x04 }, { 20, 0x05 }, { 25, 0x06 }, { 30, 0x07 }, /* 4 - 7 */ +}; =20 enum bmc150_magn_presets { LOW_POWER_PRESET, @@ -170,10 +166,10 @@ static const struct bmc150_magn_preset { u8 rep_z; u8 odr; } bmc150_magn_presets_table[] =3D { - [LOW_POWER_PRESET] =3D {3, 3, 10}, - [REGULAR_PRESET] =3D {9, 15, 10}, - [ENHANCED_REGULAR_PRESET] =3D {15, 27, 10}, - [HIGH_ACCURACY_PRESET] =3D {47, 83, 20}, + [LOW_POWER_PRESET] =3D { 3, 3, 10 }, + [REGULAR_PRESET] =3D { 9, 15, 10 }, + [ENHANCED_REGULAR_PRESET] =3D { 15, 27, 10 }, + [HIGH_ACCURACY_PRESET] =3D { 47, 83, 20 }, }; =20 #define BMC150_MAGN_DEFAULT_PRESET REGULAR_PRESET @@ -641,8 +637,9 @@ static const struct iio_info bmc150_magn_info =3D { }; =20 static const unsigned long bmc150_magn_scan_masks[] =3D { - BIT(AXIS_X) | BIT(AXIS_Y) | BIT(AXIS_Z), - 0}; + BIT(AXIS_X) | BIT(AXIS_Y) | BIT(AXIS_Z), + 0 +}; =20 static irqreturn_t bmc150_magn_trigger_handler(int irq, void *p) { --=20 2.44.0