Skip to content

Commit 2d24df0

Browse files
author
Alex Shi
committed
Merge tag 'v4.4.83' into linux-linaro-lsk-v4.4
This is the 4.4.83 stable release
2 parents 21b5f5d + 425fdd2 commit 2d24df0

26 files changed

Lines changed: 57 additions & 34 deletions

File tree

Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
VERSION = 4
22
PATCHLEVEL = 4
3-
SUBLEVEL = 82
3+
SUBLEVEL = 83
44
EXTRAVERSION =
55
NAME = Blurry Fish Butt
66

drivers/iio/accel/bmc150-accel-core.c

Lines changed: 1 addition & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -194,7 +194,6 @@ struct bmc150_accel_data {
194194
struct device *dev;
195195
int irq;
196196
struct bmc150_accel_interrupt interrupts[BMC150_ACCEL_INTERRUPTS];
197-
atomic_t active_intr;
198197
struct bmc150_accel_trigger triggers[BMC150_ACCEL_TRIGGERS];
199198
struct mutex mutex;
200199
u8 fifo_mode, watermark;
@@ -489,11 +488,6 @@ static int bmc150_accel_set_interrupt(struct bmc150_accel_data *data, int i,
489488
goto out_fix_power_state;
490489
}
491490

492-
if (state)
493-
atomic_inc(&data->active_intr);
494-
else
495-
atomic_dec(&data->active_intr);
496-
497491
return 0;
498492

499493
out_fix_power_state:
@@ -1704,8 +1698,7 @@ static int bmc150_accel_resume(struct device *dev)
17041698
struct bmc150_accel_data *data = iio_priv(indio_dev);
17051699

17061700
mutex_lock(&data->mutex);
1707-
if (atomic_read(&data->active_intr))
1708-
bmc150_accel_set_mode(data, BMC150_ACCEL_SLEEP_MODE_NORMAL, 0);
1701+
bmc150_accel_set_mode(data, BMC150_ACCEL_SLEEP_MODE_NORMAL, 0);
17091702
bmc150_accel_fifo_set_mode(data);
17101703
mutex_unlock(&data->mutex);
17111704

drivers/iio/adc/vf610_adc.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@
7777
#define VF610_ADC_ADSTS_MASK 0x300
7878
#define VF610_ADC_ADLPC_EN 0x80
7979
#define VF610_ADC_ADHSC_EN 0x400
80-
#define VF610_ADC_REFSEL_VALT 0x100
80+
#define VF610_ADC_REFSEL_VALT 0x800
8181
#define VF610_ADC_REFSEL_VBG 0x1000
8282
#define VF610_ADC_ADTRG_HARD 0x2000
8383
#define VF610_ADC_AVGS_8 0x4000

drivers/iio/light/tsl2563.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -626,7 +626,7 @@ static irqreturn_t tsl2563_event_handler(int irq, void *private)
626626
struct tsl2563_chip *chip = iio_priv(dev_info);
627627

628628
iio_push_event(dev_info,
629-
IIO_UNMOD_EVENT_CODE(IIO_LIGHT,
629+
IIO_UNMOD_EVENT_CODE(IIO_INTENSITY,
630630
0,
631631
IIO_EV_TYPE_THRESH,
632632
IIO_EV_DIR_EITHER),

drivers/pinctrl/samsung/pinctrl-exynos.c

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -194,8 +194,6 @@ static int exynos_irq_request_resources(struct irq_data *irqd)
194194

195195
spin_unlock_irqrestore(&bank->slock, flags);
196196

197-
exynos_irq_unmask(irqd);
198-
199197
return 0;
200198
}
201199

@@ -216,8 +214,6 @@ static void exynos_irq_release_resources(struct irq_data *irqd)
216214
shift = irqd->hwirq * bank_type->fld_width[PINCFG_TYPE_FUNC];
217215
mask = (1 << bank_type->fld_width[PINCFG_TYPE_FUNC]) - 1;
218216

219-
exynos_irq_mask(irqd);
220-
221217
spin_lock_irqsave(&bank->slock, flags);
222218

223219
con = readl(d->virt_base + reg_con);

drivers/pinctrl/sunxi/pinctrl-sun4i-a10.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -811,6 +811,7 @@ static const struct sunxi_desc_pin sun4i_a10_pins[] = {
811811
SUNXI_FUNCTION(0x2, "lcd1"), /* D16 */
812812
SUNXI_FUNCTION(0x3, "pata"), /* ATAD12 */
813813
SUNXI_FUNCTION(0x4, "keypad"), /* IN6 */
814+
SUNXI_FUNCTION(0x5, "sim"), /* DET */
814815
SUNXI_FUNCTION_IRQ(0x6, 16), /* EINT16 */
815816
SUNXI_FUNCTION(0x7, "csi1")), /* D16 */
816817
SUNXI_PIN(SUNXI_PINCTRL_PIN(H, 17),

drivers/staging/iio/resolver/ad2s1210.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -468,7 +468,7 @@ static int ad2s1210_read_raw(struct iio_dev *indio_dev,
468468
long m)
469469
{
470470
struct ad2s1210_state *st = iio_priv(indio_dev);
471-
bool negative;
471+
u16 negative;
472472
int ret = 0;
473473
u16 pos;
474474
s16 vel;

drivers/target/iscsi/iscsi_target.c

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -418,6 +418,7 @@ int iscsit_reset_np_thread(
418418
return 0;
419419
}
420420
np->np_thread_state = ISCSI_NP_THREAD_RESET;
421+
atomic_inc(&np->np_reset_count);
421422

422423
if (np->np_thread) {
423424
spin_unlock_bh(&np->np_thread_lock);
@@ -1996,6 +1997,7 @@ iscsit_setup_text_cmd(struct iscsi_conn *conn, struct iscsi_cmd *cmd,
19961997
cmd->cmd_sn = be32_to_cpu(hdr->cmdsn);
19971998
cmd->exp_stat_sn = be32_to_cpu(hdr->exp_statsn);
19981999
cmd->data_direction = DMA_NONE;
2000+
kfree(cmd->text_in_ptr);
19992001
cmd->text_in_ptr = NULL;
20002002

20012003
return 0;

drivers/target/iscsi/iscsi_target_login.c

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1219,9 +1219,11 @@ static int __iscsi_target_login_thread(struct iscsi_np *np)
12191219
flush_signals(current);
12201220

12211221
spin_lock_bh(&np->np_thread_lock);
1222-
if (np->np_thread_state == ISCSI_NP_THREAD_RESET) {
1222+
if (atomic_dec_if_positive(&np->np_reset_count) >= 0) {
12231223
np->np_thread_state = ISCSI_NP_THREAD_ACTIVE;
1224+
spin_unlock_bh(&np->np_thread_lock);
12241225
complete(&np->np_restart_comp);
1226+
return 1;
12251227
} else if (np->np_thread_state == ISCSI_NP_THREAD_SHUTDOWN) {
12261228
spin_unlock_bh(&np->np_thread_lock);
12271229
goto exit;
@@ -1254,7 +1256,8 @@ static int __iscsi_target_login_thread(struct iscsi_np *np)
12541256
goto exit;
12551257
} else if (rc < 0) {
12561258
spin_lock_bh(&np->np_thread_lock);
1257-
if (np->np_thread_state == ISCSI_NP_THREAD_RESET) {
1259+
if (atomic_dec_if_positive(&np->np_reset_count) >= 0) {
1260+
np->np_thread_state = ISCSI_NP_THREAD_ACTIVE;
12581261
spin_unlock_bh(&np->np_thread_lock);
12591262
complete(&np->np_restart_comp);
12601263
iscsit_put_transport(conn->conn_transport);

drivers/usb/core/hcd.c

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1851,7 +1851,7 @@ void usb_hcd_flush_endpoint(struct usb_device *udev,
18511851
/* No more submits can occur */
18521852
spin_lock_irq(&hcd_urb_list_lock);
18531853
rescan:
1854-
list_for_each_entry (urb, &ep->urb_list, urb_list) {
1854+
list_for_each_entry_reverse(urb, &ep->urb_list, urb_list) {
18551855
int is_in;
18561856

18571857
if (urb->unlinked)
@@ -2448,6 +2448,8 @@ void usb_hc_died (struct usb_hcd *hcd)
24482448
}
24492449
if (usb_hcd_is_primary_hcd(hcd) && hcd->shared_hcd) {
24502450
hcd = hcd->shared_hcd;
2451+
clear_bit(HCD_FLAG_RH_RUNNING, &hcd->flags);
2452+
set_bit(HCD_FLAG_DEAD, &hcd->flags);
24512453
if (hcd->rh_registered) {
24522454
clear_bit(HCD_FLAG_POLL_RH, &hcd->flags);
24532455

0 commit comments

Comments
 (0)