From nobody Thu Apr 2 09:34:31 2026 Received: from mail-qv1-f43.google.com (mail-qv1-f43.google.com [209.85.219.43]) (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 EF40C28643C for ; Mon, 16 Feb 2026 01:55:01 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.219.43 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1771206904; cv=none; b=NR9KwzgL7PoEcoggo8FSyYFDDzdf8qAzKxvkdO36yb66+hse7BOsZv2NfbRVV8OMMqSsiTq3dMdtjoHNqzrwfNguXBnFLVD8VONx0WAVqoQi4iAovjt2L2pbawff4s2XXKnOyWGWX76vIt9h9UuNGToFMyhzyIS0AHtd//QG9KM= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1771206904; c=relaxed/simple; bh=KsWPbtp7dclOQsts4hkX/EvpcaH3CkHz85VewowG1As=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=dmoYbmzHybqqerXMreNvrZNzEBO7RJjAK/jHgLHivbaOuAsG9Xc04C6Dv6DWUg+EsqrpyTrHmJsOAkiWv7qVYC1TVwvIq+gj+fyZARm9YnCRmdLv5dgbuh+11Kf5KOG2tHSLPl/s5JOeOLVloMeJkDdMymqP5LqJejuN3cEztRY= 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=GlDJUXuV; arc=none smtp.client-ip=209.85.219.43 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="GlDJUXuV" Received: by mail-qv1-f43.google.com with SMTP id 6a1803df08f44-896f82e5961so44322136d6.0 for ; Sun, 15 Feb 2026 17:55:01 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1771206901; x=1771811701; 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=kpXlIWLRWovA3pP6LHlXyJYMgADVO8vHpsAgvc24yB8=; b=GlDJUXuVnlnDaOhFAOhUN6E88wIKc500wV4IG5zjdCUDhIbCcmCz5VW4e1xWyzJYAj NHiyyoXgPQ3TRmjdSmYnjrbeMcDq9nEsLLx4mP3zrW/qtDy4BvuRvHVzIVnTXowT94a5 FGIE1L1wfYGKjYAyVXz3O9woFD9zkW8nmwTemQqW3T0vK98bLtj4YS/55wmMNCQJBzv8 BtDbf/v0atQwNw4Z+rvbpeEMa2AxtGoC9RuppLi2OkQmK6Hqlz7/k6k8Lt9IKNOhgLH0 kB91kbvL35mvn20D8cecf0d86nOmGaZGtTgJhKspkZOR6xAnUYcCugb4fiHKEIY4UPJ8 szcA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1771206901; x=1771811701; 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=kpXlIWLRWovA3pP6LHlXyJYMgADVO8vHpsAgvc24yB8=; b=IwNyUnXyiUiw0VV8+52t4ExXb/62+wdROP2rpM5zg4EM6HZjXI7U2NGspfjo+8OavG XXe4HmnC95Z6eUFirZsJICknpQv3lVYymLokOsCgd9qn1GLu110TugRfWaA5rxIEhd8O URuxy/ExycGHuTUq/3spafmrmTjlLRhBaS99/sCG9+T9uB3on+4gVGt1P8mPhgZ/0S3B AHLJeRYqQ/lsHalXHN/q9dj2p2nv3Pc0aizErECzsaqRNBLMoB7JVx0+o8n2PNYdnqsZ mKUigFXJXou1NfDiwRCnOKa96Xi5w10dLema8jfhvwX92O1Gvo9jaiKMhrzsj9vbJDZk jHRg== X-Forwarded-Encrypted: i=1; AJvYcCU5Ux3V5ZtqcbdlyNsHe/o94kMqJ/xmGE3hZ0q7DpHUqhiqoAFbcg09XiWfurzv6TJmbv22DYdQ5tOD72Y=@vger.kernel.org X-Gm-Message-State: AOJu0YxRBKwHDb+RcefXh6MgjXfslHVEiWPFCsuiIu2qkXRPTMITkNIP pSw/sEGQmrAReIIrR2Ju1v/j1T12AH0UTjTaMPkEc0xwXFVgymL9EPmu X-Gm-Gg: AZuq6aLVU87FfEKojQsrEksEv67afxELYCkqY+hO/lvHi0C61xac9xI2RX9ViS4le6L b8kk7WqdTdp8DguX2mB5PZs/HJP11VPLokpN2W1wPd3SDCGBvs/SMFD5MPZs4XbLTH1vh68UWfW 1gu+Ueuob0wkw2rmsXJvd7RI7fmlNimO+6pXEb5cJbCSpZv91MgLVn1G3TQKDw9Ncn3TymjfOpX 1LljhGHsQB0DjBmFICO1DcfsaLiWl10Cs0scllaZpMhC3CbZ1Uj2OIhxPpcHDROo1/HAlPAjid5 TtntQo4O7r8woo4rRUicFL2HzJ6AXEfHObsy423VGNnYBxyvjcJHkj7OyE9IerIZpKexVqxpQe9 TmVvP/2ZZktKs0DPJSES1QIsBb3KfKpkqhcn3kMzcuS+LevY7BxsePZTETS7u/PNqwmq1l5CGe7 h1ZXFZU2ZNNahKtYkuZ7UbPIkujq6S+fGIKUou1/tY/w== X-Received: by 2002:ad4:5d6b:0:b0:895:4cc2:8bfe with SMTP id 6a1803df08f44-8974049b5ffmr95098266d6.48.1771206900921; Sun, 15 Feb 2026 17:55:00 -0800 (PST) Received: from localhost.localdomain ([50.21.71.60]) by smtp.gmail.com with ESMTPSA id d75a77b69052e-506849fbb9dsm126926161cf.15.2026.02.15.17.55.00 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Sun, 15 Feb 2026 17:55:00 -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 v7 1/3] iio: magnetometer: bmc150_magn: use automated cleanup for mutex Date: Sun, 15 Feb 2026 20:54:52 -0500 Message-ID: <20260216015454.61836-2-neelb2403@gmail.com> X-Mailer: git-send-email 2.44.0 In-Reply-To: <20260216015454.61836-1-neelb2403@gmail.com> References: <20260216015454.61836-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. guard() is used in read_raw, write_raw, trig_reen, trigger_set_state, suspend, and resume. Case blocks using guard() in read_raw and write_raw are wrapped in braces at the case label level to ensure clear scope for the cleanup guards. scoped_guard() is used in remove and runtime_suspend where a short mutex-protected scope is needed for a single function call. 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 | 109 ++++++++++--------------- 1 file changed, 41 insertions(+), 68 deletions(-) diff --git a/drivers/iio/magnetometer/bmc150_magn.c b/drivers/iio/magnetome= ter/bmc150_magn.c index 6a73f6e2f1f0..ff6196c86e6b 100644 --- a/drivers/iio/magnetometer/bmc150_magn.c +++ b/drivers/iio/magnetometer/bmc150_magn.c @@ -12,6 +12,7 @@ #include #include #include +#include #include #include #include @@ -453,33 +454,29 @@ static int bmc150_magn_read_raw(struct iio_dev *indio= _dev, s32 values[AXIS_XYZ_MAX]; =20 switch (mask) { - case IIO_CHAN_INFO_RAW: + case IIO_CHAN_INFO_RAW: { if (iio_buffer_enabled(indio_dev)) return -EBUSY; - mutex_lock(&data->mutex); + + guard(mutex)(&data->mutex); =20 ret =3D bmc150_magn_set_power_state(data, true); - if (ret < 0) { - mutex_unlock(&data->mutex); + 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]; =20 ret =3D bmc150_magn_set_power_state(data, false); - if (ret < 0) { - mutex_unlock(&data->mutex); + if (ret < 0) return ret; - } =20 - mutex_unlock(&data->mutex); return IIO_VAL_INT; + } case IIO_CHAN_INFO_SCALE: /* * The API/driver performs an off-chip temperature @@ -527,48 +524,39 @@ static int bmc150_magn_write_raw(struct iio_dev *indi= o_dev, int ret; =20 switch (mask) { - case IIO_CHAN_INFO_SAMP_FREQ: + 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: + case IIO_MOD_Y: { if (val < 1 || val > 511) return -EINVAL; - mutex_lock(&data->mutex); + guard(mutex)(&data->mutex); ret =3D bmc150_magn_set_max_odr(data, val, 0, 0); - if (ret < 0) { - mutex_unlock(&data->mutex); + if (ret < 0) return ret; - } - ret =3D regmap_update_bits(data->regmap, + return 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: + BMC150_MAGN_REPXY_TO_REGVAL(val)); + } + case IIO_MOD_Z: { if (val < 1 || val > 256) return -EINVAL; - mutex_lock(&data->mutex); + guard(mutex)(&data->mutex); ret =3D bmc150_magn_set_max_odr(data, 0, val, 0); - if (ret < 0) { - mutex_unlock(&data->mutex); + if (ret < 0) return ret; - } - ret =3D regmap_update_bits(data->regmap, + return 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; + BMC150_MAGN_REPZ_TO_REGVAL(val)); + } default: return -EINVAL; } @@ -782,9 +770,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 +781,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 +963,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 +977,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; @@ -1024,28 +1005,20 @@ static int bmc150_magn_suspend(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_SLEEP, - true); - mutex_unlock(&data->mutex); =20 - return ret; + guard(mutex)(&data->mutex); + return bmc150_magn_set_power_mode(data, BMC150_MAGN_POWER_MODE_SLEEP, + true); } =20 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 Thu Apr 2 09:34:31 2026 Received: from mail-qv1-f48.google.com (mail-qv1-f48.google.com [209.85.219.48]) (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 C2F71286D53 for ; Mon, 16 Feb 2026 01:55:03 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.219.48 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1771206904; cv=none; b=TSY6Ztqoe/z/bM5dFnLBgDl7szxQExzo6Ns/hmJx0ZgM7wLNccXd1EHfv6gJj2tpP4/efbJc2KfqWXFTsuXBuwhOTdpv/LGf7xPKZMrLQLfeBt08ooJyqULVPhSdve5ntEEdi0UDI3w+3ge4tBExbWLO+HJ1si/mlPSKAmYgwlU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1771206904; c=relaxed/simple; bh=MIUGqPePZ9ghwnLiULfydxARprAgEyhyDBwQ1JHTanE=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=c0hNaz9NwJkO9pHm/LV3kc5qHQ2jjr8rNbO4JY7XiQ7SD9f2M1/QkMi5kzLF0z9WLvGPrJihqycFkgLjFrZSjVS3n9Sc2ihse2AQXioBlazgPbpIqvJc/T0IfDSHEPa65jSG7y9suwF7xcqQum7vUmtXCa/cCx5M28796Hefico= 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=KMekQwdo; arc=none smtp.client-ip=209.85.219.48 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="KMekQwdo" Received: by mail-qv1-f48.google.com with SMTP id 6a1803df08f44-896f632d206so58073576d6.0 for ; Sun, 15 Feb 2026 17:55:03 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1771206903; x=1771811703; 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=WRL+Jp0MwxQkAw7dlGSVMZYDv/CZQfbOrbRj11Z8Oig=; b=KMekQwdoTruoDGQ+n4AJ0nwj5Cikq3o9I5s2q9arcIvxRH3x5cNWiXqysFgavAWpID AztoIW7OfbUhsNM2SPO/bfEcb3E9q5uKnfWuhdCMWbImsWfODiPlh1epv1fI7+nDhVWK miMhb5Sal9oKa43RtSpTe+GSJHTohCKI6nt62QZ8n61UFOfwyCGjAJuVmuINVgr5nGW6 l47x02UkUNzFoSBjug1VCiiOYRwD0dsqIxfSA9TmycrTe7ENil6ZfNlOPIIU42CcT+n/ Y5xsOvXnAnhT/X07T7361RyEni3E+nE2COhk0d9RmVLcb9+OOIEZ93t0+i6BBlH4drPo O4oA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1771206903; x=1771811703; 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=WRL+Jp0MwxQkAw7dlGSVMZYDv/CZQfbOrbRj11Z8Oig=; b=bh5+t9LFYjAFz9J6CsQL2EGun7R4iQ8Jg6s86Gvk0OEP23lpImzxdmzj9FL13UlQAe sSnLBTM0/9WT/zei5vQL8yPuCyXkZ8rDRZoCj0d1tCu6YqWw8E7A9PstNQPGP5knicgA Lni1B4J8e659lPpFAZSc+q6j4W+xK/XD40QzbTXlPFrbn8hRKDejF9QITKXWAhxlVgwA jpk3Ts0eiYK/zO3bYyFkwTFd+U3LXW1rykiIS0qLSRjgZOvlguxvYASYz/Dqm6C3Upm0 GwOnxSSaU3FdAgv3d79boPHh7SUl1EYKHBCO5Sa/t7mQdWymg+8TEUXEl3fnoRMtT8Xo Y9Hw== X-Forwarded-Encrypted: i=1; AJvYcCXsYacYdwubyTTlo95Qzy7dBTkxwuG1qGQQCraqvWH6u4DEEAIZX9lCQxl+YHzEMTRiLAChvTmDTznTSCU=@vger.kernel.org X-Gm-Message-State: AOJu0YzEfm5dZGR7FbZ6+ISeB/nYkhGi+LoWkwJSwtf0NoY1uf/7+VjP yFu2zKPVeaxzBsmsKomPaYaMX9Dza8ms0X7QpxHrNXEawI05zGREjBNw2xWjjQ== X-Gm-Gg: AZuq6aLzLGkjdlPN5S40ef4e2M0JhBRgv3K22TzIGWr4Gbb22MGhvcsscTzMPjRSAMC H/KfasEPy7PCVPxua+oeSCWJB4GxDxoHFJfNiotz/L7J7WnFpHR0xahhNcgOHx/yxoml6MdU0Yt pqvwpihxTuqKlnX4aaipA00xcSgB63UQVntRe7kjnwRvKYBXinjQxnOew2WVTulhjbQC/5ZZxeW isoPGnh89KdPzh959VBhmFVQWOo3clQlpP6CdvNnzK8wuBlOdG2UsV8fP2AR0Xw7mw4+cVbS62z 6I5jt4mna+xfmwLyJJD7F9eYCpHZA5Ah36kJuAv44sMQ+cnQ35yOIGG7NqgcfA2NU6HHbcmIS6H sDJd6DV5T3R5MNMsaINHZAyhMeIqI8F+TvaKWX2KSpqwTJosvnEhIxMzPWg75HcVzX93MZ04yxp kCRd9tFGNKcZfME+QUf8N9p9w/SDKcW6a5UVgcNk69Ww== X-Received: by 2002:a05:6214:f2f:b0:895:496f:1a71 with SMTP id 6a1803df08f44-8973f3270admr101765856d6.28.1771206902724; Sun, 15 Feb 2026 17:55:02 -0800 (PST) Received: from localhost.localdomain ([50.21.71.60]) by smtp.gmail.com with ESMTPSA id d75a77b69052e-506849fbb9dsm126926161cf.15.2026.02.15.17.55.01 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Sun, 15 Feb 2026 17:55:02 -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 , Andy Shevchenko Subject: [PATCH v7 2/3] iio: magnetometer: bmc150_magn: replace msleep with fsleep Date: Sun, 15 Feb 2026 20:54:53 -0500 Message-ID: <20260216015454.61836-3-neelb2403@gmail.com> X-Mailer: git-send-email 2.44.0 In-Reply-To: <20260216015454.61836-1-neelb2403@gmail.com> References: <20260216015454.61836-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 Reviewed-by: Andy Shevchenko --- 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 ff6196c86e6b..e7f8d118242b 100644 --- a/drivers/iio/magnetometer/bmc150_magn.c +++ b/drivers/iio/magnetometer/bmc150_magn.c @@ -683,7 +683,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 Thu Apr 2 09:34:31 2026 Received: from mail-qv1-f46.google.com (mail-qv1-f46.google.com [209.85.219.46]) (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 A80CF2BE7A7 for ; Mon, 16 Feb 2026 01:55:05 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.219.46 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1771206906; cv=none; b=bjQyPEToCr9MHA3XkuTexG7q4C3xa7N1sfzbZqUhOlXifSTZUyeC0A5UL8g+z/lBD81TO74r+jJ4uXltt9fXOVr2uohfI6ajsYe9qzR1ClupkqjAyDJ+OhN3ksIA3HZxsWZHCpKjyu1k16OBSup+x+NIuKdrksBlnpzwEROhoiI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1771206906; c=relaxed/simple; bh=dFB59mytzmRWRnKqQQNge2zn1BGrXq7oA9vprg2lXio=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=PIqhiZEajGzG39KdVz7yIz/Y8hLKbXjI69DeTpZF/WOEABELstPOm0RvXEF6ARNdBpMV1gK07LxEmHV89MUq7ZHOvD2EG7lf8zCbVn4nWxen8DJxfvKzWdUXP4HfzzBRvjw17z2TpLpIge7fvWX+5Ph3/zV6Ti2tirxBZQwDeHM= 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=ax4Utkva; arc=none smtp.client-ip=209.85.219.46 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="ax4Utkva" Received: by mail-qv1-f46.google.com with SMTP id 6a1803df08f44-896fb37d1f0so62297036d6.2 for ; Sun, 15 Feb 2026 17:55:05 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1771206904; x=1771811704; 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=rsSw2N0mFOfL7A7wPIuvu1J4Yi6uMDkONpE+mB9hBTo=; b=ax4UtkvaVOENp1WQ9UPLKYpiOuqiASGk7cag5uXTIbQywuoBKzYcqU7ZBfw9OYs5K+ pG6CsbQvQC705czXssnmBmj3eiPEO7I7jQmw6EK5IdJ4G68SIveh/N325OkSeYPc4Li8 NrJPJzC1JyyntofoLYgI71H7guND6+/tbbOyS88x7ruO3C1Ml8LS0UPSwgu5ynvt2OlG 0lVy7slqe0oh+Xr1NpZvYd9xpDmBr3vzCF8pyiEM/33gMrq7tRYq3OGpB+Qdt45XYg4L CV6JjerybS6/kfXFgOUOb/G+H1HnarizDr5iDXNyWXO1zaPO+mVaxryIl6rLnal0aiqu tdIg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1771206904; x=1771811704; 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=rsSw2N0mFOfL7A7wPIuvu1J4Yi6uMDkONpE+mB9hBTo=; b=UKl/B35F3zzN4RV4wMi1+voyHnOnP1FAYglTYbUob9c9ptjOEBVmAnjFSIl0JyanVh xS1GQYQHo+Gc4BXelFkYTWNrZjthLfsne9Wok3bbRP03f1d452F3ruV1/wyeP7rlKkpG NEHxFPEMZlXgxkc4q4WTVAolr7kAejHd6ol27gCVxEAr7Iewt9CpFrVXto3oR4rrOGPK fhLZ1gzFKZElKf/rWU1kqsX3Y8/Cey63WBy1495d4nrWINWQeiAhiI2WEeNKM+MrhGGT Gh0+rXPSIrZK+xvhIoDSUiEkBFoZ04wa6gq+yW3vHykXZogg/UAIiinfaZFnttt8TmuQ EjPg== X-Forwarded-Encrypted: i=1; AJvYcCVvI1tDKkvkW781Nm3kTfz38KYE0+DLPxAiT0JwD9fKxWncwLAq7lxF+OFPxftStZE71N+0X7gM9+fY/JU=@vger.kernel.org X-Gm-Message-State: AOJu0YyCCsiVKkJlKsj5DJZzZI+uV1VQBrYTDkQ3Igv0sTDAryhLDYU/ 4+uI5b6wsaqVTQ2Kbp2MZ/ClpTrMZSMfnoovLRj9PyBLnu2DS0ONH8ot X-Gm-Gg: AZuq6aIb6EEoie1lpS2xBaZepZexXZGbEtD8b7j40KqR3KQtD601sBrKT9i/dM8Cp1m NKwQ72HomK9SuasKbuXVL5Pm5vizNGgyZJ6Fy4syhYmDpMZTp4BuyExn8hcms+TN43lzwwUtgbg THcz3hzg2O3YWEtpQaA0Vj/JRO6gqCO7xkKI8Ckr8PDGFJSGw1dmhpuiXZs6Mmv3M7KI5RQYUQe MKx8sN0+SufRbsjlrmmEGB3g0aaTCfYtHZKWZwTKh80zz5+QWk5cTPrWOFu7vuZbtdnrE8J+qZY Rp7YBVr00oqItSRTZzk2GaGX7e6KbfjJz2/hjcR+b03jNotE9IkEWfuScfD7eqjq3U4lo34VoGH QR7GFGIRptP6zfQOfR8QV2KEdHsx0NCtvuFKWeljPhs/boomvFy6wfQ5nOr87E7ISxtlzni7t6d VNr0ausAL9xOIahq3g5Jdx/dhHW7OiChTEWkpAOFyHAg== X-Received: by 2002:a05:6214:da1:b0:888:89fd:a727 with SMTP id 6a1803df08f44-897404b6a0bmr104838776d6.49.1771206904509; Sun, 15 Feb 2026 17:55:04 -0800 (PST) Received: from localhost.localdomain ([50.21.71.60]) by smtp.gmail.com with ESMTPSA id d75a77b69052e-506849fbb9dsm126926161cf.15.2026.02.15.17.55.03 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Sun, 15 Feb 2026 17:55:04 -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 v7 3/3] iio: magnetometer: bmc150_magn: minor formatting cleanup Date: Sun, 15 Feb 2026 20:54:54 -0500 Message-ID: <20260216015454.61836-4-neelb2403@gmail.com> X-Mailer: git-send-email 2.44.0 In-Reply-To: <20260216015454.61836-1-neelb2403@gmail.com> References: <20260216015454.61836-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 using one entry per line with proper indentation and spaces inside braces. 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 Reviewed-by: Andy Shevchenko --- drivers/iio/magnetometer/bmc150_magn.c | 31 ++++++++++++++------------ 1 file changed, 17 insertions(+), 14 deletions(-) diff --git a/drivers/iio/magnetometer/bmc150_magn.c b/drivers/iio/magnetome= ter/bmc150_magn.c index e7f8d118242b..6e154b55ca18 100644 --- a/drivers/iio/magnetometer/bmc150_magn.c +++ b/drivers/iio/magnetometer/bmc150_magn.c @@ -149,14 +149,16 @@ 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 }, + { 15, 0x04 }, + { 20, 0x05 }, + { 25, 0x06 }, + { 30, 0x07 }, +}; =20 enum bmc150_magn_presets { LOW_POWER_PRESET, @@ -170,10 +172,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 @@ -643,8 +645,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