Diagnosing Synchronisation Errors

25 Oct 2001 19:29 empeg

Note that this only applies to v1.x car player software. v2.x uses a different error numbering scheme.

Stage Numbers

The stage numbers overlap between download and upload (synchronising). They are:

**Stage Numbers - Downloading**
1 Getting player version information
2 Checking Media...
3 Remounting disks read/write
4 Rebuilding player database
5 Remounting disks read-only
6 Getting tags
7 Getting database
8 Getting disk space info
9 Getting playlists
10 Getting player configuration
**Stage Numbers - Synchronising**
1 Locking the UI
2 Checking Media...
3 Remounting disks read/write
4 Deleting player database
5 Uploading changes
6 Rebuilding player database
7 Saving the player configuration
8 Remounting disks read-only
9 Restarting the player
10 Getting tags
11 Getting database
12 Getting disk space info
13 Getting playlists
14 Getting player configuration

Error Codes

Most of the error codes returned from the player will be 0x followed by a long string of fs. This means that they’re negative numbers. To translate them, do the following:

  1. Run up Windows Calculator.
  2. Put it into scientific mode.
  3. Put it into hex mode.
  4. Tap in FF.
  5. Press minus.
  6. Tap in the last two digits of the number you first thought of.
  7. Press equals.
  8. Add one.
  9. Put it back into decimal mode.
  10. Look it up in the table below (/usr/src/linux/include/asm-arm/errno.h).
#ifndef _ARM_ERRNO_H
#define _ARM_ERRNO_H

#define	EPERM		  1	/* Operation not permitted */
#define	ENOENT		  2	/* No such file or directory */
#define	ESRCH		  3	/* No such process */
#define	EINTR		  4	/* Interrupted system call */
#define	EIO		  5	/* I/O error */
#define	ENXIO		  6	/* No such device or address */
#define	E2BIG		  7	/* Arg list too long */
#define	ENOEXEC		  8	/* Exec format error */
#define	EBADF		  9	/* Bad file number */
#define	ECHILD		 10	/* No child processes */
#define	EAGAIN		 11	/* Try again */
#define	ENOMEM		 12	/* Out of memory */
#define	EACCES		 13	/* Permission denied */
#define	EFAULT		 14	/* Bad address */
#define	ENOTBLK		 15	/* Block device required */
#define	EBUSY		 16	/* Device or resource busy */
#define	EEXIST		 17	/* File exists */
#define	EXDEV		 18	/* Cross-device link */
#define	ENODEV		 19	/* No such device */
#define	ENOTDIR		 20	/* Not a directory */
#define	EISDIR		 21	/* Is a directory */
#define	EINVAL		 22	/* Invalid argument */
#define	ENFILE		 23	/* File table overflow */
#define	EMFILE		 24	/* Too many open files */
#define	ENOTTY		 25	/* Not a typewriter */
#define	ETXTBSY		 26	/* Text file busy */
#define	EFBIG		 27	/* File too large */
#define	ENOSPC		 28	/* No space left on device */
#define	ESPIPE		 29	/* Illegal seek */
#define	EROFS		 30	/* Read-only file system */
#define	EMLINK		 31	/* Too many links */
#define	EPIPE		 32	/* Broken pipe */
#define	EDOM		 33	/* Math argument out of domain of func */
#define	ERANGE		 34	/* Math result not representable */
#define	EDEADLK		 35	/* Resource deadlock would occur */
#define	ENAMETOOLONG	 36	/* File name too long */
#define	ENOLCK		 37	/* No record locks available */
#define	ENOSYS		 38	/* Function not implemented */
#define	ENOTEMPTY	 39	/* Directory not empty */
#define	ELOOP		 40	/* Too many symbolic links encountered */
#define	EWOULDBLOCK	 EAGAIN	/* Operation would block */
#define	ENOMSG		 42	/* No message of desired type */
#define	EIDRM		 43	/* Identifier removed */
#define	ECHRNG		 44	/* Channel number out of range */
#define	EL2NSYNC	 45	/* Level 2 not synchronized */
#define	EL3HLT		 46	/* Level 3 halted */
#define	EL3RST		 47	/* Level 3 reset */
#define	ELNRNG		 48	/* Link number out of range */
#define	EUNATCH		 49	/* Protocol driver not attached */
#define	ENOCSI		 50	/* No CSI structure available */
#define	EL2HLT		 51	/* Level 2 halted */
#define	EBADE		 52	/* Invalid exchange */
#define	EBADR		 53	/* Invalid request descriptor */
#define	EXFULL		 54	/* Exchange full */
#define	ENOANO		 55	/* No anode */
#define	EBADRQC		 56	/* Invalid request code */
#define	EBADSLT		 57	/* Invalid slot */

