#!/bin/sh
# Copyright (C) 2025 Teltonika

DATA_PART="mmcblk0p3"

prepare_data() {
	[ -e "/dev/$DATA_PART" ] || return 0
	[ -x "/sbin/block" ] || return 0
	[ "$(readlink /overlay/.fs_state)" = "2" ] && return 0
	[ "$(cat /sys/block/${DATA_PART:0:7}/device/type)" = "MMC" ] || return 0
	grep -qs "PARTNAME=data" "/sys/class/block/$DATA_PART/uevent" || return 0

	# return if partition already has a filesystem
	[ -z "$(/sbin/block info /dev/$DATA_PART)" ] || return 0

	echo "- preparing data partition -"

	mkfs.ext4 -F -q -L data "/dev/$DATA_PART" || echo "failed to prepare data partition"
}

[ "$INITRAMFS" = "1" ] || boot_hook_add preinit_main prepare_data
