I've worked in a project based on STM32 and FXOS8700.
Some information:
I2C @400kHz
auto-sleep enable (but not interrupt)
Hybrid mode
Just int_en_lndprt is enable in CTRL_REG4 and int_cfg_lndprt in CTRL_REG5
The sensor is set to generate interrupt (INT1) when orientation is changed. In interrupt code I read PL_STATUS and I can check which (Portait/Landscape/front/back) movement happened.
However, sometimes after read PL_STATUS the pin INT1 is not clear. As this interrupt can not be "unlatched" like freefall or vectormag interrupt, when this happens I can not restore the idle state anymore.
Anybody used this function and worked well?