Lines Matching +full:probe +full:- +full:reset

1 // SPDX-License-Identifier: GPL-2.0-or-later
3 * Driver to power on the Analogix ANX7428 USB Type-C crosspoint switch
4 * on MeeGoPad top-set boxes.
6 * The MeeGoPad T8 and T9 are Cherry Trail top-set boxes which
7 * use an ANX7428 to provide a Type-C port with USB3.1 Gen 1 and
8 * DisplayPort over Type-C alternate mode support.
12 * to send the right signal to the 4 highspeed pairs of the Type-C
16 * IOW the ANX7428 operates fully autonomous and to the x5-Z8350 SoC
17 * things look like there simply is a USB-3 Type-A connector and a
22 * It should be possible to tell the micro-controller which data- and/or
23 * power-role to negotiate and to swap the role(s) after negotiation
24 * but the MeeGoPad top-set boxes always draw their power from a separate
25 * power-connector and they only support USB host-mode. So this functionality
58 MODULE_PARM_DESC(force, "Force the driver to probe on unknown boards");
64 { "enable-gpios", &enable_gpio, 1 },
65 { "reset-gpios", &reset_gpio, 1 },
84 struct device *dev = &client->dev; in anx7428_probe()
89 dev_warn(dev, "Not probing unknown board, pass meegopad_anx7428.force=1 to probe"); in anx7428_probe()
90 return -ENODEV; in anx7428_probe()
107 gpio = devm_gpiod_get(dev, "reset", GPIOD_OUT_LOW); in anx7428_probe()
109 return dev_err_probe(dev, PTR_ERR(gpio), "getting reset GPIO\n"); in anx7428_probe()
122 return dev_err_probe(dev, ret, "reading vendor-id register\n"); in anx7428_probe()
127 return dev_err_probe(dev, ret, "reading device-id register\n"); in anx7428_probe()
144 .probe = anx7428_probe,