Re: [PATCH] net: bcmgenet: fix mask check in bcmgenet_validate_flow()

2020-09-02 Thread Doug Berger
;h_source) || > + if (VALIDATE_MASK(eth_mask->h_dest) || > VALIDATE_MASK(eth_mask->h_source) || > VALIDATE_MASK(eth_mask->h_proto)) { > netdev_err(dev, "rxnfc: Unsupported mask\n"); > Well spotted. Thanks! Acked-by: Doug Berger

Re: RFC: backport of commit a32c1c61212d

2020-09-01 Thread Doug Berger
On 9/1/2020 9:36 AM, Florian Fainelli wrote: > > > On 9/1/2020 9:06 AM, Doug Berger wrote: >> On 9/1/2020 7:00 AM, Greg Kroah-Hartman wrote: > > [snip] > >> [snip] >> >> My best guess at this point is to submit patches to the affected stable >&g

Re: RFC: backport of commit a32c1c61212d

2020-09-01 Thread Doug Berger
On 9/1/2020 7:00 AM, Greg Kroah-Hartman wrote: > On Tue, Aug 25, 2020 at 03:58:27PM -0700, Doug Berger wrote: >> I recently tracked down a problem I observed when booting a v5.4 kernel >> on a sparsemem UMA arm platform which includes a no-map reserved-memory >> region in the

RFC: backport of commit a32c1c61212d

2020-08-25 Thread Doug Berger
lso be applied for other architectures that now call free_area_init() upstream but not in one of these stable branches, but I am not in a position to test those architectures. For the linux-5.4.y branch such a patch might look like this: >From 671c341b5cdb8360349c33ade43115e28ca56a8a Mon Sep

Re: [PATCH v2] mm: include CMA pages in lowmem_reserve at boot

2020-08-19 Thread Doug Berger
On 8/19/2020 10:40 AM, Andrew Morton wrote: > On Wed, 19 Aug 2020 10:30:25 -0700 Florian Fainelli > wrote: > >> On 8/19/20 10:22 AM, Andrew Morton wrote: >>> On Wed, 19 Aug 2020 10:15:53 -0700 Florian Fainelli >>> wrote: >>> >> In many cases the difference is not significant, but for examp

[PATCH v2] mm: include CMA pages in lowmem_reserve at boot

2020-08-14 Thread Doug Berger
chance to be properly accounted in their zone(s) and allowing the lowmem_reserve arrays to receive consistent values. Fixes: bc22af74f271 ("mm: update min_free_kbytes from khugepaged after core initialization") Signed-off-by: Doug Berger Acked-by: Michal Hocko --- mm/page_alloc.c | 2

Re: [PATCH] mm: include CMA pages in lowmem_reserve at boot

2020-08-13 Thread Doug Berger
On 8/13/2020 4:17 AM, Michal Hocko wrote: > On Wed 12-08-20 20:51:38, Doug Berger wrote: >> The lowmem_reserve arrays provide a means of applying pressure >> against allocations from lower zones that were targeted at >> higher zones. Its values are a function of the number o

[PATCH] mm: include CMA pages in lowmem_reserve at boot

2020-08-12 Thread Doug Berger
so that the CMA pages have the chance to be properly accounted in their zone(s) and allowing the lowmem_reserve arrays to receive consistent values. Fixes: bc22af74f271 ("mm: update min_free_kbytes from khugepaged after core initialization") Signed-off-by: Doug Berger --- mm/page_a

Re: [PATCH net] net: bcmgenet: fix error returns in bcmgenet_probe()

2020-07-20 Thread Doug Berger
err = dma_set_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(32)); > if (err) > - goto err; > + goto err_clk_disable; > > /* Mii wait queue */ > init_waitqueue_head(&priv->wq); > Acked-by: Doug Berger Thanks!

Re: [PATCH net] net: bcmgenet: add missed clk_disable_unprepare in bcmgenet_probe

