1 | // SPDX-License-Identifier: GPL-2.0-or-later |
2 | /* |
3 | * Copyright 2011 Florian Tobias Schandinat <FlorianSchandinat@gmx.de> |
4 | */ |
5 | /* |
6 | * driver for Chrontel CH7301 DVI Transmitter |
7 | */ |
8 | |
9 | #include <linux/slab.h> |
10 | #include "via_aux.h" |
11 | |
12 | |
13 | static const char *name = "CH7301 DVI Transmitter" ; |
14 | |
15 | |
16 | static void probe(struct via_aux_bus *bus, u8 addr) |
17 | { |
18 | struct via_aux_drv drv = { |
19 | .bus = bus, |
20 | .addr = addr, |
21 | .name = name}; |
22 | u8 tmp; |
23 | |
24 | if (!via_aux_read(drv: &drv, start: 0x4B, buf: &tmp, len: 1) || tmp != 0x17) |
25 | return; |
26 | |
27 | printk(KERN_INFO "viafb: Found %s at address 0x%x\n" , name, addr); |
28 | via_aux_add(drv: &drv); |
29 | } |
30 | |
31 | void via_aux_ch7301_probe(struct via_aux_bus *bus) |
32 | { |
33 | probe(bus, addr: 0x75); |
34 | probe(bus, addr: 0x76); |
35 | } |
36 | |