;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
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
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
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
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
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
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
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
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!
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!
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!
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
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
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
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
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
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:
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
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
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
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.
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
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
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
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
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.
>&
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
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
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
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
.
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
: 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
-
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
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
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
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
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
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
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
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 +
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
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
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(-)
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
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
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
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
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
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
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
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
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
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 +
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
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
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
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
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
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
e = bcmgenet_probe,
> .remove = bcmgenet_remove,
> + .shutdown = bcmgenet_shutdown,
> .driver = {
> .name = "bcmgenet",
> .of_match_table = bcmgenet_match,
>
Acked-by: 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
>> +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
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
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
> 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
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
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="
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
)
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
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
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
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
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
> ---
>
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
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(-)
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/
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
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
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
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/
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
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
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
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
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
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 +---
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/
: 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
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
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
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
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
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
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
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
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
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
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
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
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 - 100 of 209 matches
Mail list logo