summaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Adjust to qtConfig() changes in qtbasev5.8.0-alpha1Lars Knoll2016-08-191-1/+1
| | | | | Change-Id: Ie6e27e8ae0dce6892ee6ab7561876bc439aed073 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* Replace QSP::error signal with QSP::errorOccurredDenis Shienkov2016-08-092-2/+18
| | | | | | | | | | | | | | Make the name of the signal and the name of the getter unambiguous, which in turn allows the easy use of Qt 5-style connects. This commit message was taken from commit qtbase/4672e31. [ChangeLog][QtSerialPort][QSerialPort] Deprecated QSP::error() signal in favor of new QSP::errorOccurred() one. Change-Id: I3f04bb8b1ae686d5368d43741cd0e97748b31b8f Reviewed-by: Kai Koehne <kai.koehne@qt.io> Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
* Merge remote-tracking branch 'origin/5.7' into devLiang Qi2016-08-026-231/+265
|\ | | | | | | | | | | | | | | Conflicts: .qmake.conf src/serialport/qserialport.cpp Change-Id: I858fec6e426f5fd867b7eda7b1db69a2d447b357
| * Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-08-013-22/+11
| |\ | | | | | | | | | | | | | | | | | | Conflicts: src/serialport/qserialport_win.cpp Change-Id: I8f3403d448ef2e51cf2870b331c61ab808393e34
| | * Detach buffer's segment for asynchronous write operationDenis Shienkov2016-07-203-22/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QRingBuffer does not guarantee that the read pointer which is returned by QRingBuffer::readPointer() will stay valid after calling QRingBuffer::reserve() or QRingBuffer::append(). Thus, we need to detach the buffer's segment and pass it to the WriteFile() function to ensure it stays unmodified for the whole time of the asynchronous operation. Change-Id: I5a42086b4339a050a4df57c39348864502be2c74 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Alex Trotsenko <alex1973tr@gmail.com> Reviewed-by: Sergey Belyashov <Sergey.Belyashov@gmail.com> Reviewed-by: Anton Kudryavtsev <a.kudryavtsev@netris.ru> Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
| * | Remove mention of Windows CE supportDenis Shienkov2016-07-151-6/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | As Windows CE support has been stopped since Qt 5.7. Change-Id: I850c5e1e41508502a9e82491f89488facca40f51 Reviewed-by: Anton Kudryavtsev <a.kudryavtsev@netris.ru> Reviewed-by: Sergey Belyashov <Sergey.Belyashov@gmail.com> Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
| * | QSerialPortInfo: Extract Method anyOfPortAnton Kudryavtsev2016-07-151-22/+11
| | | | | | | | | | | | | | | Change-Id: Ic0851ee8d491f29922d55f3c0530ccd21ed171a5 Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
| * | Start the write timer only when it is inactiveDenis Shienkov2016-07-131-1/+2
| | | | | | | | | | | | | | | | | | | | | Change-Id: Ie6dd49bec6add204b45f15ff344ba6c92adedb0a Reviewed-by: Sergey Belyashov <Sergey.Belyashov@gmail.com> Reviewed-by: Alex Trotsenko <alex1973tr@gmail.com> Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
| * | QSerialPortInfo: use delegate ctor to de-duplicate codeAnton Kudryavtsev2016-07-111-7/+1
| | | | | | | | | | | | | | | | | | Change-Id: I698b9afc7b15bdfca7176ea3ec823da1ba91957c Reviewed-by: Sergey Belyashov <Sergey.Belyashov@gmail.com> Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
| * | Use append() instead of memcpy() where possibleDenis Shienkov2016-07-072-6/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ... to add the data to the internal QIODevice's buffer, that simplified the code and is more reliable. Change-Id: I61e6c7be3259cd754e4bbe6a3142dcdd6d33f7b6 Reviewed-by: Anton Kudryavtsev <a.kudryavtsev@netris.ru> Reviewed-by: Sergey Belyashov <Sergey.Belyashov@gmail.com> Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
| * | Minimize number of system calls at openingDenis Shienkov2016-07-073-169/+233
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently, the method QSP::open() several times calls the system functions to get/set of DCB/termios structures for each parameter. It is not rational and should be minimized as possible, in ideally to once executed. Change-Id: If1f308176a82f3c8896fc648bf656f089e099f3f Reviewed-by: Sergey Belyashov <Sergey.Belyashov@gmail.com> Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
* | | Add missng default parameters to waitFor() methodsDenis Shienkov2016-07-282-5/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ... and adjust their documentation a bit. [ChangeLog][QtSerialPort][QSerialPort] Added missing parameters for waitFor() methods Change-Id: I95d7076bfef47dd75d37960ca8a719ae779737d6 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | | Reuse QIODevice's write bufferAlex Trotsenko2016-07-192-7/+2
|/ / | | | | | | | | | | Change-Id: Ieda6cd8452391a1fd3276a35c9854cf764dbb679 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
* | Replace 'Q_NULLPTR' and 'NULL' with 'nullptr'Denis Shienkov2016-06-177-32/+32
| | | | | | | | | | | | | | | | | | We can use nullptr since Qt 5.7. Change-Id: Id5354280d6a94b2c1f4c5967c65a22db878eca3e Reviewed-by: Anton Kudryavtsev <a.kudryavtsev@netris.ru> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
* | Replace local 'static const' integers with 'enum'Denis Shienkov2016-06-101-4/+4
| | | | | | | | | | | | | | | | | | | | Not sure whether this improves anything, but it can't make it worse. Enumerators are always rvalues and never end up in the .rodata part of binaries; static variables (const or not) are lvalues and therefore can get their address taken. Change-Id: I24155e5a3224fd6a33885a7ca3194ac53879d2c5 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Simplify the isVirtualNullModemDevice() functionDenis Shienkov2016-06-061-4/+1
| | | | | | | | | | | | Change-Id: I24a9ee262255f9d42e54b7e701ceca7850383913 Reviewed-by: Anton Kudryavtsev <a.kudryavtsev@netris.ru> Reviewed-by: Sergey Belyashov <Sergey.Belyashov@gmail.com>
* | Remove unused static variableDenis Shienkov2016-06-061-1/+0
| | | | | | | | | | | | Change-Id: If86072aa6f5df1485856f4e07bb057106977ab8e Reviewed-by: Anton Kudryavtsev <a.kudryavtsev@netris.ru> Reviewed-by: Sergey Belyashov <Sergey.Belyashov@gmail.com>
* | Add some missed 'const' and 'Q_NULLPTR' keywordsDenis Shienkov2016-06-031-3/+3
| | | | | | | | | | Change-Id: Iaf06a0b3a8304ad44519f8d2187665c9f0d02aba Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* | Merge 5.7 into 5.7.0Oswald Buddenhagen2016-05-208-41/+55
|\ \ | | | | | | | | | Change-Id: I2e0737fab1c12657d8dc7de5d1882ecb73bbb5f2
| * \ Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-05-195-20/+27
| |\ \ | | |/ | | | | | | | | | | | | | | | Conflicts: .qmake.conf Change-Id: I6a4c3e446633e6f142b87c268096b1bdc1598a62
| | * Doc: Remove repository name from examplesinstallpathTopi Reinio2016-05-121-1/+1
| | | | | | | | | | | | | | | | | | | | | Examples in binary packages now directly match the install path. Change-Id: Ife24588c333e014f8cdd8367153e8d0643db5f83 Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
| | * Remove superfluous check during removal of the pointerDenis Shienkov2016-05-042-16/+8
| | | | | | | | | | | | | | | | | | | | | | | | ... as deleting of a null-pointer it is a valid operation. Change-Id: Ia4ffd8b69ab75b9e3b200ce2ce999ab2820b915e Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com> Reviewed-by: André Hartmann <aha_1980@gmx.de>
| | * Avoid allocating a string by using a QStringRefFrank Meerkoetter2016-05-011-1/+1
| | | | | | | | | | | | | | | Change-Id: I01693dcdbd8a0e99a2845d16676c4e9302d244e6 Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
| | * Fix reading of data remainder with CDC USB device on WindowsDenis Shienkov2016-04-272-2/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In some cases the WaitCommEvent function does not triggered, even if the input driver's queue has an unread bytes. Most likely this happens if a bytes has been arrived between calls of ReadFile and WaitCommEvent. Thus, it can be avoided by means of ClearCommError function which should be called in end of ReadFile to require amount of bytes that has been arrived but still are unread. If it returns more than zero, then we start reading again, without calling of WaitCommEvent. Task-number: QTBUG-48677 Change-Id: I054975971a7c1823f7de879669c3d97f31348ed8 Reviewed-by: Sergey Belyashov <Sergey.Belyashov@gmail.com> Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
| * | Replace 'Q_FOREACH' with the range-based 'for'Denis Shienkov2016-05-135-21/+28
| | | | | | | | | | | | | | | | | | Change-Id: I057267982ac946ce1ec863a79120cd21cd563c4b Reviewed-by: Sergey Belyashov <Sergey.Belyashov@gmail.com> Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
* | | Replace 'forever' with 'for(;;)'Denis Shienkov2016-05-206-10/+10
|/ / | | | | | | | | | | | | | | ... due to 'forever' is planned to be deprecated in Qt, and as 'for' is standard keyword. Change-Id: I05bec96d637389a22a2633e4b2bd8384ba17de10 Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* | Drop the Win CE supportDenis Shienkov2016-05-026-966/+4
| | | | | | | | | | | | | | | | | | | | | | Now we can drop the WinCE (5/6) support, because its compilers do not support the C++11 features, that lead to the further API limitations and so on. Change-Id: I2431d15b1361f1e093fc09ff7fbe824daeac3984 Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com> Reviewed-by: Sergey Belyashov <Sergey.Belyashov@gmail.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* | Merge remote-tracking branch 'origin/5.6' into 5.7v5.7.0-beta1Liang Qi2016-04-086-0/+12
|\ \ | |/ | | | | Change-Id: I1b9b5ff33064eab6e35e4fd57b72b8fbf2a5a022
| * Merge remote-tracking branch 'origin/5.6.0' into 5.6Liang Qi2016-03-216-0/+12
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/serialport/qserialportinfo_osx.cpp src/serialport/qserialportinfo_unix.cpp src/serialport/qserialportinfo_win.cpp src/serialport/qserialportinfo_wince.cpp Change-Id: I9540cf8c714a99b7ace9aeaeb003cb4a00b8303e
| | * Deprecate QSPI::isBusy() methodv5.6.0-rc1v5.6.05.6.0Denis Shienkov2016-02-186-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It is impossible to implement this method properly on all platforms. Its implementation is complicated and introduces a side-effects, related to the race-conditions, permissions and so on. The user can implement QSPI::isBusy() himself just trying to open a desired device, what is equivalent to the current implementation. Change-Id: I71ef69a1a8edb7c4df23c8b2816add40475e00b5 Reviewed-by: Sergey Belyashov <Sergey.Belyashov@gmail.com> Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
* | | Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-03-0712-36/+27
|\ \ \ | |/ / | | | | | | Change-Id: I35f19a7d266f90e957bfe01534a40c4d98b40b34
| * | Purge sRGB chunks from PNGs in documentation.Edward Welbourne2016-03-014-0/+0
| | | | | | | | | | | | | | | | | | | | | | | | Subjects each *.png file that matched grep -law "sRGB" to: pngcrush -ow -brute -rem allb -reduce -force Change-Id: Ifcb512c5f4ed8ff8ff0377b335abf4e133ac27cc Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
| * | consistently put {qt,qml}_{module,plugin} at the end of project filesOswald Buddenhagen2016-02-251-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ... (as far as possible). this fixes static builds by ensuring that all dependencies are exported. this does not fix any extant problem in this module. Change-Id: I9523385adebc8f9ee263bbb7010ebe30f8abe0f7 Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com> Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
| * | Forbid the RTS changing when the HardwareFlowControl was setDenis Shienkov2016-02-251-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It is an error when the RTS changes manually when the HardwareFlowControl is set. In this case the driver operates with the RTS automatically, so manual control is not allowed. But some drivers ignore this requirement and do not return errors in attempt of manual RTS control. Thus, we have to forbid change of RTS and to return the UnsupportedOperationError error. Change-Id: I80bc87d51d9c653ed15ec310fca654243821b1e7 Reviewed-by: Sergey Belyashov <Sergey.Belyashov@gmail.com> Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
| * | Get serial number of bluetooth USB dongle on WindowsDenis Shienkov2016-02-191-7/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Now, the serial ports which are created by the bluetooth connection takes the serial numbers of the own USB bluetooth dongles. We enumerate all parent devices of a driver stack until their end has been reached, or the serial number has been found. Change-Id: I63820f34fd4c47992c3c5ef3c7ce63eca4ea0cf8 Reviewed-by: Sergey Belyashov <Sergey.Belyashov@gmail.com> Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
| * | Fix documentation of QSPI::standardBaudRates()Denis Shienkov2016-02-171-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This method returns a list of baud rates which are standard for this platform, but not for the current serial port. Change-Id: Ic833aa41da8aab0caaaac054b66208c7094b4589 Reviewed-by: Sergey Belyashov <Sergey.Belyashov@gmail.com> Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
| * | Move QSPI::standardBaudRates() in one placeDenis Shienkov2016-02-166-25/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently we do not need in multiple implementations of this method, and can move it to the qserialportinfo.cpp file. Change-Id: I9d27c739ebd07f76a0e4e808766052bf90d4c19b Reviewed-by: Sergey Belyashov <Sergey.Belyashov@gmail.com> Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
* | | Merge remote-tracking branch 'origin/5.6' into 5.7v5.7.0-alpha1Liang Qi2016-02-155-306/+417
|\ \ \ | |/ / | | | | | | | | | | | | | | | Conflicts: .qmake.conf Change-Id: I0dcaa0ea10fa9ca4a04f5c3837ea70028fc9c0b8
| * | Enumerate dial-in devices on OS XDenis Shienkov2016-02-151-11/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | OS X divide serial ports into dialin (tty) and callout (cu) devices. QSPI did not return a list of dialin devices, that now has been fixed in this patch. Task-number: QTBUG-50895 Change-Id: I9f25b8f042ce1fdef9fd140896fc1d7093ee91a1 Reviewed-by: Sergey Belyashov <Sergey.Belyashov@gmail.com> Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
| * | Enumerate dial-in devices on FreeBSDDenis Shienkov2016-02-151-9/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | BSD-like systems divide serial ports into dial-in (tty) and dial-out (cua) devices. QSPI did not return a list of dial-in devices, that now has been fixed in this patch. Change-Id: I593719429e3b6641012eb046851dd08b9dc829fb Reviewed-by: Sergey Belyashov <Sergey.Belyashov@gmail.com> Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
| * | Move the FreeBSD code to own implementation fileDenis Shienkov2016-02-114-295/+370
| |/ | | | | | | | | | | | | | | ... that simplified a code and its maintenance. Change-Id: Ic4a7aa14a461bd99c745665c56300c13ab84691d Reviewed-by: Sergey Belyashov <Sergey.Belyashov@gmail.com> Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
* | QSerialPort: Replace select with poll on UnixLouai Al-Khanji2016-02-051-13/+11
| | | | | | | | | | Change-Id: I7228af796b440790862d22026fa99f96881e39c0 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Unify license header usageAntti Kokko2016-02-023-13/+13
| | | | | | | | | | | | | | | | Updated FDL license. Change-Id: I1165e025a7f9f3628d0bc25553b48d27384413ca Reviewed-by: Sergey Belyashov <Sergey.Belyashov@gmail.com> Reviewed-by: Jani Heikkinen <jani.heikkinen@theqtcompany.com>
* | Unify license header usageAntti Kokko2016-02-0215-195/+285
| | | | | | | | | | | | | | | | Update old header.LGPL3 to header.LGPL Change-Id: I1b17b6f798ee521d2e3bd8c37024df7cd65ee0c4 Reviewed-by: Sergey Belyashov <Sergey.Belyashov@gmail.com> Reviewed-by: Jani Heikkinen <jani.heikkinen@theqtcompany.com>
* | Merge remote-tracking branch 'origin/5.6' into devLiang Qi2016-01-269-87/+55
|\ \ | |/ | | | | Change-Id: Idc590cb4d891d7701cc443be80275c4d9ccfa5a6
| * Get rid of QSPP::updateCommTimeouts() methodDenis Shienkov2016-01-113-22/+6
| | | | | | | | | | | | | | | | | | | | This method is used only once when initializing of a device. Thus its code can be moved to an initialization place, and this method can be removed then. Change-Id: Ie9a40da1d6a2980829327f66830893ad7179bd57 Reviewed-by: Sergey Belyashov <Sergey.Belyashov@gmail.com> Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
| * Suppress error emission when closingDenis Shienkov2016-01-112-17/+8
| | | | | | | | | | | | | | | | | | | | | | | | When the error signal is connected to a slot which calls QSP::close() and an error occurs in this method, this would lead to infinite recursion. Other Qt I/O classes avoid this problem by not emitting errors while closing the device, so we should not, either. Task-number: QTBUG-50052 Change-Id: Icfbcb19c32b8bd7fc586ab5253dc754e78829f11 Reviewed-by: Sergey Belyashov <Sergey.Belyashov@gmail.com> Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
| * Add simple enumeration of ttyTHSx devices on LinuxDenis Shienkov2015-12-311-0/+1
| | | | | | | | | | | | | | | | | | ... when udev or sysfs are unavailable. Task-number: QTBUG-50223 Change-Id: I90ec57bcb95e6ade70eb080f553f8324b7e84387 Reviewed-by: Sergey Belyashov <Sergey.Belyashov@gmail.com> Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
| * Fix detection of 8250 serial ports type by udev backendDenis Shienkov2015-12-311-1/+1
| | | | | | | | | | | | | | | | We need to pass a full device path into isValidSerial8250() function. Change-Id: I771a2518fa9ec89e9519992fd52413fb0e32a4fe Reviewed-by: Sergey Belyashov <Sergey.Belyashov@gmail.com> Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
| * Keep a fractional part of custom baud rate in a debug outputDenis Shienkov2015-12-311-3/+3
| | | | | | | | | | | | Change-Id: I1f7b5436a00dec545f6256d15147abd43f92767b Reviewed-by: Sergey Belyashov <Sergey.Belyashov@gmail.com> Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>