[Bug 272206] Add support for Intel GMAC Ethernet controller

2023-06-25 Thread bugzilla-noreply
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=272206

Graham Perrin  changed:

   What|Removed |Added

 Status|New |Open
  Component|kern|conf
 CC||grahamper...@freebsd.org
   Severity|Affects Some People |Affects Only Me
   Assignee|b...@freebsd.org|n...@freebsd.org

--- Comment #1 from Graham Perrin  ---
^Triage: 

* severity reduced to the norm for a feature request
* assignment

-- 
You are receiving this mail because:
You are the assignee for the bug.


[Bug 272206] Add support for Intel GMAC Ethernet controller

2023-06-25 Thread bugzilla-noreply
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=272206

Bug ID: 272206
   Summary: Add support for Intel GMAC Ethernet controller
   Product: Base System
   Version: 13.2-STABLE
  Hardware: amd64
OS: Any
Status: New
  Severity: Affects Some People
  Priority: ---
 Component: kern
  Assignee: b...@freebsd.org
  Reporter: dimitr...@gmail.com

Created attachment 242989
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=242989=edit
dmesg

Hello,

I recently acquired Fitlet3 miniPC from compulab. This is updated version of
Fitlet2 using Elkhart Lake Celeron and Atom SoC's.

details here;
http://fit-pc.com/wiki/index.php?title=Fitlet3_Specifications_and_block_diagram

It comes with onboard intel LAN with Marvell 88E1512 PHY for 2 onboard NIC's.
Unfortunate its not recognized under freeBSD (tried 13.2 and 14)

Im pretty new to freeBSD so please excuse my lack of knowledge regarding driver
support. On linux this is handled by compiling the kernel with;

CONFIG_NET_VENDOR_STMICRO=y
CONFIG_STMMAC_ETH=m
CONFIG_DWMAC_INTEL=m
CONFIG_STMMAC_PCI=m

and utilizing driver;
https://github.com/torvalds/linux/blob/master/drivers/net/ethernet/stmicro/stmmac/dwmac-intel.c
 

Maybe drivers could be reused?

I'm opening the ticket since I would appreciate the freeBSD support for this
device, since its perfect HW for EDGE firewall or gateway.

Thank you for looking into it.

Regards,

Attaching also some outputs from the box itself with FreeBSD 13.2 installed
(ignore igb0 and igb1 NIC's since these are on installed extension card)

dmesg output in attachement.

lcpci output  - onboard NIC's identified as:

00:1d.1 Ethernet controller: Intel Corporation Device 4ba1
00:1d.2 Ethernet controller: Intel Corporation Device 4bb1

/
00:00.0 Host bridge: Intel Corporation Device 4522
00:02.0 VGA compatible controller: Intel Corporation Elkhart Lake [UHD Graphics
Gen11 16EU]
00:08.0 System peripheral: Intel Corporation Elkhart Lake Gaussian and Neural
Accelerator
00:11.0 Communication controller: Intel Corporation Device 4b96
00:11.1 Communication controller: Intel Corporation Device 4b97
00:13.0 Serial bus controller: Intel Corporation Device 4b84
00:14.0 USB controller: Intel Corporation Elkhart Lake USB 3.10 XHCI
00:14.2 RAM memory: Intel Corporation Elkhart Lake PMC SRAM
00:15.0 Serial bus controller: Intel Corporation Device 4b78
00:15.2 Serial bus controller: Intel Corporation Device 4b7a
00:15.3 Serial bus controller: Intel Corporation Device 4b7b
00:16.0 Communication controller: Intel Corporation Elkhart Lake Management
Engine Interface
00:19.0 Serial bus controller: Intel Corporation Device 4b4b
00:19.2 Communication controller: Intel Corporation Device 4b4d
00:1b.0 Serial bus controller: Intel Corporation Device 4bb9
00:1b.1 Serial bus controller: Intel Corporation Device 4bba
00:1b.6 Serial bus controller: Intel Corporation Device 4bbf
00:1c.0 PCI bridge: Intel Corporation Elkhart Lake PCH PCI Express Root Port #0
00:1c.4 PCI bridge: Intel Corporation Device 4b3c
00:1c.6 PCI bridge: Intel Corporation Elkhart Lake PCH PCI Express Root Port #6
00:1d.0 System peripheral: Intel Corporation Device 4bb3
00:1d.1 Ethernet controller: Intel Corporation Device 4ba1
00:1d.2 Ethernet controller: Intel Corporation Device 4bb1
00:1e.0 Communication controller: Intel Corporation Device 4b28
00:1e.1 Communication controller: Intel Corporation Device 4b29
00:1f.0 ISA bridge: Intel Corporation Elkhart Lake eSPI Controller
00:1f.4 SMBus: Intel Corporation Elkhart Lake SMBus Controller
00:1f.5 Serial bus controller: Intel Corporation Elkhart Lake SPI (Flash)
Controller
01:00.0 Non-Volatile memory controller: Sandisk Corp WD Blue SN570 NVMe SSD
02:00.0 Ethernet controller: Intel Corporation I211 Gigabit Network Connection
03:00.0 Ethernet controller: Intel Corporation I211 Gigabit Network Connection
/

pciconf output;


///
hostb0@pci0:0:0:0:  class=0x06 rev=0x01 hdr=0x00 vendor=0x8086
device=0x4522 subvendor=0x8086 subdevice=0x7270
vgapci0@pci0:0:2:0: class=0x03 rev=0x01 hdr=0x00 vendor=0x8086
device=0x4555 subvendor=0x8086 subdevice=0x7270
none0@pci0:0:8:0:   class=0x088000 rev=0x01 hdr=0x00 vendor=0x8086
device=0x4511 subvendor=0x8086 subdevice=0x7270
none1@pci0:0:17:0:  class=0x078008 rev=0x11 hdr=0x00 vendor=0x8086
device=0x4b96 subvendor=0x8086 subdevice=0x7270
none2@pci0:0:17:1:  class=0x078009 rev=0x11 hdr=0x00 vendor=0x8086
device=0x4b97 subvendor=0x8086 subdevice=0x7270
none3@pci0:0:19:0:  class=0x0c8014 rev=0x11 hdr=0x00 vendor=0x8086
device=0x4b84 subvendor=0x8086 subdevice=0x7270
xhci0@pci0:0:20:0:  class=0x0c0330 rev=0x11 hdr=0x00 vendor=0x8086
device=0x4b7d subvendor=0x8086 subdevice=0x7270
none4@pci0:0:20:2:  class=0x05 rev=0x11 hdr=0x00 vendor=0x8086
device=0x4b7f subvendor=0x8086 subdevice=0x7270
none5@pci0:0:21:0:  class=0x0c8000 rev=0x11