mdio-tools: Add package plus kernel module
mdio is a low-level Linux debug tool for communicating with devices attached an MDIO bus. It improves on existing tools in this space in a few important ways: MDIO buses are directly addressable. Previous solutions relied on at least one Ethernet PHY on the bus being attached to a net device, which is typically not the case when the device is an Ethernet switch for example. Complex operations can be performed atomically. The old API only supported a single read or write of a single register. mdio sends byte code to the mdio-netlink kernel module that can perform multiple operations, store intermediate values, loop etc. As a result, things like read/mask/write operations and accesses to paged PHYs can be performed safely. Signed-off-by: Damien Mascord <tusker@tusker.org>
This commit is contained in:
parent
e319e89fde
commit
e3512741cd
2 changed files with 78 additions and 0 deletions
40
kernel/mdio-netlink/Makefile
Normal file
40
kernel/mdio-netlink/Makefile
Normal file
|
@ -0,0 +1,40 @@
|
|||
include $(TOPDIR)/rules.mk
|
||||
include $(INCLUDE_DIR)/kernel.mk
|
||||
|
||||
PKG_NAME:=mdio-netlink
|
||||
PKG_RELEASE:=1
|
||||
|
||||
PKG_SOURCE_URL:=https://github.com/wkz/mdio-tools
|
||||
PKG_SOURCE_PROTO:=git
|
||||
PKG_SOURCE_DATE:=2021-07-02
|
||||
PKG_SOURCE_VERSION:=9f989622c21d5464168a4922542be044f21663b0
|
||||
PKG_MIRROR_HASH:=9ae5d920e23a7957a5d5a8c5764969382ce6a174c5c5e7f7841fac0c81bbac75
|
||||
|
||||
PKG_LICENSE:=GPL-2.0-only
|
||||
PKG_LICENSE_FILES:=COPYING
|
||||
|
||||
PKG_MAINTAINER:=Damien Mascord <tusker@tusker.org>
|
||||
|
||||
include $(INCLUDE_DIR)/package.mk
|
||||
|
||||
define KernelPackage/mdio-netlink
|
||||
SECTION:=kernel
|
||||
CATEGORY:=Kernel modules
|
||||
SUBMENU:=Network Support
|
||||
TITLE:=mdio-netlink Linux MDIO netlink kernel module
|
||||
KCONFIG:=CONFIG_PHYLIB=y CONFIG_MDIO_BUS=y
|
||||
URL:=https://github.com/wkz/mdio-tools.git
|
||||
FILES:=$(PKG_BUILD_DIR)/kernel/mdio-netlink.ko
|
||||
AUTOLOAD:=$(call AutoProbe,mdio-netlink)
|
||||
endef
|
||||
|
||||
define KernelPackage/mdio-netlink/description
|
||||
mdio-netlink Linux MDIO netlink kernel module
|
||||
endef
|
||||
|
||||
define Build/Compile
|
||||
$(KERNEL_MAKE) M=$(PKG_BUILD_DIR)/kernel modules
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,mdio-netlink))
|
||||
|
38
net/mdio-tools/Makefile
Normal file
38
net/mdio-tools/Makefile
Normal file
|
@ -0,0 +1,38 @@
|
|||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=mdio-tools
|
||||
PKG_RELEASE:=1
|
||||
|
||||
PKG_SOURCE_URL:=https://github.com/wkz/mdio-tools
|
||||
PKG_SOURCE_PROTO:=git
|
||||
PKG_SOURCE_DATE:=2021-07-02
|
||||
PKG_SOURCE_VERSION:=9f989622c21d5464168a4922542be044f21663b0
|
||||
PKG_MIRROR_HASH:=9ae5d920e23a7957a5d5a8c5764969382ce6a174c5c5e7f7841fac0c81bbac75
|
||||
|
||||
PKG_FIXUP:=autoreconf
|
||||
|
||||
PKG_LICENSE:=GPL-2.0-only
|
||||
PKG_LICENSE_FILES:=COPYING
|
||||
|
||||
PKG_MAINTAINER:=Damien Mascord <tusker@tusker.org>
|
||||
|
||||
include $(INCLUDE_DIR)/package.mk
|
||||
|
||||
define Package/mdio-tools
|
||||
SECTION:=net
|
||||
CATEGORY:=Utilities
|
||||
TITLE:=mdio-tools Linux MDIO register access
|
||||
URL:=https://github.com/wkz/mdio-tools.git
|
||||
DEPENDS:=+libmnl
|
||||
endef
|
||||
|
||||
define Package/mdio-tools/description
|
||||
mdio-tools Linux MDIO register access
|
||||
endef
|
||||
|
||||
define Package/mdio-tools/install
|
||||
$(INSTALL_DIR) $(1)/usr/bin
|
||||
$(INSTALL_BIN) $(PKG_BUILD_DIR)/src/mdio/mdio $(1)/usr/bin/
|
||||
endef
|
||||
|
||||
$(eval $(call BuildPackage,mdio-tools))
|
Loading…
Reference in a new issue