From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: ARC-Seal: i=1; a=rsa-sha256; t=1521890865; cv=none; d=google.com; s=arc-20160816; b=KUktEDOnfFvWSbMrSxG759t7HGgVlgVZXZFxOsRT99oAR6ZPwX4dkWn307RCQzmzZN xrNkJgY89fa3kOBCZZZolBXwuOMIfRsDfrdjfo/7ak47mlA7dwox+7KZZSCYv6PSeCJ4 oVlmS+uR4E0yBWiysFUmbBfKumuBgOgbAasmew7IezLgbZ8KkBWNF2VonW4l0kqMxI1V 73lLy78AN6gy9RAc8wbzVKhrfo5rJAXbFXmdNMLrqP8rTW5PpHcDUPQfAkeUQu0BHEGg HqhtHnnxOwmXO7SrZyBbd/W7K97rfsiMTf6OsuK23Q5UkOCF/KaJCc/PQyWpqYBrKi6C 46ug== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature:arc-authentication-results; bh=zGYTGc5YYf2xixTp847E6evxuKfoqAKbbnXQrl+hgwk=; b=w6c9ZYWUlplwbtH5VHi29uQQc97+Vc1e6czK5HLMOx5l74PymQ1tOGyJ1qreJIcxzT zalsd2K/w0y5hqnG28BP96XCuXAV8TuisFJEz990x9haeRhqpjTkT1nhjjQYsOLxT/SD Yv99Nk2Cjf+R7WmjfdtcxF55dH74dxtjo9A99ZpqQvWOsyB5ItAwubD89qgSEPVV/WX5 DEGAccpMEAdcwPcuFxeIQLIXXDheY+KavxaSTUOD1T/V8FC09FZOiyG0fBD5qyhKBehz TUWczxwlif+ofUA3mxUhOkMJbMzEfE2kLmgWQIxYv9uAvO/8vWYx2FdAy+zRFJVnw1Uj XEnw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=HVu421Ju; spf=pass (google.com: domain of joeypabalinas@gmail.com designates 209.85.220.65 as permitted sender) smtp.mailfrom=joeypabalinas@gmail.com; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=HVu421Ju; spf=pass (google.com: domain of joeypabalinas@gmail.com designates 209.85.220.65 as permitted sender) smtp.mailfrom=joeypabalinas@gmail.com; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com X-Google-Smtp-Source: AG47ELv5awo4epgA//+45qJFTrjpg/SCkjHsDXRWtQ4gBmdqq9/QcQr11o3AglYo039SXzDAoEIwKA== From: Joey Pabalinas To: linux-kernel@vger.kernel.org Cc: Joey Pabalinas , Greg Kroah-Hartman , Arnd Bergmann , Jiri Slaby , Tomasz Kramkowsk Subject: [PATCH v2 4/4] tty/nozomi: refactor conditional statements Date: Sat, 24 Mar 2018 01:27:32 -1000 Message-Id: <20180324112732.29424-5-joeypabalinas@gmail.com> X-Mailer: git-send-email 2.16.3 In-Reply-To: <20180324112732.29424-1-joeypabalinas@gmail.com> References: <20180324112732.29424-1-joeypabalinas@gmail.com> X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: =?utf-8?q?1595818236344537946?= X-GMAIL-MSGID: =?utf-8?q?1595818236344537946?= X-Mailing-List: linux-kernel@vger.kernel.org List-ID: Reduce unnecessarily deep nesting of blocks and simplify control flow (e.g. "if/else" constructs changed to "if/return" and single case "switch" statements changed to "if" conditionals where possible). Signed-off-by: Joey Pabalinas 1 file changed, 52 insertions(+), 50 deletions(-) diff --git a/drivers/tty/nozomi.c b/drivers/tty/nozomi.c index a5074a59d3e3d33e68..0ea3e1de23c093e808 100644 --- a/drivers/tty/nozomi.c +++ b/drivers/tty/nozomi.c @@ -694,12 +694,13 @@ static void enable_transmit_ul(enum port_type port, struct nozomi *dc) { static const u16 mask[] = {MDM_UL, DIAG_UL, APP1_UL, APP2_UL, CTRL_UL}; - if (port < NOZOMI_MAX_PORTS) { - dc->last_ier |= mask[port]; - writew(dc->last_ier, dc->reg_ier); - } else { + if (port >= NOZOMI_MAX_PORTS) { dev_err(&dc->pdev->dev, "Called with wrong port?\n"); + return; } + + dc->last_ier |= mask[port]; + writew(dc->last_ier, dc->reg_ier); } /* Disable uplink interrupts */ @@ -708,12 +709,13 @@ static void disable_transmit_ul(enum port_type port, struct nozomi *dc) static const u16 mask[] = {~MDM_UL, ~DIAG_UL, ~APP1_UL, ~APP2_UL, ~CTRL_UL}; - if (port < NOZOMI_MAX_PORTS) { - dc->last_ier &= mask[port]; - writew(dc->last_ier, dc->reg_ier); - } else { + if (port >= NOZOMI_MAX_PORTS) { dev_err(&dc->pdev->dev, "Called with wrong port?\n"); + return; } + + dc->last_ier &= mask[port]; + writew(dc->last_ier, dc->reg_ier); } /* Enable downlink interrupts */ @@ -721,12 +723,13 @@ static void enable_transmit_dl(enum port_type port, struct nozomi *dc) { static const u16 mask[] = {MDM_DL, DIAG_DL, APP1_DL, APP2_DL, CTRL_DL}; - if (port < NOZOMI_MAX_PORTS) { - dc->last_ier |= mask[port]; - writew(dc->last_ier, dc->reg_ier); - } else { + if (port >= NOZOMI_MAX_PORTS) { dev_err(&dc->pdev->dev, "Called with wrong port?\n"); + return; } + + dc->last_ier |= mask[port]; + writew(dc->last_ier, dc->reg_ier); } /* Disable downlink interrupts */ @@ -735,12 +738,13 @@ static void disable_transmit_dl(enum port_type port, struct nozomi *dc) static const u16 mask[] = {~MDM_DL, ~DIAG_DL, ~APP1_DL, ~APP2_DL, ~CTRL_DL}; - if (port < NOZOMI_MAX_PORTS) { - dc->last_ier &= mask[port]; - writew(dc->last_ier, dc->reg_ier); - } else { + if (port >= NOZOMI_MAX_PORTS) { dev_err(&dc->pdev->dev, "Called with wrong port?\n"); + return; } + + dc->last_ier &= mask[port]; + writew(dc->last_ier, dc->reg_ier); } /* @@ -1028,33 +1032,31 @@ static int handle_data_dl(struct nozomi *dc, enum port_type port, u8 *toggle, if (*toggle == 0 && read_iir & mask1) { if (receive_data(port, dc)) { writew(mask1, dc->reg_fcr); - *toggle = !(*toggle); + *toggle = !*toggle; } - if (read_iir & mask2) { - if (receive_data(port, dc)) { - writew(mask2, dc->reg_fcr); - *toggle = !(*toggle); - } + if (read_iir & mask2 && receive_data(port, dc)) { + writew(mask2, dc->reg_fcr); + *toggle = !*toggle; } + + return 1; } else if (*toggle == 1 && read_iir & mask2) { if (receive_data(port, dc)) { writew(mask2, dc->reg_fcr); - *toggle = !(*toggle); + *toggle = !*toggle; } - if (read_iir & mask1) { - if (receive_data(port, dc)) { - writew(mask1, dc->reg_fcr); - *toggle = !(*toggle); - } + if (read_iir & mask1 && receive_data(port, dc)) { + writew(mask1, dc->reg_fcr); + *toggle = !*toggle; } - } else { - dev_err(&dc->pdev->dev, "port out of sync!, toggle:%d\n", - *toggle); - return 0; + + return 1; } - return 1; + + dev_err(&dc->pdev->dev, "port out of sync!, toggle:%d\n", *toggle); + return 0; } /* @@ -1087,6 +1089,7 @@ static int handle_data_ul(struct nozomi *dc, enum port_type port, u16 read_iir) } } + return 1; } else if (*toggle == 1 && read_iir & MDM_UL2) { dc->last_ier &= ~MDM_UL; writew(dc->last_ier, dc->reg_ier); @@ -1107,12 +1110,13 @@ static int handle_data_ul(struct nozomi *dc, enum port_type port, u16 read_iir) *toggle = !*toggle; } } - } else { - writew(read_iir & MDM_UL, dc->reg_fcr); - dev_err(&dc->pdev->dev, "port out of sync!\n"); - return 0; + + return 1; } - return 1; + + writew(read_iir & MDM_UL, dc->reg_fcr); + dev_err(&dc->pdev->dev, "port out of sync!\n"); + return 0; } static irqreturn_t interrupt_handler(int irq, void *dev_id) @@ -1121,7 +1125,7 @@ static irqreturn_t interrupt_handler(int irq, void *dev_id) unsigned int i; u16 read_iir; - if (!dc) + if (unlikely(!dc)) return IRQ_NONE; spin_lock(&dc->spin_mutex); @@ -1344,8 +1348,9 @@ static int nozomi_card_init(struct pci_dev *pdev, ret = pci_request_regions(dc->pdev, NOZOMI_NAME); if (ret) { - /* nozomi_private.io_addr */ - dev_err(&pdev->dev, "I/O address 0x%04x already in use\n", 0); + dev_err(&pdev->dev, "I/O address 0x%04x already in use\n", + /* (int) nozomi_private.io_addr */ 0); + goto err_disable_device; } @@ -1752,18 +1757,15 @@ static int ntty_ioctl(struct tty_struct *tty, DBG1("******** IOCTL, cmd: %d", cmd); - switch (cmd) { - case TIOCMIWAIT: { - struct async_icount cprev = port->tty_icount; - rval = wait_event_interruptible(port->tty_wait, - ntty_cflags_changed(port, arg, &cprev)); - break; - } - default: + if (cmd != TIOCMIWAIT) { DBG1("ERR: 0x%08X, %d", cmd, cmd); - break; + goto no_ioctl; } + rval = wait_event_interruptible(port->tty_wait, + ntty_cflags_changed(port, arg, &port->tty_icount)); + +no_ioctl: return rval; } -- 2.16.3