gpio: sch311x: Slightly refactor sch311x_detect for better readability
PATCH 1/1 gpio: sch311x: Slightly refactor sch311x_detect for better readability
Signed-off-by Axel Lin <[email protected]>
--- drivers/gpio/gpio-sch311x.c | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-)
drivers/gpio/gpio-sch311x.c +12 -4
@@ -327,14 +327,22 @@ static int __init sch311x_detect(int sio_config_port, unsigned short *addr)if (err)return err; -/* Check device ID. We currently know about: -* SCH3112 (0x7c), SCH3114 (0x7d), and SCH3116 (0x7f). */ +/* Check device ID. */ reg =sch311x_sio_inb (sio_config_port,0x20 ); -if (!(reg ==0x7c || reg ==0x7d || reg ==0x7f )) { +switch (reg) { +case 0x7c :/* SCH3112 */ + dev_id =2 ; +break ; +case 0x7d :/* SCH3114 */ + dev_id =4 ; +break ; +case 0x7f :/* SCH3116 */ + dev_id =6 ; +break ; +default : err = -ENODEV ; goto exit; } - dev_id = reg ==0x7c ?2 : reg ==0x7d ?4 :6 ;/* Select logical device A (runtime registers) */ sch311x_sio_outb (sio_config_port,0x07 ,0x0a );
Signature · 1 line
1.8.3.2
Quoted 1 line · Axel Lin
Signed-off-by Axel Lin <[email protected]>
Thanks Axel, this was a very nice patch, the old code was completely unreadable.
Yours,
Linus Walleij