2020-07-20 Thread Doug Berger
t; > priv->clk_eee = devm_clk_get_optional(&priv->pdev->dev, "enet-eee"); > if (IS_ERR(priv->clk_eee)) { > dev_dbg(&priv->pdev->dev, "failed to get enet-eee clock\n"); > err = PTR_ERR(priv->clk_eee); > - goto err; > + goto err_clk_disable; > } > > /* If this is an internal GPHY, power it on now, before UniMAC is > Acked-by: Doug Berger Thanks!

Re: [PATCH net-next] net: bcmgenet: fix error returns in bcmgenet_probe()

2020-07-17 Thread Doug Berger
hanges into a pull-request with fixes tag: Fixes: c80d36ff63a5 ("net: bcmgenet: Use devm_clk_get_optional() to get the clocks") Resubmit the pull-requests with [PATCH net]. That will make them easier to apply to stable branches. Otherwise: Acked-by: Doug Berger Thanks!

[PATCH net 3/3] net: bcmgenet: restore HFB filters on resume

2020-07-16 Thread Doug Berger
the bcmgenet_hfb_create_rxnfc_filter() function is modified to access the register space directly so that it can't fail due to memory allocation issues. Fixes: f50932cca632 ("net: bcmgenet: add WAKE_FILTER support") Signed-off-by: Doug Berger --- drivers/net/ethernet/broadcom/g

[PATCH net 2/3] net: bcmgenet: test RBUF_ACPI_EN when resuming

2020-07-16 Thread Doug Berger
that the GENET hardware must have been reset so the remainder of the hardware programming is bypassed. Fixes: f50932cca632 ("net: bcmgenet: add WAKE_FILTER support") Signed-off-by: Doug Berger --- drivers/net/ethernet/broadcom/genet/bcmgenet_wol.c | 10 +++--- 1 file changed, 7 insert

[PATCH net 1/3] net: bcmgenet: test MPD_EN when resuming

2020-07-16 Thread Doug Berger
that the GENET hardware must have been reset so the remainder of the hardware programming is bypassed. Fixes: 1a1d5106c1e3 ("net: bcmgenet: move clk_wol management to bcmgenet_wol") Signed-off-by: Doug Berger --- drivers/net/ethernet/broadcom/genet/bcmgenet_wol.c | 12 1 file

[PATCH net 0/3] net: bcmgenet: fix WAKE_FILTER resume from deep sleep

2020-07-16 Thread Doug Berger
testing suspend and resume from these deep sleep states. Doug Berger (3): net: bcmgenet: test MPD_EN when resuming net: bcmgenet: test RBUF_ACPI_EN when resuming net: bcmgenet: restore HFB filters on resume drivers/net/ethernet/broadcom/genet/bcmgenet.c | 138 + drivers

[PATCH net 2/3] net: bcmgenet: use __be16 for htons(ETH_P_IP)

2020-06-24 Thread Doug Berger
The 16-bit value that holds a short in network byte order should be declared as a restricted big endian type to allow type checks to succeed during assignment. Fixes: 3e370952287c ("net: bcmgenet: add support for ethtool rxnfc flows") Reported-by: kbuild test robot Signed-off-by: D

[PATCH net 1/3] net: bcmgenet: re-remove bcmgenet_hfb_add_filter

2020-06-24 Thread Doug Berger
n is still unused and the kbuild test robot dutifully reported the warning. This commit once again removes the remaining unused hfb functions. Fixes: 14da1510fedc ("Revert "net: bcmgenet: remove unused function in bcmgenet.c"") Reported-by: kbuild test robot Signed-off-by:

[PATCH net 3/3] net: bcmgenet: use hardware padding of runt frames

2020-06-24 Thread Doug Berger
t;net: bcmgenet: fix skb_len in bcmgenet_xmit_single()") we can remove the software padding all together and make use of hardware padding of short frames as long as the hardware also always appends the FCS value to the frame. Fixes: 474ea9cafc45 ("net: bcmgenet: correctly pad short pack

[PATCH net 0/3] net: bcmgenet: use hardware padding of runt frames

2020-06-24 Thread Doug Berger
hardware to add the pad bytes if necessary. The first two commits resolve warnings observed by the kbuild test robot and are included here for simplicity of application. Doug Berger (3): net: bcmgenet: re-remove bcmgenet_hfb_add_filter net: bcmgenet: use __be16 for htons(ETH_P_IP) net: bcmgenet

[PATCH net-next] net: phy: simplify phy_link_change arguments

2020-05-18 Thread Doug Berger
needs its second argument. Signed-off-by: Doug Berger --- drivers/net/phy/phy.c| 12 ++-- drivers/net/phy/phy_device.c | 12 +--- drivers/net/phy/phylink.c| 3 +-- include/linux/phy.h | 2 +- 4 files changed, 13 insertions(+), 16 deletions(-) diff --git a

Re: [PATCH net-next 1/4] net: ethernet: validate pause autoneg setting

2020-05-13 Thread Doug Berger
On 5/13/2020 6:49 AM, Andrew Lunn wrote: >> So, I think consistency of implementation is more important than fixing >> this; the current behaviour has been established for many years now. > > Hi Russell, Doug > > With netlink ethtool we have the possibility of adding a new API to > control this.

Re: [PATCH net-next 4/4] net: bcmgenet: add support for ethtool flow control

2020-05-13 Thread Doug Berger
On 5/13/2020 2:52 AM, Russell King - ARM Linux admin wrote: > On Mon, May 11, 2020 at 05:24:10PM -0700, Doug Berger wrote: >> diff --git a/drivers/net/ethernet/broadcom/genet/bcmmii.c >> b/drivers/net/ethernet/broadcom/genet/bcmmii.c >> index 511d553a4d11..788da1ecea0c 100644

Re: [PATCH net-next 3/4] net: ethernet: introduce phy_set_pause

2020-05-13 Thread Doug Berger
On 5/13/2020 2:42 AM, Russell King - ARM Linux admin wrote: > On Mon, May 11, 2020 at 05:24:09PM -0700, Doug Berger wrote: >> This commit introduces the phy_set_pause function to the phylib as >> a helper to support the set_pauseparam ethtool method. >> >> It is

Re: [PATCH net-next 1/4] net: ethernet: validate pause autoneg setting

2020-05-13 Thread Doug Berger
On 5/13/2020 2:20 AM, Russell King - ARM Linux admin wrote: > On Wed, May 13, 2020 at 06:34:05AM +0100, Russell King - ARM Linux admin > wrote: >> On Tue, May 12, 2020 at 08:48:22PM -0700, Doug Berger wrote: >>> On 5/12/2020 11:55 AM, Russell King - ARM Linux admin wrote

Re: [PATCH net-next 1/4] net: ethernet: validate pause autoneg setting

2020-05-13 Thread Doug Berger
On 5/12/2020 10:34 PM, Russell King - ARM Linux admin wrote: > On Tue, May 12, 2020 at 08:48:22PM -0700, Doug Berger wrote: >> On 5/12/2020 11:55 AM, Russell King - ARM Linux admin wrote: >>> On Tue, May 12, 2020 at 11:31:39AM -0700, Doug Berger wrote: >>>> Thi

Re: [PATCH net-next 1/4] net: ethernet: validate pause autoneg setting

2020-05-12 Thread Doug Berger
On 5/12/2020 11:55 AM, Russell King - ARM Linux admin wrote: > On Tue, May 12, 2020 at 11:31:39AM -0700, Doug Berger wrote: >> This was intended as a fix, but I thought it would be better to keep it >> as part of this set for context and since net-next is currently open. >&

Re: [PATCH net-next 1/4] net: ethernet: validate pause autoneg setting

2020-05-12 Thread Doug Berger
On 5/12/2020 12:08 PM, Michal Kubecek wrote: > On Tue, May 12, 2020 at 11:31:39AM -0700, Doug Berger wrote: >> On 5/11/2020 5:47 PM, Andrew Lunn wrote: >>> On Mon, May 11, 2020 at 05:24:07PM -0700, Doug Berger wrote: >>>> A comment in uapi/linux/ethtool.h states &qu

Re: [PATCH net-next 3/4] net: ethernet: introduce phy_set_pause

2020-05-12 Thread Doug Berger
On 5/11/2020 5:51 PM, Andrew Lunn wrote: > On Mon, May 11, 2020 at 05:24:09PM -0700, Doug Berger wrote: >> This commit introduces the phy_set_pause function to the phylib as >> a helper to support the set_pauseparam ethtool method. >> >> It is hoped that the new

Re: [PATCH net-next 1/4] net: ethernet: validate pause autoneg setting

2020-05-12 Thread Doug Berger
On 5/11/2020 5:47 PM, Andrew Lunn wrote: > On Mon, May 11, 2020 at 05:24:07PM -0700, Doug Berger wrote: >> A comment in uapi/linux/ethtool.h states "Drivers should reject a >> non-zero setting of @autoneg when autoneogotiation is disabled (or >> not supported) for t

[PATCH net-next 2/4] net: add autoneg parameter to linkmode_set_pause

2020-05-11 Thread Doug Berger
ement") Signed-off-by: Doug Berger --- drivers/net/phy/linkmode.c | 104 +-- drivers/net/phy/phy_device.c | 3 +- drivers/net/phy/phylink.c| 6 +-- include/linux/linkmode.h | 3 +- 4 files changed, 88 insertions(+), 28 deletions(-) di

[PATCH net-next 4/4] net: bcmgenet: add support for ethtool flow control

2020-05-11 Thread Doug Berger
. Signed-off-by: Doug Berger --- drivers/net/ethernet/broadcom/genet/bcmgenet.c | 54 ++ drivers/net/ethernet/broadcom/genet/bcmgenet.h | 4 ++ drivers/net/ethernet/broadcom/genet/bcmmii.c | 38 ++ 3 files changed, 89 insertions(+), 7 deletions(-) diff

[PATCH net-next 1/4] net: ethernet: validate pause autoneg setting

2020-05-11 Thread Doug Berger
: ethernet: Add helper to determine if pause configuration is supported") Signed-off-by: Doug Berger --- drivers/net/phy/phy_device.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/net/phy/phy_device.c b/drivers/net/phy/phy_device.c index c3a107cf578e..5a9618ba232e 100644 -

[PATCH net-next 0/4] Extend phylib implementation of pause support

2020-05-11 Thread Doug Berger
nd the changes to the phylib will make it easier for them to support. Many thanks to Russell King and Andrew Lunn for their efforts to clean up and centralize support for pause and to document its shortcommings. Doug Berger (4): net: ethernet: validate pause autoneg setting net: add autone

[PATCH net-next 3/4] net: ethernet: introduce phy_set_pause

2020-05-11 Thread Doug Berger
functions are retained for all existing users and for any desenting opinions on my interpretation of the functionality. Signed-off-by: Doug Berger --- drivers/net/phy/phy_device.c | 31 +++ include/linux/phy.h | 1 + 2 files changed, 32 insertions(+) diff --git a

[PATCH net-next] net: bcmgenet: Move wake-up event out of side band ISR

2020-04-30 Thread Doug Berger
the clocks have been disabled. Signed-off-by: Doug Berger --- drivers/net/ethernet/broadcom/genet/bcmgenet.c | 72 ++ drivers/net/ethernet/broadcom/genet/bcmgenet.h | 2 + drivers/net/ethernet/broadcom/genet/bcmgenet_wol.c | 6 ++ 3 files changed, 67 insertions(+), 13

Re: [PATCH net-next v2 0/7] net: bcmgenet: add support for Wake on Filter

2020-04-29 Thread Doug Berger
On 4/29/20 3:07 PM, Doug Berger wrote: > On 4/29/20 1:01 PM, Doug Berger wrote: >> Changes in v2: >> Corrected Signed-off-by for commit 3/7. >> >> This commit set adds support for waking from 'standby' using a >> Rx Network Flow Classification fil

Re: [PATCH net-next v2 0/7] net: bcmgenet: add support for Wake on Filter

2020-04-29 Thread Doug Berger
On 4/29/20 1:01 PM, Doug Berger wrote: > Changes in v2: > Corrected Signed-off-by for commit 3/7. > > This commit set adds support for waking from 'standby' using a > Rx Network Flow Classification filter specified with ethtool. > > The first two commi

[PATCH net-next v2 5/7] net: bcmgenet: code movement

2020-04-29 Thread Doug Berger
The Hardware Filter Block code will be used by ethtool functions when defining flow types so this commit moves the functions in the file to prevent the need for prototype declarations. This is broken out to facilitate review. Signed-off-by: Doug Berger --- drivers/net/ethernet/broadcom/genet

[PATCH net-next v2 6/7] net: bcmgenet: add support for ethtool rxnfc flows

2020-04-29 Thread Doug Berger
implementation action 0 behaves no differently from not specifying a rule. The rules can be seen with ethtool commands of this form: ethtool -n|-u|--show-nfc|--show-ntuple devname [rule N] Signed-off-by: Doug Berger --- drivers/net/ethernet/broadcom/genet/bcmgenet.c | 483

[PATCH net-next v2 7/7] net: bcmgenet: add WAKE_FILTER support

2020-04-29 Thread Doug Berger
the RX_CLS_FLOW_WAKE action (i.e. -2) can wake the system from the 'standby' power state when the WAKE_FILTER WoL method is enabled. Signed-off-by: Doug Berger --- drivers/net/ethernet/broadcom/genet/bcmgenet.c | 5 ++- drivers/net/ethernet/broadcom/genet/bcmgenet_wol.c | 43 +

[PATCH net-next v2 4/7] Revert "net: bcmgenet: remove unused function in bcmgenet.c"

2020-04-29 Thread Doug Berger
This reverts commit e2072600a24161b7ddcfb26814f69f5fbc8ef85a. This commit restores the previous implementation of Hardware Filter Block functions to the file for use in subsequent commits. Signed-off-by: Doug Berger --- drivers/net/ethernet/broadcom/genet/bcmgenet.c | 122

[PATCH net-next v2 2/7] net: bcmgenet: Fix WoL with password after deep sleep

2020-04-29 Thread Doug Berger
by keeping a software copy of the password and program it during suspend. Fixes: c51de7f3976b ("net: bcmgenet: add Wake-on-LAN support code") Suggested-by: Florian Fainelli Signed-off-by: Doug Berger --- drivers/net/ethernet/broadcom/genet/bcmgenet.h | 2 ++ drivers/net/etherne

[PATCH net-next v2 3/7] net: bcmgenet: move clk_wol management to bcmgenet_wol

2020-04-29 Thread Doug Berger
sleep. Signed-off-by: Doug Berger --- drivers/net/ethernet/broadcom/genet/bcmgenet.c | 19 +++ drivers/net/ethernet/broadcom/genet/bcmgenet.h | 3 ++- drivers/net/ethernet/broadcom/genet/bcmgenet_wol.c | 14 +++--- 3 files changed, 20 insertions(+), 16 deletions(-)

[PATCH net-next v2 1/7] net: bcmgenet: set Rx mode before starting netif

2020-04-29 Thread Doug Berger
promiscuous mode are properly restored by the driver after the MAC may have been reset. Fixes: b6e978e50444 ("net: bcmgenet: add suspend/resume callbacks") Signed-off-by: Doug Berger --- drivers/net/ethernet/broadcom/genet/bcmgenet.c | 4 1 file changed, 4 insertions(+) diff --git a/d

[PATCH net-next v2 0/7] net: bcmgenet: add support for Wake on Filter

2020-04-29 Thread Doug Berger
ior to the 4.9 kernel release. The following commit relocates the functions in the file to prevent the need for additional forward declarations. Next, support for the Rx Network Flow Classification interface of ethtool is added. Finally, support for the WAKE_FILTER wol method is added. Doug

[PATCH net-next 3/7] net: bcmgenet: move clk_wol management to bcmgenet_wol

2020-04-29 Thread Doug Berger
From: Doug Berger The GENET_POWER_WOL_MAGIC power up and power down code configures the device for WoL when suspending and disables the WoL logic when resuming. It makes sense that this code should also manage the WoL clocking. This commit consolidates the logic and moves it earlier in the

[PATCH net-next 2/7] net: bcmgenet: Fix WoL with password after deep sleep

2020-04-29 Thread Doug Berger
by keeping a software copy of the password and program it during suspend. Fixes: c51de7f3976b ("net: bcmgenet: add Wake-on-LAN support code") Suggested-by: Florian Fainelli Signed-off-by: Doug Berger --- drivers/net/ethernet/broadcom/genet/bcmgenet.h | 2 ++ drivers/net/etherne

[PATCH net-next 5/7] net: bcmgenet: code movement

2020-04-29 Thread Doug Berger
The Hardware Filter Block code will be used by ethtool functions when defining flow types so this commit moves the functions in the file to prevent the need for prototype declarations. This is broken out to facilitate review. Signed-off-by: Doug Berger --- drivers/net/ethernet/broadcom/genet

[PATCH net-next 0/7] net: bcmgenet: add support for Wake on Filter

2020-04-29 Thread Doug Berger
functions in the file to prevent the need for additional forward declarations. Next, support for the Rx Network Flow Classification interface of ethtool is added. Finally, support for the WAKE_FILTER wol method is added. Doug Berger (7): net: bcmgenet: set Rx mode before starting netif net

[PATCH net-next 4/7] Revert "net: bcmgenet: remove unused function in bcmgenet.c"

2020-04-29 Thread Doug Berger
This reverts commit e2072600a24161b7ddcfb26814f69f5fbc8ef85a. This commit restores the previous implementation of Hardware Filter Block functions to the file for use in subsequent commits. Signed-off-by: Doug Berger --- drivers/net/ethernet/broadcom/genet/bcmgenet.c | 122

[PATCH net-next 1/7] net: bcmgenet: set Rx mode before starting netif

2020-04-29 Thread Doug Berger
promiscuous mode are properly restored by the driver after the MAC may have been reset. Fixes: b6e978e50444 ("net: bcmgenet: add suspend/resume callbacks") Signed-off-by: Doug Berger --- drivers/net/ethernet/broadcom/genet/bcmgenet.c | 4 1 file changed, 4 insertions(+) diff --git a/d

[PATCH net-next 6/7] net: bcmgenet: add support for ethtool rxnfc flows

2020-04-29 Thread Doug Berger
implementation action 0 behaves no differently from not specifying a rule. The rules can be seen with ethtool commands of this form: ethtool -n|-u|--show-nfc|--show-ntuple devname [rule N] Signed-off-by: Doug Berger --- drivers/net/ethernet/broadcom/genet/bcmgenet.c | 483

[PATCH net-next 7/7] net: bcmgenet: add WAKE_FILTER support

2020-04-29 Thread Doug Berger
the RX_CLS_FLOW_WAKE action (i.e. -2) can wake the system from the 'standby' power state when the WAKE_FILTER WoL method is enabled. Signed-off-by: Doug Berger --- drivers/net/ethernet/broadcom/genet/bcmgenet.c | 5 ++- drivers/net/ethernet/broadcom/genet/bcmgenet_wol.c | 43 +

[PATCH net 3/4] net: bcmgenet: soft reset 40nm EPHYs before MAC init

2019-10-16 Thread Doug Berger
f ("Revert "net: bcmgenet: Software reset EPHY after power on"") Signed-off-by: Doug Berger --- drivers/net/ethernet/broadcom/genet/bcmgenet.c | 28 --- drivers/net/ethernet/broadcom/genet/bcmgenet.h | 2 +- drivers/net/ethernet/broadcom/genet/bcmmii.c | 112

[PATCH net 1/4] net: bcmgenet: don't set phydev->link from MAC

2019-10-16 Thread Doug Berger
genphy_read_status") Signed-off-by: Doug Berger --- drivers/net/ethernet/broadcom/genet/bcmgenet.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/drivers/net/ethernet/broadcom/genet/bcmgenet.c b/drivers/net/ethernet/broadcom/genet/bcmgenet.c index 12cb77ef1081..10d6

[PATCH net 4/4] net: bcmgenet: reset 40nm EPHY on energy detect

2019-10-16 Thread Doug Berger
state. Fixes: 1c1008c793fa ("net: bcmgenet: add main driver file") Signed-off-by: Doug Berger --- drivers/net/ethernet/broadcom/genet/bcmgenet.c | 9 - 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/drivers/net/ethernet/broadcom/genet/bcmgenet.c b/drivers/ne

[PATCH net 2/4] net: phy: bcm7xxx: define soft_reset for 40nm EPHY

2019-10-16 Thread Doug Berger
2d85ec0559 ("net: phy: Stop with excessive soft reset") Signed-off-by: Doug Berger --- drivers/net/phy/bcm7xxx.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/net/phy/bcm7xxx.c b/drivers/net/phy/bcm7xxx.c index 8fc33867e524..af8eabe7a6d4 100644 --- a/drivers/net/phy/bcm7xxx

[PATCH net 0/4] net: bcmgenet: restore internal EPHY support

2019-10-16 Thread Doug Berger
initialization sequence in a way that keeps the GENETv3 MAC interface happy. Finally, I observed a number of issues when manually configuring the network interface of the older EPHYs that appear to be resolved by the fourth commit. Doug Berger (4): net: bcmgenet: don't set phydev->link from M

Re: [PATCH net] net: bcmgenet: Fix RGMII_MODE_EN value for GENET v1/2/3

2019-10-15 Thread Doug Berger
V1(priv) || GENET_IS_V2(priv) || GENET_IS_V3(priv)) > + reg |= RGMII_MODE_EN_V123; > + else > + reg |= RGMII_MODE_EN; > bcmgenet_ext_writel(priv, reg, EXT_RGMII_OOB_CTRL); > } > > Acked-by: Doug Berger

Re: [PATCH net-next] net: bcmgenet: Add a shutdown callback

2019-10-15 Thread Doug Berger
e = bcmgenet_probe, > .remove = bcmgenet_remove, > + .shutdown = bcmgenet_shutdown, > .driver = { > .name = "bcmgenet", > .of_match_table = bcmgenet_match, > Acked-by: Doug Berger

Re: [PATCH net-next v2] net: bcmgenet: Generate a random MAC if none is valid

2019-10-14 Thread Doug Berger
) { > + dev_warn(&pdev->dev, "using random Ethernet MAC\n"); > + eth_hw_addr_random(dev); > + } else { > + ether_addr_copy(dev->dev_addr, macaddr); > + } > dev->watchdog_timeo = 2 * HZ; > dev->ethtool_ops = &bcmgenet_ethtool_ops; > dev->netdev_ops = &bcmgenet_netdev_ops; > Acked-by: Doug Berger

Re: [PATCH net] net: bcmgenet: Set phydev->dev_flags only for internal PHYs

2019-10-14 Thread Doug Berger
>> +u32 phy_flags = 0; >> int ret; >> >> /* Communicate the integrated PHY revision */ >> -phy_flags = priv->gphy_rev; >> +if (priv->internal_phy) >> +phy_flags = priv->gphy_rev; >> >> /* Initialize link state variables that bcmgenet_mii_setup() uses */ >> priv->old_link = -1; >> > > Acked-by: Doug Berger

