Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/sys/arch/mips/cavium Minor tweaks and cleanup.



details:   https://anonhg.NetBSD.org/src/rev/7a9486733c0b
branches:  trunk
changeset: 973178:7a9486733c0b
user:      simonb <simonb%NetBSD.org@localhost>
date:      Tue Jun 23 05:14:18 2020 +0000

description:
Minor tweaks and cleanup.

diffstat:

 sys/arch/mips/cavium/dev/octeon_asx.c     |  15 ++++----
 sys/arch/mips/cavium/dev/octeon_ciu.c     |   6 +-
 sys/arch/mips/cavium/dev/octeon_fau.c     |   8 ++--
 sys/arch/mips/cavium/dev/octeon_fauvar.h  |   4 +-
 sys/arch/mips/cavium/dev/octeon_fpa.c     |   7 +--
 sys/arch/mips/cavium/dev/octeon_fpareg.h  |   4 +-
 sys/arch/mips/cavium/dev/octeon_fpavar.h  |  30 +++++++++--------
 sys/arch/mips/cavium/dev/octeon_usbnreg.h |  13 ++-----
 sys/arch/mips/cavium/octeon_cpunode.c     |  25 ++++++---------
 sys/arch/mips/cavium/octeon_iobus.c       |  51 +++++++++++++++++-------------
 10 files changed, 81 insertions(+), 82 deletions(-)

diffs (truncated from 504 to 300 lines):

diff -r d103d2b2fd5b -r 7a9486733c0b sys/arch/mips/cavium/dev/octeon_asx.c
--- a/sys/arch/mips/cavium/dev/octeon_asx.c     Tue Jun 23 03:09:35 2020 +0000
+++ b/sys/arch/mips/cavium/dev/octeon_asx.c     Tue Jun 23 05:14:18 2020 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: octeon_asx.c,v 1.3 2020/06/22 02:26:19 simonb Exp $    */
+/*     $NetBSD: octeon_asx.c,v 1.4 2020/06/23 05:14:18 simonb Exp $    */
 
 /*
  * Copyright (c) 2007 Internet Initiative Japan, Inc.
@@ -27,9 +27,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: octeon_asx.c,v 1.3 2020/06/22 02:26:19 simonb Exp $");
-
-#include "opt_octeon.h"
+__KERNEL_RCSID(0, "$NetBSD: octeon_asx.c,v 1.4 2020/06/23 05:14:18 simonb Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -84,9 +82,9 @@
 
        asx_tx_port = _ASX_RD8(sc, ASX0_TX_PRT_EN_OFFSET);
        if (enable)
-               SET(asx_tx_port, 1 << sc->sc_port);
+               SET(asx_tx_port, __BIT(sc->sc_port));
        else
-               CLR(asx_tx_port, 1 << sc->sc_port);
+               CLR(asx_tx_port, __BIT(sc->sc_port));
        _ASX_WR8(sc, ASX0_TX_PRT_EN_OFFSET, asx_tx_port);
        return 0;
 }
@@ -98,9 +96,9 @@
 
        asx_rx_port = _ASX_RD8(sc, ASX0_RX_PRT_EN_OFFSET);
        if (enable)
-               SET(asx_rx_port, 1 << sc->sc_port);
+               SET(asx_rx_port, __BIT(sc->sc_port));
        else
-               CLR(asx_rx_port, 1 << sc->sc_port);
+               CLR(asx_rx_port, __BIT(sc->sc_port));
        _ASX_WR8(sc, ASX0_RX_PRT_EN_OFFSET, asx_rx_port);
        return 0;
 }
@@ -108,6 +106,7 @@
 int
 octasx_clk_set(struct octasx_softc *sc, int tx_setting, int rx_setting)
 {
+
        _ASX_WR8(sc, ASX0_TX_CLK_SET0_OFFSET + 8 * sc->sc_port, tx_setting);
        _ASX_WR8(sc, ASX0_RX_CLK_SET0_OFFSET + 8 * sc->sc_port, rx_setting);
        return 0;
diff -r d103d2b2fd5b -r 7a9486733c0b sys/arch/mips/cavium/dev/octeon_ciu.c
--- a/sys/arch/mips/cavium/dev/octeon_ciu.c     Tue Jun 23 03:09:35 2020 +0000
+++ b/sys/arch/mips/cavium/dev/octeon_ciu.c     Tue Jun 23 05:14:18 2020 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: octeon_ciu.c,v 1.3 2020/06/22 02:26:19 simonb Exp $    */
+/*     $NetBSD: octeon_ciu.c,v 1.4 2020/06/23 05:14:18 simonb Exp $    */
 
 /*
  * Copyright (c) 2008 Internet Initiative Japan, Inc.
@@ -27,7 +27,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: octeon_ciu.c,v 1.3 2020/06/22 02:26:19 simonb Exp $");
+__KERNEL_RCSID(0, "$NetBSD: octeon_ciu.c,v 1.4 2020/06/23 05:14:18 simonb Exp $");
 
 #include "opt_octeon.h"
 
@@ -43,4 +43,4 @@
 #include <mips/cavium/octeonvar.h>
 #include <mips/cavium/dev/octeon_ciureg.h>
 
-/* XXX keep this file? */
+/* XXX Add MP IPI interrupt support */
diff -r d103d2b2fd5b -r 7a9486733c0b sys/arch/mips/cavium/dev/octeon_fau.c
--- a/sys/arch/mips/cavium/dev/octeon_fau.c     Tue Jun 23 03:09:35 2020 +0000
+++ b/sys/arch/mips/cavium/dev/octeon_fau.c     Tue Jun 23 05:14:18 2020 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: octeon_fau.c,v 1.3 2020/06/18 13:52:08 simonb Exp $    */
+/*     $NetBSD: octeon_fau.c,v 1.4 2020/06/23 05:14:18 simonb Exp $    */
 
 /*
  * Copyright (c) 2007 Internet Initiative Japan, Inc.
@@ -27,7 +27,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: octeon_fau.c,v 1.3 2020/06/18 13:52:08 simonb Exp $");
+__KERNEL_RCSID(0, "$NetBSD: octeon_fau.c,v 1.4 2020/06/23 05:14:18 simonb Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -52,7 +52,7 @@
        paddr_t addr = OCTEON_ADDR_IO_DID(FAU_MAJOR_DID, FAU_SUB_DID) |
            __SHIFTIN(args, OCTEON_ADDR_OFFSET);
 
-       return octeon_read_csr(addr);
+       return octeon_xkphys_read_8(addr);
 }
 
 static inline void
@@ -61,7 +61,7 @@
        paddr_t addr = OCTEON_ADDR_IO_DID(FAU_MAJOR_DID, FAU_SUB_DID) |
            __SHIFTIN(args, OCTEON_ADDR_OFFSET);
 
-       octeon_write_csr(addr, value);
+       octeon_xkphys_write_8(addr, value);
 }
 
 /* ---- operation primitives */
diff -r d103d2b2fd5b -r 7a9486733c0b sys/arch/mips/cavium/dev/octeon_fauvar.h
--- a/sys/arch/mips/cavium/dev/octeon_fauvar.h  Tue Jun 23 03:09:35 2020 +0000
+++ b/sys/arch/mips/cavium/dev/octeon_fauvar.h  Tue Jun 23 05:14:18 2020 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: octeon_fauvar.h,v 1.3 2020/06/18 13:52:08 simonb Exp $ */
+/*     $NetBSD: octeon_fauvar.h,v 1.4 2020/06/23 05:14:18 simonb Exp $ */
 
 /*
  * Copyright (c) 2007 Internet Initiative Japan, Inc.
@@ -118,6 +118,7 @@
 static inline void
 octfau_op_inc_fetch_8(struct octfau_desc *fd, int64_t v)
 {
+
        octfau_op_iobdma_store_data(fd->fd_scroff, v, 0,
            OCT_FAU_OP_SIZE_64/* XXX */, fd->fd_regno);
 }
@@ -125,6 +126,7 @@
 static inline int64_t
 octfau_op_inc_read_8(struct octfau_desc *fd)
 {
+
        OCTEON_SYNCIOBDMA;
        return octeon_cvmseg_read_8(fd->fd_scroff);
 }
diff -r d103d2b2fd5b -r 7a9486733c0b sys/arch/mips/cavium/dev/octeon_fpa.c
--- a/sys/arch/mips/cavium/dev/octeon_fpa.c     Tue Jun 23 03:09:35 2020 +0000
+++ b/sys/arch/mips/cavium/dev/octeon_fpa.c     Tue Jun 23 05:14:18 2020 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: octeon_fpa.c,v 1.7 2020/06/22 02:26:20 simonb Exp $    */
+/*     $NetBSD: octeon_fpa.c,v 1.8 2020/06/23 05:14:18 simonb Exp $    */
 
 /*
  * Copyright (c) 2007 Internet Initiative Japan, Inc.
@@ -29,9 +29,7 @@
 #undef FPADEBUG
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: octeon_fpa.c,v 1.7 2020/06/22 02:26:20 simonb Exp $");
-
-#include "opt_octeon.h"
+__KERNEL_RCSID(0, "$NetBSD: octeon_fpa.c,v 1.8 2020/06/23 05:14:18 simonb Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -216,6 +214,7 @@
 void
 octfpa_init_bus(struct octfpa_softc *sc)
 {
+
        octfpa_init_bus_space(sc);
 }
 
diff -r d103d2b2fd5b -r 7a9486733c0b sys/arch/mips/cavium/dev/octeon_fpareg.h
--- a/sys/arch/mips/cavium/dev/octeon_fpareg.h  Tue Jun 23 03:09:35 2020 +0000
+++ b/sys/arch/mips/cavium/dev/octeon_fpareg.h  Tue Jun 23 05:14:18 2020 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: octeon_fpareg.h,v 1.4 2020/06/22 12:26:11 simonb Exp $ */
+/*     $NetBSD: octeon_fpareg.h,v 1.5 2020/06/23 05:14:18 simonb Exp $ */
 
 /*
  * Copyright (c) 2007 Internet Initiative Japan, Inc.
@@ -177,6 +177,8 @@
 #define        FPA_BASE                                0x0001180028000000ULL
 #define        FPA_SIZE                                0x0200
 
+#define        FPA_NPOOLS                              8
+
 #define        FPA_INT_SUM_OFFSET                      0x0040
 #define        FPA_INT_ENB_OFFSET                      0x0048
 #define        FPA_CTL_STATUS_OFFSET                   0x0050
diff -r d103d2b2fd5b -r 7a9486733c0b sys/arch/mips/cavium/dev/octeon_fpavar.h
--- a/sys/arch/mips/cavium/dev/octeon_fpavar.h  Tue Jun 23 03:09:35 2020 +0000
+++ b/sys/arch/mips/cavium/dev/octeon_fpavar.h  Tue Jun 23 05:14:18 2020 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: octeon_fpavar.h,v 1.6 2020/06/22 02:26:20 simonb Exp $ */
+/*     $NetBSD: octeon_fpavar.h,v 1.7 2020/06/23 05:14:18 simonb Exp $ */
 
 /*
  * Copyright (c) 2007 Internet Initiative Japan, Inc.
@@ -29,7 +29,10 @@
 #ifndef _OCTEON_FPAVAR_H_
 #define _OCTEON_FPAVAR_H_
 
+#include <mips/cache_octeon.h>
+
 #include <mips/cavium/octeonreg.h>
+#include <mips/cavium/dev/octeon_fpareg.h>
 
 struct octfpa_buf {
        int             fb_poolno;      /* pool # */
@@ -54,18 +57,16 @@
 uint64_t       octfpa_query(int);
 int            octfpa_available_fpa_pool(int *available, int pool_no);
 
-#define OCTEON_CACHE_LINE_SIZE (128)
+/* Pool sizes in bytes, must be multiple of a cache line */
+#define FPA_POOL_0_SIZE (16 * OCTEON_CACHELINE_SIZE)
+#define FPA_POOL_1_SIZE (1 * OCTEON_CACHELINE_SIZE)
+#define FPA_POOL_2_SIZE (8 * OCTEON_CACHELINE_SIZE)
+#define FPA_POOL_3_SIZE (4 * OCTEON_CACHELINE_SIZE)
 
-/* Pool sizes in bytes, must be multiple of a cache line */
-#define FPA_POOL_0_SIZE (16 * OCTEON_CACHE_LINE_SIZE)
-#define FPA_POOL_1_SIZE (1 * OCTEON_CACHE_LINE_SIZE)
-#define FPA_POOL_2_SIZE (8 * OCTEON_CACHE_LINE_SIZE)
-#define FPA_POOL_3_SIZE (4 * OCTEON_CACHE_LINE_SIZE)
-
-#define FPA_POOL_4_SIZE (16 * OCTEON_CACHE_LINE_SIZE)
-#define FPA_POOL_5_SIZE (16 * OCTEON_CACHE_LINE_SIZE)
-#define FPA_POOL_6_SIZE (16 * OCTEON_CACHE_LINE_SIZE)
-#define FPA_POOL_7_SIZE (16 * OCTEON_CACHE_LINE_SIZE)
+#define FPA_POOL_4_SIZE (16 * OCTEON_CACHELINE_SIZE)
+#define FPA_POOL_5_SIZE (16 * OCTEON_CACHELINE_SIZE)
+#define FPA_POOL_6_SIZE (16 * OCTEON_CACHELINE_SIZE)
+#define FPA_POOL_7_SIZE (16 * OCTEON_CACHELINE_SIZE)
 
 /* Pools in use */
 #define FPA_RECV_PKT_POOL              (0)     /* Receive Packet buffers */
@@ -96,7 +97,7 @@
        /* for FPA operations, subdid == pool number */
        uint64_t addr = OCTEON_ADDR_IO_DID(FPA_MAJOR_DID, fpapool);
 
-       return octeon_read_csr(addr);
+       return octeon_xkphys_read_8(addr);
 }
 
 #ifdef notyet
@@ -118,7 +119,8 @@
            __SHIFTIN(addr, FPA_OPS_STORE_ADDR);
 
        OCTEON_SYNCWS;
