Commit Graph
38 Commits
Author SHA1 Message Date
Pali Rohár 52793b733d disk: Check if reading from block device failed 2019-09-30 17:42:16 +02:00
Pali Rohár 33442482c6 disk: Fix detection of busnum
Unpatched version of libusb on linux platform does not set location, but
Debian's version of libusb has a patch which set it. For compatibility with
other systems without unpatched libusb version, read busnum from dirname
which seems to be always set.

Fixes: https://github.com/pali/0xFFFF/issues/5
2018-02-08 23:20:14 +01:00
Pali Rohár e987dcd948 disk: Remove remaining ENOMEDIUM 2018-02-08 20:35:12 +01:00
Pali Rohár 2fd11378c8 disk: Fix swapping maj1:min1 and maj2:min2 2018-02-08 20:28:31 +01:00
Pali Rohár ca1db96690 disk: Fix compile warning: comparison between signed and unsigned integer expressions 2018-02-08 19:49:13 +01:00
Pali Rohár a6c20b5ee4 disk: Open whole block device with O_NONBLOCK
This would simplify handling of ENOMEDIUM error.
2018-02-08 19:48:34 +01:00
Pali Rohár e685787e67 disk: Ensure that maj1:min1 is first device and maj2:min2 is second device 2018-02-08 19:24:11 +01:00
Pali Rohár 559fe2a3bd disk: After opening blkdev, check that it is really block device 2017-07-09 17:26:13 +02:00
Pali Rohár ccec7a182f disk: Close device file handle when freeing structures 2017-07-09 14:57:41 +02:00
Pali Rohár 31569c169a disk: Fix detection of correct device in disk_open_dev() 2017-07-09 14:56:30 +02:00
Pali Rohár 27a55c3367 disk: Choose correct partition in disk_open_dev() 2017-07-06 20:55:41 +02:00
Pali Rohár 66ecce9a3d disk: Remove check which is always false
Type unsigned long long int according to C99 can store at least 2^64-1.
2017-01-09 22:56:33 +01:00
Pali Rohár f7bad18a56 disk: Fix for RM-680 2016-12-23 10:13:42 +01:00
Pali Rohár 82de19bee1 disk: Check for ENOMEDIUM when partition is required 2016-12-23 10:13:23 +01:00
Pali Rohár 430930537c all: Use #include <sys/sysmacros.h> for major() instead #define _BSD_SOURCE 2016-12-17 01:51:33 +01:00
Pali Rohár f2a51b5041 disk: Do not fail when empty block device is exported 2016-12-07 11:38:07 +01:00
Pali Rohár 5e79d651ca all: Compile globally without _GNU_SOURCE, define _BSD_SOURCE or _GNU_SOURCE where needed 2016-12-06 23:10:58 +01:00
Pali Rohár 676da47751 all: Revert libusb-1.0 support
Listing of usb devices with libusb-1.0 is too slow and not usable for
flashing or cold-flashing Nokia N900.

Old libusb (0.1) does not have this problem and works perfectly.

Problem for libusb-1.0 was reported at least two times into libusb-devel
mailing list, but upstream developers are totally ignore it. One message is
in archive: https://sourceforge.net/p/libusb/mailman/message/34985373/

Because of that there is just one option: use tested and working libusb 0.1
library instead some experimental and non-working libusb-1.0.
2016-12-06 22:39:44 +01:00
Pali Rohár cf95375177 disk: Fix detection of MyDocs partition in DISK RAW mode for non RX-51 devices 2016-05-12 00:12:55 +02:00
Pali Rohár abcf256268 disk: Use correct libusb function which returns Linux devnum value
It is libusb_get_device_address() and not libusb_get_port_number()
2016-02-12 22:27:35 +01:00
Pali Rohár 62fa041f86 all: Rename variable readed to sent 2016-01-23 16:06:51 +01:00
Sebastian Reichel d5028a12ca all: Switch to libusb-1.0
libusb 0.1 is deprecated. This updates 0xFFFF to use the
newer libusb 1.0 API instead.
2016-01-23 16:06:12 +01:00
Sebastian Reichel d4342a8cdf disk: dirent.h is required for DIR
Without <dirent.h> include newer gcc releases
throw warnings about undefined "DIR".
2016-01-13 22:23:29 +01:00
Sebastian Reichel 055621d3a2 all: free() is defined in stdlib.h
Without including <stdlib.h> newer gcc releases throw
warnings about undefined free().
2016-01-13 22:23:29 +01:00
Pali Rohár b7f80de25d all: Check for return value of lseek 2016-01-10 14:29:18 +01:00
Pali Rohár bb90caec1b all: Fix overflow in shift operators 2014-11-26 16:49:39 +01:00
Pali Rohár ef1960cc32 disk: Enable Linux code only on Linux 2014-11-26 16:33:07 +01:00
Pali Rohár 93680de944 disk: Implement disk_dump_image() 2014-11-21 16:33:42 +01:00
Pali Rohár 5fd0755448 disk: Find emmc device in disk_init() 2014-11-21 16:33:28 +01:00
Pali Rohár 75c87a1583 disk: Ignore '.' and '..' when listing directory 2014-11-21 16:31:29 +01:00
Pali Rohár e66015b880 disk: Remove old disk functions (they are not used anymore) 2014-11-21 15:03:18 +01:00
Pali Rohár e00331fb42 disk: Implement new functions for raw disk access 2014-11-21 15:01:30 +01:00
Pali Rohár eb23177014 disk: Implement init and get_device functions 2014-11-18 23:52:14 +01:00
Pali Rohár f898ac4411 all: Fix typo 2014-05-10 22:39:47 +02:00
Pali Rohár 9164f331a3 disk: Added function disk_dump_raw for dumping raw block device 2012-11-24 11:06:26 +01:00
Pali Rohár 2cbeb4d0fe disk: Fix unused parameter warnings 2012-11-20 21:51:12 +01:00
Pali Rohár 2746da7a03 disk: Fix return values 2012-11-20 21:40:26 +01:00
Pali Rohár a9c0daab68 Added template for USB RAW disk mode 2012-11-15 15:21:00 +01:00