Re: [PATCH] net: bcmgenet: use ethtool_op_get_ts_info()

2019-08-30 Thread Doug Berger
X_SOFTWARE capability is announced. >> >> Similar to commit a8f5cb9e7991 ("smsc95xx: use ethtool_op_get_ts_info()") >> >> Signed-off-by: Ryan M. Collins > > Acked-by: Florian Fainelli > Thanks Ryan! Acked-by: Doug Berger

Re: [PATCH net-next] net: bcmgenet: use devm_platform_ioremap_resource() to simplify code

2019-08-21 Thread Doug Berger
dev->dev, r); > + priv->base = devm_platform_ioremap_resource(pdev, 0); > if (IS_ERR(priv->base)) { > err = PTR_ERR(priv->base); > goto err; > Acked-by: Doug Berger

Re: [PATCH] net: bcmgenet: use promisc for unsupported filters

2019-07-18 Thread Doug Berger
> mode when the required filters cannot be met. > > Also correct the number of MDF filters supported. It should be 17, > not 16. > > Signed-off-by: Justin Chen Acked-by: Doug Berger Thanks Justin :) Doug

[PATCH] ARM: mm: only adjust sections of valid mm structures

2019-06-27 Thread Doug Berger
11ce4b33aedc ("ARM: 8672/1: mm: remove tasklist locking from update_sections_early()") are equally valid for not requiring grabbing the task_lock around this check. Fixes: 08925c2f124f ("ARM: 8464/1: Update all mm structures with section adjustments") Signed-off-by: Doug Berger --- ar

