mirror of
https://github.com/AuxXxilium/synology-igc.git
synced 2024-11-23 15:01:06 +07:00
Intel i225/i226 igc driver for Synology Kernel 4.4.180
8637c18ef5
backport from
|
||
---|---|---|
.gitignore | ||
backport_overflow.h | ||
backport.h | ||
HISTORY.md | ||
igc_base.c | ||
igc_base.h | ||
igc_defines.h | ||
igc_diag.c | ||
igc_diag.h | ||
igc_dump.c | ||
igc_ethtool.c | ||
igc_hw.h | ||
igc_i225.c | ||
igc_i225.h | ||
igc_mac.c | ||
igc_mac.h | ||
igc_main.c | ||
igc_nvm.c | ||
igc_nvm.h | ||
igc_phy.c | ||
igc_phy.h | ||
igc_ptp.c | ||
igc_regs.h | ||
igc_tsn.c | ||
igc_tsn.h | ||
igc.h | ||
LICENSE.md | ||
Makefile | ||
Module.symvers | ||
README.md |
Intel igc driver for Synology Kernel 4.4.180
Backport from Linux Kernel v5.12, commit: 9f4ad9e425a1d3b6a34617b8ea226d56a119a717
Build
1. Setup develop environment
Prepare Environment
Refer: https://help.synology.com/developer-guide/getting_started/prepare_environment.html
Assume platform=geminilake
, version=7.1
, working directory is /synology-toolkit
Now the build env is /synology-toolkit/build_env/ds.geminilake-7.1
Enter chrooot
sudo chroot /synology-toolkit/build_env/ds.geminilake-7.1
Clone source code
cd /usr/src/
git clone https://github.com/jim3ma/synology-igc.git
2. Build module
cd /usr/src/synology-igc/
make -C /usr/local/x86_64-pc-linux-gnu/x86_64-pc-linux-gnu/sys-root/usr/lib/modules/DSM-7.1/build M=$PWD modules
3. Load module
Copy igc.ko
to target machine
Find i225/i226 pci device
03:00.0 Ethernet controller: Intel Corporation Ethernet Controller I225-V (rev 03)
insmod igc.ko debug=16 # enable debug log
echo igc > /sys/bus/pci/devices/0000:03:00.0/driver_override
echo 0000:03:00.0 > /sys/bus/pci/drivers_probe
ip link set up eth1 # in my machine, the nic name is eth1
TODO
- tc support