aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2011-05-04build: bump version to 0.5.999 for 0.6 developmentDan Williams
2011-05-04build: build docs during distcheck and fix up udev rules install baseDan Williams
2011-05-02samsung: lock plugin to Y3300 to exclude other Samsung USB modemsDan Williams
Like the SGH-Z810/SCH-U209 which are a different chipset, don't have pseudo-ethernet ports, and just wouldn't work with this plugin.
2011-04-29wavecom: enable usage of MM_MODEM_GSM_BAND_ANY in SetBand()Aleksander Morgado
2011-04-29samsung: allow getting more than one bandAleksander Morgado
2011-04-29samsung: allow setting a single band onlyAleksander Morgado
2011-04-29utils: new utils_check_for_single_value() methodAleksander Morgado
It was being used in several places with different static implementations
2011-04-29huawei: enable getting and setting more than one bandAleksander Morgado
2011-04-29gsm: allow setting more than one bandAleksander Morgado
2011-04-28introspection: add missing UMTS 2600 band referenceAleksander Morgado
2011-04-28build: remove unneeded message in configure build reportAleksander Morgado
Location API is always built
2011-04-27build: only require gettext if enabling polkitDan Williams
2011-04-27Revert "build: don't require intltool unless --with-polkit=yes"Dan Williams
This reverts commit 0299cf51c4cf587f79771fe219c6154bf0d0139e.
2011-04-27Revert "build: po shouldn't be built unless --with-polkit=yes"Dan Williams
This reverts commit ba17060219f34b5bb8dbb965be9a5f224955777a.
2011-04-27build: po shouldn't be built unless --with-polkit=yesDan Williams
Since translations are only used with polkit.
2011-04-27build: don't require intltool unless --with-polkit=yesDan Williams
2011-04-27huawei: rework probing and detectionDan Williams
Long ago there were problems where certain Huawei devices would stop responding on various ports, and sometimes would crash randomly. The theory at the time was that touching the secondary ports made the device angry, thus the plugin simply opened the ports and listened for unsolicited messages. But if the device didn't send any during that 7 second period, MM would not detect and secondary ports at all. Plus, it was always a hack. Instead, the new theory is that the device crashes if unsolicited messages are enabled (^CURC=1), the secondary port gets touched, *and* then closed and left for a while. Fix that by turning unsolicited messages off at probe time, on when the device is enabled, and off again when the device is disabled like happens for other modems. Thus when MM first detects the modem, it turns off unsolicited messages and the serial buffer on the secondary port doesn't fill up and crash the modem. Second, this allows us to simplify the probing logic quite a bit so that we can probe all ports we find, but we still wait to probe the first port so we can turn off unsolicited messages and get hints about what port is the secondary.
2011-04-26plugins: allow multiple custom init commands in sequenceDan Williams
Huawei will need this.
2011-04-26plugins: simplify custom init commandsDan Williams
Instead of having two places that custom init stuff got processed (a hook in the MMPluginBase class itself and a callback too) just use a callback, and simplify it somewhat so that the plugin tracks how many tries it cares about and what to do based on the response or error.
2011-04-21mbm: add MBM device IDs for Lenovo F5521gw moduleMarius B. Kotsbak
2011-04-19zte: only dispose Icera data onceDan Williams
2011-04-18samsung: use common Icera codeDan Williams
Port the differences over to the common Icera code (there were only two) and remove the duplicate code from the Samsung plugin. The Icera NWSTATE regex had to be adjusted to capture "-1" in the first element which wasn't handled before but which I've seen on the Samsung Y3300 before the card has registered.
2011-04-18icera: fix abuse of GInterfaceDan Williams
The GInterface structure for MMModemIcera isn't instance data, thus we shouldn't be storing an instance pointer in it. Instead, make implemtors store the intstance data in their private structure, and have them implement an accessor for the Icera-private data. This makes everone (especially GObject) happy. It's a bit of additional indirection, but we still get to use the MM_MODEM_ICERA_GET_PRIVATE() and we still get to cast the passed-in GInterface MMModemIcera into the various GSM MMModem subclasses, which is all we ever wanted anyway.
2011-04-18core: tear down all pending work when closing a portDan Williams
Make sure all pending work, if any, is torn down when closing the port, since it's closed, and is likely going to get unreffed soon and we don't want anything running after the port is dead.
2011-04-18gsm: return success if unlocked but doesn't allow subsequent CPIN commandsDan Williams
If the modem for some reason returns ERROR for a +CPIN when it's unlocked, and subsequent PIN post-unlock pin checks return READY, just treat the modem as unlocked don't return the +CPIN error.
2011-04-14Merge remote-tracking branch 'lanedo/plugin-wavecom'Dan Williams
2011-04-14gsm: implement basic SMS reception and PDU parsingNathan Williams
2011-04-14serial: ensure response array is empty before setting cached replyAleksander Morgado
2011-04-14charset: change GSM unpack to take number of characters rather than octetsNathan Williams
Change interface to take the number of GSM characters rather than the number of octets, so that it is possible to distinguish the 7-character and 8-character cases.
2011-04-14serial: ensure spew control can be changed after port is createdDan Williams
Since we don't allow properties to be passed into the serial port create routines we don't want a construct-only property here.
2011-04-14serial: allow spew control to be turned offNathan Williams
It's only used during probing where some port types (Sierra CnS and some Icera devices) may send streams of data that we can't understand until we close the port. It interferes with some SMS operations, so turn it off for ports opened after probing.
2011-04-11wavecom: set and get bandsAleksander Morgado
Use AT+WMBS for devices in 2G mode, and AT+WUBS for devices in 3G mode.
2011-04-11gsm: handle UMTS 2600 internal bandAleksander Morgado
2011-04-11wavecom: ensure full functionality statusAleksander Morgado
Check the current functionality status with AT+CFUN? and make sure its '1', otherwise, RF may be switched off.
2011-04-11wavecom: set and get allowed modeAleksander Morgado
For 3G devices in Class A, AT+WWSM can be used to get or set the allowed mode: * +WWSM: 0 (2G only) * +WWSM: 1 (3G only) * +WWSM: 2,0 (Any) * +WWSM: 2,1 (2G preferred) * +WWSM: 2,2 (3G preferred) For 2G devices, there is no such command, so we will default to Any and allow 2G-only and 2G-preferred setups.
2011-04-11wavecom: ensure the modem uses the highest possible mobile classAleksander Morgado
These modems can be configured to use different mobile classes. For each kind of modem, the best mobile class is the highest one in the following order: - Class A (3G only mode) - Class B (PS or CS, GPRS/EDGE or GSM) - Class CG (PS only, GPRS/EDGE) - Class CC (CS only, GSM)
2011-04-11wavecom: query network technology capabilitiesAleksander Morgado
2011-04-11wavecom: enable RTS/CTS flow control instead of XOFF/XONAleksander Morgado
2011-04-11wavecom: disable default power up commandAleksander Morgado
2011-04-11wavecom: handle READY without OK in CPIN? replyAleksander Morgado
2011-04-11wavecom: add initial dummy pluginAleksander Morgado
2011-04-08hso: use zero send_delay since Option firmware is generally excellentDan Williams
2011-04-08serial: allow plugins to specify probe-time send_delayDan Williams
Let modems we know don't suck use a zero send-delay at probe time, which greatly reduces time required to probe AT-compatible ports.
2011-04-08gsm: make sure verbose error reporting is enabled before checking PINDan Williams
Otherwise we don't get the expected "Incorrect password" error if the PIN is wrong, just a generic error.
2011-04-08serial: send entire command in one write if send_delay is 0 (chromium:13506)Dan Williams
Avoids additional USB latency and groups the whole command into one USB packet. BUG=chromium-os:13506
2011-04-08samsung: add Reset and UnlockRetries.Elly Jones
BUG=chromeos-partner:2999, chromeos-partner:3215 TEST=network_LockedSIM Change-Id: I17c25c52fa5cf4cffa94e73bd827eaae9e687df0 Signed-off-by: Elly Jones <ellyjones@chromium.org> Signed-off-by: Jason Glasgow <jglasgow@chromium.org> Signed-off-by: Jun Woo Lee <jw86.lee@samsung.com>
2011-04-07sms: don't try to destroy NULL hash tablesNathan Williams
2011-04-06serial: allow user to provide custom regex for successful and error repliesAleksander Morgado
New mm_serial_parser_v1_set_custom_regex() method.
2011-04-06modem-base: allow NULL ports in get_card_info() if port_error givenAleksander Morgado
So that cached values can be returned if querying while the port is connected.
2011-04-06serial: don't let EAGAIN block sending commands until completionDan Williams
If a port returns EAGAIN on write attempts, previously the code would spin and attempt to resend the failed byte after send_delay microseconds. This resulted in up to 3 second hard blocks in the serial code when sending to ports that don't respond. While in this blocking loop no other events or dbus commands could be processed. Instead, send each byte and reschedule sending the next byte in send_delay microseconds, so that we can process other events in between attempts to write to stupid ports. This doesn't hugely decrease the amount of time that probing requires, since we still need to probe all ports of the device before exporting the modem to D-Bus, but it does let MM find responsive ports much more quickly, and ensures that MM doesn't block any D-Bus requests.