[PATCH] cma: fail if fixed declaration can't be honored

2019-06-24 Thread Doug Berger
7;limit' arguments to be silently adjusted to meet alignment constraints. This commit enforces the documented behavior through explicit checks that return an error if the region does not fit within a specified region. Fixes: 5ea3b1b2f8ad ("cma: add placement specifier for "cma="

Re: [PATCH] ARM: mm: initialize pfn limits with find_limits()

2019-01-10 Thread Doug Berger
On 12/27/18 3:47 PM, Doug Berger wrote: > The max_low_pfn value must be set before sparse_init() is called to > keep the early memblock allocations and frees balanced for kmemleak > initialization when sparsemem is enabled. > > This commit accomplishes that by replacing the loca

[PATCH] ARM: mm: initialize pfn limits with find_limits()

2018-12-27 Thread Doug Berger
) Signed-off-by: Doug Berger --- arch/arm/mm/init.c | 20 1 file changed, 4 insertions(+), 16 deletions(-) diff --git a/arch/arm/mm/init.c b/arch/arm/mm/init.c index 32e4845af2b6..98a733f3a5b9 100644 --- a/arch/arm/mm/init.c +++ b/arch/arm/mm/init.c @@ -302,15 +302,12

Re: [PATCH] PM / Sleep: only update last time for active wakeup sources

