Home | History | Annotate | Download | only in ic
History log of /src/sys/dev/ic/dwc_gmac_var.h
RevisionDateAuthorComments
 1.22  11-Aug-2024  riastradh awge(4): Narrow scope of `core' lock and rename to mcast lock.

Sprinkle locking notes.

Proposed at:

https://mail-index.netbsd.org/source-changes-d/2024/08/10/msg014251.html

Comment-only changes from the updated patch at:

https://mail-index.netbsd.org/source-changes-d/2024/08/10/msg014252.html
 1.21  10-Aug-2024  skrll awge(4): MP improvements

Remove the non-MP-safe scaffolding and make the locking less
coarse.
 1.20  08-Aug-2024  skrll KNF
 1.19  27-Feb-2024  skrll Use __BIT.
 1.18  11-Feb-2024  skrll Fix a comment. arm32 stopped using 8K pages a long time ago.
 1.17  18-Sep-2022  thorpej Eliminate use of IFF_OACTIVE.
 1.16  13-Sep-2019  msaitoh if_flags is neither int nor short. It's unsigned short.
 1.15  21-Jul-2019  mrg move DWCGMAC_MPSAFE into dwc_gmac_var.h and introduce an
additional define that is 0 or FDT_INTR_MPSAFE that the
frontends can use when passing to fdtbus_intr_establish().

with NET_MPSAFE enabled, this avoids hangs seen on rock64,
as well as finishing the MPSAFE port for this driver.

XXX: still don't know why the existing hangs occur.
 1.14  08-Jul-2019  msaitoh Add rnd(9) support.
 1.13  23-Feb-2019  martin Pass the phy ID to dwc_gmac_attach.
 1.12  08-Oct-2018  martin Bring back support for enhanced descriptor format in newer core versions.
Fix a few endian bugs and check the main core version before trying to
read the hardware feature mask. Only read the hardware feature register
if core version reported is >= 3.5 (all my older hardware reports 0).
With some hints and patches from jared, and ok from aymeric
 1.11  28-Sep-2018  aymeric Revert the recent support for enhanced descriptors until a viable solution is
found.

It broke at least Cubietruck, Orange Pi One, and maybe Rock64 ethernets in
different ways. Unfortunately it works on my Olinuxino Micro and Lime 2 so I
can't reproduce the bugs for now.

Should fix PR#53637
 1.10  17-Sep-2018  aymeric Add support for the enhanced descriptors feature.

This makes "recent" dwc gmac controllers, as found e.g. on the Cyclone V, work.
The change was also tested working on an Allwinner A20 which doesn't have the
feature.

No negative reaction on port-arm.
 1.9  30-Jun-2018  jmcneill dwc_gmac_attach: return non-zero on failure
 1.8  16-Jun-2018  jmcneill branches: 1.8.2;
Add flag for disabling store-and-forward mode, and a callback for notifying
bus glue that the link speed has changed.
 1.7  21-Jan-2017  skrll branches: 1.7.12; 1.7.14;
Merge from nick-nhusb - some MPification
 1.6  22-Nov-2014  jmcneill branches: 1.6.2; 1.6.4; 1.6.6;
- Add MII flow control support
- Set "disable jabber" and "auto padding/CRC stripping" bits in MAC conf
- Write intr mask to intr mask register, not status
- Setup both TX and RX burst modes
- Setup both TX and RX store & forward modes
- Correct an issue with the "end" descriptor passed to dwc_gmac_txdesc_sync
in dwc_gmac_tx_intr

ok martin@
 1.5  26-Oct-2014  martin branches: 1.5.2;
Greatly simplify ioctl handling by fully relying on ether_ioctl and a
ifflags-change callback, together with a shadow copy of the last active
interface flags.
Fix ALLMULTI vs. PROMISC handling.
Fix mac hash filter calculation by reversing the crc bits (pointed out
by Jared).
 1.4  20-Oct-2014  jmcneill add $NetBSD$ to top of files
 1.3  11-Sep-2014  martin Simplify device property handling by moving it into the core driver.
Overriding the MAC address now works again.
 1.2  09-Sep-2014  martin Make the MII clock variable and passed in from the frontend.
 1.1  08-Sep-2014  martin Add work-in-progress driver for the Designware GMAC core, found on some
allwinner chips.
 1.5.2.3  03-Feb-2015  bouyer Pull up following revision(s) (requested by snj in ticket #481):
sys/dev/ic/dwc_gmac_var.h: revision 1.6
sys/dev/ic/dwc_gmac_reg.h: revision 1.13
sys/dev/ic/dwc_gmac.c: revision 1.25
sys/dev/ic/dwc_gmac.c: revision 1.26
sys/dev/ic/dwc_gmac.c: revision 1.28
sys/dev/ic/dwc_gmac.c: revision 1.31
- Add MII flow control support
- Set "disable jabber" and "auto padding/CRC stripping" bits in MAC conf
- Write intr mask to intr mask register, not status
- Setup both TX and RX burst modes
- Setup both TX and RX store & forward modes
- Correct an issue with the "end" descriptor passed to dwc_gmac_txdesc_sync
in dwc_gmac_tx_intr
ok martin@
Revert previous change to dwc_gmac_txintr() - while it looks strange at
first sight (and sorry I didn't spot it when reviewing), it is a small
optimization and actually correct.
Add a comment explaining it.
After handling an interrupt, try to handle more packets as we may have
space in the descriptor ring now.
Pointed out by Jared.
fix a couple txq fencepost issues, from FUKAUMI Naoki <fun@naobsd.org>
 1.5.2.2  09-Nov-2014  snj Pull up following revision(s) (requested by martin in ticket #189):
sys/dev/ic/dwc_gmac.c: revision 1.1-1.24
sys/dev/ic/dwc_gmac_reg.h: revision 1.1-1.12
sys/dev/ic/dwc_gmac_var.h: revision 1.1-1.5
Add support for Synopsis Designware GMAC ethernet core, as found on
various Allwiner boards and used by the awge(4) driver.
 1.5.2.1  26-Oct-2014  snj file dwc_gmac_var.h was added on branch netbsd-7 on 2014-11-09 19:06:57 +0000
 1.6.6.1  21-Apr-2017  bouyer Sync with HEAD
 1.6.4.1  20-Mar-2017  pgoyette Sync with HEAD
 1.6.2.1  12-Jun-2016  skrll First pass at making this driver and attachments NET_MPSAFE aware.

I've not tested this yet.
 1.7.14.4  20-Oct-2018  pgoyette Sync with head
 1.7.14.3  30-Sep-2018  pgoyette Ssync with HEAD
 1.7.14.2  28-Jul-2018  pgoyette Sync with HEAD
 1.7.14.1  25-Jun-2018  pgoyette Sync with HEAD
 1.7.12.2  03-Dec-2017  jdolecek update from HEAD
 1.7.12.1  21-Jan-2017  jdolecek file dwc_gmac_var.h was added on branch tls-maxphys on 2017-12-03 11:37:03 +0000
 1.8.2.2  13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.8.2.1  10-Jun-2019  christos Sync with HEAD

RSS XML Feed