# CzechLight stuff:
# userspace access to the I2C bus
CONFIG_I2C_CHARDEV=y
# FTDI USB-to-serial
CONFIG_USB_SERIAL=m
CONFIG_USB_SERIAL_FTDI_SIO=m
# generic EEPROM
CONFIG_EEPROM_AT24=y
# ADT7463 hwmon
CONFIG_SENSORS_LM85=y

# systemd bits
CONFIG_DEVTMPFS=y
CONFIG_CGROUPS=y
CONFIG_INOTIFY_USER=y
CONFIG_SIGNALFD=y
CONFIG_TIMERFD=y
CONFIG_EPOLL=y
CONFIG_NET=y
CONFIG_SYSFS=y
CONFIG_PROC_FS=y
CONFIG_FHANDLE=y
CONFIG_CRYPTO_USER_API_HASH=y
CONFIG_CRYPTO_HMAC=y
CONFIG_CRYPTO_SHA256=y
CONFIG_SYSFS_DEPRECATED=n
CONFIG_UEVENT_HELPER_PATH=""
CONFIG_FW_LOADER_USER_HELPER=n
CONFIG_DMIID=y
CONFIG_BLK_DEV_BSG=y
CONFIG_NAMESPACES=y
CONFIG_NET_NS=y
CONFIG_DEVPTS_MULTIPLE_INSTANCES=y
CONFIG_USER_NS=y
CONFIG_IPV6=y
CONFIG_AUTOFS4_FS=y
CONFIG_TMPFS_XATTR=y
CONFIG_TMPFS_POSIX_ACL=y
CONFIG_EXT4_POSIX_ACL=y
CONFIG_SECCOMP=y
CONFIG_SECCOMP_FILTER=y
CONFIG_CHECKPOINT_RESTORE=y
CONFIG_CGROUP_SCHED=y
CONFIG_FAIR_GROUP_SCHED=y
CONFIG_CFS_BANDWIDTH=y
CONFIG_RT_GROUP_SCHED=n

# rauc
CONFIG_BLK_DEV_LOOP=y
CONFIG_SQUASHFS=y

# Watchdog bits
CONFIG_WATCHDOG_NOWAYOUT=y
CONFIG_WATCHDOG_SYSFS=y
CONFIG_WATCHDOG_PRETIMEOUT_GOV=y
CONFIG_WATCHDOG_HANDLE_BOOT_ENABLED=n

# protecting /etc
CONFIG_OVERLAY_FS=y

# better logging
CONFIG_LOG_BUF_SHIFT=18

# LED blinking, yay
CONFIG_LEDS_TRIGGER_ONESHOT=y
CONFIG_LEDS_TRIGGER_HEARTBEAT=y
CONFIG_LEDS_TRIGGER_DEFAULT_ON=y
CONFIG_LEDS_TRIGGER_PANIC=y
CONFIG_LED_TRIGGER_PHY=y
CONFIG_LEDS_TRIGGER_TRANSIENT=y
CONFIG_LEDS_TRIGGER_NETDEV=y
CONFIG_LEDS_TRIGGER_GPIO=y

# this is used for EDFA GPIO mapping for LED triggers (I know, I know), bot just general debugging
CONFIG_DEBUG_FS=y

# network functionality for the OSC
CONFIG_BRIDGE=y
CONFIG_BRIDGE_VLAN_FILTERING=y
CONFIG_VLAN_8021Q=y

# network: simplify configuration by not caring for sit0
CONFIG_IPV6_SIT=n

# These are not needed, let's nuke them
CONFIG_SOUND=n
CONFIG_MD=n
CONFIG_MACINTOSH_DRIVERS=n
CONFIG_USB_NET_DRIVERS=n
CONFIG_WLAN=n
CONFIG_FDDI=n
CONFIG_MODULES=n
CONFIG_COMPAT_BRK=n
CONFIG_SUSPEND=n
CONFIG_BT=n
CONFIG_WIRELESS=n
CONFIG_DEVPORT=n
CONFIG_ISO9660_FS=n
CONFIG_UDF_FS=n
CONFIG_UBIFS_FS=n
CONFIG_NFS_FS=n
CONFIG_KEYS=n
CONFIG_IKCONFIG=y
CONFIG_IKCONFIG_PROC=y
CONFIG_SCHEDSTATS=y
CONFIG_AUDIT=y
CONFIG_NETFILTER=y
CONFIG_NF_CONNTRACK=y
CONFIG_NF_TABLES=y
CONFIG_NFT_CT=y
