modbus_rtu_lib: implement library APIs

Implement modbus-rtu library APIs which will be used by
phosphor-modbus-rtu service based on [1].

[1]: https://gerrit.openbmc.org/c/openbmc/docs/+/77318

Tested:
Added a Mock Modbus RTU server using socat which intercepts and replies
to modbus messages for testing.
```
> meson test -C builddir
ninja: Entering directory `/host/repos/Modbus/phosphor-modbus/builddir'
ninja: no work to do.
1/2 test_modbus_commands        OK              0.01s
2/2 test_modbus                 OK              6.02s

Ok:                2
Fail:              0
```

Change-Id: I66cdc8fd930dd6f7ad6888116d1419ad8f8b8ed8
Signed-off-by: Jagpal Singh Gill <paligill@gmail.com>
8 files changed
tree: ba63e51aaaa8bb177f6514c90f637a44bf6ca4cc
  1. common/
  2. rtu/
  3. subprojects/
  4. tests/
  5. .clang-format
  6. .clang-tidy
  7. .gitignore
  8. LICENSE
  9. meson.build
  10. meson.options
  11. OWNERS
  12. README.md
README.md

phosphor-modbus

phosphor-modbus provides a set of software applications to query sensors info, inventory data, firmware info of various modbus devices.

Dependencies

The phosphor-modbus requires phosphor-dbus-interfaces, sdbusplus and phosphor-logging.

Building

The phosphor-modbus is built using meson.

meson build && ninja -C build