--- /root/personal/work/tracker/V22_Master_original_20260408/AI-2/AI-2/Resource/ASProtocol.h 2025-11-12 16:53:08.000000000 +0800 +++ /root/personal/work/tracker/V22_Master/AI-2/AI-2/Resource/ASProtocol.h 2026-06-20 09:30:55.948379272 +0800 @@ -1,17 +1,26 @@ -#ifndef _AS_PROTOCOL_H_ -#define _AS_PROTOCOL_H_ - -#define RWREGISTER_SUM 500 //ÔÊÐí¶Áд¼Ä´æÆ÷×ÜÊý -void * GetASProtocl(void); -void ASProtocolInit(void); - -void * GetASQProtocl(void); -void ASQProtocolInit(void); - -void * GetASLProtocl(void); -void ASLProtocolInit(void); - -void * GetASSlaveProtocl(void); -void ASSlaveProtocolInit(void); - -#endif +#ifndef _AS_PROTOCOL_H_ +#define _AS_PROTOCOL_H_ + +#include + +#define RWREGISTER_SUM 500 + +/* R/RW callback return codes (Luna refactor 2026-06-20, fatal-1 fix) */ +#define AS_CB_OK 0 /* success */ +#define AS_CB_ERR_ACCESS -1 /* access denied (write to RO register) */ +#define AS_CB_ERR_INVALID -2 /* invalid write value (out of range/illegal) */ +#define AS_CB_ERR_READONLY -3 /* read-only register */ + +void * GetASProtocl(void); +void ASProtocolInit(void); + +void * GetASQProtocl(void); +void ASQProtocolInit(void); + +void * GetASLProtocl(void); +void ASLProtocolInit(void); + +void * GetASSlaveProtocl(void); +void ASSlaveProtocolInit(void); + +#endif