>>>>> "Aaron" == Aaron Sells <[EMAIL PROTECTED]> writes:

Hi,

 Aaron> [EMAIL PROTECTED]:/# dmesg | grep -i usb
 Aaron> [    0.175963] usbcore: registered new interface driver usbfs
 Aaron> [    0.178207] usbcore: registered new interface driver hub
 Aaron> [    0.179810] usbcore: registered new device driver usb
 Aaron> [    3.426016] usbcore: registered new interface driver ub
 Aaron> [    4.156086] usbmon: debugfs is not available
 Aaron> [    4.209160] Initializing USB Mass Storage driver...
 Aaron> [    4.268302] usbcore: registered new interface driver usb-storage
 Aaron> [    4.336109] USB Mass Storage support registered.
 Aaron> [    4.958294] usbcore: registered new interface driver usbhid
 Aaron> [    5.020120] drivers/hid/usbhid/hid-core.c: v2.6:USB HID core driver

Yes, the USB core and drivers gets loaded, but because you haven't
provided a struct platform_device the c67x00 driver doesn't get
probed.

 Aaron> It still doesn't look like the ML403 Cypress host device is being
 Aaron> recognized.  No messages appear upon insertion and removal of USB
 Aaron> devices.

 Aaron> Regards,
 Aaron> Aaron Sells
 Aaron> diff linux-2.6-xlnx_arch-ppc-syslib-virtex_devices.c 
secretlab_arch-ppc-syslib-virtex_devices.c
 Aaron> 77,92d76
 Aaron> <  * ML300/ML403 Video Device: shortcut macro for single instance

Please use diff -u.

I don't see anything with platform devices for the c67x00 driver. You
need something like:

#include <linux/usb/c67x00.h>

static struct resource c67x00_resources[] = {
        [0] = {
                .start  = 0x84000000,
                .end    = 0x8400000f,
                .flags  = IORESOURCE_MEM,
        },
        [1] = {
                .start  = 3,
                .end    = 3,
                .flags  = IORESOURCE_IRQ,
        },
};

static struct c67x00_platform_data thinlite_c67x00_data = {
        .sie_config             = C67X00_SIE1_HOST | C67X00_SIE2_PERIPHERAL_B,
        .hpi_regstep            = 0x02, /* A0 not connected on 16bit bus */
};

static struct platform_device thinlite_c67x00 = {
        .name                   = "c67x00",
        .id                     = 0,
        .num_resources          = ARRAY_SIZE(c67x00_resources),
        .resource               = c67x00_resources,
        .dev.platform_data      = &thinlite_c67x00_data,
};

Which you then register with the platform bus with
platform_add_devices or similar. Either you do this by hand or you
create XPAR_* macros which take the needed info out of xparameter.h
(sorry, I don't have an xparameters.h with those defines at hand).

 Aaron> diff -Naur c67x00.old/c67x00-drv.c c67x00/c67x00-drv.c
 Aaron> --- c67x00.old/c67x00-drv.c     2008-04-23 10:36:16.000000000 -0400
 Aaron> +++ c67x00/c67x00-drv.c 2008-04-23 10:39:20.000000000 -0400
 Aaron> @@ -57,8 +57,7 @@
 Aaron>                 c67x00_hcd_probe(sie);
 Aaron>                 break;
 
 Aaron> -       case C67X00_SIE_PERIPHERAL_A:
 Aaron> -       case C67X00_SIE_PERIPHERAL_B:
 Aaron> +       case C67X00_SIE_PERIPHERAL:

This seems to be from an earlier version of my driver.

-- 
Bye, Peter Korsgaard
_______________________________________________
Linuxppc-embedded mailing list
Linuxppc-embedded@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-embedded

Reply via email to