2018-04-26 Thread Doug Berger
On 04/25/2018 11:30 PM, Rafael J. Wysocki wrote: > On Thu, Apr 26, 2018 at 1:40 AM, Doug Berger wrote: >> When wakelock support was added, the wakeup_source_add() function >> was updated to set the last_time value of the wakeup source. This >> has the unintended side effect o

[PATCH] PM / Sleep: only update last time for active wakeup sources

2018-04-25 Thread Doug Berger
of the last_time value as the last time the wakeup source was active and allows a wakeup source that has never been active to have a last_time value of 0. Fixes: b86ff982 ("PM / Sleep: Add user space interface for manipulating wakeup sources, v3") Signed-off-by: Doug Berger --- dr

Re: [PATCH 02/10] net: bcmgenet: free netdev on of_match_node() error

2017-12-04 Thread Doug Berger
On 12/02/2017 11:26 AM, Arvind Yadav wrote: > The change is to call free_netdev(), If of_match_node() will fail. > > Signed-off-by: Arvind Yadav > --- > drivers/net/ethernet/broadcom/genet/bcmgenet.c | 6 -- > 1 file changed, 4 insertions(+), 2 deletions(-) > > diff --git a/drivers/net/ethe

Re: [PATCH 1/7 v2] net: bcmgenet: Fix platform_get_irq's error checking

