Working MSM7201 usb host driver v

by Andrew de Quincey » Tue, 09 Feb 2010 20:16:47 GMT


Sponsored Links
 Hi, here's my now working patch - I've still a bit of work to do on it
obviously, but it should suffice as a proof of concept

-- 



Working MSM7201 usb host driver v

by Andrew de Quincey » Tue, 09 Feb 2010 22:26:14 GMT


 




>> website: 


Sponsored Links


Working MSM7201 usb host driver v

by Andrew de Quincey » Wed, 10 Feb 2010 18:15:32 GMT


 Cool, I shall get on it then! Would 2.6.27 be the branch to go for would you
reckon?

Do you know if there's another list with more G1 users on it for testing
perhaps? This one seems sort of dead.

-- 



Working MSM7201 usb host driver v

by Andrew de Quincey » Wed, 10 Feb 2010 19:27:13 GMT


 Here you go - this is a patch against the android-msm-2.6.27 branch.

I don't have a config.gz from the G1, so I don't know what specific options
it uses so there may be compilation failures resulting from disabling the
USB_FUNCTION stuff. If you could send me a copy of your config.gz, I can
sort this out.

-- 



Working MSM7201 usb host driver v

by Andrew de Quincey » Wed, 10 Feb 2010 19:41:30 GMT


 Hi, sorry, my git skills failed me last time - resending :)

-- 



Working MSM7201 usb host driver v

by Jun Sun » Thu, 11 Feb 2010 01:50:25 GMT


 
# Automatically generated make config: don't edit
# Linux kernel version: 2.6.25
# Wed Jan 20 21:12:11 2010
#
CONFIG_ARM=y
CONFIG_SYS_SUPPORTS_APM_EMULATION=y
CONFIG_GENERIC_GPIO=y
CONFIG_GENERIC_TIME=y
CONFIG_GENERIC_CLOCKEVENTS=y
CONFIG_MMU=y
# CONFIG_NO_IOPORT is not set
CONFIG_GENERIC_HARDIRQS=y
CONFIG_GENERIC_GPIOS=y
CONFIG_STACKTRACE_SUPPORT=y
CONFIG_HAVE_LATENCYTOP_SUPPORT=y
CONFIG_LOCKDEP_SUPPORT=y
CONFIG_TRACE_IRQFLAGS_SUPPORT=y
CONFIG_HARDIRQS_SW_RESEND=y
CONFIG_GENERIC_IRQ_PROBE=y
CONFIG_RWSEM_GENERIC_SPINLOCK=y
# CONFIG_ARCH_HAS_ILOG2_U32 is not set
# CONFIG_ARCH_HAS_ILOG2_U64 is not set
CONFIG_GENERIC_HWEIGHT=y
CONFIG_GENERIC_CALIBRATE_DELAY=y
CONFIG_ARCH_SUPPORTS_AOUT=y
CONFIG_ZONE_DMA=y
CONFIG_VECTORS_BASE=0xffff0000
CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"

