# Arch R Custom Kernel Configuration
# Based on rg351p_tweaked_defconfig with optimizations for Arch R
#
# USAGE:
# 1. Copy base defconfig: cp rg351p_tweaked_defconfig .config
# 2. Apply these overrides using scripts/config
# 3. Build kernel

# =============================================================================
# PERFORMANCE OPTIMIZATIONS
# =============================================================================

# Use full preemption for lower latency
CONFIG_PREEMPT=y

# Optimize for performance (already set, ensure it stays)
CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE=y

# Timer frequency - 1000Hz for better gaming responsiveness
CONFIG_HZ_1000=y
CONFIG_HZ=1000

# Disable debugging for production
# CONFIG_DEBUG_INFO is not set
# CONFIG_KPROBES is not set
# CONFIG_FTRACE is not set

# =============================================================================
# ADDITIONAL WIFI DRIVERS
# =============================================================================

# Enable RTL8XXXU for broader Realtek support
CONFIG_RTL8XXXU=m

# Ensure all useful WiFi is enabled
CONFIG_WLAN=y
CONFIG_CFG80211=m
CONFIG_MAC80211=m
CONFIG_MAC80211_LEDS=y

# Realtek (comprehensive)
CONFIG_RTL8187=m
CONFIG_RTL8192CU=m
CONFIG_RTL8723BU=m
CONFIG_RTL8812AU=m
CONFIG_RTL8822BU=m
CONFIG_RTL8821CU=m

# Atheros
CONFIG_ATH_CARDS=m
CONFIG_ATH9K=m
CONFIG_ATH9K_HTC=m
CONFIG_ATH10K=m

# Ralink/MediaTek
CONFIG_RT2X00=m
CONFIG_RT2800USB=m
CONFIG_MT7601U=m

# Broadcom
CONFIG_BRCMFMAC=m
CONFIG_BRCMFMAC_USB=y

# Marvell
CONFIG_MWIFIEX=m
CONFIG_MWIFIEX_USB=m

# =============================================================================
# FILESYSTEM (for rootfs)
# =============================================================================

CONFIG_BTRFS_FS=y
CONFIG_EXT4_FS=y
CONFIG_VFAT_FS=y
CONFIG_EXFAT_FS=m
CONFIG_NTFS_FS=m

# Compression
CONFIG_ZRAM=m
CONFIG_ZSWAP=y
CONFIG_LZ4_COMPRESS=y
CONFIG_LZ4_DECOMPRESS=y

# =============================================================================
# USB
# =============================================================================

CONFIG_USB_SUPPORT=y
CONFIG_USB=y
CONFIG_USB_XHCI_HCD=m
CONFIG_USB_EHCI_HCD=m
CONFIG_USB_OHCI_HCD=m
CONFIG_USB_DWC2=y
CONFIG_USB_STORAGE=m

# USB modeswitch support (for WiFi dongles with CD-ROM mode)
CONFIG_USB_SERIAL=m
CONFIG_USB_SERIAL_OPTION=m

# =============================================================================
# INPUT (Gamepad support)
# =============================================================================

CONFIG_INPUT_JOYDEV=y
CONFIG_INPUT_EVDEV=y
CONFIG_INPUT_FF_MEMLESS=y
CONFIG_JOYSTICK_XPAD=m

# =============================================================================
# SOUND
# =============================================================================

CONFIG_SOUND=y
CONFIG_SND=y
CONFIG_SND_USB_AUDIO=m
CONFIG_SND_SOC=y
CONFIG_SND_SOC_ROCKCHIP=y

# =============================================================================
# GPIO/LED (for status LEDs)
# =============================================================================

CONFIG_LEDS_GPIO=y
CONFIG_LEDS_TRIGGER_HEARTBEAT=y
CONFIG_LEDS_TRIGGER_DEFAULT_ON=y
