| History log of /src/sys/arch/mips/cavium/dev |
| Revision | Date | Author | Comments |
| 1.30 | 04-Oct-2025 |
thorpej | Add a shared function to query the common properties used for configuring an Ethernet address.
|
| 1.29 | 29-Sep-2022 |
skrll | Remove unnecessary include of <sys/malloc.h>.
|
| 1.28 | 29-Sep-2022 |
skrll | Trailing whitespace
|
| 1.27 | 18-Sep-2022 |
thorpej | Eliminate use of IFF_OACTIVE.
|
| 1.26 | 27-May-2021 |
simonb | Move the send queue checking to a new function, and also call this in the rx interrupt path. Measureable improvement on a NFS "create small files" test.
|
| 1.25 | 27-May-2021 |
simonb | Schedule the send cleanup function for next tick in cnmac_start(). In the send cleanup function, schedule for the next tick instead of waiting for HZ ticks if there are still send requests outstanding. Greatly increases NFS throughput, perhaps other types of network traffic.
Use callout_setfunc() after callout_init() instead of callout_reset().
|
| 1.24 | 23-Jun-2020 |
simonb | branches: 1.24.6; 1.24.8; Redo cnmac attachments - cnmacM @ gmxN @ pip0 @ iobus Support SGMII mode used on CN70XX. Most functional changes from OpenBSD octeon port. Still more to come from the OpenBSD driver.
|
| 1.23 | 22-Jun-2020 |
simonb | Remove unmaintained CNMAC_DEBUG debug code.
|
| 1.22 | 18-Jun-2020 |
simonb | General code cleanup: - use generic macros for building IO and IOBDMA addresses instead of many different variations of the same theme. - use #define's for CVMSEG addresses instead of magic numbers. - use __BIT/__BITS/__SHIFTIN/__SHIFTOUT in most places, instead of foo_SHIFT defines or (worse) shifting by magic numbers.
No functional changes.
|
| 1.21 | 10-Jun-2020 |
simonb | Update for proplib(3) API changes.
|
| 1.20 | 05-Jun-2020 |
simonb | Rework CVMSEG LM usage a litte: - remove unused LM slots - use #defines for defining the size of CVMSEG LM users
XXX: Need to dynamically set CVMMEMCTL[LMEMSZ] during startup so we can both adapt to any future increase in CVMSEG LM usage and not waste any more L2 that we need to. XXX: Still need to move general IOBDMA conf to a different (new?) header.
|
| 1.19 | 31-May-2020 |
simonb | Rename all Cavium Octeon device driver functions, structs etc from "octeon_foo" to "octfoo", except "octeon_eth" becomes "cnmac".
|
| 1.18 | 24-Apr-2020 |
mrg | fetch properties in attach rather than every re-init.
this avoids a rwlock while spinlock held problem likely introduced with MII locking rework, as fetching a property takes an rwlock, and prior to the rework, only kernel lock would have been held.
ok skrll@.
|
| 1.17 | 18-Feb-2020 |
thorpej | branches: 1.17.4; - Use ether_mediachange(). - Don't call the media change function directly from the init function; bounce through mii_ifmedia_change().
|
| 1.16 | 29-Jan-2020 |
thorpej | Adopt <net/if_stats.h>.
|
| 1.15 | 28-Dec-2019 |
gutteridge | branches: 1.15.2; Fix typos in comments.
|
| 1.14 | 07-Jun-2019 |
martin | Delay setting of the filters at attach time a bit to avoid using an unitialized mutex. From msaitoh@.
|
| 1.13 | 29-May-2019 |
msaitoh | - Simplify MII structure initialization and reference. - Use the common path of SIOCGIFMEDIA in sys/net/if_ethersubr.c
|
| 1.12 | 26-Apr-2019 |
msaitoh | No functional change: - u_int_{8,16,32}_t -> uint_{8,16,32}_t - KNF. - Tabify. - Remove extra space.
|
| 1.11 | 22-Jan-2019 |
msaitoh | Change MII PHY read/write API from:
int (*mii_readreg_t)(device_t, int, int); void (*mii_writereg_t)(device_t, int, int, int); to:
int (*mii_readreg_t)(device_t, int, int, uint16_t *); int (*mii_writereg_t)(device_t, int, int, uint16_t);
Now we can test if a read/write operation failed or not by the return value.
In 802.3 spec says that the PHY shall not respond to read/write transaction to the unimplemented register(22.2.4.3). Detecting timeout can be used to check whether a register is implemented or not (if the register conforms to the spec). ukphy(4) can be used this for MII_MMDACR and MII_MMDAADR.
Note that I noticed that the following code do infinite loop in the read/wirte function. If it accesses unimplemented PHY register, it will hang. It should be fixed:
arm/at91/at91emac.c arm/ep93xx/epe.c arm/omap/omapl1x_emac.c mips/ralink/ralink_eth.c arch/powerpc/booke/dev/pq3etsec.c(read) dev/cadence/if_cemac.c <- hkenken dev/ic/lan9118.c
Tested with the following device:
axe+ukphy axe+rgephy axen+rgephy (tested by Andrius V) wm+atphy wm+ukphy wm+igphy wm+ihphy wm+makphy sk+makphy sk+brgphy sk+gentbi msk+makphy sip+icsphy sip+ukphy re+rgephy bge+brgphy bnx+brgphy gsip+gphyter rtk+rlphy fxp+inphy (tested by Andrius V) tlp+acphy ex+exphy epic+qsphy vge+ciphy (tested by Andrius V) vr+ukphy (tested by Andrius V) vte+ukphy (tested by Andrius V)
Not tested (MAC): arm:at91emac arm:cemac arm:epe arm:geminigmac arm:enet arm:cpsw arm:emac(omac) arm:emac(sunxi) arm:npe evbppc:temac macppc:bm macppc:gm mips:aumac mips:ae mips:cnmac mips:reth mips:sbmac playstation2:smap powerpc:tsec powerpc:emac(ibm4xx) sgimips:mec sparc:be sf ne(ax88190, dl10019) awge ep gem hme smsh mtd sm age alc ale bce cas et jme lii nfe pcn ste stge tl xi aue mue smsc udav url
Not tested (PHY): amhphy bmtphy dmphy etphy glxtphy ikphy iophy lxtphy nsphyter pnaphy rdcphy sqphy tlphy tqphy urlphy
|
| 1.10 | 03-Sep-2018 |
riastradh | Rename min/max -> uimin/uimax for better honesty.
These functions are defined on unsigned int. The generic name min/max should not silently truncate to 32 bits on 64-bit systems. This is purely a name change -- no functional change intended.
HOWEVER! Some subsystems have
#define min(a, b) ((a) < (b) ? (a) : (b)) #define max(a, b) ((a) > (b) ? (a) : (b))
even though our standard name for that is MIN/MAX. Although these may invite multiple evaluation bugs, these do _not_ cause integer truncation.
To avoid `fixing' these cases, I first changed the name in libkern, and then compile-tested every file where min/max occurred in order to confirm that it failed -- and thus confirm that nothing shadowed min/max -- before changing it.
I have left a handful of bootloaders that are too annoying to compile-test, and some dead code:
cobalt ews4800mips hp300 hppa ia64 luna68k vax acorn32/if_ie.c (not included in any kernels) macppc/if_gm.c (superseded by gem(4))
It should be easy to fix the fallout once identified -- this way of doing things fails safe, and the goal here, after all, is to _avoid_ silent integer truncations, not introduce them.
Maybe one day we can reintroduce min/max as type-generic things that never silently truncate. But we should avoid doing that for a while, so that existing code has a chance to be detected by the compiler for conversion to uimin/uimax without changing the semantics until we can properly audit it all. (Who knows, maybe in some cases integer truncation is actually intended!)
|
| 1.9 | 26-Jun-2018 |
msaitoh | branches: 1.9.2; Implement the BPF direction filter (BIOC[GS]DIRECTION). It provides backward compatibility with BIOC[GS]SEESENT ioctl. The userland interface is the same as FreeBSD.
This change also fixes a bug that the direction is misunderstand on some environment by passing the direction to bpf_mtap*() instead of checking m->m_pkthdr.rcvif.
|
| 1.8 | 01-Jan-2018 |
jmcneill | branches: 1.8.2; Set and clear IFF_OACTIVE as necessary, and add support for queueing multiple packets before performing a PKO doorbell write.
|
| 1.7 | 26-Nov-2017 |
jmcneill | branches: 1.7.2; Set ETHERCAP_VLAN_MTU capability flag.
|
| 1.6 | 22-Aug-2017 |
maya | Reword warning message
|
| 1.5 | 15-Dec-2016 |
ozaki-r | branches: 1.5.8; Move bpf_mtap and if_ipackets++ on Rx of each driver to percpuq if_input
The benefits of the change are: - We can reduce codes - We can provide the same behavior between drivers - Where/When if_ipackets is counted up - Note that some drivers still update packet statistics in their own way (periodical update) - Moved bpf_mtap run in softint - This makes it easy to MP-ify bpf
Proposed on tech-kern and tech-net
|
| 1.4 | 11-Jul-2016 |
matt | branches: 1.4.2; Change MIPS to use the common pmap code. Switch to 8KB pages on CPUs with a R4K MMU. Simplify cache code. Merge in most of changes from matt-mips64 branch
|
| 1.3 | 10-Jun-2016 |
ozaki-r | Introduce m_set_rcvif and m_reset_rcvif
The API is used to set (or reset) a received interface of a mbuf. They are counterpart of m_get_rcvif, which will come in another commit, hide internal of rcvif operation, and reduce the diff of the upcoming change.
No functional change.
|
| 1.2 | 09-Feb-2016 |
ozaki-r | Introduce softint-based if_input
This change intends to run the whole network stack in softint context (or normal LWP), not hardware interrupt context. Note that the work is still incomplete by this change; to that end, we also have to softint-ify if_link_state_change (and bpf) which can still run in hardware interrupt.
This change softint-ifies at ifp->if_input that is called from each device driver (and ieee80211_input) to ensure Layer 2 runs in softint (e.g., ether_input and bridge_input). To this end, we provide a framework (called percpuq) that utlizes softint(9) and percpu ifqueues. With this patch, rxintr of most drivers just queues received packets and schedules a softint, and the softint dequeues packets and does rest packet processing.
To minimize changes to each driver, percpuq is allocated in struct ifnet for now and that is initialized by default (in if_attach). We probably have to move percpuq to softc of each driver, but it's future work. At this point, only wm(4) has percpuq in its softc as a reference implementation.
Additional information including performance numbers can be found in the thread at tech-kern@ and tech-net@: http://mail-index.netbsd.org/tech-kern/2016/01/14/msg019997.html
Acknowledgment: riastradh@ greatly helped this work. Thank you very much!
|
| 1.1 | 29-Apr-2015 |
hikaru | branches: 1.1.2; Initial import of Cavium Octeon and Octeon Plus SoC and specifically Ubiquiti Networks EdgeRouter LITE support. Currently the ethernet and uart are worked. This support was contributed by Internet Initiative Japan Inc.
|
| 1.1.2.7 | 28-Aug-2017 |
skrll | Sync with HEAD
|
| 1.1.2.6 | 05-Feb-2017 |
skrll | Sync with HEAD
|
| 1.1.2.5 | 05-Oct-2016 |
skrll | Sync with HEAD
|
| 1.1.2.4 | 09-Jul-2016 |
skrll | Sync with HEAD
|
| 1.1.2.3 | 19-Mar-2016 |
skrll | Sync with HEAD
|
| 1.1.2.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.1.2.1 | 29-Apr-2015 |
skrll | file if_cnmac.c was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
|
| 1.4.2.1 | 07-Jan-2017 |
pgoyette | Sync with HEAD. (Note that most of these changes are simply $NetBSD$ tag issues.)
|
| 1.5.8.1 | 27-Nov-2017 |
martin | Pull up following revision(s) (requested by jmcneill in ticket #397): sys/arch/mips/cavium/dev/if_cnmac.c: revision 1.7 Set ETHERCAP_VLAN_MTU capability flag.
|
| 1.7.2.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.7.2.1 | 26-Nov-2017 |
jdolecek | file if_cnmac.c was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
|
| 1.8.2.3 | 26-Jan-2019 |
pgoyette | Sync with HEAD
|
| 1.8.2.2 | 06-Sep-2018 |
pgoyette | Sync with HEAD
Resolve a couple of conflicts (result of the uimin/uimax changes)
|
| 1.8.2.1 | 28-Jul-2018 |
pgoyette | Sync with HEAD
|
| 1.9.2.2 | 08-Apr-2020 |
martin | Merge changes from current as of 20200406
|
| 1.9.2.1 | 10-Jun-2019 |
christos | Sync with HEAD
|
| 1.15.2.1 | 29-Feb-2020 |
ad | Sync with head.
|
| 1.17.4.1 | 25-Apr-2020 |
bouyer | Sync with bouyer-xenpvh-base2 (HEAD)
|
| 1.24.8.1 | 31-May-2021 |
cjep | sync with head
|
| 1.24.6.1 | 17-Jun-2021 |
thorpej | Sync w/ HEAD.
|
| 1.5 | 18-Sep-2022 |
thorpej | Eliminate use of IFF_OACTIVE.
|
| 1.4 | 23-Jun-2020 |
simonb | Redo cnmac attachments - cnmacM @ gmxN @ pip0 @ iobus Support SGMII mode used on CN70XX. Most functional changes from OpenBSD octeon port. Still more to come from the OpenBSD driver.
|
| 1.3 | 22-Jun-2020 |
simonb | Remove unmaintained CNMAC_DEBUG debug code.
|
| 1.2 | 31-May-2020 |
simonb | Rename all Cavium Octeon device driver functions, structs etc from "octeon_foo" to "octfoo", except "octeon_eth" becomes "cnmac".
|
| 1.1 | 29-Apr-2015 |
hikaru | branches: 1.1.2; 1.1.18; Initial import of Cavium Octeon and Octeon Plus SoC and specifically Ubiquiti Networks EdgeRouter LITE support. Currently the ethernet and uart are worked. This support was contributed by Internet Initiative Japan Inc.
|
| 1.1.18.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.1.18.1 | 29-Apr-2015 |
jdolecek | file if_cnmacvar.h was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
|
| 1.1.2.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.1.2.1 | 29-Apr-2015 |
skrll | file if_cnmacvar.h was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
|
| 1.5 | 04-Jan-2021 |
thorpej | malloc(9) -> kmem(9)
|
| 1.4 | 23-Jun-2020 |
simonb | branches: 1.4.2; Minor tweaks and cleanup.
|
| 1.3 | 22-Jun-2020 |
simonb | Remove unmaintained CNMAC_DEBUG debug code.
|
| 1.2 | 31-May-2020 |
simonb | Rename all Cavium Octeon device driver functions, structs etc from "octeon_foo" to "octfoo", except "octeon_eth" becomes "cnmac".
|
| 1.1 | 29-Apr-2015 |
hikaru | branches: 1.1.2; 1.1.18; Initial import of Cavium Octeon and Octeon Plus SoC and specifically Ubiquiti Networks EdgeRouter LITE support. Currently the ethernet and uart are worked. This support was contributed by Internet Initiative Japan Inc.
|
| 1.1.18.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.1.18.1 | 29-Apr-2015 |
jdolecek | file octeon_asx.c was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
|
| 1.1.2.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.1.2.1 | 29-Apr-2015 |
skrll | file octeon_asx.c was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
|
| 1.4.2.1 | 03-Apr-2021 |
thorpej | Sync with HEAD.
|
| 1.2 | 22-Jun-2020 |
simonb | Remove unused snprintb format strings.
|
| 1.1 | 29-Apr-2015 |
hikaru | branches: 1.1.2; 1.1.18; Initial import of Cavium Octeon and Octeon Plus SoC and specifically Ubiquiti Networks EdgeRouter LITE support. Currently the ethernet and uart are worked. This support was contributed by Internet Initiative Japan Inc.
|
| 1.1.18.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.1.18.1 | 29-Apr-2015 |
jdolecek | file octeon_asxreg.h was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
|
| 1.1.2.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.1.2.1 | 29-Apr-2015 |
skrll | file octeon_asxreg.h was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
|
| 1.4 | 22-Jun-2020 |
simonb | Remove unmaintained CNMAC_DEBUG debug code.
|
| 1.3 | 18-Jun-2020 |
simonb | General code cleanup: - use generic macros for building IO and IOBDMA addresses instead of many different variations of the same theme. - use #define's for CVMSEG addresses instead of magic numbers. - use __BIT/__BITS/__SHIFTIN/__SHIFTOUT in most places, instead of foo_SHIFT defines or (worse) shifting by magic numbers.
No functional changes.
|
| 1.2 | 31-May-2020 |
simonb | Rename all Cavium Octeon device driver functions, structs etc from "octeon_foo" to "octfoo", except "octeon_eth" becomes "cnmac".
|
| 1.1 | 29-Apr-2015 |
hikaru | branches: 1.1.2; 1.1.18; Initial import of Cavium Octeon and Octeon Plus SoC and specifically Ubiquiti Networks EdgeRouter LITE support. Currently the ethernet and uart are worked. This support was contributed by Internet Initiative Japan Inc.
|
| 1.1.18.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.1.18.1 | 29-Apr-2015 |
jdolecek | file octeon_asxvar.h was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
|
| 1.1.2.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.1.2.1 | 29-Apr-2015 |
skrll | file octeon_asxvar.h was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
|
| 1.3 | 22-Jun-2020 |
simonb | Remove more snprintb _BITS bits.
|
| 1.2 | 22-Jun-2020 |
simonb | Remove unused snprintb format strings.
|
| 1.1 | 29-Apr-2015 |
hikaru | branches: 1.1.2; 1.1.18; Initial import of Cavium Octeon and Octeon Plus SoC and specifically Ubiquiti Networks EdgeRouter LITE support. Currently the ethernet and uart are worked. This support was contributed by Internet Initiative Japan Inc.
|
| 1.1.18.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.1.18.1 | 29-Apr-2015 |
jdolecek | file octeon_bootbusreg.h was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
|
| 1.1.2.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.1.2.1 | 29-Apr-2015 |
skrll | file octeon_bootbusreg.h was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
|
| 1.7 | 05-May-2021 |
simonb | Sprinkle some static.
|
| 1.6 | 27-Jan-2021 |
thorpej | branches: 1.6.4; Rename of_match_compat_data() to of_compatible_match(). Similarly, rename of_search_compatible() to of_compatible_lookup().
Standardize on of_compatible_match() for driver matching, and adapt all call sites.
|
| 1.5 | 27-Jan-2021 |
thorpej | Use DEVICE_COMPAT_EOL.
|
| 1.4 | 25-Jan-2021 |
thorpej | Since we're using designated initialisers for compat data, we should use a completely empty initializer for the sentinel.
|
| 1.3 | 18-Jan-2021 |
thorpej | Remove "struct of_compat_data" and replace its usage with "struct device_compatible_entry"; they are ABI-compatible.
Fix several "loses const qualifier" bugs encountered during this conversion.
|
| 1.2 | 15-Jan-2021 |
jmcneill | Add 'const char *xname' arg to fdtbus_interrupt_controller_func .establish
|
| 1.1 | 16-Jul-2020 |
jmcneill | branches: 1.1.2; Add driver for Cavium Interrupt Bus.
|
| 1.1.2.1 | 03-Apr-2021 |
thorpej | Sync with HEAD.
|
| 1.6.4.1 | 13-May-2021 |
thorpej | Sync with HEAD.
|
| 1.5 | 29-Sep-2022 |
skrll | Remove unnecessary include of <sys/malloc.h>.
|
| 1.4 | 23-Jun-2020 |
simonb | Minor tweaks and cleanup.
|
| 1.3 | 22-Jun-2020 |
simonb | Remove unmaintained CNMAC_DEBUG debug code.
|
| 1.2 | 31-May-2020 |
simonb | Rename all Cavium Octeon device driver functions, structs etc from "octeon_foo" to "octfoo", except "octeon_eth" becomes "cnmac".
|
| 1.1 | 29-Apr-2015 |
hikaru | branches: 1.1.2; 1.1.18; Initial import of Cavium Octeon and Octeon Plus SoC and specifically Ubiquiti Networks EdgeRouter LITE support. Currently the ethernet and uart are worked. This support was contributed by Internet Initiative Japan Inc.
|
| 1.1.18.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.1.18.1 | 29-Apr-2015 |
jdolecek | file octeon_ciu.c was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
|
| 1.1.2.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.1.2.1 | 29-Apr-2015 |
skrll | file octeon_ciu.c was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
|
| 1.11 | 20-Jul-2020 |
jmcneill | Fix coreX/IP4 summary register offsets
|
| 1.10 | 17-Jul-2020 |
jmcneill | Remove 2 CPU limit in OCTEON interrupt controller driver.
|
| 1.9 | 22-Jun-2020 |
simonb | Remove more snprintb _BITS bits.
|
| 1.8 | 22-Jun-2020 |
simonb | Remove unused snprintb format strings.
|
| 1.7 | 19-Jun-2020 |
simonb | Simplify interrupt definition: remove mostly unused masks and just configure everything using interrupt numbers.
|
| 1.6 | 02-Jun-2020 |
simonb | Add a missing entry, clean up a few other incorrect entries.
|
| 1.5 | 20-Aug-2016 |
skrll | branches: 1.5.14; Fix a couple of (unsed) definitions
|
| 1.4 | 06-Jun-2015 |
matt | Add CIU_BASE
|
| 1.3 | 06-Jun-2015 |
matt | branches: 1.3.2; Fix CUI_MBOX_{SET,CLR}1 values
|
| 1.2 | 01-Jun-2015 |
matt | Rework cavium support in preparation for MULTIPROCESSOR support
|
| 1.1 | 29-Apr-2015 |
hikaru | Initial import of Cavium Octeon and Octeon Plus SoC and specifically Ubiquiti Networks EdgeRouter LITE support. Currently the ethernet and uart are worked. This support was contributed by Internet Initiative Japan Inc.
|
| 1.3.2.4 | 05-Oct-2016 |
skrll | Sync with HEAD
|
| 1.3.2.3 | 22-Sep-2015 |
skrll | Sync with HEAD
|
| 1.3.2.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.3.2.1 | 06-Jun-2015 |
skrll | file octeon_ciureg.h was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
|
| 1.5.14.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.5.14.1 | 20-Aug-2016 |
jdolecek | file octeon_ciureg.h was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
|
| 1.2 | 18-Jun-2020 |
simonb | General code cleanup: - use generic macros for building IO and IOBDMA addresses instead of many different variations of the same theme. - use #define's for CVMSEG addresses instead of magic numbers. - use __BIT/__BITS/__SHIFTIN/__SHIFTOUT in most places, instead of foo_SHIFT defines or (worse) shifting by magic numbers.
No functional changes.
|
| 1.1 | 29-Apr-2015 |
hikaru | branches: 1.1.2; 1.1.18; Initial import of Cavium Octeon and Octeon Plus SoC and specifically Ubiquiti Networks EdgeRouter LITE support. Currently the ethernet and uart are worked. This support was contributed by Internet Initiative Japan Inc.
|
| 1.1.18.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.1.18.1 | 29-Apr-2015 |
jdolecek | file octeon_cop2reg.h was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
|
| 1.1.2.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.1.2.1 | 29-Apr-2015 |
skrll | file octeon_cop2reg.h was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
|
| 1.2 | 18-Jun-2020 |
simonb | General code cleanup: - use generic macros for building IO and IOBDMA addresses instead of many different variations of the same theme. - use #define's for CVMSEG addresses instead of magic numbers. - use __BIT/__BITS/__SHIFTIN/__SHIFTOUT in most places, instead of foo_SHIFT defines or (worse) shifting by magic numbers.
No functional changes.
|
| 1.1 | 29-Apr-2015 |
hikaru | branches: 1.1.2; 1.1.18; Initial import of Cavium Octeon and Octeon Plus SoC and specifically Ubiquiti Networks EdgeRouter LITE support. Currently the ethernet and uart are worked. This support was contributed by Internet Initiative Japan Inc.
|
| 1.1.18.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.1.18.1 | 29-Apr-2015 |
jdolecek | file octeon_cop2var.h was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
|
| 1.1.2.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.1.2.1 | 29-Apr-2015 |
skrll | file octeon_cop2var.h was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
|
| 1.5 | 04-Aug-2020 |
simonb | Add some CvmCtl bits from newer cnMIPS cores.
|
| 1.4 | 26-Jul-2020 |
simonb | Remove mostly duplicate MIPS spec CP0 regs from octeon_corereg.h, move the Cavium specific CP0 regs to <mips/cpuregs.h> as done for other core specific regs.
|
| 1.3 | 22-Jun-2020 |
simonb | Remove unused snprintb format strings.
|
| 1.2 | 01-Jun-2015 |
matt | branches: 1.2.2; 1.2.18; Rework cavium support in preparation for MULTIPROCESSOR support
|
| 1.1 | 29-Apr-2015 |
hikaru | Initial import of Cavium Octeon and Octeon Plus SoC and specifically Ubiquiti Networks EdgeRouter LITE support. Currently the ethernet and uart are worked. This support was contributed by Internet Initiative Japan Inc.
|
| 1.2.18.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.2.18.1 | 01-Jun-2015 |
jdolecek | file octeon_corereg.h was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
|
| 1.2.2.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.2.2.1 | 01-Jun-2015 |
skrll | file octeon_corereg.h was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
|
| 1.15 | 07-Aug-2021 |
thorpej | Merge thorpej-cfargs2.
|
| 1.14 | 24-Apr-2021 |
thorpej | branches: 1.14.8; Merge thorpej-cfargs branch:
Simplify and make extensible the config_search() / config_found() / config_attach() interfaces: rather than having different variants for which arguments you want pass along, just have a single call that takes a variadic list of tag-value arguments.
Adjust all call sites: - Simplify wherever possible; don't pass along arguments that aren't actually needed. - Don't be explicit about what interface attribute is attaching if the device only has one. (More simplification.) - Add a config_probe() function to be used in indirect configuiration situations, making is visibly easier to see when indirect config is in play, and allowing for future change in semantics. (As of now, this is just a wrapper around config_match(), but that is an implementation detail.)
Remove unnecessary or redundant interface attributes where they're not needed.
There are currently 5 "cfargs" defined: - CFARG_SUBMATCH (submatch function for direct config) - CFARG_SEARCH (search function for indirect config) - CFARG_IATTR (interface attribte) - CFARG_LOCATORS (locators array) - CFARG_DEVHANDLE (devhandle_t - wraps OFW, ACPI, etc. handles)
...and a sentinel value CFARG_EOL.
Add some extra sanity checking to ensure that interface attributes aren't ambiguous.
Use CFARG_DEVHANDLE in MI FDT, OFW, and ACPI code, and macppc and shark ports to associate those device handles with device_t instance. This will trickle trough to more places over time (need back-end for pre-OFW Sun OBP; any others?).
|
| 1.13 | 23-Jun-2020 |
simonb | branches: 1.13.4; Make sure we only attach to CN3xxx/CN5xxx. Cleanup - mostly removing unused code.
|
| 1.12 | 23-Jun-2020 |
simonb | Remove unused octeon*usb*var*h includes.
|
| 1.11 | 19-Jun-2020 |
simonb | Simplify interrupt definition: remove mostly unused masks and just configure everything using interrupt numbers.
|
| 1.10 | 31-May-2020 |
simonb | Clean up Cavium Octeon device names. Rename devices from "octeon_foo" to "octfoo" - this follows the naming conventions used by many other MIPS CPUs.
|
| 1.9 | 12-Jul-2016 |
matt | branches: 1.9.16; Use mips_lwu
|
| 1.8 | 11-Jul-2016 |
matt | Change MIPS to use the common pmap code. Switch to 8KB pages on CPUs with a R4K MMU. Simplify cache code. Merge in most of changes from matt-mips64 branch
|
| 1.7 | 26-Apr-2016 |
skrll | Adapt to nick-nhusb merge
|
| 1.6 | 30-Aug-2015 |
skrll | Update for latest dwc2
|
| 1.5 | 30-Jul-2015 |
skrll | Use IPL_VM for dwc2_intr and mark as MP safe where possible.
|
| 1.4 | 22-Jul-2015 |
skrll | Trailing whitespace.
|
| 1.3 | 07-Jun-2015 |
matt | assembly no longer include <machine/cpu.h>. Instead MIPS_CURLWP is gotten from regdef.h and everything else from assym.h. <mips/mips_param.h> no longer include <machine/cpu.h>
|
| 1.2 | 01-Jun-2015 |
matt | branches: 1.2.2; Rework cavium support in preparation for MULTIPROCESSOR support
|
| 1.1 | 01-May-2015 |
hikaru | Use dwc2 instead of octeon_usbc, and unify octeon_usbn to new octeon_dwctwo. Internal USB memory stick of EdgeRouter Lite works now.
|
| 1.2.2.5 | 05-Oct-2016 |
skrll | Sync with HEAD
|
| 1.2.2.4 | 29-May-2016 |
skrll | Sync with HEAD
|
| 1.2.2.3 | 22-Sep-2015 |
skrll | Sync with HEAD
|
| 1.2.2.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.2.2.1 | 01-Jun-2015 |
skrll | file octeon_dwctwo.c was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
|
| 1.9.16.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.9.16.1 | 12-Jul-2016 |
jdolecek | file octeon_dwctwo.c was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
|
| 1.13.4.1 | 21-Mar-2021 |
thorpej | Give config_found() the same variadic arguments treatment as config_search(). This commit only adds the CFARG_EOL sentinel to the existing config_found() calls. Conversion of config_found_sm_loc() and config_found_ia() call sites will be in subsequent commits.
|
| 1.14.8.1 | 04-Aug-2021 |
thorpej | Adapt to CFARGS().
|
| 1.4 | 23-Jun-2020 |
simonb | Minor tweaks and cleanup.
|
| 1.3 | 18-Jun-2020 |
simonb | General code cleanup: - use generic macros for building IO and IOBDMA addresses instead of many different variations of the same theme. - use #define's for CVMSEG addresses instead of magic numbers. - use __BIT/__BITS/__SHIFTIN/__SHIFTOUT in most places, instead of foo_SHIFT defines or (worse) shifting by magic numbers.
No functional changes.
|
| 1.2 | 31-May-2020 |
simonb | Rename all Cavium Octeon device driver functions, structs etc from "octeon_foo" to "octfoo", except "octeon_eth" becomes "cnmac".
|
| 1.1 | 29-Apr-2015 |
hikaru | branches: 1.1.2; 1.1.18; Initial import of Cavium Octeon and Octeon Plus SoC and specifically Ubiquiti Networks EdgeRouter LITE support. Currently the ethernet and uart are worked. This support was contributed by Internet Initiative Japan Inc.
|
| 1.1.18.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.1.18.1 | 29-Apr-2015 |
jdolecek | file octeon_fau.c was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
|
| 1.1.2.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.1.2.1 | 29-Apr-2015 |
skrll | file octeon_fau.c was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
|
| 1.2 | 18-Jun-2020 |
simonb | General code cleanup: - use generic macros for building IO and IOBDMA addresses instead of many different variations of the same theme. - use #define's for CVMSEG addresses instead of magic numbers. - use __BIT/__BITS/__SHIFTIN/__SHIFTOUT in most places, instead of foo_SHIFT defines or (worse) shifting by magic numbers.
No functional changes.
|
| 1.1 | 29-Apr-2015 |
hikaru | branches: 1.1.2; 1.1.18; Initial import of Cavium Octeon and Octeon Plus SoC and specifically Ubiquiti Networks EdgeRouter LITE support. Currently the ethernet and uart are worked. This support was contributed by Internet Initiative Japan Inc.
|
| 1.1.18.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.1.18.1 | 29-Apr-2015 |
jdolecek | file octeon_faureg.h was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
|
| 1.1.2.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.1.2.1 | 29-Apr-2015 |
skrll | file octeon_faureg.h was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
|
| 1.4 | 23-Jun-2020 |
simonb | Minor tweaks and cleanup.
|
| 1.3 | 18-Jun-2020 |
simonb | General code cleanup: - use generic macros for building IO and IOBDMA addresses instead of many different variations of the same theme. - use #define's for CVMSEG addresses instead of magic numbers. - use __BIT/__BITS/__SHIFTIN/__SHIFTOUT in most places, instead of foo_SHIFT defines or (worse) shifting by magic numbers.
No functional changes.
|
| 1.2 | 31-May-2020 |
simonb | Rename all Cavium Octeon device driver functions, structs etc from "octeon_foo" to "octfoo", except "octeon_eth" becomes "cnmac".
|
| 1.1 | 29-Apr-2015 |
hikaru | branches: 1.1.2; 1.1.18; Initial import of Cavium Octeon and Octeon Plus SoC and specifically Ubiquiti Networks EdgeRouter LITE support. Currently the ethernet and uart are worked. This support was contributed by Internet Initiative Japan Inc.
|
| 1.1.18.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.1.18.1 | 29-Apr-2015 |
jdolecek | file octeon_fauvar.h was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
|
| 1.1.2.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.1.2.1 | 29-Apr-2015 |
skrll | file octeon_fauvar.h was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
|
| 1.10 | 24-Mar-2021 |
simonb | Remove somewhat dubious empty octfpa_desc structure.
|
| 1.9 | 04-Jan-2021 |
thorpej | branches: 1.9.2; malloc(9) -> kmem(9)
|
| 1.8 | 23-Jun-2020 |
simonb | branches: 1.8.2; Minor tweaks and cleanup.
|
| 1.7 | 22-Jun-2020 |
simonb | Remove unmaintained CNMAC_DEBUG debug code.
|
| 1.6 | 18-Jun-2020 |
simonb | General code cleanup: - use generic macros for building IO and IOBDMA addresses instead of many different variations of the same theme. - use #define's for CVMSEG addresses instead of magic numbers. - use __BIT/__BITS/__SHIFTIN/__SHIFTOUT in most places, instead of foo_SHIFT defines or (worse) shifting by magic numbers.
No functional changes.
|
| 1.5 | 31-May-2020 |
simonb | Rename all Cavium Octeon device driver functions, structs etc from "octeon_foo" to "octfoo", except "octeon_eth" becomes "cnmac".
|
| 1.4 | 27-Jan-2019 |
dholland | Restore accidentally-dropped opt_octeon.h. (or at least it really looks like it was accidental)
|
| 1.3 | 27-Jan-2019 |
pgoyette | Merge the [pgoyette-compat] branch
|
| 1.2 | 04-Oct-2018 |
skrll | Remove duplicate #include
|
| 1.1 | 29-Apr-2015 |
hikaru | branches: 1.1.2; 1.1.18; 1.1.20; 1.1.22; Initial import of Cavium Octeon and Octeon Plus SoC and specifically Ubiquiti Networks EdgeRouter LITE support. Currently the ethernet and uart are worked. This support was contributed by Internet Initiative Japan Inc.
|
| 1.1.22.1 | 10-Jun-2019 |
christos | Sync with HEAD
|
| 1.1.20.1 | 20-Oct-2018 |
pgoyette | Sync with head
|
| 1.1.18.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.1.18.1 | 29-Apr-2015 |
jdolecek | file octeon_fpa.c was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
|
| 1.1.2.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.1.2.1 | 29-Apr-2015 |
skrll | file octeon_fpa.c was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
|
| 1.8.2.1 | 03-Apr-2021 |
thorpej | Sync with HEAD.
|
| 1.9.2.1 | 03-Apr-2021 |
thorpej | Sync with HEAD.
|
| 1.5 | 23-Jun-2020 |
simonb | Minor tweaks and cleanup.
|
| 1.4 | 22-Jun-2020 |
simonb | Remove more snprintb _BITS bits.
|
| 1.3 | 22-Jun-2020 |
simonb | Remove unused snprintb format strings.
|
| 1.2 | 18-Jun-2020 |
simonb | General code cleanup: - use generic macros for building IO and IOBDMA addresses instead of many different variations of the same theme. - use #define's for CVMSEG addresses instead of magic numbers. - use __BIT/__BITS/__SHIFTIN/__SHIFTOUT in most places, instead of foo_SHIFT defines or (worse) shifting by magic numbers.
No functional changes.
|
| 1.1 | 29-Apr-2015 |
hikaru | branches: 1.1.2; 1.1.18; Initial import of Cavium Octeon and Octeon Plus SoC and specifically Ubiquiti Networks EdgeRouter LITE support. Currently the ethernet and uart are worked. This support was contributed by Internet Initiative Japan Inc.
|
| 1.1.18.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.1.18.1 | 29-Apr-2015 |
jdolecek | file octeon_fpareg.h was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
|
| 1.1.2.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.1.2.1 | 29-Apr-2015 |
skrll | file octeon_fpareg.h was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
|
| 1.7 | 23-Jun-2020 |
simonb | Minor tweaks and cleanup.
|
| 1.6 | 22-Jun-2020 |
simonb | Remove unmaintained CNMAC_DEBUG debug code.
|
| 1.5 | 18-Jun-2020 |
simonb | General code cleanup: - use generic macros for building IO and IOBDMA addresses instead of many different variations of the same theme. - use #define's for CVMSEG addresses instead of magic numbers. - use __BIT/__BITS/__SHIFTIN/__SHIFTOUT in most places, instead of foo_SHIFT defines or (worse) shifting by magic numbers.
No functional changes.
|
| 1.4 | 31-May-2020 |
simonb | Rename all Cavium Octeon device driver functions, structs etc from "octeon_foo" to "octfoo", except "octeon_eth" becomes "cnmac".
|
| 1.3 | 28-May-2019 |
msaitoh | s/recieve/receive/
|
| 1.2 | 19-Apr-2018 |
christos | branches: 1.2.2; s/static inline/static __inline/g for consistency.
|
| 1.1 | 29-Apr-2015 |
hikaru | branches: 1.1.2; 1.1.18; 1.1.20; Initial import of Cavium Octeon and Octeon Plus SoC and specifically Ubiquiti Networks EdgeRouter LITE support. Currently the ethernet and uart are worked. This support was contributed by Internet Initiative Japan Inc.
|
| 1.1.20.1 | 22-Apr-2018 |
pgoyette | Sync with HEAD
|
| 1.1.18.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.1.18.1 | 29-Apr-2015 |
jdolecek | file octeon_fpavar.h was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
|
| 1.1.2.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.1.2.1 | 29-Apr-2015 |
skrll | file octeon_fpavar.h was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
|
| 1.2.2.1 | 10-Jun-2019 |
christos | Sync with HEAD
|
| 1.25 | 24-Feb-2025 |
andvar | fix various typos in comments.
|
| 1.24 | 29-Jun-2024 |
riastradh | branches: 1.24.2; if_stats(9): Add ifp argument to if_stat..._ref.
This will enable us to pass the ifp through to a dtrace probe inside.
No functional change intended in this change, but this is an API change visible to modules so it shouldn't be pulled up.
PR kern/58377
|
| 1.23 | 20-Jul-2023 |
gutteridge | octeon_gmx.c: fix spelling in (default disabled) error messages
|
| 1.22 | 03-Jun-2022 |
andvar | fix folloing->following typos in more files. also s/begginning/beginning/.
|
| 1.21 | 04-May-2022 |
andvar | s/entires/entries/
|
| 1.20 | 07-Aug-2021 |
thorpej | Merge thorpej-cfargs2.
|
| 1.19 | 14-May-2021 |
simonb | branches: 1.19.4; Fix a missed bitmask to __SHIFTOUT conversion in rev 1.12.
Fixes negotiation problems on non-gige switches. Problem discovered and tested by riastradh@.
|
| 1.18 | 05-May-2021 |
simonb | branches: 1.18.2; Sprinkle some static.
|
| 1.17 | 24-Apr-2021 |
thorpej | branches: 1.17.2; Merge thorpej-cfargs branch:
Simplify and make extensible the config_search() / config_found() / config_attach() interfaces: rather than having different variants for which arguments you want pass along, just have a single call that takes a variadic list of tag-value arguments.
Adjust all call sites: - Simplify wherever possible; don't pass along arguments that aren't actually needed. - Don't be explicit about what interface attribute is attaching if the device only has one. (More simplification.) - Add a config_probe() function to be used in indirect configuiration situations, making is visibly easier to see when indirect config is in play, and allowing for future change in semantics. (As of now, this is just a wrapper around config_match(), but that is an implementation detail.)
Remove unnecessary or redundant interface attributes where they're not needed.
There are currently 5 "cfargs" defined: - CFARG_SUBMATCH (submatch function for direct config) - CFARG_SEARCH (search function for indirect config) - CFARG_IATTR (interface attribte) - CFARG_LOCATORS (locators array) - CFARG_DEVHANDLE (devhandle_t - wraps OFW, ACPI, etc. handles)
...and a sentinel value CFARG_EOL.
Add some extra sanity checking to ensure that interface attributes aren't ambiguous.
Use CFARG_DEVHANDLE in MI FDT, OFW, and ACPI code, and macppc and shark ports to associate those device handles with device_t instance. This will trickle trough to more places over time (need back-end for pre-OFW Sun OBP; any others?).
|
| 1.16 | 04-Jan-2021 |
thorpej | branches: 1.16.2; malloc(9) -> kmem(9)
|
| 1.15 | 23-Jun-2020 |
simonb | branches: 1.15.2; Redo cnmac attachments - cnmacM @ gmxN @ pip0 @ iobus Support SGMII mode used on CN70XX. Most functional changes from OpenBSD octeon port. Still more to come from the OpenBSD driver.
|
| 1.14 | 22-Jun-2020 |
simonb | Remove unmaintained CNMAC_DEBUG debug code.
|
| 1.13 | 19-Jun-2020 |
simonb | Simplify interrupt definition: remove mostly unused masks and just configure everything using interrupt numbers.
|
| 1.12 | 18-Jun-2020 |
simonb | General code cleanup: - use generic macros for building IO and IOBDMA addresses instead of many different variations of the same theme. - use #define's for CVMSEG addresses instead of magic numbers. - use __BIT/__BITS/__SHIFTIN/__SHIFTOUT in most places, instead of foo_SHIFT defines or (worse) shifting by magic numbers.
No functional changes.
|
| 1.11 | 31-May-2020 |
simonb | Rename all Cavium Octeon device driver functions, structs etc from "octeon_foo" to "octfoo", except "octeon_eth" becomes "cnmac".
|
| 1.10 | 31-May-2020 |
simonb | Clean up Cavium Octeon device names. Rename devices from "octeon_foo" to "octfoo" - this follows the naming conventions used by many other MIPS CPUs.
|
| 1.9 | 24-Apr-2020 |
mrg | fetch properties in attach rather than every re-init.
this avoids a rwlock while spinlock held problem likely introduced with MII locking rework, as fetching a property takes an rwlock, and prior to the rework, only kernel lock would have been held.
ok skrll@.
|
| 1.8 | 29-Jan-2020 |
thorpej | branches: 1.8.4; Adopt <net/if_stats.h>.
|
| 1.7 | 25-Jan-2020 |
thorpej | Remove the IFETHER_DOT3STATS stuff in this driver. ifi_dot3stats does not exist in NetBSD's "struct if_data", and what this driver does with it is incompatible with upcoming network stack changes.
|
| 1.6 | 10-Nov-2019 |
chs | branches: 1.6.2; in many device attach paths, allocate memory with M_WAITOK instead of M_NOWAIT and remove code to handle failures that can no longer happen.
|
| 1.5 | 28-May-2019 |
msaitoh | Fix compile error.
|
| 1.4 | 28-May-2019 |
msaitoh | Use ETHER_LOCK()/ETHER_UNLOCK() for all ethernet drivers to protect ec_multi*.
|
| 1.3 | 20-Aug-2017 |
maxv | branches: 1.3.2; 1.3.6; as the xxx implicitly points out, there's a division by zero here, so panic right away; found by mootja
|
| 1.2 | 01-Jun-2015 |
matt | branches: 1.2.2; Rework cavium support in preparation for MULTIPROCESSOR support
|
| 1.1 | 29-Apr-2015 |
hikaru | Initial import of Cavium Octeon and Octeon Plus SoC and specifically Ubiquiti Networks EdgeRouter LITE support. Currently the ethernet and uart are worked. This support was contributed by Internet Initiative Japan Inc.
|
| 1.2.2.3 | 28-Aug-2017 |
skrll | Sync with HEAD
|
| 1.2.2.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.2.2.1 | 01-Jun-2015 |
skrll | file octeon_gmx.c was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
|
| 1.3.6.3 | 13-Apr-2020 |
martin | Mostly merge changes from HEAD upto 20200411
|
| 1.3.6.2 | 08-Apr-2020 |
martin | Merge changes from current as of 20200406
|
| 1.3.6.1 | 10-Jun-2019 |
christos | Sync with HEAD
|
| 1.3.2.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.3.2.1 | 20-Aug-2017 |
jdolecek | file octeon_gmx.c was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
|
| 1.6.2.2 | 29-Feb-2020 |
ad | Sync with head.
|
| 1.6.2.1 | 25-Jan-2020 |
ad | Sync with head.
|
| 1.8.4.1 | 25-Apr-2020 |
bouyer | Sync with bouyer-xenpvh-base2 (HEAD)
|
| 1.15.2.1 | 03-Apr-2021 |
thorpej | Sync with HEAD.
|
| 1.16.2.1 | 21-Mar-2021 |
thorpej | Give config_found() the same variadic arguments treatment as config_search(). This commit only adds the CFARG_EOL sentinel to the existing config_found() calls. Conversion of config_found_sm_loc() and config_found_ia() call sites will be in subsequent commits.
|
| 1.17.2.2 | 17-Jun-2021 |
thorpej | Sync w/ HEAD.
|
| 1.17.2.1 | 13-May-2021 |
thorpej | Sync with HEAD.
|
| 1.18.2.1 | 31-May-2021 |
cjep | sync with head
|
| 1.19.4.1 | 04-Aug-2021 |
thorpej | Adapt to CFARGS().
|
| 1.24.2.1 | 02-Aug-2025 |
perseant | Sync with HEAD
|
| 1.7 | 23-May-2022 |
andvar | s/controll/control/ in comments.
|
| 1.6 | 17-Apr-2022 |
andvar | fix various typos in comments.
|
| 1.5 | 23-Jun-2020 |
simonb | Redo cnmac attachments - cnmacM @ gmxN @ pip0 @ iobus Support SGMII mode used on CN70XX. Most functional changes from OpenBSD octeon port. Still more to come from the OpenBSD driver.
|
| 1.4 | 22-Jun-2020 |
simonb | Remove more snprintb _BITS bits.
|
| 1.3 | 22-Jun-2020 |
simonb | Remove unused snprintb format strings.
|
| 1.2 | 18-Jun-2020 |
simonb | General code cleanup: - use generic macros for building IO and IOBDMA addresses instead of many different variations of the same theme. - use #define's for CVMSEG addresses instead of magic numbers. - use __BIT/__BITS/__SHIFTIN/__SHIFTOUT in most places, instead of foo_SHIFT defines or (worse) shifting by magic numbers.
No functional changes.
|
| 1.1 | 29-Apr-2015 |
hikaru | branches: 1.1.2; 1.1.18; Initial import of Cavium Octeon and Octeon Plus SoC and specifically Ubiquiti Networks EdgeRouter LITE support. Currently the ethernet and uart are worked. This support was contributed by Internet Initiative Japan Inc.
|
| 1.1.18.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.1.18.1 | 29-Apr-2015 |
jdolecek | file octeon_gmxreg.h was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
|
| 1.1.2.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.1.2.1 | 29-Apr-2015 |
skrll | file octeon_gmxreg.h was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
|
| 1.7 | 23-Jun-2020 |
simonb | Redo cnmac attachments - cnmacM @ gmxN @ pip0 @ iobus Support SGMII mode used on CN70XX. Most functional changes from OpenBSD octeon port. Still more to come from the OpenBSD driver.
|
| 1.6 | 22-Jun-2020 |
simonb | Remove unmaintained CNMAC_DEBUG debug code.
|
| 1.5 | 18-Jun-2020 |
simonb | General code cleanup: - use generic macros for building IO and IOBDMA addresses instead of many different variations of the same theme. - use #define's for CVMSEG addresses instead of magic numbers. - use __BIT/__BITS/__SHIFTIN/__SHIFTOUT in most places, instead of foo_SHIFT defines or (worse) shifting by magic numbers.
No functional changes.
|
| 1.4 | 31-May-2020 |
simonb | Rename all Cavium Octeon device driver functions, structs etc from "octeon_foo" to "octfoo", except "octeon_eth" becomes "cnmac".
|
| 1.3 | 24-Apr-2020 |
mrg | fetch properties in attach rather than every re-init.
this avoids a rwlock while spinlock held problem likely introduced with MII locking rework, as fetching a property takes an rwlock, and prior to the rework, only kernel lock would have been held.
ok skrll@.
|
| 1.2 | 19-Apr-2018 |
christos | branches: 1.2.12; s/static inline/static __inline/g for consistency.
|
| 1.1 | 29-Apr-2015 |
hikaru | branches: 1.1.2; 1.1.18; 1.1.20; Initial import of Cavium Octeon and Octeon Plus SoC and specifically Ubiquiti Networks EdgeRouter LITE support. Currently the ethernet and uart are worked. This support was contributed by Internet Initiative Japan Inc.
|
| 1.1.20.1 | 22-Apr-2018 |
pgoyette | Sync with HEAD
|
| 1.1.18.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.1.18.1 | 29-Apr-2015 |
jdolecek | file octeon_gmxvar.h was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
|
| 1.1.2.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.1.2.1 | 29-Apr-2015 |
skrll | file octeon_gmxvar.h was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
|
| 1.2.12.1 | 25-Apr-2020 |
bouyer | Sync with bouyer-xenpvh-base2 (HEAD)
|
| 1.2 | 22-Jun-2020 |
simonb | Remove unused snprintb format strings.
|
| 1.1 | 29-Apr-2015 |
hikaru | branches: 1.1.2; 1.1.18; Initial import of Cavium Octeon and Octeon Plus SoC and specifically Ubiquiti Networks EdgeRouter LITE support. Currently the ethernet and uart are worked. This support was contributed by Internet Initiative Japan Inc.
|
| 1.1.18.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.1.18.1 | 29-Apr-2015 |
jdolecek | file octeon_gpioreg.h was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
|
| 1.1.2.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.1.2.1 | 29-Apr-2015 |
skrll | file octeon_gpioreg.h was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
|
| 1.7 | 05-May-2021 |
simonb | Sprinkle some static.
|
| 1.6 | 27-Jan-2021 |
thorpej | branches: 1.6.4; Rename of_match_compat_data() to of_compatible_match(). Similarly, rename of_search_compatible() to of_compatible_lookup().
Standardize on of_compatible_match() for driver matching, and adapt all call sites.
|
| 1.5 | 27-Jan-2021 |
thorpej | Use DEVICE_COMPAT_EOL.
|
| 1.4 | 25-Jan-2021 |
thorpej | Since we're using designated initialisers for compat data, we should use a completely empty initializer for the sentinel.
|
| 1.3 | 18-Jan-2021 |
thorpej | Remove "struct of_compat_data" and replace its usage with "struct device_compatible_entry"; they are ABI-compatible.
Fix several "loses const qualifier" bugs encountered during this conversion.
|
| 1.2 | 15-Jan-2021 |
jmcneill | Add 'const char *xname' arg to fdtbus_interrupt_controller_func .establish
|
| 1.1 | 16-Jul-2020 |
jmcneill | branches: 1.1.2; FDT support for Cavium OCTEON MIPS SoCs. WIP.
|
| 1.1.2.1 | 03-Apr-2021 |
thorpej | Sync with HEAD.
|
| 1.6.4.1 | 13-May-2021 |
thorpej | Sync with HEAD.
|
| 1.1 | 29-Apr-2015 |
hikaru | branches: 1.1.2; 1.1.18; Initial import of Cavium Octeon and Octeon Plus SoC and specifically Ubiquiti Networks EdgeRouter LITE support. Currently the ethernet and uart are worked. This support was contributed by Internet Initiative Japan Inc.
|
| 1.1.18.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.1.18.1 | 29-Apr-2015 |
jdolecek | file octeon_iobreg.h was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
|
| 1.1.2.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.1.2.1 | 29-Apr-2015 |
skrll | file octeon_iobreg.h was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
|
| 1.8 | 04-Jan-2021 |
thorpej | malloc(9) -> kmem(9)
|
| 1.7 | 23-Jun-2020 |
simonb | branches: 1.7.2; Cleanup - mostly removing unused code and defines.
|
| 1.6 | 22-Jun-2020 |
simonb | Remove unmaintained CNMAC_DEBUG debug code.
|
| 1.5 | 19-Jun-2020 |
simonb | Simplify interrupt definition: remove mostly unused masks and just configure everything using interrupt numbers.
|
| 1.4 | 18-Jun-2020 |
simonb | General code cleanup: - use generic macros for building IO and IOBDMA addresses instead of many different variations of the same theme. - use #define's for CVMSEG addresses instead of magic numbers. - use __BIT/__BITS/__SHIFTIN/__SHIFTOUT in most places, instead of foo_SHIFT defines or (worse) shifting by magic numbers.
No functional changes.
|
| 1.3 | 31-May-2020 |
simonb | Rename all Cavium Octeon device driver functions, structs etc from "octeon_foo" to "octfoo", except "octeon_eth" becomes "cnmac".
|
| 1.2 | 01-Jun-2015 |
matt | branches: 1.2.2; 1.2.18; Rework cavium support in preparation for MULTIPROCESSOR support
|
| 1.1 | 29-Apr-2015 |
hikaru | Initial import of Cavium Octeon and Octeon Plus SoC and specifically Ubiquiti Networks EdgeRouter LITE support. Currently the ethernet and uart are worked. This support was contributed by Internet Initiative Japan Inc.
|
| 1.2.18.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.2.18.1 | 01-Jun-2015 |
jdolecek | file octeon_ipd.c was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
|
| 1.2.2.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.2.2.1 | 01-Jun-2015 |
skrll | file octeon_ipd.c was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
|
| 1.7.2.1 | 03-Apr-2021 |
thorpej | Sync with HEAD.
|
| 1.3 | 22-Jun-2020 |
simonb | Remove unused snprintb format strings.
|
| 1.2 | 18-Jun-2020 |
simonb | General code cleanup: - use generic macros for building IO and IOBDMA addresses instead of many different variations of the same theme. - use #define's for CVMSEG addresses instead of magic numbers. - use __BIT/__BITS/__SHIFTIN/__SHIFTOUT in most places, instead of foo_SHIFT defines or (worse) shifting by magic numbers.
No functional changes.
|
| 1.1 | 29-Apr-2015 |
hikaru | branches: 1.1.2; 1.1.18; Initial import of Cavium Octeon and Octeon Plus SoC and specifically Ubiquiti Networks EdgeRouter LITE support. Currently the ethernet and uart are worked. This support was contributed by Internet Initiative Japan Inc.
|
| 1.1.18.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.1.18.1 | 29-Apr-2015 |
jdolecek | file octeon_ipdreg.h was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
|
| 1.1.2.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.1.2.1 | 29-Apr-2015 |
skrll | file octeon_ipdreg.h was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
|
| 1.5 | 23-Jun-2020 |
simonb | Cleanup - mostly removing unused code and defines.
|
| 1.4 | 22-Jun-2020 |
simonb | Remove unmaintained CNMAC_DEBUG debug code.
|
| 1.3 | 18-Jun-2020 |
simonb | General code cleanup: - use generic macros for building IO and IOBDMA addresses instead of many different variations of the same theme. - use #define's for CVMSEG addresses instead of magic numbers. - use __BIT/__BITS/__SHIFTIN/__SHIFTOUT in most places, instead of foo_SHIFT defines or (worse) shifting by magic numbers.
No functional changes.
|
| 1.2 | 31-May-2020 |
simonb | Rename all Cavium Octeon device driver functions, structs etc from "octeon_foo" to "octfoo", except "octeon_eth" becomes "cnmac".
|
| 1.1 | 29-Apr-2015 |
hikaru | branches: 1.1.2; 1.1.18; Initial import of Cavium Octeon and Octeon Plus SoC and specifically Ubiquiti Networks EdgeRouter LITE support. Currently the ethernet and uart are worked. This support was contributed by Internet Initiative Japan Inc.
|
| 1.1.18.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.1.18.1 | 29-Apr-2015 |
jdolecek | file octeon_ipdvar.h was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
|
| 1.1.2.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.1.2.1 | 29-Apr-2015 |
skrll | file octeon_ipdvar.h was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
|
| 1.2 | 18-Jun-2020 |
simonb | General code cleanup: - use generic macros for building IO and IOBDMA addresses instead of many different variations of the same theme. - use #define's for CVMSEG addresses instead of magic numbers. - use __BIT/__BITS/__SHIFTIN/__SHIFTOUT in most places, instead of foo_SHIFT defines or (worse) shifting by magic numbers.
No functional changes.
|
| 1.1 | 29-Apr-2015 |
hikaru | branches: 1.1.2; 1.1.18; Initial import of Cavium Octeon and Octeon Plus SoC and specifically Ubiquiti Networks EdgeRouter LITE support. Currently the ethernet and uart are worked. This support was contributed by Internet Initiative Japan Inc.
|
| 1.1.18.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.1.18.1 | 29-Apr-2015 |
jdolecek | file octeon_l2creg.h was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
|
| 1.1.2.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.1.2.1 | 29-Apr-2015 |
skrll | file octeon_l2creg.h was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
|
| 1.7 | 07-Aug-2021 |
thorpej | Merge thorpej-cfargs2.
|
| 1.6 | 24-Apr-2021 |
thorpej | branches: 1.6.8; Merge thorpej-cfargs branch:
Simplify and make extensible the config_search() / config_found() / config_attach() interfaces: rather than having different variants for which arguments you want pass along, just have a single call that takes a variadic list of tag-value arguments.
Adjust all call sites: - Simplify wherever possible; don't pass along arguments that aren't actually needed. - Don't be explicit about what interface attribute is attaching if the device only has one. (More simplification.) - Add a config_probe() function to be used in indirect configuiration situations, making is visibly easier to see when indirect config is in play, and allowing for future change in semantics. (As of now, this is just a wrapper around config_match(), but that is an implementation detail.)
Remove unnecessary or redundant interface attributes where they're not needed.
There are currently 5 "cfargs" defined: - CFARG_SUBMATCH (submatch function for direct config) - CFARG_SEARCH (search function for indirect config) - CFARG_IATTR (interface attribte) - CFARG_LOCATORS (locators array) - CFARG_DEVHANDLE (devhandle_t - wraps OFW, ACPI, etc. handles)
...and a sentinel value CFARG_EOL.
Add some extra sanity checking to ensure that interface attributes aren't ambiguous.
Use CFARG_DEVHANDLE in MI FDT, OFW, and ACPI code, and macppc and shark ports to associate those device handles with device_t instance. This will trickle trough to more places over time (need back-end for pre-OFW Sun OBP; any others?).
|
| 1.5 | 19-Jun-2020 |
simonb | branches: 1.5.4; Simplify interrupt definition: remove mostly unused masks and just configure everything using interrupt numbers.
|
| 1.4 | 31-May-2020 |
simonb | Rename all Cavium Octeon device driver functions, structs etc from "octeon_foo" to "octfoo", except "octeon_eth" becomes "cnmac".
|
| 1.3 | 31-May-2020 |
simonb | Clean up Cavium Octeon device names. Rename devices from "octeon_foo" to "octfoo" - this follows the naming conventions used by many other MIPS CPUs.
|
| 1.2 | 01-Jun-2015 |
matt | branches: 1.2.2; 1.2.18; Rework cavium support in preparation for MULTIPROCESSOR support
|
| 1.1 | 29-Apr-2015 |
hikaru | Initial import of Cavium Octeon and Octeon Plus SoC and specifically Ubiquiti Networks EdgeRouter LITE support. Currently the ethernet and uart are worked. This support was contributed by Internet Initiative Japan Inc.
|
| 1.2.18.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.2.18.1 | 01-Jun-2015 |
jdolecek | file octeon_mpi.c was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
|
| 1.2.2.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.2.2.1 | 01-Jun-2015 |
skrll | file octeon_mpi.c was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
|
| 1.5.4.1 | 02-Apr-2021 |
thorpej | config_found_ia() -> config_found() w/ CFARG_IATTR.
|
| 1.6.8.1 | 04-Aug-2021 |
thorpej | Adapt to CFARGS().
|
| 1.3 | 22-Jun-2020 |
simonb | Remove unused snprintb format strings.
|
| 1.2 | 18-Jun-2020 |
simonb | General code cleanup: - use generic macros for building IO and IOBDMA addresses instead of many different variations of the same theme. - use #define's for CVMSEG addresses instead of magic numbers. - use __BIT/__BITS/__SHIFTIN/__SHIFTOUT in most places, instead of foo_SHIFT defines or (worse) shifting by magic numbers.
No functional changes.
|
| 1.1 | 29-Apr-2015 |
hikaru | branches: 1.1.2; 1.1.18; Initial import of Cavium Octeon and Octeon Plus SoC and specifically Ubiquiti Networks EdgeRouter LITE support. Currently the ethernet and uart are worked. This support was contributed by Internet Initiative Japan Inc.
|
| 1.1.18.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.1.18.1 | 29-Apr-2015 |
jdolecek | file octeon_mpireg.h was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
|
| 1.1.2.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.1.2.1 | 29-Apr-2015 |
skrll | file octeon_mpireg.h was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
|
| 1.2 | 31-May-2020 |
simonb | Rename all Cavium Octeon device driver functions, structs etc from "octeon_foo" to "octfoo", except "octeon_eth" becomes "cnmac".
|
| 1.1 | 29-Apr-2015 |
hikaru | branches: 1.1.2; 1.1.18; Initial import of Cavium Octeon and Octeon Plus SoC and specifically Ubiquiti Networks EdgeRouter LITE support. Currently the ethernet and uart are worked. This support was contributed by Internet Initiative Japan Inc.
|
| 1.1.18.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.1.18.1 | 29-Apr-2015 |
jdolecek | file octeon_mpivar.h was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
|
| 1.1.2.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.1.2.1 | 29-Apr-2015 |
skrll | file octeon_mpivar.h was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
|
| 1.1 | 29-Apr-2015 |
hikaru | branches: 1.1.2; 1.1.18; Initial import of Cavium Octeon and Octeon Plus SoC and specifically Ubiquiti Networks EdgeRouter LITE support. Currently the ethernet and uart are worked. This support was contributed by Internet Initiative Japan Inc.
|
| 1.1.18.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.1.18.1 | 29-Apr-2015 |
jdolecek | file octeon_npireg.h was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
|
| 1.1.2.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.1.2.1 | 29-Apr-2015 |
skrll | file octeon_npireg.h was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
|
| 1.5 | 22-Jun-2020 |
simonb | Remove unmaintained CNMAC_DEBUG debug code.
|
| 1.4 | 19-Jun-2020 |
simonb | Simplify interrupt definition: remove mostly unused masks and just configure everything using interrupt numbers.
|
| 1.3 | 31-May-2020 |
simonb | Rename all Cavium Octeon device driver functions, structs etc from "octeon_foo" to "octfoo", except "octeon_eth" becomes "cnmac".
|
| 1.2 | 01-Jun-2015 |
matt | branches: 1.2.2; 1.2.18; Rework cavium support in preparation for MULTIPROCESSOR support
|
| 1.1 | 29-Apr-2015 |
hikaru | Initial import of Cavium Octeon and Octeon Plus SoC and specifically Ubiquiti Networks EdgeRouter LITE support. Currently the ethernet and uart are worked. This support was contributed by Internet Initiative Japan Inc.
|
| 1.2.18.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.2.18.1 | 01-Jun-2015 |
jdolecek | file octeon_pci.c was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
|
| 1.2.2.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.2.2.1 | 01-Jun-2015 |
skrll | file octeon_pci.c was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
|
| 1.1 | 29-Apr-2015 |
hikaru | branches: 1.1.2; 1.1.18; Initial import of Cavium Octeon and Octeon Plus SoC and specifically Ubiquiti Networks EdgeRouter LITE support. Currently the ethernet and uart are worked. This support was contributed by Internet Initiative Japan Inc.
|
| 1.1.18.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.1.18.1 | 29-Apr-2015 |
jdolecek | file octeon_pcmreg.h was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
|
| 1.1.2.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.1.2.1 | 29-Apr-2015 |
skrll | file octeon_pcmreg.h was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
|
| 1.14 | 05-Dec-2021 |
msaitoh | s/multple/multiple/ in comment.
|
| 1.13 | 07-Aug-2021 |
thorpej | Merge thorpej-cfargs2.
|
| 1.12 | 24-Apr-2021 |
thorpej | branches: 1.12.8; Merge thorpej-cfargs branch:
Simplify and make extensible the config_search() / config_found() / config_attach() interfaces: rather than having different variants for which arguments you want pass along, just have a single call that takes a variadic list of tag-value arguments.
Adjust all call sites: - Simplify wherever possible; don't pass along arguments that aren't actually needed. - Don't be explicit about what interface attribute is attaching if the device only has one. (More simplification.) - Add a config_probe() function to be used in indirect configuiration situations, making is visibly easier to see when indirect config is in play, and allowing for future change in semantics. (As of now, this is just a wrapper around config_match(), but that is an implementation detail.)
Remove unnecessary or redundant interface attributes where they're not needed.
There are currently 5 "cfargs" defined: - CFARG_SUBMATCH (submatch function for direct config) - CFARG_SEARCH (search function for indirect config) - CFARG_IATTR (interface attribte) - CFARG_LOCATORS (locators array) - CFARG_DEVHANDLE (devhandle_t - wraps OFW, ACPI, etc. handles)
...and a sentinel value CFARG_EOL.
Add some extra sanity checking to ensure that interface attributes aren't ambiguous.
Use CFARG_DEVHANDLE in MI FDT, OFW, and ACPI code, and macppc and shark ports to associate those device handles with device_t instance. This will trickle trough to more places over time (need back-end for pre-OFW Sun OBP; any others?).
|
| 1.11 | 27-Jan-2021 |
thorpej | branches: 1.11.2; Rename of_match_compat_data() to of_compatible_match(). Similarly, rename of_search_compatible() to of_compatible_lookup().
Standardize on of_compatible_match() for driver matching, and adapt all call sites.
|
| 1.10 | 04-Jan-2021 |
thorpej | malloc(9) -> kmem(9)
|
| 1.9 | 16-Jul-2020 |
jmcneill | branches: 1.9.2; FDT support for Cavium OCTEON MIPS SoCs. WIP.
|
| 1.8 | 23-Jun-2020 |
simonb | Redo cnmac attachments - cnmacM @ gmxN @ pip0 @ iobus
|
| 1.7 | 22-Jun-2020 |
simonb | Remove unused snprintb format strings.
|
| 1.6 | 22-Jun-2020 |
simonb | Remove unmaintained CNMAC_DEBUG debug code.
|
| 1.5 | 18-Jun-2020 |
simonb | General code cleanup: - use generic macros for building IO and IOBDMA addresses instead of many different variations of the same theme. - use #define's for CVMSEG addresses instead of magic numbers. - use __BIT/__BITS/__SHIFTIN/__SHIFTOUT in most places, instead of foo_SHIFT defines or (worse) shifting by magic numbers.
No functional changes.
|
| 1.4 | 31-May-2020 |
simonb | Rename all Cavium Octeon device driver functions, structs etc from "octeon_foo" to "octfoo", except "octeon_eth" becomes "cnmac".
|
| 1.3 | 29-Jan-2020 |
thorpej | Adopt <net/if_stats.h>.
|
| 1.2 | 06-Feb-2018 |
mrg | branches: 1.2.4; 1.2.10; update for GCC 6:
hide octeon_pip_dump_regs_[] under OCTEON_ETH_DEBUG, the only user.
|
| 1.1 | 29-Apr-2015 |
hikaru | branches: 1.1.2; 1.1.18; Initial import of Cavium Octeon and Octeon Plus SoC and specifically Ubiquiti Networks EdgeRouter LITE support. Currently the ethernet and uart are worked. This support was contributed by Internet Initiative Japan Inc.
|
| 1.1.18.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.1.18.1 | 29-Apr-2015 |
jdolecek | file octeon_pip.c was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
|
| 1.1.2.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.1.2.1 | 29-Apr-2015 |
skrll | file octeon_pip.c was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
|
| 1.2.10.1 | 29-Feb-2020 |
ad | Sync with head.
|
| 1.2.4.1 | 08-Apr-2020 |
martin | Merge changes from current as of 20200406
|
| 1.9.2.1 | 03-Apr-2021 |
thorpej | Sync with HEAD.
|
| 1.11.2.1 | 21-Mar-2021 |
thorpej | Give config_found() the same variadic arguments treatment as config_search(). This commit only adds the CFARG_EOL sentinel to the existing config_found() calls. Conversion of config_found_sm_loc() and config_found_ia() call sites will be in subsequent commits.
|
| 1.12.8.1 | 04-Aug-2021 |
thorpej | Adapt to CFARGS().
|
| 1.5 | 23-Jun-2020 |
simonb | Redo cnmac attachments - cnmacM @ gmxN @ pip0 @ iobus
|
| 1.4 | 22-Jun-2020 |
simonb | Remove more snprintb _BITS bits.
|
| 1.3 | 22-Jun-2020 |
simonb | Remove unused snprintb format strings.
|
| 1.2 | 18-Jun-2020 |
simonb | General code cleanup: - use generic macros for building IO and IOBDMA addresses instead of many different variations of the same theme. - use #define's for CVMSEG addresses instead of magic numbers. - use __BIT/__BITS/__SHIFTIN/__SHIFTOUT in most places, instead of foo_SHIFT defines or (worse) shifting by magic numbers.
No functional changes.
|
| 1.1 | 29-Apr-2015 |
hikaru | branches: 1.1.2; 1.1.18; Initial import of Cavium Octeon and Octeon Plus SoC and specifically Ubiquiti Networks EdgeRouter LITE support. Currently the ethernet and uart are worked. This support was contributed by Internet Initiative Japan Inc.
|
| 1.1.18.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.1.18.1 | 29-Apr-2015 |
jdolecek | file octeon_pipreg.h was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
|
| 1.1.2.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.1.2.1 | 29-Apr-2015 |
skrll | file octeon_pipreg.h was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
|
| 1.5 | 23-Jun-2020 |
simonb | Redo cnmac attachments - cnmacM @ gmxN @ pip0 @ iobus
|
| 1.4 | 22-Jun-2020 |
simonb | Remove unmaintained CNMAC_DEBUG debug code.
|
| 1.3 | 18-Jun-2020 |
simonb | General code cleanup: - use generic macros for building IO and IOBDMA addresses instead of many different variations of the same theme. - use #define's for CVMSEG addresses instead of magic numbers. - use __BIT/__BITS/__SHIFTIN/__SHIFTOUT in most places, instead of foo_SHIFT defines or (worse) shifting by magic numbers.
No functional changes.
|
| 1.2 | 31-May-2020 |
simonb | Rename all Cavium Octeon device driver functions, structs etc from "octeon_foo" to "octfoo", except "octeon_eth" becomes "cnmac".
|
| 1.1 | 29-Apr-2015 |
hikaru | branches: 1.1.2; 1.1.18; Initial import of Cavium Octeon and Octeon Plus SoC and specifically Ubiquiti Networks EdgeRouter LITE support. Currently the ethernet and uart are worked. This support was contributed by Internet Initiative Japan Inc.
|
| 1.1.18.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.1.18.1 | 29-Apr-2015 |
jdolecek | file octeon_pipvar.h was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
|
| 1.1.2.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.1.2.1 | 29-Apr-2015 |
skrll | file octeon_pipvar.h was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
|
| 1.7 | 17-Sep-2021 |
andvar | some love to double letters (in comments).
|
| 1.6 | 04-Jan-2021 |
thorpej | malloc(9) -> kmem(9)
|
| 1.5 | 23-Jun-2020 |
simonb | branches: 1.5.2; Cleanup - mostly removing unused code and defines.
|
| 1.4 | 22-Jun-2020 |
simonb | Remove unmaintained CNMAC_DEBUG debug code.
|
| 1.3 | 18-Jun-2020 |
simonb | General code cleanup: - use generic macros for building IO and IOBDMA addresses instead of many different variations of the same theme. - use #define's for CVMSEG addresses instead of magic numbers. - use __BIT/__BITS/__SHIFTIN/__SHIFTOUT in most places, instead of foo_SHIFT defines or (worse) shifting by magic numbers.
No functional changes.
|
| 1.2 | 31-May-2020 |
simonb | Rename all Cavium Octeon device driver functions, structs etc from "octeon_foo" to "octfoo", except "octeon_eth" becomes "cnmac".
|
| 1.1 | 29-Apr-2015 |
hikaru | branches: 1.1.2; 1.1.18; Initial import of Cavium Octeon and Octeon Plus SoC and specifically Ubiquiti Networks EdgeRouter LITE support. Currently the ethernet and uart are worked. This support was contributed by Internet Initiative Japan Inc.
|
| 1.1.18.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.1.18.1 | 29-Apr-2015 |
jdolecek | file octeon_pko.c was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
|
| 1.1.2.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.1.2.1 | 29-Apr-2015 |
skrll | file octeon_pko.c was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
|
| 1.5.2.1 | 03-Apr-2021 |
thorpej | Sync with HEAD.
|
| 1.2 | 18-Jun-2020 |
simonb | General code cleanup: - use generic macros for building IO and IOBDMA addresses instead of many different variations of the same theme. - use #define's for CVMSEG addresses instead of magic numbers. - use __BIT/__BITS/__SHIFTIN/__SHIFTOUT in most places, instead of foo_SHIFT defines or (worse) shifting by magic numbers.
No functional changes.
|
| 1.1 | 29-Apr-2015 |
hikaru | branches: 1.1.2; 1.1.18; Initial import of Cavium Octeon and Octeon Plus SoC and specifically Ubiquiti Networks EdgeRouter LITE support. Currently the ethernet and uart are worked. This support was contributed by Internet Initiative Japan Inc.
|
| 1.1.18.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.1.18.1 | 29-Apr-2015 |
jdolecek | file octeon_pkoreg.h was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
|
| 1.1.2.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.1.2.1 | 29-Apr-2015 |
skrll | file octeon_pkoreg.h was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
|
| 1.6 | 23-Jun-2020 |
simonb | Cleanup - mostly removing unused code and defines.
|
| 1.5 | 22-Jun-2020 |
simonb | Remove unmaintained CNMAC_DEBUG debug code.
|
| 1.4 | 18-Jun-2020 |
simonb | General code cleanup: - use generic macros for building IO and IOBDMA addresses instead of many different variations of the same theme. - use #define's for CVMSEG addresses instead of magic numbers. - use __BIT/__BITS/__SHIFTIN/__SHIFTOUT in most places, instead of foo_SHIFT defines or (worse) shifting by magic numbers.
No functional changes.
|
| 1.3 | 31-May-2020 |
simonb | Rename all Cavium Octeon device driver functions, structs etc from "octeon_foo" to "octfoo", except "octeon_eth" becomes "cnmac".
|
| 1.2 | 19-Apr-2018 |
christos | s/static inline/static __inline/g for consistency.
|
| 1.1 | 29-Apr-2015 |
hikaru | branches: 1.1.2; 1.1.18; 1.1.20; Initial import of Cavium Octeon and Octeon Plus SoC and specifically Ubiquiti Networks EdgeRouter LITE support. Currently the ethernet and uart are worked. This support was contributed by Internet Initiative Japan Inc.
|
| 1.1.20.1 | 22-Apr-2018 |
pgoyette | Sync with HEAD
|
| 1.1.18.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.1.18.1 | 29-Apr-2015 |
jdolecek | file octeon_pkovar.h was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
|
| 1.1.2.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.1.2.1 | 29-Apr-2015 |
skrll | file octeon_pkovar.h was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
|
| 1.10 | 23-Jun-2020 |
simonb | Cleanup - mostly removing unused code and defines.
|
| 1.9 | 22-Jun-2020 |
simonb | Remove unmaintained CNMAC_DEBUG debug code.
|
| 1.8 | 19-Jun-2020 |
simonb | Simplify interrupt definition: remove mostly unused masks and just configure everything using interrupt numbers.
|
| 1.7 | 18-Jun-2020 |
simonb | General code cleanup: - use generic macros for building IO and IOBDMA addresses instead of many different variations of the same theme. - use #define's for CVMSEG addresses instead of magic numbers. - use __BIT/__BITS/__SHIFTIN/__SHIFTOUT in most places, instead of foo_SHIFT defines or (worse) shifting by magic numbers.
No functional changes.
|
| 1.6 | 31-May-2020 |
simonb | Rename all Cavium Octeon device driver functions, structs etc from "octeon_foo" to "octfoo", except "octeon_eth" becomes "cnmac".
|
| 1.5 | 10-Nov-2019 |
chs | in many device attach paths, allocate memory with M_WAITOK instead of M_NOWAIT and remove code to handle failures that can no longer happen.
|
| 1.4 | 28-May-2019 |
msaitoh | s/recieve/receive/
|
| 1.3 | 11-Apr-2019 |
kamil | Fix CVS Id
NFCI
|
| 1.2 | 01-Jun-2015 |
matt | branches: 1.2.2; 1.2.18; 1.2.22; Rework cavium support in preparation for MULTIPROCESSOR support
|
| 1.1 | 29-Apr-2015 |
hikaru | Initial import of Cavium Octeon and Octeon Plus SoC and specifically Ubiquiti Networks EdgeRouter LITE support. Currently the ethernet and uart are worked. This support was contributed by Internet Initiative Japan Inc.
|
| 1.2.22.2 | 13-Apr-2020 |
martin | Mostly merge changes from HEAD upto 20200411
|
| 1.2.22.1 | 10-Jun-2019 |
christos | Sync with HEAD
|
| 1.2.18.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.2.18.1 | 01-Jun-2015 |
jdolecek | file octeon_pow.c was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
|
| 1.2.2.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.2.2.1 | 01-Jun-2015 |
skrll | file octeon_pow.c was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
|
| 1.5 | 23-Jun-2020 |
simonb | Cleanup - mostly removing unused code and defines.
|
| 1.4 | 22-Jun-2020 |
simonb | Remove more snprintb _BITS bits.
|
| 1.3 | 22-Jun-2020 |
simonb | Remove unused snprintb format strings.
|
| 1.2 | 18-Jun-2020 |
simonb | General code cleanup: - use generic macros for building IO and IOBDMA addresses instead of many different variations of the same theme. - use #define's for CVMSEG addresses instead of magic numbers. - use __BIT/__BITS/__SHIFTIN/__SHIFTOUT in most places, instead of foo_SHIFT defines or (worse) shifting by magic numbers.
No functional changes.
|
| 1.1 | 29-Apr-2015 |
hikaru | branches: 1.1.2; 1.1.18; Initial import of Cavium Octeon and Octeon Plus SoC and specifically Ubiquiti Networks EdgeRouter LITE support. Currently the ethernet and uart are worked. This support was contributed by Internet Initiative Japan Inc.
|
| 1.1.18.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.1.18.1 | 29-Apr-2015 |
jdolecek | file octeon_powreg.h was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
|
| 1.1.2.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.1.2.1 | 29-Apr-2015 |
skrll | file octeon_powreg.h was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
|
| 1.7 | 23-Jun-2020 |
simonb | Cleanup - mostly removing unused code and defines.
|
| 1.6 | 22-Jun-2020 |
simonb | Remove unmaintained CNMAC_DEBUG debug code.
|
| 1.5 | 18-Jun-2020 |
simonb | General code cleanup: - use generic macros for building IO and IOBDMA addresses instead of many different variations of the same theme. - use #define's for CVMSEG addresses instead of magic numbers. - use __BIT/__BITS/__SHIFTIN/__SHIFTOUT in most places, instead of foo_SHIFT defines or (worse) shifting by magic numbers.
No functional changes.
|
| 1.4 | 31-May-2020 |
simonb | Rename all Cavium Octeon device driver functions, structs etc from "octeon_foo" to "octfoo", except "octeon_eth" becomes "cnmac".
|
| 1.3 | 19-Apr-2018 |
christos | s/static inline/static __inline/g for consistency.
|
| 1.2 | 11-Jul-2016 |
matt | branches: 1.2.16; 1.2.18; Change MIPS to use the common pmap code. Switch to 8KB pages on CPUs with a R4K MMU. Simplify cache code. Merge in most of changes from matt-mips64 branch
|
| 1.1 | 29-Apr-2015 |
hikaru | branches: 1.1.2; Initial import of Cavium Octeon and Octeon Plus SoC and specifically Ubiquiti Networks EdgeRouter LITE support. Currently the ethernet and uart are worked. This support was contributed by Internet Initiative Japan Inc.
|
| 1.1.2.3 | 05-Oct-2016 |
skrll | Sync with HEAD
|
| 1.1.2.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.1.2.1 | 29-Apr-2015 |
skrll | file octeon_powvar.h was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
|
| 1.2.18.1 | 22-Apr-2018 |
pgoyette | Sync with HEAD
|
| 1.2.16.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.2.16.1 | 11-Jul-2016 |
jdolecek | file octeon_powvar.h was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
|
| 1.17 | 30-Jan-2025 |
gutteridge | octeon_rnm.c: minor code formatting and grammar tweaks (NFC)
|
| 1.16 | 21-Mar-2023 |
riastradh | branches: 1.16.6; octrnm(4): Raise delay on startup.
According to CN50XX-HRM-V0.99E and CN78XX-HM-0.99E:
The entropy is provided by the jitter of 125 of 128 free-running oscillators XORed into a 128-bit LFSR. The LFSR accumulates entropy over 81 cycles, after which it is fed into a SHA-1 engine. [...] The SHA-1 engine runs once every 81 cycles. [...] The hardware produces new 64-bit random number every 81 cycles.
The last sentence means that we only need to wait 81 cycles _between_ consecutive SHA-1 outputs (which isn't relevant anyway because we reconfigure it into raw mode later), but the first two quotes might mean that we need to wait 81+81 cycles for the _first_ output to be produced on boot when running the self-test.
Now, in this case, the self-test is run with the LFSR unhooked, by clearing the RNM_CTL_STATUS[ENT_EN] bit, so that SHA-1 is computed from a known input -- this is really just paranoia to make sure that _some_ functions of the device (which is conjured out of thin air at a fixed virtual address, with no firmware bindings to guide us) behave as we expect.
And it's not clear if it really does take 81+81 cycles for the first SHA-1 output to appear when the LFSR isn't feeding into it anyway. But experimentally, delay of 81+81 cycles seems to work whereas a delay of only 81 cycles crashes.
PR kern/57280
XXX pullup-10 XXX pullup-9
|
| 1.15 | 19-Mar-2022 |
riastradh | branches: 1.15.4; rnd(9): Omit needless locks in various HWRNG drivers.
Now that the rnd(9) API guarantees serial callbacks, we can simplify everything a bit more.
(Some drivers like hifn(4) and sun8icrypto(4) still use locks to coordinate with other parts of the driver to submit requests to and process responses from the device.)
|
| 1.14 | 19-Mar-2022 |
riastradh | rnd(9): Adjust IPL of locks used by rndsource callbacks.
These no longer ever run from hard interrupt context or with a spin lock held, so there is no longer any need to have them at IPL_VM to block hard interrupts. Instead, lower them to IPL_SOFTSERIAL.
|
| 1.13 | 28-Dec-2021 |
riastradh | sys: Use preempt_point and preempt_needed, not open-coded versions.
|
| 1.12 | 18-Jun-2020 |
simonb | General code cleanup: - use generic macros for building IO and IOBDMA addresses instead of many different variations of the same theme. - use #define's for CVMSEG addresses instead of magic numbers. - use __BIT/__BITS/__SHIFTIN/__SHIFTOUT in most places, instead of foo_SHIFT defines or (worse) shifting by magic numbers.
No functional changes.
|
| 1.11 | 08-Jun-2020 |
simonb | Fix tyop in a comment. Thanks riastradh@.
|
| 1.10 | 05-Jun-2020 |
simonb | Rework CVMSEG LM usage a litte: - remove unused LM slots - use #defines for defining the size of CVMSEG LM users
XXX: Need to dynamically set CVMMEMCTL[LMEMSZ] during startup so we can both adapt to any future increase in CVMSEG LM usage and not waste any more L2 that we need to. XXX: Still need to move general IOBDMA conf to a different (new?) header.
|
| 1.9 | 31-May-2020 |
simonb | Rename all Cavium Octeon device driver functions, structs etc from "octeon_foo" to "octfoo", except "octeon_eth" becomes "cnmac".
|
| 1.8 | 31-May-2020 |
simonb | Clean up Cavium Octeon device names. Rename devices from "octeon_foo" to "octfoo" - this follows the naming conventions used by many other MIPS CPUs.
|
| 1.7 | 30-May-2020 |
simonb | CN70XX iobdma limit appears to be 128 words, so gather that many samples as a time. Gather the full 512 bytes of samples and process in a single call to rnd_add_data_sync() - about 10% faster than 4 calls to rnd_add_data_sync(). Put sample buffer in the softc to save some stack usage.
|
| 1.6 | 18-May-2020 |
riastradh | Adjust entropy estimate for the Octeon.
We are hedging in serial and in parallel, and more conservative than the Linux driver from Cavium seems to be, so although I don't know exactly what the thermal jitter of the device is, this seems like a reasonable compromise.
|
| 1.5 | 13-May-2020 |
riastradh | Rework octeon_rnm(4) random number generator driver.
- Do a little on-line self-test for fun. - Draw raw samples from the ring oscillators. - Draw substantially more samples: => early RO samples seem to have considerably lower entropy => consecutive RO samples are not independent - Make sure to use rnd_add_data_sync in the callback. => not technically needed in HEAD, but would be needed for pullup
|
| 1.4 | 12-May-2020 |
simonb | Oceton RNG/RNM driver modernisation to fit new entropy world order by riastradh@, with some tweaks to get working in RNG mode.
XXX TODO: work out how to get raw entropy mode working.
|
| 1.3 | 12-May-2020 |
simonb | If bus_space_map fails, just don't attach the driver instead of panicing. Check RNG built in self test, don't attach if that fails too.
|
| 1.2 | 08-Jan-2019 |
jdolecek | branches: 1.2.4; no need to include <machine/param.h> if <sys/param.h> already included
|
| 1.1 | 29-Apr-2015 |
hikaru | branches: 1.1.2; 1.1.18; 1.1.20; 1.1.22; Initial import of Cavium Octeon and Octeon Plus SoC and specifically Ubiquiti Networks EdgeRouter LITE support. Currently the ethernet and uart are worked. This support was contributed by Internet Initiative Japan Inc.
|
| 1.1.22.1 | 10-Jun-2019 |
christos | Sync with HEAD
|
| 1.1.20.1 | 18-Jan-2019 |
pgoyette | Synch with HEAD
|
| 1.1.18.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.1.18.1 | 29-Apr-2015 |
jdolecek | file octeon_rnm.c was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
|
| 1.1.2.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.1.2.1 | 29-Apr-2015 |
skrll | file octeon_rnm.c was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
|
| 1.2.4.3 | 30-Jul-2023 |
martin | Pull up following revision(s) (requested by gutteridge in ticket #256):
sys/arch/mips/cavium/dev/octeon_rnm.c: revision 1.16 (patch)
octrnm(4): Raise delay on startup.
According to CN50XX-HRM-V0.99E and CN78XX-HM-0.99E: The entropy is provided by the jitter of 125 of 128 free-running oscillators XORed into a 128-bit LFSR. The LFSR accumulates entropy over 81 cycles, after which it is fed into a SHA-1 engine. [...] The SHA-1 engine runs once every 81 cycles. [...] The hardware produces new 64-bit random number every 81 cycles.
The last sentence means that we only need to wait 81 cycles _between_ consecutive SHA-1 outputs (which isn't relevant anyway because we reconfigure it into raw mode later), but the first two quotes might mean that we need to wait 81+81 cycles for the _first_ output to be produced on boot when running the self-test.
Now, in this case, the self-test is run with the LFSR unhooked, by clearing the RNM_CTL_STATUS[ENT_EN] bit, so that SHA-1 is computed from a known input -- this is really just paranoia to make sure that _some_ functions of the device (which is conjured out of thin air at a fixed virtual address, with no firmware bindings to guide us) behave as we expect.
And it's not clear if it really does take 81+81 cycles for the first SHA-1 output to appear when the LFSR isn't feeding into it anyway.
But experimentally, delay of 81+81 cycles seems to work whereas a delay of only 81 cycles crashes. PR kern/57280
|
| 1.2.4.2 | 19-May-2020 |
martin | Apply patch, requested by simonb in ticket #918:
the updated octeon_rnm(4) driver fails a bogus randomness test in the netbsd-9 rnd(9) driver for RND_TYPE_RNG type devices so uses the RND_TYPE_UNKNOWN type. This approach is used by other drivers on the netbsd-9 branch.
|
| 1.2.4.1 | 19-May-2020 |
martin | Pull up following revision(s) (requested by simonb in ticket #918):
sys/arch/mips/cavium/dev/octeon_rnm.c: revision 1.3 sys/arch/mips/cavium/dev/octeon_rnm.c: revision 1.4 sys/arch/mips/cavium/dev/octeon_rnm.c: revision 1.5 sys/arch/mips/cavium/dev/octeon_rnm.c: revision 1.6 (+ patch) sys/arch/mips/cavium/dev/octeon_rnmreg.h: revision 1.2 sys/arch/mips/cavium/dev/octeon_rnmreg.h: revision 1.3 sys/arch/mips/cavium/octeonvar.h: revision 1.7
Add a few more bits. XXX convert to __BITS. -- If bus_space_map fails, just don't attach the driver instead of panicing. Check RNG built in self test, don't attach if that fails too. -- Oceton RNG/RNM driver modernisation to fit new entropy world order by riastradh@, with some tweaks to get working in RNG mode. XXX TODO: work out how to get raw entropy mode working. -- Rework octeon_rnm(4) random number generator driver. - Do a little on-line self-test for fun. - Draw raw samples from the ring oscillators. - Draw substantially more samples: =3D> early RO samples seem to have considerably lower entropy =3D> consecutive RO samples are not independent - Make sure to use rnd_add_data_sync in the callback. =3D> not technically needed in HEAD, but would be needed for pullup -- Adjust entropy estimate for the Octeon. We are hedging in serial and in parallel, and more conservative than the Linux driver from Cavium seems to be, so although I don't know exactly what the thermal jitter of the device is, this seems like a reasonable compromise.
|
| 1.15.4.1 | 30-Jul-2023 |
martin | Pull up following revision(s) (requested by gutteridge in ticket #256):
sys/arch/mips/cavium/dev/octeon_rnm.c: revision 1.16
octrnm(4): Raise delay on startup.
According to CN50XX-HRM-V0.99E and CN78XX-HM-0.99E: The entropy is provided by the jitter of 125 of 128 free-running oscillators XORed into a 128-bit LFSR. The LFSR accumulates entropy over 81 cycles, after which it is fed into a SHA-1 engine. [...] The SHA-1 engine runs once every 81 cycles. [...] The hardware produces new 64-bit random number every 81 cycles.
The last sentence means that we only need to wait 81 cycles _between_ consecutive SHA-1 outputs (which isn't relevant anyway because we reconfigure it into raw mode later), but the first two quotes might mean that we need to wait 81+81 cycles for the _first_ output to be produced on boot when running the self-test.
Now, in this case, the self-test is run with the LFSR unhooked, by clearing the RNM_CTL_STATUS[ENT_EN] bit, so that SHA-1 is computed from a known input -- this is really just paranoia to make sure that _some_ functions of the device (which is conjured out of thin air at a fixed virtual address, with no firmware bindings to guide us) behave as we expect.
And it's not clear if it really does take 81+81 cycles for the first SHA-1 output to appear when the LFSR isn't feeding into it anyway.
But experimentally, delay of 81+81 cycles seems to work whereas a delay of only 81 cycles crashes. PR kern/57280
|
| 1.16.6.1 | 02-Aug-2025 |
perseant | Sync with HEAD
|
| 1.5 | 22-Jun-2020 |
simonb | Remove unused snprintb format strings.
|
| 1.4 | 18-Jun-2020 |
simonb | General code cleanup: - use generic macros for building IO and IOBDMA addresses instead of many different variations of the same theme. - use #define's for CVMSEG addresses instead of magic numbers. - use __BIT/__BITS/__SHIFTIN/__SHIFTOUT in most places, instead of foo_SHIFT defines or (worse) shifting by magic numbers.
No functional changes.
|
| 1.3 | 13-May-2020 |
riastradh | Rework octeon_rnm(4) random number generator driver.
- Do a little on-line self-test for fun. - Draw raw samples from the ring oscillators. - Draw substantially more samples: => early RO samples seem to have considerably lower entropy => consecutive RO samples are not independent - Make sure to use rnd_add_data_sync in the callback. => not technically needed in HEAD, but would be needed for pullup
|
| 1.2 | 12-May-2020 |
simonb | Add a few more bits. XXX convert to __BITS.
|
| 1.1 | 29-Apr-2015 |
hikaru | branches: 1.1.2; 1.1.18; 1.1.26; Initial import of Cavium Octeon and Octeon Plus SoC and specifically Ubiquiti Networks EdgeRouter LITE support. Currently the ethernet and uart are worked. This support was contributed by Internet Initiative Japan Inc.
|
| 1.1.26.1 | 19-May-2020 |
martin | Pull up following revision(s) (requested by simonb in ticket #918):
sys/arch/mips/cavium/dev/octeon_rnm.c: revision 1.3 sys/arch/mips/cavium/dev/octeon_rnm.c: revision 1.4 sys/arch/mips/cavium/dev/octeon_rnm.c: revision 1.5 sys/arch/mips/cavium/dev/octeon_rnm.c: revision 1.6 (+ patch) sys/arch/mips/cavium/dev/octeon_rnmreg.h: revision 1.2 sys/arch/mips/cavium/dev/octeon_rnmreg.h: revision 1.3 sys/arch/mips/cavium/octeonvar.h: revision 1.7
Add a few more bits. XXX convert to __BITS. -- If bus_space_map fails, just don't attach the driver instead of panicing. Check RNG built in self test, don't attach if that fails too. -- Oceton RNG/RNM driver modernisation to fit new entropy world order by riastradh@, with some tweaks to get working in RNG mode. XXX TODO: work out how to get raw entropy mode working. -- Rework octeon_rnm(4) random number generator driver. - Do a little on-line self-test for fun. - Draw raw samples from the ring oscillators. - Draw substantially more samples: =3D> early RO samples seem to have considerably lower entropy =3D> consecutive RO samples are not independent - Make sure to use rnd_add_data_sync in the callback. =3D> not technically needed in HEAD, but would be needed for pullup -- Adjust entropy estimate for the Octeon. We are hedging in serial and in parallel, and more conservative than the Linux driver from Cavium seems to be, so although I don't know exactly what the thermal jitter of the device is, this seems like a reasonable compromise.
|
| 1.1.18.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.1.18.1 | 29-Apr-2015 |
jdolecek | file octeon_rnmreg.h was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
|
| 1.1.2.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.1.2.1 | 29-Apr-2015 |
skrll | file octeon_rnmreg.h was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
|
| 1.9 | 29-Sep-2022 |
skrll | Remove unnecessary include of <sys/malloc.h>.
|
| 1.8 | 29-Sep-2022 |
skrll | Trailing whitespace
|
| 1.7 | 27-Jan-2021 |
thorpej | Rename of_match_compat_data() to of_compatible_match(). Similarly, rename of_search_compatible() to of_compatible_lookup().
Standardize on of_compatible_match() for driver matching, and adapt all call sites.
|
| 1.6 | 16-Jul-2020 |
jmcneill | branches: 1.6.2; FDT support for Cavium OCTEON MIPS SoCs. WIP.
|
| 1.5 | 23-Jun-2020 |
simonb | Redo cnmac attachments - cnmacM @ gmxN @ pip0 @ iobus
|
| 1.4 | 18-Jun-2020 |
simonb | General code cleanup: - use generic macros for building IO and IOBDMA addresses instead of many different variations of the same theme. - use #define's for CVMSEG addresses instead of magic numbers. - use __BIT/__BITS/__SHIFTIN/__SHIFTOUT in most places, instead of foo_SHIFT defines or (worse) shifting by magic numbers.
No functional changes.
|
| 1.3 | 31-May-2020 |
simonb | Rename all Cavium Octeon device driver functions, structs etc from "octeon_foo" to "octfoo", except "octeon_eth" becomes "cnmac".
|
| 1.2 | 22-Jan-2019 |
msaitoh | Change MII PHY read/write API from:
int (*mii_readreg_t)(device_t, int, int); void (*mii_writereg_t)(device_t, int, int, int); to:
int (*mii_readreg_t)(device_t, int, int, uint16_t *); int (*mii_writereg_t)(device_t, int, int, uint16_t);
Now we can test if a read/write operation failed or not by the return value.
In 802.3 spec says that the PHY shall not respond to read/write transaction to the unimplemented register(22.2.4.3). Detecting timeout can be used to check whether a register is implemented or not (if the register conforms to the spec). ukphy(4) can be used this for MII_MMDACR and MII_MMDAADR.
Note that I noticed that the following code do infinite loop in the read/wirte function. If it accesses unimplemented PHY register, it will hang. It should be fixed:
arm/at91/at91emac.c arm/ep93xx/epe.c arm/omap/omapl1x_emac.c mips/ralink/ralink_eth.c arch/powerpc/booke/dev/pq3etsec.c(read) dev/cadence/if_cemac.c <- hkenken dev/ic/lan9118.c
Tested with the following device:
axe+ukphy axe+rgephy axen+rgephy (tested by Andrius V) wm+atphy wm+ukphy wm+igphy wm+ihphy wm+makphy sk+makphy sk+brgphy sk+gentbi msk+makphy sip+icsphy sip+ukphy re+rgephy bge+brgphy bnx+brgphy gsip+gphyter rtk+rlphy fxp+inphy (tested by Andrius V) tlp+acphy ex+exphy epic+qsphy vge+ciphy (tested by Andrius V) vr+ukphy (tested by Andrius V) vte+ukphy (tested by Andrius V)
Not tested (MAC): arm:at91emac arm:cemac arm:epe arm:geminigmac arm:enet arm:cpsw arm:emac(omac) arm:emac(sunxi) arm:npe evbppc:temac macppc:bm macppc:gm mips:aumac mips:ae mips:cnmac mips:reth mips:sbmac playstation2:smap powerpc:tsec powerpc:emac(ibm4xx) sgimips:mec sparc:be sf ne(ax88190, dl10019) awge ep gem hme smsh mtd sm age alc ale bce cas et jme lii nfe pcn ste stge tl xi aue mue smsc udav url
Not tested (PHY): amhphy bmtphy dmphy etphy glxtphy ikphy iophy lxtphy nsphyter pnaphy rdcphy sqphy tlphy tqphy urlphy
|
| 1.1 | 29-Apr-2015 |
hikaru | branches: 1.1.2; 1.1.18; 1.1.20; 1.1.22; Initial import of Cavium Octeon and Octeon Plus SoC and specifically Ubiquiti Networks EdgeRouter LITE support. Currently the ethernet and uart are worked. This support was contributed by Internet Initiative Japan Inc.
|
| 1.1.22.1 | 10-Jun-2019 |
christos | Sync with HEAD
|
| 1.1.20.1 | 26-Jan-2019 |
pgoyette | Sync with HEAD
|
| 1.1.18.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.1.18.1 | 29-Apr-2015 |
jdolecek | file octeon_smi.c was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
|
| 1.1.2.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.1.2.1 | 29-Apr-2015 |
skrll | file octeon_smi.c was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
|
| 1.6.2.1 | 03-Apr-2021 |
thorpej | Sync with HEAD.
|
| 1.3 | 23-Jun-2020 |
simonb | Redo cnmac attachments - cnmacM @ gmxN @ pip0 @ iobus
|
| 1.2 | 18-Jun-2020 |
simonb | General code cleanup: - use generic macros for building IO and IOBDMA addresses instead of many different variations of the same theme. - use #define's for CVMSEG addresses instead of magic numbers. - use __BIT/__BITS/__SHIFTIN/__SHIFTOUT in most places, instead of foo_SHIFT defines or (worse) shifting by magic numbers.
No functional changes.
|
| 1.1 | 29-Apr-2015 |
hikaru | branches: 1.1.2; 1.1.18; Initial import of Cavium Octeon and Octeon Plus SoC and specifically Ubiquiti Networks EdgeRouter LITE support. Currently the ethernet and uart are worked. This support was contributed by Internet Initiative Japan Inc.
|
| 1.1.18.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.1.18.1 | 29-Apr-2015 |
jdolecek | file octeon_smireg.h was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
|
| 1.1.2.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.1.2.1 | 29-Apr-2015 |
skrll | file octeon_smireg.h was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
|
| 1.6 | 23-Jun-2020 |
simonb | Redo cnmac attachments - cnmacM @ gmxN @ pip0 @ iobus
|
| 1.5 | 18-Jun-2020 |
simonb | General code cleanup: - use generic macros for building IO and IOBDMA addresses instead of many different variations of the same theme. - use #define's for CVMSEG addresses instead of magic numbers. - use __BIT/__BITS/__SHIFTIN/__SHIFTOUT in most places, instead of foo_SHIFT defines or (worse) shifting by magic numbers.
No functional changes.
|
| 1.4 | 31-May-2020 |
simonb | Rename all Cavium Octeon device driver functions, structs etc from "octeon_foo" to "octfoo", except "octeon_eth" becomes "cnmac".
|
| 1.3 | 22-Jan-2019 |
msaitoh | Change MII PHY read/write API from:
int (*mii_readreg_t)(device_t, int, int); void (*mii_writereg_t)(device_t, int, int, int); to:
int (*mii_readreg_t)(device_t, int, int, uint16_t *); int (*mii_writereg_t)(device_t, int, int, uint16_t);
Now we can test if a read/write operation failed or not by the return value.
In 802.3 spec says that the PHY shall not respond to read/write transaction to the unimplemented register(22.2.4.3). Detecting timeout can be used to check whether a register is implemented or not (if the register conforms to the spec). ukphy(4) can be used this for MII_MMDACR and MII_MMDAADR.
Note that I noticed that the following code do infinite loop in the read/wirte function. If it accesses unimplemented PHY register, it will hang. It should be fixed:
arm/at91/at91emac.c arm/ep93xx/epe.c arm/omap/omapl1x_emac.c mips/ralink/ralink_eth.c arch/powerpc/booke/dev/pq3etsec.c(read) dev/cadence/if_cemac.c <- hkenken dev/ic/lan9118.c
Tested with the following device:
axe+ukphy axe+rgephy axen+rgephy (tested by Andrius V) wm+atphy wm+ukphy wm+igphy wm+ihphy wm+makphy sk+makphy sk+brgphy sk+gentbi msk+makphy sip+icsphy sip+ukphy re+rgephy bge+brgphy bnx+brgphy gsip+gphyter rtk+rlphy fxp+inphy (tested by Andrius V) tlp+acphy ex+exphy epic+qsphy vge+ciphy (tested by Andrius V) vr+ukphy (tested by Andrius V) vte+ukphy (tested by Andrius V)
Not tested (MAC): arm:at91emac arm:cemac arm:epe arm:geminigmac arm:enet arm:cpsw arm:emac(omac) arm:emac(sunxi) arm:npe evbppc:temac macppc:bm macppc:gm mips:aumac mips:ae mips:cnmac mips:reth mips:sbmac playstation2:smap powerpc:tsec powerpc:emac(ibm4xx) sgimips:mec sparc:be sf ne(ax88190, dl10019) awge ep gem hme smsh mtd sm age alc ale bce cas et jme lii nfe pcn ste stge tl xi aue mue smsc udav url
Not tested (PHY): amhphy bmtphy dmphy etphy glxtphy ikphy iophy lxtphy nsphyter pnaphy rdcphy sqphy tlphy tqphy urlphy
|
| 1.2 | 10-Jan-2019 |
msaitoh | KNF. No functional change.
|
| 1.1 | 29-Apr-2015 |
hikaru | branches: 1.1.2; 1.1.18; 1.1.20; 1.1.22; Initial import of Cavium Octeon and Octeon Plus SoC and specifically Ubiquiti Networks EdgeRouter LITE support. Currently the ethernet and uart are worked. This support was contributed by Internet Initiative Japan Inc.
|
| 1.1.22.1 | 10-Jun-2019 |
christos | Sync with HEAD
|
| 1.1.20.2 | 26-Jan-2019 |
pgoyette | Sync with HEAD
|
| 1.1.20.1 | 18-Jan-2019 |
pgoyette | Synch with HEAD
|
| 1.1.18.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.1.18.1 | 29-Apr-2015 |
jdolecek | file octeon_smivar.h was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
|
| 1.1.2.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.1.2.1 | 29-Apr-2015 |
skrll | file octeon_smivar.h was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
|
| 1.2 | 31-May-2020 |
simonb | Remove unused Timer Unit register definitions and stubs. Can be resurrected from the attic in the unlikely event we'll ever have a driver for this device.
|
| 1.1 | 29-Apr-2015 |
hikaru | branches: 1.1.2; 1.1.18; Initial import of Cavium Octeon and Octeon Plus SoC and specifically Ubiquiti Networks EdgeRouter LITE support. Currently the ethernet and uart are worked. This support was contributed by Internet Initiative Japan Inc.
|
| 1.1.18.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.1.18.1 | 29-Apr-2015 |
jdolecek | file octeon_tim.c was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
|
| 1.1.2.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.1.2.1 | 29-Apr-2015 |
skrll | file octeon_tim.c was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
|
| 1.2 | 31-May-2020 |
simonb | Remove unused Timer Unit register definitions and stubs. Can be resurrected from the attic in the unlikely event we'll ever have a driver for this device.
|
| 1.1 | 29-Apr-2015 |
hikaru | branches: 1.1.2; 1.1.18; Initial import of Cavium Octeon and Octeon Plus SoC and specifically Ubiquiti Networks EdgeRouter LITE support. Currently the ethernet and uart are worked. This support was contributed by Internet Initiative Japan Inc.
|
| 1.1.18.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.1.18.1 | 29-Apr-2015 |
jdolecek | file octeon_timreg.h was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
|
| 1.1.2.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.1.2.1 | 29-Apr-2015 |
skrll | file octeon_timreg.h was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
|
| 1.2 | 18-Jun-2020 |
simonb | General code cleanup: - use generic macros for building IO and IOBDMA addresses instead of many different variations of the same theme. - use #define's for CVMSEG addresses instead of magic numbers. - use __BIT/__BITS/__SHIFTIN/__SHIFTOUT in most places, instead of foo_SHIFT defines or (worse) shifting by magic numbers.
No functional changes.
|
| 1.1 | 29-Apr-2015 |
hikaru | branches: 1.1.2; 1.1.18; Initial import of Cavium Octeon and Octeon Plus SoC and specifically Ubiquiti Networks EdgeRouter LITE support. Currently the ethernet and uart are worked. This support was contributed by Internet Initiative Japan Inc.
|
| 1.1.18.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.1.18.1 | 29-Apr-2015 |
jdolecek | file octeon_twsi.c was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
|
| 1.1.2.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.1.2.1 | 29-Apr-2015 |
skrll | file octeon_twsi.c was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
|
| 1.3 | 22-Jun-2020 |
simonb | Remove unused snprintb format strings.
|
| 1.2 | 18-Jun-2020 |
simonb | General code cleanup: - use generic macros for building IO and IOBDMA addresses instead of many different variations of the same theme. - use #define's for CVMSEG addresses instead of magic numbers. - use __BIT/__BITS/__SHIFTIN/__SHIFTOUT in most places, instead of foo_SHIFT defines or (worse) shifting by magic numbers.
No functional changes.
|
| 1.1 | 29-Apr-2015 |
hikaru | branches: 1.1.2; 1.1.18; Initial import of Cavium Octeon and Octeon Plus SoC and specifically Ubiquiti Networks EdgeRouter LITE support. Currently the ethernet and uart are worked. This support was contributed by Internet Initiative Japan Inc.
|
| 1.1.18.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.1.18.1 | 29-Apr-2015 |
jdolecek | file octeon_twsireg.h was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
|
| 1.1.2.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.1.2.1 | 29-Apr-2015 |
skrll | file octeon_twsireg.h was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
|
| 1.10 | 26-Jan-2022 |
martin | Fix initialization of the register map by using the com_init_regs() helper function. Pointed out by jmcneill.
|
| 1.9 | 23-Jun-2020 |
simonb | Add support for a very simple output-only console so early printf() can work. Minor tweaks, remove some unused code.
|
| 1.8 | 19-Jun-2020 |
simonb | Simplify interrupt definition: remove mostly unused masks and just configure everything using interrupt numbers.
|
| 1.7 | 18-Jun-2020 |
simonb | General code cleanup: - use generic macros for building IO and IOBDMA addresses instead of many different variations of the same theme. - use #define's for CVMSEG addresses instead of magic numbers. - use __BIT/__BITS/__SHIFTIN/__SHIFTOUT in most places, instead of foo_SHIFT defines or (worse) shifting by magic numbers.
No functional changes.
|
| 1.6 | 15-Jun-2020 |
simonb | Finish CPU core support for Octeon Cavium CN70XX: - decode actual CPU name - per CPU core reset logic (partially adapted from OpenBSD) - handle Octeon 3 ioclock rate differences to other cores (from OpenBSD)
|
| 1.5 | 31-May-2020 |
simonb | Finish rename of all Cavium Octeon device driver functions, structs etc from "octeon_foo" to "octfoo" (missed octeon_uart + entries in iobus config).
|
| 1.4 | 31-May-2020 |
simonb | Clean up Cavium Octeon device names. Rename devices from "octeon_foo" to "octfoo" - this follows the naming conventions used by many other MIPS CPUs.
|
| 1.3 | 02-Jun-2015 |
matt | branches: 1.3.2; 1.3.18; Use structure copy instead of memcpy.
|
| 1.2 | 01-Jun-2015 |
matt | Rework cavium support in preparation for MULTIPROCESSOR support
|
| 1.1 | 29-Apr-2015 |
hikaru | Initial import of Cavium Octeon and Octeon Plus SoC and specifically Ubiquiti Networks EdgeRouter LITE support. Currently the ethernet and uart are worked. This support was contributed by Internet Initiative Japan Inc.
|
| 1.3.18.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.3.18.1 | 02-Jun-2015 |
jdolecek | file octeon_uart.c was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
|
| 1.3.2.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.3.2.1 | 02-Jun-2015 |
skrll | file octeon_uart.c was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
|
| 1.2 | 11-Apr-2019 |
kamil | Fix CVS Id
NFCI
|
| 1.1 | 29-Apr-2015 |
hikaru | branches: 1.1.2; 1.1.18; 1.1.22; Initial import of Cavium Octeon and Octeon Plus SoC and specifically Ubiquiti Networks EdgeRouter LITE support. Currently the ethernet and uart are worked. This support was contributed by Internet Initiative Japan Inc.
|
| 1.1.22.1 | 10-Jun-2019 |
christos | Sync with HEAD
|
| 1.1.18.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.1.18.1 | 29-Apr-2015 |
jdolecek | file octeon_uartreg.h was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
|
| 1.1.2.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.1.2.1 | 29-Apr-2015 |
skrll | file octeon_uartreg.h was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
|
| 1.1 | 27-Jun-2020 |
simonb | Add new file containing a couple of UART prototypes.
Missing file pointed out by rin@. Thanks!
|
| 1.2 | 01-May-2015 |
hikaru | Use dwc2 instead of octeon_usbc, and unify octeon_usbn to new octeon_dwctwo. Internal USB memory stick of EdgeRouter Lite works now.
|
| 1.1 | 29-Apr-2015 |
hikaru | Initial import of Cavium Octeon and Octeon Plus SoC and specifically Ubiquiti Networks EdgeRouter LITE support. Currently the ethernet and uart are worked. This support was contributed by Internet Initiative Japan Inc.
|
| 1.4 | 23-Jun-2020 |
simonb | Remove USB controller register definitions, these match dwc2 core and weren't used anyway.
|
| 1.3 | 22-Jun-2020 |
simonb | Remove more snprintb _BITS bits.
|
| 1.2 | 22-Jun-2020 |
simonb | Remove unused snprintb format strings.
|
| 1.1 | 29-Apr-2015 |
hikaru | branches: 1.1.2; 1.1.18; Initial import of Cavium Octeon and Octeon Plus SoC and specifically Ubiquiti Networks EdgeRouter LITE support. Currently the ethernet and uart are worked. This support was contributed by Internet Initiative Japan Inc.
|
| 1.1.18.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.1.18.1 | 29-Apr-2015 |
jdolecek | file octeon_usbcreg.h was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
|
| 1.1.2.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.1.2.1 | 29-Apr-2015 |
skrll | file octeon_usbcreg.h was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
|
| 1.7 | 23-Jun-2020 |
simonb | Remove unused include files.
|
| 1.6 | 18-Nov-2018 |
skrll | Remove unused struct member (usbd_xfer now has a struct usb_task)
|
| 1.5 | 18-Nov-2018 |
skrll | Whitespace
|
| 1.4 | 09-Apr-2018 |
jakllsch | branches: 1.4.2; Stop potential misuse of vendor names and USB vendor IDs in root hub device and string descriptors.
Firstly: Few vendors have identical PCI-SIG vendor IDs and USB-IF vendor IDs. As such, using the PCI vendor ID as a USB vendor ID may trample on whomever is allocated that USB vendor ID.
Secondly: The vendor of the host controller hardware implementation has little to nothing to do with our usbroothub implementation. Thus we should not potentially associate any problems therewith to such third party.
This change will result in root hubs being identified by USB Vendor ID 0x0000. Root hub vendor string will now be "NetBSD" (or, specifically: ostype). Product ID (0x0000) and product strings remain unchanged.
|
| 1.3 | 26-Apr-2016 |
skrll | branches: 1.3.16; 1.3.18; g/c usb_dma_reserve
|
| 1.2 | 26-Apr-2016 |
skrll | s/usbd_xfer_handle/struct usbd_xfer */
|
| 1.1 | 29-Apr-2015 |
hikaru | branches: 1.1.2; Initial import of Cavium Octeon and Octeon Plus SoC and specifically Ubiquiti Networks EdgeRouter LITE support. Currently the ethernet and uart are worked. This support was contributed by Internet Initiative Japan Inc.
|
| 1.1.2.3 | 29-May-2016 |
skrll | Sync with HEAD
|
| 1.1.2.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.1.2.1 | 29-Apr-2015 |
skrll | file octeon_usbcvar.h was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
|
| 1.3.18.2 | 26-Nov-2018 |
pgoyette | Sync with HEAD, resolve a couple of conflicts
|
| 1.3.18.1 | 16-Apr-2018 |
pgoyette | Sync with HEAD, resolve some conflicts
|
| 1.3.16.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.3.16.1 | 26-Apr-2016 |
jdolecek | file octeon_usbcvar.h was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
|
| 1.4.2.1 | 10-Jun-2019 |
christos | Sync with HEAD
|
| 1.2 | 01-May-2015 |
hikaru | Use dwc2 instead of octeon_usbc, and unify octeon_usbn to new octeon_dwctwo. Internal USB memory stick of EdgeRouter Lite works now.
|
| 1.1 | 29-Apr-2015 |
hikaru | Initial import of Cavium Octeon and Octeon Plus SoC and specifically Ubiquiti Networks EdgeRouter LITE support. Currently the ethernet and uart are worked. This support was contributed by Internet Initiative Japan Inc.
|
| 1.3 | 23-Jun-2020 |
simonb | Minor tweaks and cleanup.
|
| 1.2 | 22-Jun-2020 |
simonb | Remove unused snprintb format strings.
|
| 1.1 | 29-Apr-2015 |
hikaru | branches: 1.1.2; 1.1.18; Initial import of Cavium Octeon and Octeon Plus SoC and specifically Ubiquiti Networks EdgeRouter LITE support. Currently the ethernet and uart are worked. This support was contributed by Internet Initiative Japan Inc.
|
| 1.1.18.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.1.18.1 | 29-Apr-2015 |
jdolecek | file octeon_usbnreg.h was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
|
| 1.1.2.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.1.2.1 | 29-Apr-2015 |
skrll | file octeon_usbnreg.h was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
|
| 1.2 | 23-Jun-2020 |
simonb | Remove unused include files.
|
| 1.1 | 29-Apr-2015 |
hikaru | branches: 1.1.2; 1.1.18; Initial import of Cavium Octeon and Octeon Plus SoC and specifically Ubiquiti Networks EdgeRouter LITE support. Currently the ethernet and uart are worked. This support was contributed by Internet Initiative Japan Inc.
|
| 1.1.18.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.1.18.1 | 29-Apr-2015 |
jdolecek | file octeon_usbnvar.h was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
|
| 1.1.2.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.1.2.1 | 29-Apr-2015 |
skrll | file octeon_usbnvar.h was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
|
| 1.9 | 29-Sep-2022 |
skrll | Remove unnecessary include of <sys/malloc.h>.
|
| 1.8 | 29-Sep-2022 |
skrll | Trailing whitespace
|
| 1.7 | 10-Nov-2021 |
msaitoh | s/endianess/endianness/
|
| 1.6 | 07-Aug-2021 |
thorpej | Merge thorpej-cfargs2.
|
| 1.5 | 24-Apr-2021 |
thorpej | branches: 1.5.8; Merge thorpej-cfargs branch:
Simplify and make extensible the config_search() / config_found() / config_attach() interfaces: rather than having different variants for which arguments you want pass along, just have a single call that takes a variadic list of tag-value arguments.
Adjust all call sites: - Simplify wherever possible; don't pass along arguments that aren't actually needed. - Don't be explicit about what interface attribute is attaching if the device only has one. (More simplification.) - Add a config_probe() function to be used in indirect configuiration situations, making is visibly easier to see when indirect config is in play, and allowing for future change in semantics. (As of now, this is just a wrapper around config_match(), but that is an implementation detail.)
Remove unnecessary or redundant interface attributes where they're not needed.
There are currently 5 "cfargs" defined: - CFARG_SUBMATCH (submatch function for direct config) - CFARG_SEARCH (search function for indirect config) - CFARG_IATTR (interface attribte) - CFARG_LOCATORS (locators array) - CFARG_DEVHANDLE (devhandle_t - wraps OFW, ACPI, etc. handles)
...and a sentinel value CFARG_EOL.
Add some extra sanity checking to ensure that interface attributes aren't ambiguous.
Use CFARG_DEVHANDLE in MI FDT, OFW, and ACPI code, and macppc and shark ports to associate those device handles with device_t instance. This will trickle trough to more places over time (need back-end for pre-OFW Sun OBP; any others?).
|
| 1.4 | 27-Jan-2021 |
thorpej | branches: 1.4.2; Rename of_match_compat_data() to of_compatible_match(). Similarly, rename of_search_compatible() to of_compatible_lookup().
Standardize on of_compatible_match() for driver matching, and adapt all call sites.
|
| 1.3 | 15-Oct-2020 |
jmcneill | branches: 1.3.2; Initialise xhci_softc sc_ios
|
| 1.2 | 17-Jul-2020 |
simonb | Don't use a reserved value for the USB endian CSR selects and enable octxhci_uctl_init(). Between these, USB works without needing a "usb start" from u-boot.
XXX: Note the port power enable goop is still disabled until we get a GPIO driver.
|
| 1.1 | 16-Jul-2020 |
jmcneill | Add USB3 support.
|
| 1.3.2.1 | 03-Apr-2021 |
thorpej | Sync with HEAD.
|
| 1.4.2.1 | 21-Mar-2021 |
thorpej | Give config_found() the same variadic arguments treatment as config_search(). This commit only adds the CFARG_EOL sentinel to the existing config_found() calls. Conversion of config_found_sm_loc() and config_found_ia() call sites will be in subsequent commits.
|
| 1.5.8.1 | 04-Aug-2021 |
thorpej | Adapt to CFARGS().
|
| 1.2 | 17-Jul-2020 |
simonb | Don't use a reserved value for the USB endian CSR selects and enable octxhci_uctl_init(). Between these, USB works without needing a "usb start" from u-boot.
XXX: Note the port power enable goop is still disabled until we get a GPIO driver.
|
| 1.1 | 16-Jul-2020 |
jmcneill | Add USB3 support.
|