diff options
author | Aleksander Morgado <aleksander@aleksander.es> | 2014-09-15 11:22:09 +0200 |
---|---|---|
committer | Aleksander Morgado <aleksander@aleksander.es> | 2014-09-15 11:22:09 +0200 |
commit | 331ee94af7758a573ff7a2020b535bd72ecbca9d (patch) | |
tree | dafbcff0e32acf6db649056234340680f067135c | |
parent | 8718ed53bee53519fb11f313dfbe55be527f6d76 (diff) | |
download | ModemManager-aleksander/pots.tar.gz |
pots: setup blacklist for known POTS modem devicesaleksander/pots
For now just ignore them.
-rw-r--r-- | src/77-mm-usb-pots.rules | 10 | ||||
-rw-r--r-- | src/Makefile.am | 1 | ||||
-rw-r--r-- | src/mm-base-manager.c | 6 |
3 files changed, 17 insertions, 0 deletions
diff --git a/src/77-mm-usb-pots.rules b/src/77-mm-usb-pots.rules new file mode 100644 index 000000000..629a372ed --- /dev/null +++ b/src/77-mm-usb-pots.rules @@ -0,0 +1,10 @@ +# do not edit this file, it will be overwritten on update + +ACTION!="add|change|move", GOTO="mm_usb_pots_end" +SUBSYSTEM!="usb", GOTO="mm_usb_pots_end" +ENV{DEVTYPE}!="usb_device", GOTO="mm_usb_pots_end" + +# Agere Systems, Inc. (Lucent) Systems Soft Modem +ATTRS{idVendor}=="047e", ATTRS{idProduct}=="2892", ENV{ID_MM_POTS}="1" + +LABEL="mm_usb_pots_end" diff --git a/src/Makefile.am b/src/Makefile.am index 6912b00e7..2d9258915 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -6,6 +6,7 @@ udevrules_DATA = \ 77-mm-pcmcia-device-blacklist.rules \ 77-mm-platform-serial-whitelist.rules \ 77-mm-usb-serial-adapters-greylist.rules \ + 77-mm-usb-pots.rules \ 80-mm-candidate.rules noinst_LTLIBRARIES = libmodem-helpers.la libport.la diff --git a/src/mm-base-manager.c b/src/mm-base-manager.c index 3900af5b6..8601771f6 100644 --- a/src/mm-base-manager.c +++ b/src/mm-base-manager.c @@ -298,6 +298,12 @@ device_added (MMBaseManager *manager, goto out; } + /* Is the device a (still unsupported) POTS modem? */ + if (g_udev_device_get_property_as_boolean (physdev, "ID_MM_POTS")) { + mm_dbg ("(%s/%s): blacklisted POTS modem", subsys, name); + goto out; + } + /* Is the device in the manual-only greylist? If so, return if this is an * automatic scan. */ if (!manual_scan && g_udev_device_get_property_as_boolean (physdev, "ID_MM_DEVICE_MANUAL_SCAN_ONLY")) { |