2017-12-04 Thread Doug Berger
On 12/04/2017 09:48 AM, Arvind Yadav wrote: > The platform_get_irq() function returns negative number if an error occurs, > Zero if No irq is found and positive number if irq gets successful. > platform_get_irq() error checking only for zero is not correct. > > Signed-off-by: Arvind Yadav > --- >

[PATCH net-next 1/9] net: bcmgenet: correct bad merge

2017-10-25 Thread Doug Berger
correct that. [1] https://lkml.org/lkml/2017/3/13/1145 [2] https://lkml.org/lkml/2017/3/9/890 Fixes: 101c431492d2 ("Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net") Signed-off-by: Doug Berger --- drivers/net/ethernet/broadcom/genet/bcmgenet.c | 18 +- 1 fi

[PATCH net-next 2/9] net: bcmgenet: prevent duplicate calls of bcmgenet_dma_teardown

2017-10-25 Thread Doug Berger
is called before bcmgenet_fini_dma in all paths of execution. Fixes: 4a0c081eff43 ("net: bcmgenet: call bcmgenet_dma_teardown in bcmgenet_fini_dma") Signed-off-by: Doug Berger --- drivers/net/ethernet/broadcom/genet/bcmgenet.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-)

[PATCH net-next 5/9] net: bcmgenet: cleanup ring interrupt masking and unmasking

