Sophie

Sophie

distrib > Mageia > 4 > x86_64 > by-pkgid > e8c08f13f51b30a157469c8adcce4b64 > files > 6

libifp-1.0.0.2-10.mga4.x86_64.rpm

-------
License
-------

Copyright (C) Geoff Oakham, 2004; <oakhamg@users.sourceforge.net>

This driver is free software; you can redistribute it and/or modify it under
the terms of the GNU General Public License as published by the Free Software
Foundation; only version 2 of the License.

This program is distributed in the hope that it will be useful, but WITHOUT ANY
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.  See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License in the file
"COPYING"; if not, write to the Free Software Foundation, Inc., 59 Temple Place
- Suite 330, Boston, MA  02111-1307, USA.

-------------
License-notes
-------------

If someone ports libifp to the FreeBSD kernel, I would serriously consider
dual-licensing it.

-------
Summary
-------

libifp is a general-purpose library-driver for iRiver's iFP (flash-based)
portable audio players.

	http://ifp-driver.sourceforge.net/libifp/

------------
Requirements
------------

This driver has been reported to work with models iFP1xx, 3xx, 5xx, 7xx, 8xx, 9xx and N10.

userspace library:

	-libusb
	-gcc 2.95+ (and related dev tools)
	-POSIX run-time environment

linux kernel module:

	-linux 2.6.x+
	-gcc 2.95+ (and related dev tools)
	-linux kernel sourcecode [enough to compile modules]
	-a filesystem that supports symlinks (for compilation)

------------------
Build Instructions
------------------

userspace library:
	1. tar -xzf libifp-0.1.2.3.tar.gz
	2. cd libifp-0.1.2.3
	3. ./configure --prefix=/tmp/foo
	4a make
	4b make test 		(optional)
	5. make install

	In your own project, add "-I/tmp/foo/include" to your compiler flags
	and "-L/tmp/foo/lib -lifp -lusb" to your linker flags.  (Add another -L
	argument if the linker need help finding libusb.)

linux kernel module:
	1. tar -xzf libifp-0.1.2.3.tar.gz
	2. cd libifp-0.1.2.3
	3. ./configure --with-kmodule=path/to/kernel/source
	4. make
	5. make install

-----
Usage
-----

Read ifp.h(3) (packaged in docs/man), and the code in 'examples'.

notes:
	* libifp is neither threadsafe nor thread-unsafe; it's up to the
	  caller to provide sychronization.

	  (Note: the normal [userland] shared library version of libifp uses
	  libusb.  If thread safety is important to you, make sure libusb
	  itself is threadsafe.. because I haven't.)

	* libusb must be initialized by calling usb_init() before using
	  libifp.  (When using the userspace library.)

---------------
Troubleshooting
---------------

	- examine the debug messages from stderr or the kernel log.
	- reset the device (or unplug it + turn it off) and try again.

	If you still can't get it working, please email me with your
		-debug messages
		-the filenames involved
		-kernel or libusb version
		-the libifp version
		-iFP model number
		-iFP firmware version
		-your favourite colour
	
	If possible, please also send me the status string returned by ifp_device_info()
	which looks something like this:

		model IFP-007T, firmware 1.14, battery =[####], delta 1.8.4.42

	(Note to application developers: it would be helpful if this string is available
	from the "about box" or another easy-to-access location.)

-------
Credits
-------

	Special thanks to Boris and Jim who were the first brave souls to try
	the first version--a kernel filesystem module.  Thanks to David who
	took the time to debug iFP8xx support and to the folks on
	#kernelnewbies who made helpful suggestions when I was stuck.  Everyone
	has been encouraging and helpful with their feedback, and is much
	appreciated.

	Lastly, thanks to Jordan who bought me the mp3 player.  You know how
	kids often enjoy playing with the box more than the toy inside?  Well,
	writing the driver has been a neat experience.. and the packaging came
	with top-grade bubblewrap. :)

------------
Bibliography
------------

	-Pavel Kriz and Jun Yamashiro, ifp-driver/ifp-line source code
	-ifp-driver mailing list, general discussion
	-Bovet & Cesati, "Understanding the Linux Kernel"