Re: bcma USB Host driver

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Alan,

On 11/26/2011 02:27 AM, Alan Stern wrote:
> On Sat, 26 Nov 2011, Hauke Mehrtens wrote:
> 
>>> Main question would be whether a linux device driver can provide
>>> multiple system functions. I tend to say it can. So I would suggest to
>>> have a single device driver providing OHCI and EHCI functionality.
>>
>> @USB guys, how do I design a driver for a linux device providing ohci
>> and ehci functionality at the same time. The device has two address
>> spaces one for ehci and one for ohci functions.
> 
> How many IRQ lines?
The ehci and ohci controller are sharing one IRQ line.
> 
> And incidentally, in what sense is this _one_ device?  Are you sure 
> it's not _two_ devices in one package?
This is an SoC, so in hardware it is a chip with many functionality. On
the internal bus it is connected as one device, which offers two address
spaces. I do not have access to the detailed hardware specs just some
other driver source code.
> 
>> I thought about registering one controller (ehci or ohci) with
>> usb_create_shared_hcd(). The code then will be in an own module and not
>> in echi_hcd.ko and ochi_hcd.ko like for pci, I hope this works.
>> Is there a better solution to do this, is there an other driver with the
>> same problem already solved?
> 
> I don't know of any other driver that does this.  Your best solution is 
> probably write a driver that registers two child platform devices, and 
> write two corresponding platform drivers, one for the EHCI part and one 
> for the OHCI part.
Thanks for this tip. I did this and it is working nicely. It has an
other advantage, for the ssb bus I was able to use the same platform
drivers as used for the bcma bus.
> 
> Alan Stern
> 

Hauke

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux