Source-Changes-HG archive

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

[src/trunk]: src evbppc: Add support for DHT Walnut 405GP evaluation board.



details:   https://anonhg.NetBSD.org/src/rev/5fb33b11c392
branches:  trunk
changeset: 960896:5fb33b11c392
user:      rin <rin%NetBSD.org@localhost>
date:      Fri Apr 02 07:00:33 2021 +0000

description:
evbppc: Add support for DHT Walnut 405GP evaluation board.
(Digital Home Technologies PCB 01070201 Rev. 1.1)

Official web page seems gone, but analyses by Linux people are at:

- https://elinux.org/DHT-Walnut
- http://web.archive.org/web/20070225171826/http://supernova.stanford.edu/dingdong/

The board features:

- 266MHz PowerPC 405GP processor
- one PC133 SDRAM slot
- two 32-bit 5V PCI slot
- on-chip ethernet controller with DP83843 PHY
- on-chip serial port / GPIO controller
- on-board PDC20265 IDE controller

Hardware limitations:

- no MAC address assigned
- no RTC present

Known problem:

- atabus(4) channels cannot be attached to pdcide(4) for cold boot

dmesg:

- https://dmesgd.nycbug.org/index.cgi?do=view&id=5997

Have fun!

diffstat:

 doc/CHANGES                           |    4 +-
 sys/arch/evbppc/conf/DHT              |  237 ++++++++++++++++++++++++
 sys/arch/evbppc/conf/Makefile.dht.inc |    8 +
 sys/arch/evbppc/conf/files.dht        |   21 ++
 sys/arch/evbppc/conf/std.dht          |   32 +++
 sys/arch/evbppc/dht/autoconf.c        |   79 ++++++++
 sys/arch/evbppc/dht/locore.S          |  193 ++++++++++++++++++++
 sys/arch/evbppc/dht/machdep.c         |  327 ++++++++++++++++++++++++++++++++++
 sys/arch/evbppc/include/dht.h         |   40 ++++
 9 files changed, 940 insertions(+), 1 deletions(-)

diffs (truncated from 984 to 300 lines):

diff -r e2a4c6c6bb47 -r 5fb33b11c392 doc/CHANGES
--- a/doc/CHANGES       Fri Apr 02 06:55:14 2021 +0000
+++ b/doc/CHANGES       Fri Apr 02 07:00:33 2021 +0000
@@ -1,4 +1,4 @@
-# LIST OF CHANGES FROM LAST RELEASE:                   <$Revision: 1.2788 $>
+# LIST OF CHANGES FROM LAST RELEASE:                   <$Revision: 1.2789 $>
 #
 #
 # [Note: This file does not mention every change made to the NetBSD source tree.
@@ -343,3 +343,5 @@
        nsd: Import 4.3.5. [christos 20210315]
        unbound(8): Import 1.13.1. [christos 20210315]
        OpenSSL: Imported 1.1.1k. [christos 20210325]