#
# General setup
#
CONFIG_EXPERIMENTAL=y
CONFIG_BROKEN_ON_SMP=y
CONFIG_LOCK_KERNEL=y
CONFIG_INIT_ENV_ARG_LIMIT=32
CONFIG_LOCALVERSION="-01843-gfea26b0"
# CONFIG_LOCALVERSION_AUTO is not set
CONFIG_SWAP=y
# CONFIG_SYSVIPC is not set
# CONFIG_POSIX_MQUEUE is not set
# CONFIG_BSD_PROCESS_ACCT is not set
# CONFIG_TASKSTATS is not set
# CONFIG_AUDIT is not set
CONFIG_IKCONFIG=y
CONFIG_IKCONFIG_PROC=y
CONFIG_LOG_BUF_SHIFT=17
# CONFIG_CGROUPS is not set
CONFIG_GROUP_SCHED=y
# CONFIG_FAIR_GROUP_SCHED is not set
# CONFIG_RT_GROUP_SCHED is not set
CONFIG_USER_SCHED=y
# CONFIG_CGROUP_SCHED is not set
CONFIG_SYSFS_DEPRECATED=y
CONFIG_SYSFS_DEPRECATED_V2=y
# CONFIG_RELAY is not set
CONFIG_NAMESPACES=y
# CONFIG_UTS_NS is not set
# CONFIG_USER_NS is not set
# CONFIG_PID_NS is not set
CONFIG_BLK_DEV_INITRD=y
CONFIG_INITRAMFS_SOURCE=""
CONFIG_CC_OPTIMIZE_FOR_SIZE=y
CONFIG_SYSCTL=y
CONFIG_PANIC_TIMEOUT=3
# CONFIG_EMBEDDED is not set
CONFIG_UID16=y
CONFIG_SYSCTL_SYSCALL=y
CONFIG_KALLSYMS=y
# CONFIG_KALLSYMS_ALL is not set
# CONFIG_KALLSYMS_EXTRA_PASS is not set
CONFIG_HOTPLUG=y
CONFIG_PRINTK=y
CONFIG_BUG=y
CONFIG_ELF_CORE=y
CONFIG_COMPAT_BRK=y
CONFIG_BASE_FULL=y
CONFIG_FUTEX=y
CONFIG_ANON_INODES=y
CONFIG_EPOLL=y
CONFIG_SIGNALFD=y
CONFIG_TIMERFD=y
CONFIG_EVENTFD=y
CONFIG_SHMEM=y
CONFIG_ASHMEM=y
CONFIG_VM_EVENT_COUNTERS=y
CONFIG_SLAB=y
# CONFIG_SLUB is not set
# CONFIG_SLOB is not set
# CONFIG_PROFILING is not set
# CONFIG_MARKERS is not set
CONFIG_HAVE_OPROFILE=y
# CONFIG_KPROBES is not set
CONFIG_HAVE_KPROBES=y
CONFIG_HAVE_KRETPROBES=y
CONFIG_PROC_PAGE_MONITOR=y
CONFIG_SLABINFO=y
CONFIG_RT_MUTEXES=y
# CONFIG_TINY_SHMEM is not set
CONFIG_BASE_SMALL=0
CONFIG_MODULES=y
CONFIG_MODULE_UNLOAD=y
CONFIG_MODULE_FORCE_UNLOAD=y
CONFIG_MODVERSIONS=y
# CONFIG_MODULE_SRCVERSION_ALL is not set
# CONFIG_KMOD is not set
CONFIG_BLOCK=y
# CONFIG_LBD is not set
# CONFIG_BLK_DEV_IO_TRACE is not set
# CONFIG_LSF is not set
# CONFIG_BLK_DEV_BSG is not set

#
# IO Schedulers
#
CONFIG_IOSCHED_NOOP=y
CONFIG_IOSCHED_AS=y
# CONFIG_IOSCHED_DEADLINE is not set
# CONFIG_IOSCHED_CFQ is not set
CONFIG_DEFAULT_AS=y
# CONFIG_DEFAULT_DEADLINE is not set
# CONFIG_DEFAULT_CFQ is not set
# CONFIG_DEFAULT_NOOP is not set
CONFIG_DEFAULT_IOSCHED="anticipatory"
CONFIG_CLASSIC_RCU=y

#
# System Type
#
# CONFIG_ARCH_AAEC2000 is not set
# CONFIG_ARCH_GOLDFISH is not set
# CONFIG_ARCH_INTEGRATOR is not set
# CONFIG_ARCH_REALVIEW is not set
# CONFIG_ARCH_VERSATILE is not set
# CONFIG_ARCH_AT91 is not set
# CONFIG_ARCH_CLPS7500 is not set
#



Working MSM7201 usb host driver v

by Andrew de Quincey » Thu, 11 Feb 2010 02:32:29 GMT


 Hi, thanks for the .config, that helped getting my dev system setup a lot.
Anyway, attached is a backport against the android-msm-htc-2.6.25 branch; I
can't guarantee it'll work properly as the kernel EHCI stack has definitely
changed a bit since .25. It compiles though, what more testing do we need?
:)

I'm only going to support the standard linux USB host + gadget frameworks:
that's what all the linux USB OTG support is based on, and I can't be
bothered porting all that to the android specific USB_FUNCTION stuff. If
someone else does though, I've no objections!

I'm going to start reading up on OTG drivers to take this beyond the
prototype stage.

-- 



Working MSM7201 usb host driver v

