Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1225422
| From | Peter Senna Tschudin <peter.senna@gmail.com> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | Re: similar files: fusbh200-hcd.c and fotg210-hcd.c |
| Date | 2015-09-15 18:50 +0200 |
| Message-ID | <q91AE-24K-41@gated-at.bofh.it> (permalink) |
| References | (1 earlier) <q6ttn-jn-7@gated-at.bofh.it> <q7SSK-1yW-11@gated-at.bofh.it> <q8Dyi-1lu-25@gated-at.bofh.it> <q8GcO-4Xj-15@gated-at.bofh.it> <q8ZyO-7BR-31@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
On Tue, Sep 15, 2015 at 4:33 PM, Felipe Balbi <balbi@ti.com> wrote: > On Mon, Sep 14, 2015 at 07:50:02PM +0200, Peter Senna Tschudin wrote: >> On Mon, Sep 14, 2015 at 5:01 PM, Felipe Balbi <balbi@ti.com> wrote: >> > On Sat, Sep 12, 2015 at 03:14:50PM +0200, Peter Senna Tschudin wrote: >> >> >> Should these files be consolidated? And if so how? >> >> > if you can find an easy way, that would be a very, very welcome patch. >> >> >> >> Is the ideal solution to consolidate both fusbh200-hcd.c and >> >> fotg210-hcd.c in a single module? If this is the case, how to detect >> >> at run time which version of the hw is present? Both are registered as >> > >> > does it matter ? If they work the same way, why does it matter which >> > one's running? >> >> I may be missing something simple, but based on a 2 page product >> brief, fotg210 has more resources like memory. So even if the .c files >> are _very_ similar, there are some configuration parameters that >> differ, for example: >> >> fusbh200.h: >> #define BMCSR_VBUS_OFF (1<<4) >> #define BMCSR_INT_POLARITY (1<<3) >> >> fotg210.h: >> #define OTGCSR_A_BUS_DROP (1 << 5) >> #define OTGCSR_A_BUS_REQ (1 << 4) > > Can you detect that in runtime ? If you can, detect it. If you can't use > different platform_device_id. > >> >> notebook (hp elitebook 840), and on a VM, even if neither has the hw >> >> ($ sudo modprobe fusbh200-hcd). The module loads with the warning >> >> "fusbh200_hcd should always be loaded before uhci_hcd and ohci_hcd, >> >> not after". On another workstation running ubuntu, I could load both >> >> modules at the same time, producing the same warning for each module. >> >> Should the module load if the device is not present? >> >> >> >> Other solution for consolidation would be to create a common_code.c, >> >> keeping both fusbh200-hcd.c and fotg210-hcd.c only with the code that >> >> differ. Is this better than what is there now? >> >> >> >> Other ideas? >> > >> > just combine them :-p Use platform_device_id to differentiate. Can you check the f2xx branch at: git@github.com:petersenna/linux.git And tell me if this is the way to go for the consolidation of the two drivers? I started with the newest driver, did code cleanup, and started filling the new driver with parameters from the older FUSBH200. At the moment it compiles for x86 and probably still works for FOTG210 devices. A concrete question I have is if should I keep making many patches for the consolidation or should I do a single big patch with all changes? Comments are welcome. >> >> I'm afraid the combined version will use the correct parameters for >> only one of the two. But I may be missing something simple. I did a >> diff between the two files after removing white space differences, and >> after replacing fusbh200 by fotg210 on the fusbh200 driver. The files >> are very similar. See: http://pastebin.com/ZRY3xePv > > yeah, you can totally combine them. Grep the tree for examples of how to > use platform_device_id as I mentioned. I'll do it. Thank you. > > -- > balbi -- Peter -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Back to linux.kernel | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
similar files: fusbh200-hcd.c and fotg210-hcd.c Peter Senna Tschudin <peter.senna@gmail.com> - 2015-09-07 16:50 +0200
Re: similar files: fusbh200-hcd.c and fotg210-hcd.c Felipe Balbi <balbi@ti.com> - 2015-09-08 18:00 +0200
Re: similar files: fusbh200-hcd.c and fotg210-hcd.c Peter Senna Tschudin <peter.senna@gmail.com> - 2015-09-12 15:20 +0200
Re: similar files: fusbh200-hcd.c and fotg210-hcd.c Felipe Balbi <balbi@ti.com> - 2015-09-14 17:10 +0200
Re: similar files: fusbh200-hcd.c and fotg210-hcd.c Peter Senna Tschudin <peter.senna@gmail.com> - 2015-09-14 20:00 +0200
Re: similar files: fusbh200-hcd.c and fotg210-hcd.c Felipe Balbi <balbi@ti.com> - 2015-09-15 16:40 +0200
Re: similar files: fusbh200-hcd.c and fotg210-hcd.c Peter Senna Tschudin <peter.senna@gmail.com> - 2015-09-15 18:50 +0200
Re: similar files: fusbh200-hcd.c and fotg210-hcd.c Felipe Balbi <balbi@ti.com> - 2015-09-15 19:00 +0200
[PATCH 08/14] RFC: usb/host/fotg210: convert macro to inline function Peter Senna Tschudin <peter.senna@gmail.com> - 2015-09-21 17:10 +0200
[PATCH 09/14] RFC: usb/host/fotg210: Add function: output_buf_tds_dir() Peter Senna Tschudin <peter.senna@gmail.com> - 2015-09-21 17:10 +0200
Re: [PATCH 09/14] RFC: usb/host/fotg210: Add function: output_buf_tds_dir() Sergei Shtylyov <sergei.shtylyov@cogentembedded.com> - 2015-09-21 21:20 +0200
[PATCH 14/14] RFC: usb/host/faraday-hcd: Import FUSBH200 parameters Peter Senna Tschudin <peter.senna@gmail.com> - 2015-09-21 17:10 +0200
[PATCH 00/14] RFC: Consolidation: FUSB200 and FOTG210 Peter Senna Tschudin <peter.senna@gmail.com> - 2015-09-21 17:10 +0200
[PATCH 04/14] RFC: usb/host/fotg210: Remove NULL checks dma_pool_destroy Peter Senna Tschudin <peter.senna@gmail.com> - 2015-09-21 17:10 +0200
[PATCH 03/14] RFC: usb/host/fotg210: Remove useless else statement Peter Senna Tschudin <peter.senna@gmail.com> - 2015-09-21 17:10 +0200
[PATCH 10/14] RFC: usb/host/fotg210: Add function scan_frame_queue() Peter Senna Tschudin <peter.senna@gmail.com> - 2015-09-21 17:10 +0200
[PATCH 06/14] RFC: usb/host/fotg210: replace msleep by usleep_range Peter Senna Tschudin <peter.senna@gmail.com> - 2015-09-21 17:10 +0200
[PATCH 02/14] RFC: usb/host/fotg210: remove KERN_WARNING from pr_info Peter Senna Tschudin <peter.senna@gmail.com> - 2015-09-21 17:10 +0200
Re: [PATCH 02/14] RFC: usb/host/fotg210: remove KERN_WARNING from pr_info Sergei Shtylyov <sergei.shtylyov@cogentembedded.com> - 2015-09-21 21:00 +0200
[PATCH 05/14] RFC: usb/host/fotg210: change kmalloc by kmalloc_array Peter Senna Tschudin <peter.senna@gmail.com> - 2015-09-21 17:10 +0200
Re: [PATCH 05/14] RFC: usb/host/fotg210: change kmalloc by kmalloc_array Sergei Shtylyov <sergei.shtylyov@cogentembedded.com> - 2015-09-21 21:00 +0200
[PATCH 13/14] RFC: usb/host/faraday-hcd: Move #defines outside struct Peter Senna Tschudin <peter.senna@gmail.com> - 2015-09-21 17:10 +0200
[PATCH 07/14] RFC: usb/host/fotg210: Remove a macro from snprintf Peter Senna Tschudin <peter.senna@gmail.com> - 2015-09-21 17:10 +0200
csiph-web