kernel/eka/include/d32usbdi_errors.h
changeset 0 a41df078684a
child 36 538db54a451d
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/kernel/eka/include/d32usbdi_errors.h	Mon Oct 19 15:55:17 2009 +0100
@@ -0,0 +1,209 @@
+// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies).
+// All rights reserved.
+// This component and the accompanying materials are made available
+// under the terms of the License "Eclipse Public License v1.0"
+// which accompanies this distribution, and is available
+// at the URL "http://www.eclipse.org/legal/epl-v10.html".
+//
+// Initial Contributors:
+// Nokia Corporation - initial contribution.
+//
+// Contributors:
+//
+// Description:
+//
+
+/**
+ @file
+ @publishedPartner
+ @prototype
+*/
+
+#ifndef D32USBDI_ERRORS_H
+#define D32USBDI_ERRORS_H
+
+#ifndef __KERNEL_MODE__
+#include <e32std.h>
+#else
+#include <kernel/kernel.h>
+#endif
+
+
+const TInt KErrUsbRequestsPending			= -6640;
+const TInt KErrUsbBadAddress				= -6641;
+const TInt KErrUsbNoAddress					= -6642;
+const TInt KErrUsbSetAddrFailed				= -6643;
+const TInt KErrUsbNoPower					= -6644;
+const TInt KErrUsbTooDeep					= -6645;
+const TInt KErrUsbIOError					= -6646;
+const TInt KErrUsbNotConfigured				= -6647;
+const TInt KErrUsbTimeout					= -6648;
+const TInt KErrUsbStalled					= -6649;
+const TInt KErrUsbTestFailure				= -6650;
+const TInt KErrUsbBadState					= -6651;
+const TInt KErrUsbDeviceSuspended			= -6652;
+
+/**
+This error is returned when it is discovered that a bundle of USB descriptors
+has a malformed topological layout.
+*/
+const TInt KErrUsbBadDescriptorTopology		= -6653;
+
+// Errors from DevMon events
+const TInt KErrUsbDeviceRejected			= -6654;	// Should never happen -- the device has been rejected by the stack
+const TInt KErrUsbDeviceFailed				= -6655;	// The device failed to be configured
+const TInt KErrUsbBadDevice					= -6656;	// Hardware fault on device, eg. no Ep0
+const TInt KErrUsbBadHubPosition			= -6657;	// Hub too deep, or bus powered attached to bus powered.
+const TInt KErrUsbBadHub					= -6658;	// Hardware fault on hub, eg. no Ep0
+const TInt KErrUsbEventOverflow				= -6659;	// Too many bus events undrained -- one or more events lost
+
+// Inform caller of API Misuse
+const TInt KErrUsbRemoteWakeupAlreadyEnabled  = -6660;
+const TInt KErrUsbRemoteWakeupAlreadyDisabled = -6661;
+const TInt KErrUsbAlreadyResumed              = -6662;
+
+namespace UsbdiPanics
+	{
+	_LIT(KUsbHubDriverPanicCat, "USBHubDriver");
+	enum TUsbHubDriverPanics
+		{
+		EUsbHubDriverNoRollBackAfterFailedDeviceOpen		= 0,
+		EUsbHubDriverRequestMadeWhileClosed					= 1,
+		EUsbHubDriverInsufficientSizeToHoldStringDescriptor	= 2,
+		EUsbHubDriverMultipleNotificationRequests			= 3,
+		EUsbHubDriverTooManyDeviceHandles					= 4,
+		EUsbHubDriverAlreadyOpened                          = 5,
+		};
+
+	_LIT(KUsbdiPanicCat, "USBDI");
+	enum TUsbdiPanics
+		{
+		ERequestAlreadyPending							= 0,
+		ETooManyPipeHandles								= 1,
+		EOutOfBoundsOfLengthArray						= 2,
+		EBadIsocTransferDescriptorHandle				= 3,
+		EBadIsocTransferDescriptorWriteHandle			= 4,
+		EBadIntrTransferDescriptorHandle				= 5,
+		EBadBulkTransferDescriptorHandle				= 6,
+		ETransferDescriptorAlignmentOverPageBoundary	= 7,
+		ETransferDescriptorAlignmentNotPowerOfTwo		= 8,
+		ETransferDescriptorNoPacketsRequested			= 9,
+		ETransferDescriptorSavedToMuchData				= 10,
+		ETransferDescriptorNoPacketsToSave				= 11,
+		ETransferDescriptorInvalidSaveCall				= 12,
+		ETransferDescriptorSavedTooManyPackets			= 13,
+		ETransferDescriptorSavingTooLargeAPacket		= 14,
+		ETransferDescriptorReceivedTooLargeAPacket		= 15,
+		ETransferDescriptorPacketNotInBounds			= 16,
+		ETransferDescriptorTooFewPacketsRequested		= 17,
+		ETransferDescriptorTooManyPacketsRequested		= 18,
+		ETransferDescriptorFlagsBadZlp					= 19,
+		ENoChunkAllocatedForInterface					= 20,
+		EChunkAlreadyAllocatedForInterface				= 21,
+		ETransferWrongDescriptorType					= 22,
+		EIntrBulkTransferBadLength						= 23,
+		EIsocTransferWrongDescriptorType				= 24,
+		EIsocTransferNoPacketsRequested					= 25,
+		EIsocTransferTooManyPackets						= 26,
+		EIsocTransferPacketTooBig						= 27,
+		EInterfaceSettingChangeWithPipeOpen				= 28,
+		EUsbDeviceDeviceStateCancelledWithNoThread		= 29,
+		ECpuPageSizeIsNotMulipleOfHcdPageSize			= 30,
+		EPageListRegionSelectionUnderflow				= 31,
+		EPageListRegionSelectionOverflow				= 32,
+		EIsocTransferRequestCrossesPageBoundary			= 33,
+		EIsocTransferResultCrossesPageBoundary			= 34,
+		EPipeInvalidType								= 35,
+		ETransferDescriptorRequestedLengthDiffers		= 36,
+		ETransferDescriptorsAlreadyRegistered			= 37,
+		EOutOfBoundsOfResultArray						= 38,
+		EPipeRequestMadeWhileClosed						= 39,
+		EBadInterfaceHandle                             = 40,
+		EUsbDeviceMultipleNotificationRequests			= 41,
+		};
+
+	_LIT(KUsbDescPanicCat, "USBDesc");
+	enum TUsbDescPanics
+		{
+		/**
+		This panic is raised when the newly created TUsbGenericDescriptor object 
+		created during parsing has not set the pointer fields iParent, iFirstChild
+		and iNextPeer to NULL.
+		*/
+		EUsbDescNonNullPointersAfterParsing	= 0,
+		/**
+		This panic is raised when attempting to retrieve a wLangId from String
+		Descriptor Zero using a negative index.
+		*/
+		EUsbDescNegativeIndexToLangId		= 1,
+		};
+	}
+
+
+namespace UsbdiFaults
+	{
+#ifndef __KERNEL_MODE__
+	_LIT(KUsbdiFaultCat, "USBDI-Fault");
+#else // __KERNEL_MODE__
+	static const char* const KUsbdiFaultCat = "USBDI-Fault";
+#endif // __KERNEL_MODE__
+	enum TUsbdiFaults
+		{
+		EUsbPipeCloseFailed								= 0,
+		EUsbDeviceLingeringInterfacesOnDestroy			= 1,
+		EUsbDeviceLingeringStateNotifyOnDestroy			= 2,
+		EUsbDeviceCannotDestroySuspendTask				= 3,
+		EUsbDeviceUnexpectedStateOnStateChange			= 4,
+		EUsbDeviceUnexpectedSuspensionIssued			= 5,
+		EUsbDeviceUnexpectedResumeIssued				= 6,
+		EUsbTransferDescriptorBadHandle					= 7,
+		EUsbTransferDescriptorBadWriteHandle			= 8,
+		EUsbTransferDescriptorBadAlignment				= 9,
+		EUsbTransferDescriptorNoPacketsLeftToStore		= 10,
+		EUsbTransferDescriptorLengthsArrayBadAlignment	= 11,
+		EUsbTransferDescriptorIncompleteInitialisation	= 12,
+		EUsbTransferDescriptorInvalidHeaderOffset		= 13,
+		EUsbPipeNoHandleOnCancel						= 14,
+		EUsbPipeTransferCompleteWithoutTransfer			= 15,
+		EUsbPipeTransferWithoutPageList					= 16,
+		EUsbPipeFreeTransferHandleFailedAddToPool		= 17,
+		EUsbPipeTransferCompleteNoThreadForRequest		= 18,
+		EUsbPipeChannelRequestMadeWithoutChannel		= 19,
+		EUsbHubDriverSuccessfulAttachButNoDevice		= 20,
+		EUsbHubDriverPendingEventsAndPendingEventRequest= 21,
+		EUsbDeviceNoThreadProvided						= 22,
+		EUsbPageListGoneBeyondHcdPageListBounds			= 23,
+		EUsbTransferRequestNoThreadProvided				= 24,
+		EUsbTransferRequestNoRequestProvided			= 25,
+		EUsbTransferRequestDeletedWhileOutstanding		= 26,
+		EUsbTransferRequestDeletedWithoutCompleting		= 27,
+		EUsbTransferRequestFinalisedTwice				= 28,
+		EUsbTransferRequestCompletedWithoutFinalising	= 29,
+		EUsbPipeNoTransferRequestForTransfer			= 30,
+		EUsbDeviceStateChangeRequestButNoThread			= 31,
+		EUsbPageListInvalidRegion						= 32,
+		EUsbTransferDescriptorUnexpectedEndOfIsocList	= 33,
+		EUsbTransferDescriptorUnfillableElement			= 34,
+		EUsbHubDriverPendingNoneEvent					= 35,
+		EUsbTransferDescriptorResultsArrayBadAlignment	= 36,
+		EUsbDeviceTooManyDevicesSignallingInactivity	= 37,
+		EUsbHubDriverQueuedBusEventNotDeviceAttach		= 38,
+		EUsbPipeHasHandleButNoInterface					= 39,
+		EUsbDeviceHasHandleButNoHubDriver				= 40,
+		EUsbDevMonDeviceAttachDenied					= 41,
+		EUsbHubDriverZeroInterfaceTokenProduced			= 42,
+		EUsbInterfaceSuccessfulPipeOpenWithNoPipe		= 43,
+		};
+
+	_LIT(KUsbDescFaultCat, "USBDesc-Fault");
+	enum TUsbDescFaults
+		{
+		EUsbDescSuccessButDataLeftUnparsed	= 0,
+		EUsbDescTreePointersAlreadySet		= 1,
+		EUsbDescNoTopLevelDescriptorFound	= 2,
+		EUsbDescRunOffTree					= 3,
+		EUsbDescTreeMemberHasNoParent		= 4,
+		};
+	}
+
+#endif // D32USBDI_ERRORS_H