by Jun Sun » Fri, 12 Feb 2010 18:11:41 GMT


 
# Automatically generated make config: don't edit
# Linux kernel version: 2.6.25
# Thu Feb 11 22:47:00 2010
#
CONFIG_ARM=y
CONFIG_SYS_SUPPORTS_APM_EMULATION=y
CONFIG_GENERIC_GPIO=y
CONFIG_GENERIC_TIME=y
CONFIG_GENERIC_CLOCKEVENTS=y
CONFIG_MMU=y
# CONFIG_NO_IOPORT is not set
CONFIG_GENERIC_HARDIRQS=y
CONFIG_GENERIC_GPIOS=y
CONFIG_STACKTRACE_SUPPORT=y
CONFIG_HAVE_LATENCYTOP_SUPPORT=y
CONFIG_LOCKDEP_SUPPORT=y
CONFIG_TRACE_IRQFLAGS_SUPPORT=y
CONFIG_HARDIRQS_SW_RESEND=y
CONFIG_GENERIC_IRQ_PROBE=y
CONFIG_RWSEM_GENERIC_SPINLOCK=y
# CONFIG_ARCH_HAS_ILOG2_U32 is not set
# CONFIG_ARCH_HAS_ILOG2_U64 is not set
CONFIG_GENERIC_HWEIGHT=y
CONFIG_GENERIC_CALIBRATE_DELAY=y
CONFIG_ARCH_SUPPORTS_AOUT=y
CONFIG_ZONE_DMA=y
CONFIG_VECTORS_BASE=0xffff0000
CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"

#
# General setup
#
CONFIG_EXPERIMENTAL=y
CONFIG_BROKEN_ON_SMP=y
CONFIG_LOCK_KERNEL=y
CONFIG_INIT_ENV_ARG_LIMIT=32
CONFIG_LOCALVERSION="-01843-gfea26b0"
# CONFIG_LOCALVERSION_AUTO is not set
CONFIG_SWAP=y
# CONFIG_SYSVIPC is not set
# CONFIG_POSIX_MQUEUE is not set
# CONFIG_BSD_PROCESS_ACCT is not set
# CONFIG_TASKSTATS is not set
# CONFIG_AUDIT is not set
CONFIG_IKCONFIG=y
CONFIG_IKCONFIG_PROC=y
CONFIG_LOG_BUF_SHIFT=17
# CONFIG_CGROUPS is not set
CONFIG_GROUP_SCHED=y
# CONFIG_FAIR_GROUP_SCHED is not set
# CONFIG_RT_GROUP_SCHED is not set
CONFIG_USER_SCHED=y
# CONFIG_CGROUP_SCHED is not set
CONFIG_SYSFS_DEPRECATED=y
CONFIG_SYSFS_DEPRECATED_V2=y
# CONFIG_RELAY is not set
CONFIG_NAMESPACES=y
# CONFIG_UTS_NS is not set
# CONFIG_USER_NS is not set
# CONFIG_PID_NS is not set
CONFIG_BLK_DEV_INITRD=y
CONFIG_INITRAMFS_SOURCE=""
CONFIG_CC_OPTIMIZE_FOR_SIZE=y
CONFIG_SYSCTL=y
CONFIG_PANIC_TIMEOUT=3
# CONFIG_EMBEDDED is not set
CONFIG_UID16=y
CONFIG_SYSCTL_SYSCALL=y
CONFIG_KALLSYMS=y
# CONFIG_KALLSYMS_ALL is not set
# CONFIG_KALLSYMS_EXTRA_PASS is not set
CONFIG_HOTPLUG=y
CONFIG_PRINTK=y
CONFIG_BUG=y
CONFIG_ELF_CORE=y
CONFIG_COMPAT_BRK=y
CONFIG_BASE_FULL=y
CONFIG_FUTEX=y
CONFIG_ANON_INODES=y
CONFIG_EPOLL=y
CONFIG_SIGNALFD=y
CONFIG_TIMERFD=y
CONFIG_EVENTFD=y
CONFIG_SHMEM=y
CONFIG_ASHMEM=y
CONFIG_VM_EVENT_COUNTERS=y
CONFIG_SLAB=y
# CONFIG_SLUB is not set
# CONFIG_SLOB is not set
# CONFIG_PROFILING is not set
# CONFIG_MARKERS is not set
CONFIG_HAVE_OPROFILE=y
# CONFIG_KPROBES is not set
CONFIG_HAVE_KPROBES=y
CONFIG_HAVE_KRETPROBES=y
CONFIG_PROC_PAGE_MONITOR=y
CONFIG_SLABINFO=y
CONFIG_RT_MUTEXES=y
# CONFIG_TINY_SHMEM is not set
CONFIG_BASE_SMALL=0
CONFIG_MODULES=y
CONFIG_MODULE_UNLOAD=y
CONFIG_MODULE_FORCE_UNLOAD=y
CONFIG_MODVERSIONS=y
# CONFIG_MODULE_SRCVERSION_ALL is not set
# CONFIG_KMOD is not set
CONFIG_BLOCK=y
# CONFIG_LBD is not set
# CONFIG_BLK_DEV_IO_TRACE is not set
# CONFIG_LSF is not set
# CONFIG_BLK_DEV_BSG is not set