-       octeon_write_csr(ptr, __SHIFTIN(dwbcount, FPA_OPS_STORE_DATA_DWBCOUNT));
+       octeon_xkphys_write_8(ptr,
+           __SHIFTIN(dwbcount, FPA_OPS_STORE_DATA_DWBCOUNT));
 }
 
 static __inline paddr_t
diff -r d103d2b2fd5b -r 7a9486733c0b sys/arch/mips/cavium/dev/octeon_usbnreg.h
--- a/sys/arch/mips/cavium/dev/octeon_usbnreg.h Tue Jun 23 03:09:35 2020 +0000
+++ b/sys/arch/mips/cavium/dev/octeon_usbnreg.h Tue Jun 23 05:14:18 2020 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: octeon_usbnreg.h,v 1.2 2020/06/22 03:05:07 simonb Exp $        */
+/*     $NetBSD: octeon_usbnreg.h,v 1.3 2020/06/23 05:14:18 simonb Exp $        */
 
 /*
  * Copyright (c) 2007 Internet Initiative Japan, Inc.
@@ -109,8 +109,9 @@
 #define USBN_CLK_CTL_P_XENBN                   UINT64_C(0x0000000000004000)
 #define USBN_CLK_CTL_P_COM_ON                  UINT64_C(0x0000000000002000)
 #define USBN_CLK_CTL_P_C_SEL                   UINT64_C(0x0000000000001800)
-#define  SET_USBN_CLK_CTL_P_C_SEL(v) (((v)<<11) & USBN_CLK_CTL_P_C_SEL)
-#define  GET_USBN_CLK_CTL_P_C_SEL(v) (((v) & USBN_CLK_CTL_P_C_SEL) >> 11)
+#define          USBN_CLK_CTL_P_C_SEL_12MHZ              0
+#define          USBN_CLK_CTL_P_C_SEL_24MHZ              1
+#define          USBN_CLK_CTL_P_C_SEL_48MHZ              2
 #define USBN_CLK_CTL_CDIV_BYP                  UINT64_C(0x0000000000000400)
 #define USBN_CLK_CTL_SD_MODE                   UINT64_C(0x0000000000000300)
 #define USBN_CLK_CTL_S_BIST                    UINT64_C(0x0000000000000080)
@@ -119,15 +120,9 @@
 #define USBN_CLK_CTL_PRST                      UINT64_C(0x0000000000000010)
 #define USBN_CLK_CTL_HRST                      UINT64_C(0x0000000000000008)
 #define USBN_CLK_CTL_DIVIDE                    UINT64_C(0x0000000000000007)
-#define  SET_USBN_CLK_CTL_DIVIDE(v) (((v)<<0) & USBN_CLK_CTL_DIVIDE)
-#define  GET_USBN_CLK_CTL_DIVIDE(v) (((v) & USBN_CLK_CTL_DIVIDE) >> 0)
 /* CN50xx extension */
 #define USBN_CLK_CTL_DIVIDE2                   UINT64_C(0x00000000000c0000)
-#define  SET_USBN_CLK_CTL_DIVIDE2(v) (((v)<<18) & USBN_CLK_CTL_DIVIDE2)
-#define  GET_USBN_CLK_CTL_DIVIDE2(v) (((v) & USBN_CLK_CTL_DIVIDE2) >> 18)
 #define USBN_CLK_CTL_P_RTYPE                   UINT64_C(0x000000000000c000)
-#define  SET_USBN_CLK_CTL_P_RTYPE(v) (((v)<<14) & USBN_CLK_CTL_P_RTYPE)
-#define  GET_USBN_CLK_CTL_P_RTYPE(v) (((v) & USBN_CLK_CTL_P_RTYPE) >> 14)
 
 #define USBN_USBP_CTL_STATUS_XXX_63_38         UINT64_C(0xffffffc000000000)
 #define USBN_USBP_CTL_STATUS_BIST_DONE         UINT64_C(0x0000002000000000)
diff -r d103d2b2fd5b -r 7a9486733c0b sys/arch/mips/cavium/octeon_cpunode.c
--- a/sys/arch/mips/cavium/octeon_cpunode.c     Tue Jun 23 03:09:35 2020 +0000
+++ b/sys/arch/mips/cavium/octeon_cpunode.c     Tue Jun 23 05:14:18 2020 +0000
@@ -29,7 +29,7 @@
 #define __INTR_PRIVATE
 #include <sys/cdefs.h>
 
-__KERNEL_RCSID(0, "$NetBSD: octeon_cpunode.c,v 1.12 2018/01/23 06:57:49 maya Exp $");
+__KERNEL_RCSID(0, "$NetBSD: octeon_cpunode.c,v 1.13 2020/06/23 05:14:18 simonb Exp $");
 
 #include "locators.h"
 #include "cpunode.h"
@@ -63,7 +63,6 @@



Home | Main Index | Thread Index | Old Index