#!/bin/sh

# SPDX-FileCopyrightText: 2023-2026 KUNBUS GmbH
# 
# SPDX-License-Identifier: GPL-2.0-or-later

DEVNAME=$1
OFFSET=$2

if [ ! -f /proc/device-tree/hat/custom_5 ]; then
	exit 1
fi

BASE_MAC="$(grep -Ezoxm1 "([[:xdigit:]]{2}:){5}[[:xdigit:]]{2}" \
	/proc/device-tree/hat/custom_5)"
if [ -z "$BASE_MAC" ]; then
	exit 2
fi

MAC_NUM=$(printf "%s" "$BASE_MAC" | tr -d ':')
DEC_RESULT=$((0x$MAC_NUM + OFFSET))
OFFSET_MAC=$(printf "%x" "$DEC_RESULT" | sed 's/../&:/g')
OFFSET_MAC="${OFFSET_MAC%:}"

echo "Setting MAC for $DEVNAME and $OFFSET"
/sbin/ip link set "$DEVNAME" address "$OFFSET_MAC"

exit $?
