menuconfig BUZZ_PROTO
    bool "Buzzer Protocol"
    select CRC
    help
      Library for initializing and managing the buzzer protocol.

    config BUZZ_PROTO_SLAB_SIZE
        int "Slab Size"
        default 512
        help
          Size of the memory slabs used for message buffers. Must be large enough to hold the largest expected message.

    config BUZZ_PROTO_SLAB_COUNT
        int "Slab Count"
        default 64
        help
          Number of memory slabs to allocate for message buffers. More slabs allow for more concurrent messages but use more RAM.

    config BUZZ_PROTO_MSGQ_SIZE
        int "Message Queue Size"
        default 64
        help
          Number of messages that can be queued for processing. Adjust based on expected message burstiness.
          
    config BUZZ_PROT_THREAD_STACK_SIZE
        int "Thread Stack Size"
        default 2048
        help
          Stack size for the buzzer protocol thread. Adjust based on the expected workload and function call depth.

    config BUZZ_PROTO_THREAD_PRIORITY
        int "Thread Priority"
        default 7
        help
          Priority for the buzzer protocol thread. Lower numbers indicate higher priority.

if BUZZ_PROTO
    module = BUZZ_PROTO
    module-str = buzz_proto
    source "subsys/logging/Kconfig.template.log_config"
endif # BUZZ_PROTO