+       evbppc: Add support for DHT Walnut 405GP evaluation board.
+               [rin 20210402]
diff -r e2a4c6c6bb47 -r 5fb33b11c392 sys/arch/evbppc/conf/DHT
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/sys/arch/evbppc/conf/DHT  Fri Apr 02 07:00:33 2021 +0000
@@ -0,0 +1,237 @@
+#      $NetBSD: DHT,v 1.1 2021/04/02 07:00:33 rin Exp $
+#
+#      DHT --- DHT Walnut 405GP Evaluation Board
+#              (Digital Home Technologies PCB 01070201 Rev. 1.1)
+#
+
+include        "arch/evbppc/conf/std.dht"
+
+options        INCLUDE_CONFIG_FILE     # embed config file in kernel binary
+
+#ident                 "DHT-$Revision: 1.1 $"
+
+maxusers       32
+
+
+#
+# Standard system options
+#
+
+options        INSECURE                # disable kernel security levels
+options        NTP                     # NTP phase/frequency locked loop
+options        KTRACE                  # system call tracing via ktrace(1)
+
+options        SYSVMSG                 # System V message queues
+options        SYSVSEM                 # System V semaphores
+options        SYSVSHM                 # System V shared memory
+
+options        MODULAR                 # new style module(7) framework
+#options       MODULAR_DEFAULT_AUTOLOAD
+#options       USERCONF                # userconf(4) support
+#options       PIPE_SOCKETPAIR         # smaller, but slower pipe(2)
+#options       SYSCTL_INCLUDE_DESCR    # Include sysctl descriptions in kernel
+
+#options       UVMHIST
+#options       UVMHIST_PRINT
+
+
+# Alternate buffer queue strategies for better responsiveness under high
+# disk I/O load.
+#options       BUFQ_READPRIO
+options        BUFQ_PRIOCSCAN
+
+#
+# Diagnostic/debugging support options
+#
+
+options        DIAGNOSTIC              # cheap kernel consistency checks
+#options       DEBUG                   # expensive debugging checks/support
+options        DDB                     # in-kernel debugger
+options        DDB_HISTORY_SIZE=512    # enable history editing in DDB
+#options       TRAP_PANICWAIT
+makeoptions    COPY_SYMTAB=1   # size for embedded symbol table
+
+makeoptions    DEBUG="-g"              # compile full symbol table
+
+
+#
+# Compatibility options
+#
+
+include        "conf/compat_netbsd13.config"
+#options       COMPAT_386BSD_MBRPART   # recognize old partition ID
+
+#
+# File systems
+#
+
+file-system    FFS             # UFS
+file-system    EXT2FS          # second extended file system (linux)
+file-system    LFS             # log-structured file system
+file-system    MFS             # memory file system
+file-system    NFS             # Network File System client
+file-system    CD9660          # ISO 9660 + Rock Ridge file system
+file-system    MSDOSFS         # MS-DOS file system
+file-system    FDESC           # /dev/fd
+file-system    KERNFS          # /kern
+file-system    NULLFS          # loopback file system
+file-system    OVERLAY         # overlay file system
+file-system    PUFFS           # Userspace file systems (e.g. ntfs-3g & sshfs)
+file-system    PROCFS          # /proc
+file-system    UMAPFS          # NULLFS + uid and gid remapping
+file-system    UNION           # union file system
+file-system    PTYFS           # /dev/pts/N support
+file-system    TMPFS           # Efficient memory file-system
+#file-system   NTFS            # Windows NT file system (experimental)
+
+
+#
+# File system options
+#
+
+options        QUOTA           # legacy UFS quotas
+options        QUOTA2          # new, in-filesystem UFS quotas
+options        FFS_EI                  # FFS Endian Independent support
+options        WAPBL           # File system journaling support
+options        NFSSERVER               # Network File System server
+#options       FFS_NO_SNAPSHOT         # No FFS snapshot support
+options        EXT2FS_SYSTEM_FLAGS     # makes ext2fs file flags (append and
+                                       # immutable) behave as system flags.
+options        NFS_BOOT_DHCP           # Support DHCP NFS root
+
+
+#
+# Networking options
+#
+
+options        GATEWAY         # packet forwarding
+options        INET            # IP + ICMP + TCP + UDP
+options        INET6           # IPv6
+#options       IPSEC           # IP security
+#options       IPSEC_DEBUG     # debug for IP security
+#options       MROUTING        # IP multicast routing
+#options       PIM             # Protocol Independent Multicast
+#options       NETATALK        # AppleTalk networking protocols
+options        PPP_BSDCOMP     # BSD-Compress compression support for PPP
+options        PPP_DEFLATE     # Deflate compression support for PPP
+options        PPP_FILTER      # Active filter support for PPP (requires bpf)
+#options       TCP_DEBUG       # Record last TCP_NDEBUG packets with SO_DEBUG
+
+
+#
+# Kernel root file system and dump configuration.
+#
+
+#config                netbsd  root on ? type ?
+config         netbsd  root on wd0a type ffs
+#config                netbsd  root on emac0 type nfs
+
+
+#
+# Device configuration
+#
+
+plb0 at root                           # Processor Local Bus
+cpu0   at plb?                         # CPU
+ecc0   at plb? irq 17                  # On-chip ECC controller
+pchb0  at plb?                         # PCI-Host bridges
+
+# On-chip Peripheral Bus support
+opb*   at plb?                         # On-chip Peripheral Bus
+wdog*  at opb?                         # Watchdog timer
+com*   at opb? addr ? irq ?            # UARTs
+emac0  at opb? addr ? irq ?            # Ethernet Media Access Controller
+#options       EMAC_EVENT_COUNTERS
+opbgpio0 at opb? addr ? irq ?          # On-chip GPIO controller
+gpio*  at opbgpio?                     # GPIO framework
+       # GPIO pins 0-8 go to J5 header. Pins 0 and 1 are also connected to
+       # Power and Media LEDs, respectively (negative logic).
+
+# PCI bus support
+pci*   at pchb?
+options        PCIVERBOSE              # verbose PCI device autoconfig messages
+#options       PCI_CONFIG_DUMP         # verbosely dump PCI config space
+options        PCI_NETBSD_CONFIGURE    # Do not rely on BIOS/whatever
+                                       # to configure PCI devices
+#options       PCI_CONFIGURE_VERBOSE   # Show PCI config information
+
+pdcide* at pci? dev ? function ?       # Promise IDE controllers
+
+# ATA (IDE) bus support
+atabus* at ata?
+wd*    at atabus? drive ?
+
+# MII/PHY support
+nsphyter* at mii? phy ?                        # NS83843 PHYs
+options        MIIVERBOSE              # verbose PHY autoconfig messages
+
+#
+# Random useful PCI devices known to work.
+#
+
+ppb*   at pci? dev ? function ?        # PCI-PCI{,e} bridges
+pci*   at ppb?
+
+ahcisata* at pci? dev ? function ?     # AHCI SATA controllers
+siisata* at pci? dev ? function ?      # SiI SteelVine controllers
+
+wm*    at pci? dev ? function ?        # Intel 82543/82544 gigabit
+igphy* at mii? phy ?                   # Intel IGP01E1000
+ukphy* at mii? phy ?                   # generic unknown PHYs
+
+xhci*  at pci? dev ? function ?        # eXtensible Host Controller
+usb*   at xhci?
+
+# USB Hubs
+uhub*  at usb?
+uhub*  at uhub? port ?
+
+# USB Mass Storage
+umass* at uhub? port ? configuration ? interface ?
+scsibus* at umass?
+sd*    at scsibus? target ? lun ?      # SCSI disk drives
+
+
+#
+# Pseudo devices
+#
+
+pseudo-device  crypto                  # /dev/crypto device
+pseudo-device  swcrypto                # software crypto implementation
+
+# disk/mass storage pseudo-devices
+#pseudo-device ccd                     # concatenated/striped disk devices
+#pseudo-device cgd                     # cryptographic disk devices
+#pseudo-device raid                    # RAIDframe disk driver
+#options       RAID_AUTOCONFIG         # auto-configuration of RAID components
+#pseudo-device fss                     # file system snapshot device
+#pseudo-device md                      # memory disk device
+pseudo-device  vnd                     # disk-like interface to files
+
+# network pseudo-devices
+pseudo-device  loop                    # network loopback
+pseudo-device  bpfilter                # packet filter
+pseudo-device  carp                    # Common Address Redundancy Protocol
+pseudo-device  npf                     # NPF packet filter
+pseudo-device  ppp                     # Point-to-Point Protocol
+pseudo-device  pppoe                   # PPP over Ethernet (RFC 2516)
+pseudo-device  sl                      # Serial Line IP
+pseudo-device  irframetty              # IrDA frame line discipline
+pseudo-device  tap                     # virtual ethernet
+pseudo-device  tun                     # network tunneling over tty
+pseudo-device  gre                     # generic L3 over IP tunnel
+pseudo-device  gif                     # IPv[46] over IPv[46] tunnel (RFC 1933)
+#pseudo-device faith                   # IPv[46] TCP relay translation i/f
+pseudo-device  stf                     # 6to4 IPv6 over IPv4 encapsulation
+pseudo-device  vlan                    # IEEE 802.1q encapsulation
+pseudo-device  bridge                  # simple inter-network bridging
+pseudo-device  vether                  # Virtual Ethernet for bridge
+pseudo-device  agr                     # IEEE 802.3ad link aggregation
+
+# miscellaneous pseudo-devices
+pseudo-device  pty                     # pseudo-terminals
+pseudo-device  clockctl                # user control of clock subsystem
+pseudo-device  ksyms                   # /dev/ksyms
+pseudo-device  putter                  # for puffs and pud
+
+include "dev/veriexec.config"
diff -r e2a4c6c6bb47 -r 5fb33b11c392 sys/arch/evbppc/conf/Makefile.dht.inc
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/sys/arch/evbppc/conf/Makefile.dht.inc     Fri Apr 02 07:00:33 2021 +0000
@@ -0,0 +1,8 @@
+#      $NetBSD: Makefile.dht.inc,v 1.1 2021/04/02 07:00:33 rin Exp $
+
+CFLAGS+=-mcpu=405
+AFLAGS+=-mcpu=405
+TEXTADDR?=     100000
+
+SYSTEM_FIRST_OBJ=      locore.o
+SYSTEM_FIRST_SFILE=    ${THISPPC}/dht/locore.S
diff -r e2a4c6c6bb47 -r 5fb33b11c392 sys/arch/evbppc/conf/files.dht
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/sys/arch/evbppc/conf/files.dht    Fri Apr 02 07:00:33 2021 +0000
@@ -0,0 +1,21 @@
+#      $NetBSD: files.dht,v 1.1 2021/04/02 07:00:33 rin Exp $
+#
+# DHT Walnut-specific configuration info
+
+file   arch/evbppc/dht/autoconf.c
+file   arch/evbppc/dht/machdep.c
+file   arch/powerpc/ibm4xx/ibm4xx_autoconf.c
+file   arch/powerpc/ibm4xx/ibm40x_machdep.c
+file   arch/powerpc/ibm4xx/ibm4xx_machdep.c
+
+# Memory Disk for install kernel
+file   dev/md_root.c                           memory_disk_hooks
+
+# Machine-independent ATA drivers
+include        "dev/ata/files.ata"
+
+# Machine-independent SCSI drivers
+include        "dev/scsipi/files.scsipi"
+
+# Machine-independent USB drivers
+include        "dev/usb/files.usb"
diff -r e2a4c6c6bb47 -r 5fb33b11c392 sys/arch/evbppc/conf/std.dht
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/sys/arch/evbppc/conf/std.dht      Fri Apr 02 07:00:33 2021 +0000
@@ -0,0 +1,32 @@
+#      $NetBSD: std.dht,v 1.1 2021/04/02 07:00:33 rin Exp $
+#
+# Standard/required options for DHT Walnut 405GP Evaluation Board.



Home | Main Index | Thread Index | Old Index