Skip to content

Commit 209835e

Browse files
committed
Merge tag 'char-misc-6.4-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc
Pull char/misc driver fixes from Greg KH: "Here are a bunch of tiny char/misc/other driver fixes for 6.4-rc5 that resolve a number of reported issues. Included in here are: - iio driver fixes - fpga driver fixes - test_firmware bugfixes - fastrpc driver tiny bugfixes - MAINTAINERS file updates for some subsystems All of these have been in linux-next this past week with no reported issues" * tag 'char-misc-6.4-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc: (34 commits) test_firmware: fix the memory leak of the allocated firmware buffer test_firmware: fix a memory leak with reqs buffer test_firmware: prevent race conditions by a correct implementation of locking firmware_loader: Fix a NULL vs IS_ERR() check MAINTAINERS: Vaibhav Gupta is the new ipack maintainer dt-bindings: fpga: replace Ivan Bornyakov maintainership MAINTAINERS: update Microchip MPF FPGA reviewers misc: fastrpc: reject new invocations during device removal misc: fastrpc: return -EPIPE to invocations on device removal misc: fastrpc: Reassign memory ownership only for remote heap misc: fastrpc: Pass proper scm arguments for secure map request iio: imu: inv_icm42600: fix timestamp reset iio: adc: ad_sigma_delta: Fix IRQ issue by setting IRQ_DISABLE_UNLAZY flag dt-bindings: iio: adc: renesas,rcar-gyroadc: Fix adi,ad7476 compatible value iio: dac: mcp4725: Fix i2c_master_send() return value handling iio: accel: kx022a fix irq getting iio: bu27034: Ensure reset is written iio: dac: build ad5758 driver when AD5758 is selected iio: addac: ad74413: fix resistance input processing iio: light: vcnl4035: fixed chip ID check ...
2 parents 41f3ab2 + 48e1560 commit 209835e

27 files changed

+295
-115
lines changed

Documentation/devicetree/bindings/fpga/lattice,sysconfig.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
77
title: Lattice Slave SPI sysCONFIG FPGA manager
88

99
maintainers:
10-
- Ivan Bornyakov <i.bornyakov@metrotek.ru>
10+
- Vladimir Georgiev <v.georgiev@metrotek.ru>
1111

1212
description: |
1313
Lattice sysCONFIG port, which is used for FPGA configuration, among others,

Documentation/devicetree/bindings/fpga/microchip,mpf-spi-fpga-mgr.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
77
title: Microchip Polarfire FPGA manager.
88

99
maintainers:
10-
- Ivan Bornyakov <i.bornyakov@metrotek.ru>
10+
- Vladimir Georgiev <v.georgiev@metrotek.ru>
1111

1212
description:
1313
Device Tree Bindings for Microchip Polarfire FPGA Manager using slave SPI to

Documentation/devicetree/bindings/iio/adc/nxp,imx8qxp-adc.yaml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,12 @@ properties:
3939
power-domains:
4040
maxItems: 1
4141

42+
vref-supply:
43+
description: |
44+
External ADC reference voltage supply on VREFH pad. If VERID[MVI] is
45+
set, there are additional, internal reference voltages selectable.
46+
VREFH1 is always from VREFH pad.
47+
4248
"#io-channel-cells":
4349
const: 1
4450

@@ -72,6 +78,7 @@ examples:
7278
assigned-clocks = <&clk IMX_SC_R_ADC_0>;
7379
assigned-clock-rates = <24000000>;
7480
power-domains = <&pd IMX_SC_R_ADC_0>;
81+
vref-supply = <&reg_1v8>;
7582
#io-channel-cells = <1>;
7683
};
7784
};

Documentation/devicetree/bindings/iio/adc/renesas,rcar-gyroadc.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,7 @@ patternProperties:
9090
of the MAX chips to the GyroADC, while MISO line of each Maxim
9191
ADC connects to a shared input pin of the GyroADC.
9292
enum:
93-
- adi,7476
93+
- adi,ad7476
9494
- fujitsu,mb88101a
9595
- maxim,max1162
9696
- maxim,max11100

MAINTAINERS

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10115,7 +10115,7 @@ S: Maintained
1011510115
F: Documentation/process/kernel-docs.rst
1011610116

1011710117
INDUSTRY PACK SUBSYSTEM (IPACK)
10118-
M: Samuel Iglesias Gonsalvez <siglesias@igalia.com>
10118+
M: Vaibhav Gupta <vaibhavgupta40@gmail.com>
1011910119
M: Jens Taprogge <jens.taprogge@taprogge.org>
1012010120
M: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
1012110121
L: industrypack-devel@lists.sourceforge.net
@@ -13837,7 +13837,7 @@ F: drivers/tty/serial/8250/8250_pci1xxxx.c
1383713837

1383813838
MICROCHIP POLARFIRE FPGA DRIVERS
1383913839
M: Conor Dooley <conor.dooley@microchip.com>
13840-
R: Ivan Bornyakov <i.bornyakov@metrotek.ru>
13840+
R: Vladimir Georgiev <v.georgiev@metrotek.ru>
1384113841
L: linux-fpga@vger.kernel.org
1384213842
S: Supported
1384313843
F: Documentation/devicetree/bindings/fpga/microchip,mpf-spi-fpga-mgr.yaml

