From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.1 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY, SPF_PASS autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 5C541C61CE4 for ; Sat, 19 Jan 2019 11:30:41 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 2A78A20821 for ; Sat, 19 Jan 2019 11:30:41 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="XGShPiZW" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727814AbfASLaj (ORCPT ); Sat, 19 Jan 2019 06:30:39 -0500 Received: from mail-wr1-f66.google.com ([209.85.221.66]:44971 "EHLO mail-wr1-f66.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727926AbfASLah (ORCPT ); Sat, 19 Jan 2019 06:30:37 -0500 Received: by mail-wr1-f66.google.com with SMTP id z5so18028057wrt.11 for ; Sat, 19 Jan 2019 03:30:36 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:from:to:cc:references:message-id:date:user-agent :mime-version:in-reply-to:content-language:content-transfer-encoding; bh=k/R3G+36flv9P65vgVLZqX/rvTvUPOXGtokJ2FXPjOU=; b=XGShPiZW1hOnZwI3oor8j8azE20NJuCSQYDJA5EfTh3D86cdNWlhawmwVdcF6oPqzW um8texdSaNGUHqKv2XY7VP9dzXl0el2aaaKSLeXfPqDfUGQ0yfiyM6f+e6UYbc3UK7cv kz771BiqL1DY3HbGwqwtbL0AJkn71V+YTXsdqfInwyHy4qkjTVaPoOCbTQLfXrXYbdn1 1soxxl8nDcz/bxBGF+z63WNYHRmJ5yzG21GqvnOLco/OeMt3htz5iaqnxl+asmFi1W3e gSztXrSm5NHj6jn9QjvDcl5QtXY023x2EfzJ5C87k+0eazFNtlRlkXZM1FWyyce8oEgN GpsQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:from:to:cc:references:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=k/R3G+36flv9P65vgVLZqX/rvTvUPOXGtokJ2FXPjOU=; b=iU/3fw95xNrOjPjKQFCpPv5ZcOV7X+bI1CzdFQxvLPaNrtrkZRZeCWFkoOE1klHIVy 6flVM72yEfwfDf37iS3TGMnaiPubaPOpBZvsGhjgwIaboMF9UrEaI4Zdu8VDjh/ZKXzT ePILyugSIsCOx/5Oe8jIMPB3KJ8sbkuWYZW6M4V2GIcggkv1y7gGbJOxIwoFdYYfCXnu TJ/tgYM1WOW+Bg7rOXiaDByOKFR+2F7ITUh0U7lMTcc+sb5UsN9eBOfx2kDtQqMC6nO8 H5x7w4zg+WQ4r5NCe0Td0unhObUdOzGObfOx22dR8uwURuPBoO8GJUwz7/Ig7qZJbGNG 23Kw== X-Gm-Message-State: AJcUukdspKvpdiVQ8Wv4HiuGVdaA0tiAHlxbkRmft29r7kqO7YkQIb2z Ijcjut+kqUdBn1AXjLVjZsi8jB+s X-Google-Smtp-Source: ALg8bN7IfKKamsIAF2q5OVSc3XnD/t6uPfoMMo6inalt8Qi7eCmqaubV55Z7t2YuJ6VWqDeM+tjUlQ== X-Received: by 2002:adf:ab51:: with SMTP id r17mr20304714wrc.62.1547897435887; Sat, 19 Jan 2019 03:30:35 -0800 (PST) Received: from ?IPv6:2003:ea:8bf1:e200:5cdd:5de5:6c17:efb0? (p200300EA8BF1E2005CDD5DE56C17EFB0.dip0.t-ipconnect.de. [2003:ea:8bf1:e200:5cdd:5de5:6c17:efb0]) by smtp.googlemail.com with ESMTPSA id s5sm28220326wmh.37.2019.01.19.03.30.35 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sat, 19 Jan 2019 03:30:35 -0800 (PST) Subject: [PATCH net-next 4/4] net: phy: change phy_start_interrupts to phy_request_interrupt From: Heiner Kallweit To: Andrew Lunn , Florian Fainelli , David Miller Cc: "netdev@vger.kernel.org" References: <2d4ceacd-3b1d-84d5-02ab-32e508badc6a@gmail.com> Message-ID: <90f63d2a-e357-c1cb-0b11-09f57b44e0fb@gmail.com> Date: Sat, 19 Jan 2019 12:30:05 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:60.0) Gecko/20100101 Thunderbird/60.4.0 MIME-Version: 1.0 In-Reply-To: <2d4ceacd-3b1d-84d5-02ab-32e508badc6a@gmail.com> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org Now that we enable the interrupts in phy_start() we don't have to do it before. Therefore remove enabling interrupts from phy_start_interrupts() and rename this function to reflect the changed functionality. Signed-off-by: Heiner Kallweit --- drivers/net/phy/phy.c | 11 +++-------- drivers/net/phy/phy_device.c | 4 ++-- drivers/net/phy/phylink.c | 4 ++-- include/linux/phy.h | 2 +- 4 files changed, 8 insertions(+), 13 deletions(-) diff --git a/drivers/net/phy/phy.c b/drivers/net/phy/phy.c index 30ba650bb..7bbe8bf8a 100644 --- a/drivers/net/phy/phy.c +++ b/drivers/net/phy/phy.c @@ -790,28 +790,23 @@ static int phy_enable_interrupts(struct phy_device *phydev) } /** - * phy_start_interrupts - request and enable interrupts for a PHY device + * phy_request_interrupt - request interrupt for a PHY device * @phydev: target phy_device struct * * Description: Request the interrupt for the given PHY. * If this fails, then we set irq to PHY_POLL. - * Otherwise, we enable the interrupts in the PHY. * This should only be called with a valid IRQ number. - * Returns 0 on success or < 0 on error. */ -int phy_start_interrupts(struct phy_device *phydev) +void phy_request_interrupt(struct phy_device *phydev) { if (request_threaded_irq(phydev->irq, NULL, phy_interrupt, IRQF_ONESHOT | IRQF_SHARED, phydev_name(phydev), phydev) < 0) { phydev_warn(phydev, "Can't get IRQ %d\n", phydev->irq); phydev->irq = PHY_POLL; - return 0; } - - return phy_enable_interrupts(phydev); } -EXPORT_SYMBOL(phy_start_interrupts); +EXPORT_SYMBOL(phy_request_interrupt); /** * phy_stop - Bring down the PHY link, and stop checking the status diff --git a/drivers/net/phy/phy_device.c b/drivers/net/phy/phy_device.c index 3e284d596..dd3a2302f 100644 --- a/drivers/net/phy/phy_device.c +++ b/drivers/net/phy/phy_device.c @@ -944,8 +944,8 @@ int phy_connect_direct(struct net_device *dev, struct phy_device *phydev, return rc; phy_prepare_link(phydev, handler); - if (phydev->irq > 0) - phy_start_interrupts(phydev); + if (phy_interrupt_is_valid(phydev)) + phy_request_interrupt(phydev); return 0; } diff --git a/drivers/net/phy/phylink.c b/drivers/net/phy/phylink.c index e9b8f1037..1ac832ba0 100644 --- a/drivers/net/phy/phylink.c +++ b/drivers/net/phy/phylink.c @@ -679,8 +679,8 @@ static int phylink_bringup_phy(struct phylink *pl, struct phy_device *phy) __ETHTOOL_LINK_MODE_MASK_NBITS, pl->supported, __ETHTOOL_LINK_MODE_MASK_NBITS, phy->advertising); - if (phy->irq > 0) - phy_start_interrupts(phy); + if (phy_interrupt_is_valid(phy)) + phy_request_interrupt(phy); return 0; } diff --git a/include/linux/phy.h b/include/linux/phy.h index 1fa7c367b..d0055adbc 100644 --- a/include/linux/phy.h +++ b/include/linux/phy.h @@ -1045,7 +1045,7 @@ void phy_ethtool_ksettings_get(struct phy_device *phydev, int phy_ethtool_ksettings_set(struct phy_device *phydev, const struct ethtool_link_ksettings *cmd); int phy_mii_ioctl(struct phy_device *phydev, struct ifreq *ifr, int cmd); -int phy_start_interrupts(struct phy_device *phydev); +void phy_request_interrupt(struct phy_device *phydev); void phy_print_status(struct phy_device *phydev); int phy_set_max_speed(struct phy_device *phydev, u32 max_speed); void phy_remove_link_mode(struct phy_device *phydev, u32 link_mode); -- 2.20.1