Compare commits

...

2 Commits

Author SHA1 Message Date
Fabian Bläse 28c691d47b fixup 2024-02-27 21:28:40 +01:00
Fabian Bläse acefb5a0ca wip: rb5009: include mtpoe for poe control 2024-02-27 00:06:45 +01:00
4 changed files with 119 additions and 1 deletions

View File

@ -5,7 +5,7 @@ CONFIG_TARGET_mvebu=y
CONFIG_TARGET_mvebu_cortexa72=y
CONFIG_TARGET_MULTI_PROFILE=y
CONFIG_TARGET_DEVICE_mvebu_cortexa72_DEVICE_mikrotik_rb5009=y
CONFIG_TARGET_DEVICE_PACKAGES_mvebu_cortexa72_DEVICE_mikrotik_rb5009=""
CONFIG_TARGET_DEVICE_PACKAGES_mvebu_cortexa72_DEVICE_mikrotik_rb5009="mtpoe_ctrl"
CONFIG_BUSYBOX_CUSTOM=y
CONFIG_TARGET_PER_DEVICE_ROOTFS=y
# CONFIG_BUSYBOX_CONFIG_BRCTL is not set
@ -34,6 +34,7 @@ CONFIG_CLEAN_IPKG=y
CONFIG_PACKAGE_fff-extra=y
CONFIG_PACKAGE_libuclient=m
CONFIG_PACKAGE_libwolfssl=m
CONFIG_PACKAGE_mtpoe_ctrl=m
CONFIG_PACKAGE_opkg=m
CONFIG_PACKAGE_uclient-fetch=m
CONFIG_PACKAGE_wpad-basic=y

View File

@ -0,0 +1,57 @@
From 1910773e7bc06f0aa659d05f88bb7655cd66b306 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Fabian=20Bl=C3=A4se?= <fabian@blaese.de>
Date: Tue, 27 Feb 2024 00:02:36 +0100
Subject: [PATCH] rb5009 poe spi
---
.../boot/dts/marvell/armada-7040-rb5009.dts | 35 +++++++++++++++++++
1 file changed, 35 insertions(+)
diff --git a/target/linux/mvebu/files/arch/arm64/boot/dts/marvell/armada-7040-rb5009.dts b/target/linux/mvebu/files/arch/arm64/boot/dts/marvell/armada-7040-rb5009.dts
index 0c9742d2d8..81c413dfb7 100644
--- a/target/linux/mvebu/files/arch/arm64/boot/dts/marvell/armada-7040-rb5009.dts
+++ b/target/linux/mvebu/files/arch/arm64/boot/dts/marvell/armada-7040-rb5009.dts
@@ -374,3 +381,40 @@
reg = <0x10 0x6>;
};
};
+
+&cp0_pinctrl {
+ cp0_spi1_pins: cp0-spi1-pins {
+ // Mikrotik defines SPI1 with mpp50 as CS0 and then additionally sets mpp8 as CS for the PoE driver via GPIO. We just want the hardware to handle CS0 on mpp8
+ marvell,pins = "mpp47", "mpp48", "mpp49", "mpp8";
+ //marvell,pins = "mpp47", "mpp48", "mpp49", "mpp50";
+ marvell,function = "spi1";
+ };
+
+ /*cp0_spi1_poe_cs_pins: cp0-spi1-poe-cs-pins {
+ marvell,pins = "mpp8";
+ marcell,function = "gpio";
+ };*/
+};
+
+&cp0_spi1 {
+ status = "okay";
+
+ pinctrl-0 = <&cp0_spi1_pins>;
+ pinctrl-names = "default";
+
+ spidev@0 {
+ compatible = "rohm,dh2228fv";
+ //compatible = "linux,spidev";
+ reg = <0>;
+ spi-max-frequency = <2000000>;
+ };
+};
+
+&cp0_gpio1 {
+ enable-poe-power {
+ gpio-hog;
+ gpios = <8 GPIO_ACTIVE_HIGH>;
+ output-high;
+ line-name = "enable PoE chip";
+ };
+};
--
2.43.2

View File

@ -0,0 +1,42 @@
#
# Copyright (C) 2018 adron@yapic.net
#
include $(TOPDIR)/rules.mk
PKG_NAME:=mtpoe_ctrl
PKG_SOURCE_VERSION:=d4dfc54f4fe8c6565d585b6a27730e4980b3103d
PKG_MIRROR_HASH:=898d93a7917b5462a2b4e00aee34f610c65e798cff82e81a77a2221140697411
PKG_VERSION:=1.15.2
PKG_RELEASE:=21
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://github.com/fblaese/mtpoe_ctrl.git
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
PKG_MAINTAINER:=Sergey Sergeev <adron@yapic.net>
PKG_LICENSE:=GPL-2.0
include $(INCLUDE_DIR)/package.mk
define Package/mtpoe_ctrl
SECTION:=utils
CATEGORY:=Utilities
DEPENDS:=+libuci +kmod-spi-dev
TITLE:=Management utility for Mikrotiks PoE V2/V3/V4
URL:=https://github.com/adron-s/mtpoe_ctrl.git
endef
define Package/mtpoe_ctrl/description
Management utility for Mikrotiks PoE V2/V3/V4
endef
define Package/mtpoe_ctrl/install
$(INSTALL_DIR) $(1)/usr/bin
$(INSTALL_BIN) $(PKG_BUILD_DIR)/bins/mtpoe_ctrl $(1)/usr/bin/
$(INSTALL_DIR) $(1)/etc/init.d
$(INSTALL_BIN) ./files/99-mtpoe_ctrl $(1)/etc/init.d/
endef
$(eval $(call BuildPackage,mtpoe_ctrl))

View File

@ -0,0 +1,18 @@
#!/bin/sh /etc/rc.common
START=11
USE_PROCD=1
start_service() {
procd_open_instance
procd_set_param command /usr/bin/mtpoe_ctrl --action=load_poe_from_uci
procd_set_param stdout 1
procd_set_param stderr 1
procd_close_instance
}
service_triggers()
{
procd_add_reload_trigger system
}