#
# IO Schedulers
#
CONFIG_IOSCHED_NOOP=y
CONFIG_IOSCHED_AS=y
# CONFIG_IOSCHED_DEADLINE is not set
# CONFIG_IOSCHED_CFQ is not set
CONFIG_DEFAULT_AS=y
# CONFIG_DEFAULT_DEADLINE is not set
# CONFIG_DEFAULT_CFQ is not set
# CONFIG_DEFAULT_NOOP is not set
CONFIG_DEFAULT_IOSCHED="anticipatory"
CONFIG_CLASSIC_RCU=y

#
# System Type
#
# CONFIG_ARCH_AAEC2000 is not set
# CONFIG_ARCH_GOLDFISH is not set
# CONFIG_ARCH_INTEGRATOR is not set
# CONFIG_ARCH_REALVIEW is not set
# CONFIG_ARCH_VERSATILE is not set
# CONFIG_ARCH_AT91 is not set
# CONFIG_ARCH_CLPS7500 is not set
#



Working MSM7201 usb host driver v

by Andrew de Quincey » Fri, 12 Feb 2010 18:33:04 GMT


 Hi, thanks for trying that out, good to see the EHCI hardware initialised
ok, even if its not quite working yet.

Are you supplying power to the USB disk on its /USB/ interface? Even if its
got an external PSU, it might need power on the USB line as well in order to
function properly.

When I plug a device in, I don't see anything at all until I've switched my
external usb-powering battery on.

If the two USB data lines are the wrong way round, you'll see the device
being plugged in, but it'll fail to communicate with it. As I've said, we
can fix this in software :)

I seriously doubt I have to tell you this, but just in case: make absolutely
certain the USB  GND and USB power lines aren't mixed up!

If that's not it, I can send a patch with loads of debugging turned on.

-- 



Working MSM7201 usb host driver v

by Chris Stratton » Mon, 15 Feb 2010 16:47:53 GMT


 Andrew,

I've tried patching the cyanogen 2.6.29.6-cm42 kernel with your usb
host code for basically the same finds root hub and nothing else
result on a magic32b that Jun Sun posted from a g1.

Im using a usb hard drive's Y cable and a usb A to mini adapter; I
think this should be good as the phone will charge off either the real
mini or the adapted one.  But nothing in dmesg either booting with
devices connected or connecting them later.

I think I need to learn about how the enumeration process is supposed
to trigger in an ordinary host only system.

Maybe one of us can figure out how to try a kernel closer to yours,
also should look for g1/magic vs. hero differences in source.

Chris

-- 



Other Threads

1. Android MySQL Database

Hello,
I've currently started to code with the android sdk and I was
wondering if there is an easy way to get information stored in my
mysql databes on my server. Since the jdbc driver isn't included in
android I'm a bit lost.

I've read something about wrapper, soap and jason but this confused me
even more.

I would be really glad if someone could point me to the right way and
send me a link or send me an example.

Rgds
Coyle L. McGuire

--~--~---------~--~----~------------~-------~--~----~

2. TWO ICONS installing for a single app...Help?

Hello, I've got an app installing two icons for the same program using
the same app name for both.  I've searched high and low and cannot
find anything addressing this issue, has anyone experienced this?  One
icon when clicked opens the regular app, while the other instance of
the icon opens a barcode portion of the app.  Looking forward to any
replies...thank you

--~--~---------~--~----~------------~-------~--~----~

3. activity problem..

4. Linking java files using onListItemClick and Intents

5. Unsatisfied dependency...requiredCapability: org.eclipse.equinox.p2.iu/org.eclipse.jdt.junit/0.0.

6. want some ebboks to download

7. Cant run HelloAndriod