diff options
-rw-r--r-- | MAINTAINERS | 1 | ||||
-rw-r--r-- | drivers/iio/adc/rcar-gyroadc.c | 4 | ||||
-rw-r--r-- | drivers/iio/adc/xilinx-xadc-core.c | 6 | ||||
-rw-r--r-- | drivers/iio/counter/104-quad-8.c | 2 | ||||
-rw-r--r-- | drivers/staging/fsl-mc/bus/fsl-mc-bus.c | 22 | ||||
-rw-r--r-- | drivers/staging/lustre/lnet/selftest/rpc.c | 2 | ||||
-rw-r--r-- | drivers/staging/media/platform/bcm2835/mmal-vchiq.c | 7 | ||||
-rw-r--r-- | drivers/staging/vc04_services/interface/vchiq_arm/vchiq_2835_arm.c | 8 |
8 files changed, 29 insertions, 23 deletions
diff --git a/MAINTAINERS b/MAINTAINERS index 6f68cefa11e2..fa0e8da55f18 100644 --- a/MAINTAINERS +++ b/MAINTAINERS | |||
@@ -5034,7 +5034,6 @@ F: lib/fault-inject.c | |||
5034 | 5034 | ||
5035 | FBTFT Framebuffer drivers | 5035 | FBTFT Framebuffer drivers |
5036 | M: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> | 5036 | M: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> |
5037 | M: Noralf Trønnes <noralf@tronnes.org> | ||
5038 | S: Maintained | 5037 | S: Maintained |
5039 | F: drivers/staging/fbtft/ | 5038 | F: drivers/staging/fbtft/ |
5040 | 5039 | ||
diff --git a/drivers/iio/adc/rcar-gyroadc.c b/drivers/iio/adc/rcar-gyroadc.c index 0c44f72c32a8..018ed360e717 100644 --- a/drivers/iio/adc/rcar-gyroadc.c +++ b/drivers/iio/adc/rcar-gyroadc.c | |||
@@ -336,7 +336,7 @@ static int rcar_gyroadc_parse_subdevs(struct iio_dev *indio_dev) | |||
336 | struct device_node *child; | 336 | struct device_node *child; |
337 | struct regulator *vref; | 337 | struct regulator *vref; |
338 | unsigned int reg; | 338 | unsigned int reg; |
339 | unsigned int adcmode, childmode; | 339 | unsigned int adcmode = -1, childmode; |
340 | unsigned int sample_width; | 340 | unsigned int sample_width; |
341 | unsigned int num_channels; | 341 | unsigned int num_channels; |
342 | int ret, first = 1; | 342 | int ret, first = 1; |
@@ -366,6 +366,8 @@ static int rcar_gyroadc_parse_subdevs(struct iio_dev *indio_dev) | |||
366 | channels = rcar_gyroadc_iio_channels_3; | 366 | channels = rcar_gyroadc_iio_channels_3; |
367 | num_channels = ARRAY_SIZE(rcar_gyroadc_iio_channels_3); | 367 | num_channels = ARRAY_SIZE(rcar_gyroadc_iio_channels_3); |
368 | break; | 368 | break; |
369 | default: | ||
370 | return -EINVAL; | ||
369 | } | 371 | } |
370 | 372 | ||
371 | /* | 373 | /* |
diff --git a/drivers/iio/adc/xilinx-xadc-core.c b/drivers/iio/adc/xilinx-xadc-core.c index 0a6beb3d99cb..56cf5907a5f0 100644 --- a/drivers/iio/adc/xilinx-xadc-core.c +++ b/drivers/iio/adc/xilinx-xadc-core.c | |||
@@ -1208,7 +1208,7 @@ static int xadc_probe(struct platform_device *pdev) | |||
1208 | 1208 | ||
1209 | ret = xadc->ops->setup(pdev, indio_dev, irq); | 1209 | ret = xadc->ops->setup(pdev, indio_dev, irq); |
1210 | if (ret) | 1210 | if (ret) |
1211 | goto err_free_samplerate_trigger; | 1211 | goto err_clk_disable_unprepare; |
1212 | 1212 | ||
1213 | ret = request_irq(irq, xadc->ops->interrupt_handler, 0, | 1213 | ret = request_irq(irq, xadc->ops->interrupt_handler, 0, |
1214 | dev_name(&pdev->dev), indio_dev); | 1214 | dev_name(&pdev->dev), indio_dev); |
@@ -1268,6 +1268,8 @@ static int xadc_probe(struct platform_device *pdev) | |||
1268 | 1268 | ||
1269 | err_free_irq: | 1269 | err_free_irq: |
1270 | free_irq(irq, indio_dev); | 1270 | free_irq(irq, indio_dev); |
1271 | err_clk_disable_unprepare: | ||
1272 | clk_disable_unprepare(xadc->clk); | ||
1271 | err_free_samplerate_trigger: | 1273 | err_free_samplerate_trigger: |
1272 | if (xadc->ops->flags & XADC_FLAGS_BUFFERED) | 1274 | if (xadc->ops->flags & XADC_FLAGS_BUFFERED) |
1273 | iio_trigger_free(xadc->samplerate_trigger); | 1275 | iio_trigger_free(xadc->samplerate_trigger); |
@@ -1277,8 +1279,6 @@ err_free_convst_trigger: | |||
1277 | err_triggered_buffer_cleanup: | 1279 | err_triggered_buffer_cleanup: |
1278 | if (xadc->ops->flags & XADC_FLAGS_BUFFERED) | 1280 | if (xadc->ops->flags & XADC_FLAGS_BUFFERED) |
1279 | iio_triggered_buffer_cleanup(indio_dev); | 1281 | iio_triggered_buffer_cleanup(indio_dev); |
1280 | err_clk_disable_unprepare: | ||
1281 | clk_disable_unprepare(xadc->clk); | ||
1282 | err_device_free: | 1282 | err_device_free: |
1283 | kfree(indio_dev->channels); | 1283 | kfree(indio_dev->channels); |
1284 | 1284 | ||
diff --git a/drivers/iio/counter/104-quad-8.c b/drivers/iio/counter/104-quad-8.c index a5913e97945e..f9b8fc9ae13f 100644 --- a/drivers/iio/counter/104-quad-8.c +++ b/drivers/iio/counter/104-quad-8.c | |||
@@ -76,7 +76,7 @@ static int quad8_read_raw(struct iio_dev *indio_dev, | |||
76 | return IIO_VAL_INT; | 76 | return IIO_VAL_INT; |
77 | } | 77 | } |
78 | 78 | ||
79 | flags = inb(base_offset); | 79 | flags = inb(base_offset + 1); |
80 | borrow = flags & BIT(0); | 80 | borrow = flags & BIT(0); |
81 | carry = !!(flags & BIT(1)); | 81 | carry = !!(flags & BIT(1)); |
82 | 82 | ||
diff --git a/drivers/staging/fsl-mc/bus/fsl-mc-bus.c b/drivers/staging/fsl-mc/bus/fsl-mc-bus.c index 47acb0a29842..3be5f25ff113 100644 --- a/drivers/staging/fsl-mc/bus/fsl-mc-bus.c +++ b/drivers/staging/fsl-mc/bus/fsl-mc-bus.c | |||
@@ -588,8 +588,7 @@ static int parse_mc_ranges(struct device *dev, | |||
588 | int *paddr_cells, | 588 | int *paddr_cells, |
589 | int *mc_addr_cells, | 589 | int *mc_addr_cells, |
590 | int *mc_size_cells, | 590 | int *mc_size_cells, |
591 | const __be32 **ranges_start, | 591 | const __be32 **ranges_start) |
592 | u8 *num_ranges) | ||
593 | { | 592 | { |
594 | const __be32 *prop; | 593 | const __be32 *prop; |
595 | int range_tuple_cell_count; | 594 | int range_tuple_cell_count; |
@@ -602,8 +601,6 @@ static int parse_mc_ranges(struct device *dev, | |||
602 | dev_warn(dev, | 601 | dev_warn(dev, |
603 | "missing or empty ranges property for device tree node '%s'\n", | 602 | "missing or empty ranges property for device tree node '%s'\n", |
604 | mc_node->name); | 603 | mc_node->name); |
605 | |||
606 | *num_ranges = 0; | ||
607 | return 0; | 604 | return 0; |
608 | } | 605 | } |
609 | 606 | ||
@@ -630,8 +627,7 @@ static int parse_mc_ranges(struct device *dev, | |||
630 | return -EINVAL; | 627 | return -EINVAL; |
631 | } | 628 | } |
632 | 629 | ||
633 | *num_ranges = ranges_len / tuple_len; | 630 | return ranges_len / tuple_len; |
634 | return 0; | ||
635 | } | 631 | } |
636 | 632 | ||
637 | static int get_mc_addr_translation_ranges(struct device *dev, | 633 | static int get_mc_addr_translation_ranges(struct device *dev, |
@@ -639,7 +635,7 @@ static int get_mc_addr_translation_ranges(struct device *dev, | |||
639 | **ranges, | 635 | **ranges, |
640 | u8 *num_ranges) | 636 | u8 *num_ranges) |
641 | { | 637 | { |
642 | int error; | 638 | int ret; |
643 | int paddr_cells; | 639 | int paddr_cells; |
644 | int mc_addr_cells; | 640 | int mc_addr_cells; |
645 | int mc_size_cells; | 641 | int mc_size_cells; |
@@ -647,16 +643,16 @@ static int get_mc_addr_translation_ranges(struct device *dev, | |||
647 | const __be32 *ranges_start; | 643 | const __be32 *ranges_start; |
648 | const __be32 *cell; | 644 | const __be32 *cell; |
649 | 645 | ||
650 | error = parse_mc_ranges(dev, | 646 | ret = parse_mc_ranges(dev, |
651 | &paddr_cells, | 647 | &paddr_cells, |
652 | &mc_addr_cells, | 648 | &mc_addr_cells, |
653 | &mc_size_cells, | 649 | &mc_size_cells, |
654 | &ranges_start, | 650 | &ranges_start); |
655 | num_ranges); | 651 | if (ret < 0) |
656 | if (error < 0) | 652 | return ret; |
657 | return error; | ||
658 | 653 | ||
659 | if (!(*num_ranges)) { | 654 | *num_ranges = ret; |
655 | if (!ret) { | ||
660 | /* | 656 | /* |
661 | * Missing or empty ranges property ("ranges;") for the | 657 | * Missing or empty ranges property ("ranges;") for the |
662 | * 'fsl,qoriq-mc' node. In this case, identity mapping | 658 | * 'fsl,qoriq-mc' node. In this case, identity mapping |
diff --git a/drivers/staging/lustre/lnet/selftest/rpc.c b/drivers/staging/lustre/lnet/selftest/rpc.c index 92cd4113cf75..87fe366f8f70 100644 --- a/drivers/staging/lustre/lnet/selftest/rpc.c +++ b/drivers/staging/lustre/lnet/selftest/rpc.c | |||
@@ -255,7 +255,7 @@ srpc_service_init(struct srpc_service *svc) | |||
255 | svc->sv_shuttingdown = 0; | 255 | svc->sv_shuttingdown = 0; |
256 | 256 | ||
257 | svc->sv_cpt_data = cfs_percpt_alloc(lnet_cpt_table(), | 257 | svc->sv_cpt_data = cfs_percpt_alloc(lnet_cpt_table(), |
258 | sizeof(*svc->sv_cpt_data)); | 258 | sizeof(**svc->sv_cpt_data)); |
259 | if (!svc->sv_cpt_data) | 259 | if (!svc->sv_cpt_data) |
260 | return -ENOMEM; | 260 | return -ENOMEM; |
261 | 261 | ||
diff --git a/drivers/staging/media/platform/bcm2835/mmal-vchiq.c b/drivers/staging/media/platform/bcm2835/mmal-vchiq.c index f0639ee6c8b9..fdfb6a620a43 100644 --- a/drivers/staging/media/platform/bcm2835/mmal-vchiq.c +++ b/drivers/staging/media/platform/bcm2835/mmal-vchiq.c | |||
@@ -397,8 +397,10 @@ buffer_from_host(struct vchiq_mmal_instance *instance, | |||
397 | 397 | ||
398 | /* get context */ | 398 | /* get context */ |
399 | msg_context = get_msg_context(instance); | 399 | msg_context = get_msg_context(instance); |
400 | if (msg_context == NULL) | 400 | if (!msg_context) { |
401 | return -ENOMEM; | 401 | ret = -ENOMEM; |
402 | goto unlock; | ||
403 | } | ||
402 | 404 | ||
403 | /* store bulk message context for when data arrives */ | 405 | /* store bulk message context for when data arrives */ |
404 | msg_context->u.bulk.instance = instance; | 406 | msg_context->u.bulk.instance = instance; |
@@ -454,6 +456,7 @@ buffer_from_host(struct vchiq_mmal_instance *instance, | |||
454 | 456 | ||
455 | vchi_service_release(instance->handle); | 457 | vchi_service_release(instance->handle); |
456 | 458 | ||
459 | unlock: | ||
457 | mutex_unlock(&instance->bulk_mutex); | 460 | mutex_unlock(&instance->bulk_mutex); |
458 | 461 | ||
459 | return ret; | 462 | return ret; |
diff --git a/drivers/staging/vc04_services/interface/vchiq_arm/vchiq_2835_arm.c b/drivers/staging/vc04_services/interface/vchiq_arm/vchiq_2835_arm.c index e6241fb5cfa6..3aeffcb9c87e 100644 --- a/drivers/staging/vc04_services/interface/vchiq_arm/vchiq_2835_arm.c +++ b/drivers/staging/vc04_services/interface/vchiq_arm/vchiq_2835_arm.c | |||
@@ -121,8 +121,14 @@ int vchiq_platform_init(struct platform_device *pdev, VCHIQ_STATE_T *state) | |||
121 | if (err < 0) | 121 | if (err < 0) |
122 | return err; | 122 | return err; |
123 | 123 | ||
124 | (void)of_property_read_u32(dev->of_node, "cache-line-size", | 124 | err = of_property_read_u32(dev->of_node, "cache-line-size", |
125 | &g_cache_line_size); | 125 | &g_cache_line_size); |
126 | |||
127 | if (err) { | ||
128 | dev_err(dev, "Missing cache-line-size property\n"); | ||
129 | return -ENODEV; | ||
130 | } | ||
131 | |||
126 | g_fragments_size = 2 * g_cache_line_size; | 132 | g_fragments_size = 2 * g_cache_line_size; |
127 | 133 | ||
128 | /* Allocate space for the channels in coherent memory */ | 134 | /* Allocate space for the channels in coherent memory */ |