drivers/base/firmware_loader/main.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -812,7 +812,7 @@ static void fw_log_firmware_info(const struct firmware *fw, const char *name, st
812812
char *outbuf;
813813

814814
alg = crypto_alloc_shash("sha256", 0, 0);
815-
if (!alg)
815+
if (IS_ERR(alg))
816816
return;
817817

818818
sha256buf = kmalloc(SHA256_DIGEST_SIZE, GFP_KERNEL);

drivers/iio/accel/kionix-kx022a.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1048,7 +1048,7 @@ int kx022a_probe_internal(struct device *dev)
10481048
data->ien_reg = KX022A_REG_INC4;
10491049
} else {
10501050
irq = fwnode_irq_get_byname(fwnode, "INT2");
1051-
if (irq <= 0)
1051+
if (irq < 0)
10521052
return dev_err_probe(dev, irq, "No suitable IRQ\n");
10531053

10541054
data->inc_reg = KX022A_REG_INC5;

drivers/iio/accel/st_accel_core.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1291,12 +1291,12 @@ static int apply_acpi_orientation(struct iio_dev *indio_dev)
12911291

12921292
adev = ACPI_COMPANION(indio_dev->dev.parent);
12931293
if (!adev)
1294-
return 0;
1294+
return -ENXIO;
12951295

12961296
/* Read _ONT data, which should be a package of 6 integers. */
12971297
status = acpi_evaluate_object(adev->handle, "_ONT", NULL, &buffer);
12981298
if (status == AE_NOT_FOUND) {
1299-
return 0;
1299+
return -ENXIO;
13001300
} else if (ACPI_FAILURE(status)) {
13011301
dev_warn(&indio_dev->dev, "failed to execute _ONT: %d\n",
13021302
status);

drivers/iio/adc/ad4130.c

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1817,13 +1817,19 @@ static const struct clk_ops ad4130_int_clk_ops = {
18171817
.unprepare = ad4130_int_clk_unprepare,
18181818
};
18191819

1820+
static void ad4130_clk_del_provider(void *of_node)
1821+
{
1822+
of_clk_del_provider(of_node);
1823+
}
1824+
18201825
static int ad4130_setup_int_clk(struct ad4130_state *st)
18211826
{
18221827
struct device *dev = &st->spi->dev;
18231828
struct device_node *of_node = dev_of_node(dev);
18241829
struct clk_init_data init;
18251830
const char *clk_name;
18261831
struct clk *clk;
1832+
int ret;
18271833

18281834
if (st->int_pin_sel == AD4130_INT_PIN_CLK ||
18291835
st->mclk_sel != AD4130_MCLK_76_8KHZ)
@@ -1843,7 +1849,11 @@ static int ad4130_setup_int_clk(struct ad4130_state *st)
18431849
if (IS_ERR(clk))
18441850
return PTR_ERR(clk);
18451851

1846-
return of_clk_add_provider(of_node, of_clk_src_simple_get, clk);
1852+
ret = of_clk_add_provider(of_node, of_clk_src_simple_get, clk);
1853+
if (ret)
1854+
return ret;
1855+
1856+
return devm_add_action_or_reset(dev, ad4130_clk_del_provider, of_node);
18471857
}
18481858

18491859
static int ad4130_setup(struct iio_dev *indio_dev)

drivers/iio/adc/ad7192.c

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -897,18 +897,14 @@ static const struct iio_info ad7195_info = {
897897
__AD719x_CHANNEL(_si, _channel1, -1, _address, NULL, IIO_VOLTAGE, \
898898
BIT(IIO_CHAN_INFO_SCALE), ad7192_calibsys_ext_info)
899899

900-
#define AD719x_SHORTED_CHANNEL(_si, _channel1, _address) \
901-
__AD719x_CHANNEL(_si, _channel1, -1, _address, "shorted", IIO_VOLTAGE, \
902-
BIT(IIO_CHAN_INFO_SCALE), ad7192_calibsys_ext_info)
903-
904900
#define AD719x_TEMP_CHANNEL(_si, _address) \
905901
__AD719x_CHANNEL(_si, 0, -1, _address, NULL, IIO_TEMP, 0, NULL)
906902

907903
static const struct iio_chan_spec ad7192_channels[] = {
908904
AD719x_DIFF_CHANNEL(0, 1, 2, AD7192_CH_AIN1P_AIN2M),
909905
AD719x_DIFF_CHANNEL(1, 3, 4, AD7192_CH_AIN3P_AIN4M),
910906
AD719x_TEMP_CHANNEL(2, AD7192_CH_TEMP),
911-
AD719x_SHORTED_CHANNEL(3, 2, AD7192_CH_AIN2P_AIN2M),
907+
AD719x_DIFF_CHANNEL(3, 2, 2, AD7192_CH_AIN2P_AIN2M),
912908
AD719x_CHANNEL(4, 1, AD7192_CH_AIN1),
913909
AD719x_CHANNEL(5, 2, AD7192_CH_AIN2),
914910
AD719x_CHANNEL(6, 3, AD7192_CH_AIN3),
@@ -922,7 +918,7 @@ static const struct iio_chan_spec ad7193_channels[] = {
922918
AD719x_DIFF_CHANNEL(2, 5, 6, AD7193_CH_AIN5P_AIN6M),
923919
AD719x_DIFF_CHANNEL(3, 7, 8, AD7193_CH_AIN7P_AIN8M),
924920
AD719x_TEMP_CHANNEL(4, AD7193_CH_TEMP),
925-
AD719x_SHORTED_CHANNEL(5, 2, AD7193_CH_AIN2P_AIN2M),
921+
AD719x_DIFF_CHANNEL(5, 2, 2, AD7193_CH_AIN2P_AIN2M),
926922
AD719x_CHANNEL(6, 1, AD7193_CH_AIN1),
927923
AD719x_CHANNEL(7, 2, AD7193_CH_AIN2),
928924
AD719x_CHANNEL(8, 3, AD7193_CH_AIN3),

0 commit comments

Comments
 (0)