wlcore: add smart config definitions

Signed-off-by: Eliad Peller <eliad@wizery.com>
wlcore: add smart_config_start/stop commands

These commands configures the fw to enter and
exit smart_config mode.

Signed-off-by: Eliad Peller <eliad@wizery.com>
wlcore: wrap testmode.h code with __KERNEL__

we are going to move the testmode definitions to testmode.h,
and then use it by userspace as well, so wrap any kernel-only
code with a proper ifdef.

Signed-off-by: Eliad Peller <eliad@wizery.com>
wlcore: move testmode definitions to testmode.h

These definitions will be used by userspace as well

Signed-off-by: Eliad Peller <eliad@wizery.com>
wlcore: add smart_config testmode definitions

Add testmode attributes and events that will be used
during smart_config.

Signed-off-by: Eliad Peller <eliad@wizery.com>
wlcore: handle smart_config_start/stop testmode commands

userspace can ask to enter/exit smart_config mode via
smart_config_start and smart_config_stop testmode commands.

Signed-off-by: Eliad Peller <eliad@wizery.com>
wlcore: handle SMART_CONFIG events

add defintions and handling for SMART_CONFIG_SYNC_EVENT_ID
and SMART_CONFIG_DECODE_EVENT_ID events.

Signed-off-by: Eliad Peller <eliad@wizery.com>
wlcore: add smart_config set group key command

implement wlcore_cmd_smart_config_set_group_key which
will be used in order to configure a key for
a smart_config group.

Signed-off-by: Eliad Peller <eliad@wizery.com>
wlcore: add testmode smart_config set group key command

Add testmode command to configure a group key for
a smart config group.

Signed-off-by: Eliad Peller <eliad@wizery.com>
wlcore: increase max roc duration to 30 seconds

we don't have any actual limitation in the driver, so
increase it arbitrarily to 30 seconds (for smart_config)

Signed-off-by: Eliad Peller <eliad@wizery.com>