Tested on and targeted for LS1046A.
The driver implements the following features:
- setting direction of each pin (IN or OUT)
- setting the mode of output pins (PUSHPULL or OPENDRAIN)
- setting the state of each output pin (1 or 0)
- reading the state of each input pin (1 or 0)