#define	EDEADLOCK	 EDEADLK

#define	EBFONT		 59	/* Bad font file format */
#define	ENOSTR		 60	/* Device not a stream */
#define	ENODATA		 61	/* No data available */
#define	ETIME		 62	/* Timer expired */
#define	ENOSR		 63	/* Out of streams resources */
#define	ENONET		 64	/* Machine is not on the network */
#define	ENOPKG		 65	/* Package not installed */
#define	EREMOTE		 66	/* Object is remote */
#define	ENOLINK		 67	/* Link has been severed */
#define	EADV		 68	/* Advertise error */
#define	ESRMNT		 69	/* Srmount error */
#define	ECOMM		 70	/* Communication error on send */
#define	EPROTO		 71	/* Protocol error */
#define	EMULTIHOP	 72	/* Multihop attempted */
#define	EDOTDOT		 73	/* RFS specific error */
#define	EBADMSG		 74	/* Not a data message */
#define	EOVERFLOW	 75	/* Value too large for defined data type */
#define	ENOTUNIQ	 76	/* Name not unique on network */
#define	EBADFD		 77	/* File descriptor in bad state */
#define	EREMCHG		 78	/* Remote address changed */
#define	ELIBACC		 79	/* Can not access a needed shared library */
#define	ELIBBAD		 80	/* Accessing a corrupted shared library */
#define	ELIBSCN		 81	/* .lib section in a.out corrupted */
#define	ELIBMAX		 82	/* Attempting to link in too many shared libraries */
#define	ELIBEXEC	 83	/* Cannot exec a shared library directly */
#define	EILSEQ		 84	/* Illegal byte sequence */
#define	ERESTART	 85	/* Interrupted system call should be restarted */
#define	ESTRPIPE	 86	/* Streams pipe error */
#define	EUSERS		 87	/* Too many users */
#define	ENOTSOCK	 88	/* Socket operation on non-socket */
#define	EDESTADDRREQ	 89	/* Destination address required */
#define	EMSGSIZE	 90	/* Message too long */
#define	EPROTOTYPE	 91	/* Protocol wrong type for socket */
#define	ENOPROTOOPT	 92	/* Protocol not available */
#define	EPROTONOSUPPORT	 93	/* Protocol not supported */
#define	ESOCKTNOSUPPORT	 94	/* Socket type not supported */
#define	EOPNOTSUPP	 95	/* Operation not supported on transport endpoint */
#define	EPFNOSUPPORT	 96	/* Protocol family not supported */
#define	EAFNOSUPPORT	 97	/* Address family not supported by protocol */
#define	EADDRINUSE	 98	/* Address already in use */
#define	EADDRNOTAVAIL	 99	/* Cannot assign requested address */
#define	ENETDOWN	 100	/* Network is down */
#define	ENETUNREACH	 101	/* Network is unreachable */
#define	ENETRESET	 102	/* Network dropped connection because of reset */
#define	ECONNABORTED	 103	/* Software caused connection abort */
#define	ECONNRESET	 104	/* Connection reset by peer */
#define	ENOBUFS		 105	/* No buffer space available */
#define	EISCONN		 106	/* Transport endpoint is already connected */
#define	ENOTCONN	 107	/* Transport endpoint is not connected */
#define	ESHUTDOWN	 108	/* Cannot send after transport endpoint shutdown */
#define	ETOOMANYREFS	 109	/* Too many references: cannot splice */
#define	ETIMEDOUT	 110	/* Connection timed out */
#define	ECONNREFUSED	 111	/* Connection refused */
#define	EHOSTDOWN	 112	/* Host is down */
#define	EHOSTUNREACH	 113	/* No route to host */
#define	EALREADY	 114	/* Operation already in progress */
#define	EINPROGRESS	 115	/* Operation now in progress */
#define	ESTALE		 116	/* Stale NFS file handle */
#define	EUCLEAN		 117	/* Structure needs cleaning */
#define	ENOTNAM		 118	/* Not a XENIX named type file */
#define	ENAVAIL		 119	/* No XENIX semaphores available */
#define	EISNAM		 120	/* Is a named type file */
#define	EREMOTEIO	 121	/* Remote I/O error */
#define	EDQUOT		 122	/* Quota exceeded */

#define	ENOMEDIUM	 123	/* No medium found */
#define	EMEDIUMTYPE	 124	/* Wrong medium type */
#define	EHASHCOLLISION   125     /* ReiserFS too many hash collisions */

#endif