2017-10-25 Thread Doug Berger
er in bcmgenet_netif_stop(). The interrupts can still be enabled in the functions bcmgenet_enable_tx_napi() and bcmgenet_enable_rx_napi(), but use the ring context int_enable() method to keep the functionality consistent and the code cleaner. Signed-off-by: Doug Berger --- drivers/net/ethernet/broadcom/

[PATCH net-next 3/9] net: bcmgenet: enable loopback during UniMAC sw_reset

2017-10-25 Thread Doug Berger
associated bug) are removed so reset_umac no longer needs to return a result, and that means init_umac that calls reset_umac does not need to as well. Fixes: 1c1008c793fa ("net: bcmgenet: add main driver file") Signed-off-by: Doug Berger --- drivers/net/ethernet/broadcom/genet/bcmge

[PATCH net-next 6/9] net: bcmgenet: rework bcmgenet_netif_start and bcmgenet_netif_stop

2017-10-25 Thread Doug Berger
This commit consolidates more common functionality from bcmgenet_close and bcmgenet_suspend into bcmgenet_netif_stop and modifies the start and stop sequences to better suit the design of the GENET hardware. Signed-off-by: Doug Berger --- drivers/net/ethernet/broadcom/genet/bcmgenet.c | 49

[PATCH net-next 9/9] net: bcmgenet: use dev->phydev instead of priv->phydev

2017-10-25 Thread Doug Berger
a PHY component, an explicit check is made to prevent accessing an invalid phydev pointer when one is not attached (e.g. interface is down). Signed-off-by: Doug Berger --- drivers/net/ethernet/broadcom/genet/bcmgenet.c | 47 +- drivers/net/ethernet/broadcom/genet/bcmge

[PATCH net-next 8/9] Revert "net: bcmgenet: Software reset EPHY after power on"

2017-10-25 Thread Doug Berger
ware reset EPHY after power on"). Signed-off-by: Doug Berger --- drivers/net/ethernet/broadcom/genet/bcmgenet.c | 1 - drivers/net/ethernet/broadcom/genet/bcmgenet.h | 1 - drivers/net/ethernet/broadcom/genet/bcmmii.c | 16 3 files changed, 18 deletions(-) diff --git a/

[PATCH net-next 7/9] net: bcmgenet: relax lock constraints to reduce IRQ latency

2017-10-25 Thread Doug Berger
Since the ring locks are not used in a hard IRQ context it is often not necessary to disable global IRQs while waiting on a lock. Using less restrictive lock and unlock calls improves the real-time responsiveness of the system. Signed-off-by: Doug Berger --- drivers/net/ethernet/broadcom/genet

[PATCH net-next 0/9] net: bcmgenet: start/stop sequence refinement

2017-10-25 Thread Doug Berger
on top of the fixes. The first fix is provided as justification for why the set isn't split between a net submission and a net-next submission. Doug Berger (9): net: bcmgenet: correct bad merge net: bcmgenet: prevent duplicate calls of bcmgenet_dma_teardown net: bcmgenet: enable loo

[PATCH net-next 4/9] net: bcmgenet: move NAPI initialization to ring initialization

2017-10-25 Thread Doug Berger
Since each ring has its own NAPI instance it might as well be initialized along with the other ring context. Signed-off-by: Doug Berger --- drivers/net/ethernet/broadcom/genet/bcmgenet.c | 42 +- 1 file changed, 8 insertions(+), 34 deletions(-) diff --git a/drivers/net

[PATCH v2 1/7] gpio: brcmstb: Do not use gc->pin2mask()

2017-10-24 Thread Doug Berger
From: Linus Walleij The pin2mask() accessor only shuffles BIT ORDER in big endian systems, i.e. the bitstuffing is swizzled big endian so "bit 0" is bit 7 or bit 15 or bit 31 or so. The brcmstb only uses big endian BYTE ORDER which will be taken car of by the ->write_reg() callback. Just use BI

[PATCH v2 5/7] gpio: brcmstb: correct the configuration of level interrupts

2017-10-24 Thread Doug Berger
This commit corrects a bug when configuring the GPIO hardware for IRQ_TYPE_LEVEL_LOW and IRQ_TYPE_LEVEL_HIGH interrupt types. The hardware is now correctly configured to support those types. Fixes: 19a7b6940b78 ("gpio: brcmstb: Add interrupt and wakeup source support") Signed-off-by: D

[PATCH v2 7/7] gpio: brcmstb: implement suspend/resume/shutdown

2017-10-24 Thread Doug Berger
or wake and non-wake handling. It is convenient to mask the non-wake parent when suspending to preserve the hardware state for proper wakeup accounting when the driver is resumed. Signed-off-by: Doug Berger --- drivers/gpio/gpio-brcmstb.c | 201 +---

[PATCH v2 6/7] gpio: brcmstb: consolidate interrupt domains

2017-10-24 Thread Doug Berger
submitted by Gregory Fong. [1] https://patchwork.kernel.org/patch/6921561/ [2] https://patchwork.kernel.org/patch/6347811/ Fixes: 19a7b6940b78 ("gpio: brcmstb: Add interrupt and wakeup source support") Signed-off-by: Doug Berger --- drivers/gpio/Kconfig| 2 +- drivers/gpio/

[PATCH v2 2/7] gpio: brcmstb: allow all instances to be wakeup sources

2017-10-24 Thread Doug Berger
: Add interrupt and wakeup source support") Signed-off-by: Doug Berger Reviewed-by: Florian Fainelli Acked-by: Gregory Fong --- drivers/gpio/gpio-brcmstb.c | 14 +++--- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/drivers/gpio/gpio-brcmstb.c b/drivers/gpio/gpio-brcms

