serial: sc16is7xx: Put IOControl register into regmap_volatile
authorHui Wang <hui.wang@canonical.com>
Mon, 24 Jul 2023 03:47:27 +0000 (11:47 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 8 Dec 2023 07:51:16 +0000 (08:51 +0100)
commit55061c32307573650d8d6ee2b74b2b8f737604c6
tree5bb4a2c45d708a301a258f7f5cf64a5ff68ece21
parenta491c7be35ed8345270cb80c4a0ff154559bd79e
serial: sc16is7xx: Put IOControl register into regmap_volatile

commit 77a82cebf0eb023203b4cb2235cab75afc77cccf upstream.

According to the IOControl register bits description in the page 31 of
the product datasheet, we know the bit 3 of IOControl register is
softreset, this bit will self-clearing once the reset finish.

In the probe, the softreset bit is set, and when we read this register
from debugfs/regmap interface, we found the softreset bit is still
setting, this confused us for a while. Finally we found this register
is cached, to read the real value from register, we could put it
into the regmap_volatile().

Signed-off-by: Hui Wang <hui.wang@canonical.com>
Link: https://lore.kernel.org/r/20230724034727.17335-1-hui.wang@canonical.com
Cc: Hugo Villeneuve <hugo@hugovil.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/tty/serial/sc16is7xx.c