245 lines
6.7 KiB
Plaintext
245 lines
6.7 KiB
Plaintext
#
|
|
# Copyright (c) 2020 Siddharth Chandrasekaran <siddharth@embedjournal.com>
|
|
#
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
#
|
|
|
|
# OSDP_NUM_CONNECTED_PD is used in CP mode. It is a constant set to 1 when
|
|
# operating as a PD.
|
|
config OSDP_NUM_CONNECTED_PD
|
|
int
|
|
default 1
|
|
help
|
|
In PD mode, number of connected PDs is is always 1 and cannot
|
|
be configured.
|
|
|
|
config OSDP_PD_COMMAND_QUEUE_SIZE
|
|
int "OSDP Peripheral Device command queue size"
|
|
default 16
|
|
help
|
|
The number of commands that can be queued to a given PD. In CP mode,
|
|
the queue size is multiplied by number of connected PD so this can grow
|
|
very quickly.
|
|
|
|
config OSDP_PD_ADDRESS
|
|
int "Peripheral Device Address"
|
|
default 1
|
|
range 1 126
|
|
help
|
|
The 7 least significant bits represent the address of the PD to which
|
|
the message is directed, or the address of the PD sending the reply.
|
|
Address 0x7F is reserved as a broadcast address to which all PDs would
|
|
respond.
|
|
|
|
if OSDP_SC_ENABLED
|
|
|
|
config OSDP_PD_SCBK
|
|
string "Secure Channel Base Key (SCBK)"
|
|
default "NONE"
|
|
help
|
|
Hexadecimal string representation of the the 16 byte OSDP PD Secure
|
|
Channel Base Key. When this field is sent to "NONE", the PD is set to
|
|
"Install Mode". In this mode, the PD would allow a CP to setup a secure
|
|
channel with default SCBK. Once as secure channel is active with the
|
|
default key, the CP can send a KEYSET command to set new keys to the PD.
|
|
It is up to the user to make sure that the PD enters the "Install Mode"
|
|
only during provisioning time (controlled environment).
|
|
|
|
endif # OSDP_SC_ENABLED
|
|
|
|
menu "Peripheral Device ID Information"
|
|
|
|
config OSDP_PD_ID_VENDOR_CODE
|
|
hex "PD Vendor Code"
|
|
default 0x001A2B3C
|
|
range 0 0x00FFFFFF
|
|
help
|
|
IEEE assigned OUI. Least 24 bits are valid.
|
|
|
|
config OSDP_PD_ID_MODEL
|
|
int "PD Product Model Number"
|
|
default 1
|
|
range 0 255
|
|
help
|
|
Manufacturer's model number. Least 8 bits are valid.
|
|
|
|
config OSDP_PD_ID_VERSION
|
|
int "PD Product Version"
|
|
default 1
|
|
range 0 255
|
|
help
|
|
Manufacturer's version of this product. Least 8 bits are valid.
|
|
|
|
config OSDP_PD_ID_SERIAL_NUMBER
|
|
hex "PD Serial Number"
|
|
default 0xCAFEBABE
|
|
range 0 0xFFFFFFFF
|
|
help
|
|
A 4-byte serial number for the PD.
|
|
|
|
config OSDP_PD_ID_FIRMWARE_VERSION
|
|
hex "PD Firmware Version"
|
|
default 0x00010100
|
|
range 0 0x00FFFFFF
|
|
help
|
|
Firmware revision code.
|
|
- Bit 0-7 : build version number;
|
|
- Bit 8-15 : minor version number;
|
|
- Bit 16-23: major version number;
|
|
|
|
endmenu # "PD ID Information"
|
|
|
|
menu "OSDP PD Capabilities"
|
|
|
|
menu "Contact Status Monitoring"
|
|
|
|
config OSDP_PD_CAP_CONTACT_STATUS_MONITORING_COMP_LEVEL
|
|
int "Compliance Level"
|
|
default 0
|
|
range 0 4
|
|
help
|
|
Possible values:
|
|
- 01: PD monitors and reports the state of the circuit without any
|
|
supervision. The PD encodes the circuit status per its default
|
|
interpretation of contact state to active/inactive status.
|
|
- 02: Like 01, plus: The PD accepts configuration of the encoding of the
|
|
open/closed circuit status to the reported active/inactive status. (User
|
|
may configure each circuit as "normally closed" or "normally open".)
|
|
- 03: Like 02, plus: PD supports supervised monitoring. The operating mode
|
|
for each circuit is determined by configuration settings.
|
|
- 04: Like 03, plus: the PD supports custom End-Of-Line settings within
|
|
the Manufacturer's guidelines.
|
|
|
|
config OSDP_PD_CAP_CONTACT_STATUS_MONITORING_NUM_ITEMS
|
|
int "Number of items"
|
|
default 0
|
|
help
|
|
The number of Inputs
|
|
|
|
endmenu # "Contact Status Monitoring"
|
|
|
|
menu "Output Control"
|
|
|
|
config OSDP_PD_CAP_OUTPUT_CONTROL_COMP_LEVEL
|
|
int "Compliance Level"
|
|
default 0
|
|
range 0 4
|
|
help
|
|
Possible values:
|
|
- 01: The PD is able to activate and deactivate the Output per direct
|
|
command from the CP.
|
|
- 02: Like 01, plus: The PD is able to accept configuration of the Output
|
|
driver to set the inactive state of the Output. The typical state of an
|
|
inactive Output is the state of the Output when no power is applied to the
|
|
PD and the output device (relay) is not energized. The inverted drive
|
|
setting causes the PD to energize the Output during the inactive state and
|
|
de-energize the Output during the active state. This feature allows the
|
|
support of "fail-safe/fail-secure" operating modes.
|
|
- 03: Like 01, plus: The PD is able to accept timed commands to the
|
|
Output. A timed command specifies the state of the Output for the
|
|
specified duration.
|
|
- 04: Like 02 and 03 - normal/inverted drive and timed operation.
|
|
|
|
config OSDP_PD_CAP_OUTPUT_CONTROL_NUM_ITEMS
|
|
int "Number of items"
|
|
default 0
|
|
help
|
|
The number of Outputs.
|
|
|
|
endmenu # "Output Control"
|
|
|
|
menu "LED Control"
|
|
|
|
config OSDP_PD_CAP_READER_LED_CONTROL_COMP_LEVEL
|
|
int "Compliance Level"
|
|
default 0
|
|
range 0 4
|
|
help
|
|
Possible values:
|
|
- 01: the PD support on/off control only
|
|
- 02: the PD supports timed commands
|
|
- 03: like 02, plus bi-color LEDs
|
|
- 04: like 02, plus tri-color LEDs
|
|
|
|
config OSDP_PD_CAP_READER_LED_CONTROL_NUM_ITEMS
|
|
int "Number of items"
|
|
default 0
|
|
help
|
|
The number of LEDs per reader.
|
|
|
|
endmenu # "LED Control"
|
|
|
|
menu "Audible Output"
|
|
|
|
config OSDP_PD_CAP_READER_AUDIBLE_OUTPUT_COMP_LEVEL
|
|
int "Compliance Level"
|
|
default 0
|
|
range 0 2
|
|
help
|
|
Possible values:
|
|
- 01: the PD support on/off control only
|
|
- 02: the PD supports timed commands
|
|
|
|
config OSDP_PD_CAP_READER_AUDIBLE_OUTPUT_NUM_ITEMS
|
|
int "Number of items"
|
|
default 0
|
|
help
|
|
The number of audible annunciators per reader
|
|
|
|
endmenu # "Audible Output"
|
|
|
|
menu "Text Output"
|
|
|
|
config OSDP_PD_CAP_READER_TEXT_OUTPUT_COMP_LEVEL
|
|
int "Compliance Level"
|
|
default 0
|
|
range 0 4
|
|
help
|
|
Possible values:
|
|
- 00: The PD has no text display support
|
|
- 01: The PD supports 1 row of 16 characters
|
|
- 02: the PD supports 2 rows of 16 characters
|
|
- 03: the PD supports 4 rows of 16 characters
|
|
- 04: TBD.
|
|
|
|
config OSDP_PD_CAP_READER_TEXT_OUTPUT_NUM_ITEMS
|
|
int "Number of items"
|
|
default 0
|
|
help
|
|
Number of textual displays per reader
|
|
|
|
endmenu # "Text Output"
|
|
|
|
menu "Card Data Format"
|
|
|
|
config OSDP_PD_CAP_CARD_DATA_FORMAT_COMP_LEVEL
|
|
int "Compliance Level"
|
|
default 0
|
|
range 0 3
|
|
help
|
|
Possible values:
|
|
- 01: the PD sends card data to the CP as array of bits, not exceeding
|
|
1024 bits.
|
|
- 02: the PD sends card data to the CP as array of BCD characters, not
|
|
exceeding 256 characters.
|
|
- 03: the PD can send card data to the CP as array of bits, or as an
|
|
array of BCD characters.
|
|
|
|
endmenu # "Card Data Format"
|
|
|
|
menu "Time Keeping"
|
|
|
|
config OSDP_PD_CAP_TIME_KEEPING_COMP_LEVEL
|
|
int "Compliance Level"
|
|
default 0
|
|
range 0 2
|
|
help
|
|
Possible values:
|
|
- 00: The PD does not support time/date functionality
|
|
- 01: The PD understands time/date settings per Command osdp_TDSET
|
|
- 02: The PD is able to locally update the time and date
|
|
|
|
endmenu # "Time Keeping"
|
|
|
|
endmenu # "OSDP PD Capabilities"
|