[PATCH v2 0/7] gpio: brcmstb: improved interrupt and wake support

2017-10-24 Thread Doug Berger
nverted wake_mask to need_wakeup_event boolean for clarity Doug Berger (6): gpio: brcmstb: allow all instances to be wakeup sources gpio: brcmstb: release the bgpio lock during irq handlers gpio: brcmstb: switch to handle_level_irq flow gpio: brcmstb: correct the configuration of lev

[PATCH v2 3/7] gpio: brcmstb: release the bgpio lock during irq handlers

2017-10-24 Thread Doug Berger
the lock. Since the lock is only needed to protect the calculation of unmasked pending interrupts create a dedicated function to perform this and hide the complexity. Fixes: 19a7b6940b78 ("gpio: brcmstb: Add interrupt and wakeup source support") Signed-off-by: Doug Berger Reviewed-b

[PATCH v2 4/7] gpio: brcmstb: switch to handle_level_irq flow

2017-10-24 Thread Doug Berger
masking as well as acking of interrupts. The irq_ack method is added to support this. Fixes: 19a7b6940b78 ("gpio: brcmstb: Add interrupt and wakeup source support") Signed-off-by: Doug Berger Reviewed-by: Florian Fainelli Acked-by: Gregory Fong --- drivers/gpio/gpio-brcm

Re: [PATCH 7/7] gpio: brcmstb: implement suspend/resume/shutdown

2017-10-23 Thread Doug Berger
On 10/20/2017 05:54 PM, Gregory Fong wrote: > On Thu, Oct 19, 2017 at 11:39 AM, Doug Berger wrote: >>>> +static int brcmstb_gpio_resume(struct device *dev) >>>> +{ >>>> +struct brcmstb_gpio_priv *priv = dev_get_drvdata(dev); >>>> +stru

Re: [PATCH 7/7] gpio: brcmstb: implement suspend/resume/shutdown

2017-10-19 Thread Doug Berger
On 10/19/2017 02:03 AM, Gregory Fong wrote: > Hi Doug, > > Nice description of the problem with dealing with a pending disabled > wake interrupt and the solution. A few remarks: > > On Fri, Sep 29, 2017 at 08:40:57PM -0700, Doug Berger wrote: >> diff --git a/drive

Re: [PATCH 6/7] gpio: brcmstb: consolidate interrupt domains

2017-10-19 Thread Doug Berger
On 10/19/2017 12:57 AM, Gregory Fong wrote: > Hi Doug, > > On Wed, Oct 04, 2017 at 02:24:37PM -0700, Doug Berger wrote: >> On 10/03/2017 08:03 PM, Gregory Fong wrote: >>> On Fri, Sep 29, 2017 at 8:40 PM, Doug Berger wrote: >>>> The GPIOLIB IRQ chip helpers

Re: [PATCH 6/7] gpio: brcmstb: consolidate interrupt domains

2017-10-16 Thread Doug Berger
On 10/04/2017 02:24 PM, Doug Berger wrote: > On 10/03/2017 08:03 PM, Gregory Fong wrote: >> Hi Doug, >> >> On Fri, Sep 29, 2017 at 8:40 PM, Doug Berger wrote: >>> The GPIOLIB IRQ chip helpers were very appealing, but badly broke >>> the 1:1 mapping between

Re: [PATCH 6/7] gpio: brcmstb: consolidate interrupt domains

2017-10-04 Thread Doug Berger
On 10/03/2017 08:03 PM, Gregory Fong wrote: > Hi Doug, > > On Fri, Sep 29, 2017 at 8:40 PM, Doug Berger wrote: >> The GPIOLIB IRQ chip helpers were very appealing, but badly broke >> the 1:1 mapping between a GPIO controller's device_node and its >> interrupt dom

Re: [PATCH 5/7] gpio: brcmstb: enable masking of interrupts when changing type

2017-10-03 Thread Doug Berger
On 10/03/2017 07:10 PM, Gregory Fong wrote: > Hi Doug, > > On Fri, Sep 29, 2017 at 8:40 PM, Doug Berger wrote: >> Mask the GPIO interrupt while its type is being changed, just in case >> it can prevent a spurious interrupt. > > "Just in case"? I don't

Re: [PATCH 2/7] gpio: brcmstb: release the bgpio lock during irq handlers

2017-10-03 Thread Doug Berger
On 10/03/2017 06:55 PM, Gregory Fong wrote: > Hi Doug, > > On Fri, Sep 29, 2017 at 8:40 PM, Doug Berger wrote: >> The basic memory-mapped GPIO controller lock must be released >> before calling the registered GPIO interrupt handlers to allow >> the interrupt hand

[PATCH 2/7] gpio: brcmstb: release the bgpio lock during irq handlers

2017-09-29 Thread Doug Berger
the calculation of unmasked pending interrupts create a dedicated function to perform this and hide the complexity. Fixes: 19a7b6940b78 ("gpio: brcmstb: Add interrupt and wakeup source support") Signed-off-by: Doug Berger --- drivers/gpio/gpio-brcmstb.c | 21 - 1 fi

[PATCH 0/7] gpio: brcmstb: improved interrupt and wake support

2017-09-29 Thread Doug Berger
This patch set collects a number of improvements to the GPIO driver used by Broadcom Set-Top-Box devices. Primarily they are aimed at correcting problems with the interrupt controller implementation, but they also extend the functionality for waking on GPIO interrupts. Doug Berger (7): gpio

  1   2   3   >