-----Ursprüngliche Nachricht-----
Von: Fukumoto Akira 
Gesendet: Dienstag, 26. Juli 2005 13:25
An: 'Olav Kongas'
Betreff: AW: AW: AW: isp116x

Everything what you describe in /sys is on board. I changed the settings in
the plattform-Code:
You are right, internal resistors are not nessecary - difficult to find them
in our circuit scheme, sockets and resistors are on a different card. I also
remove the plattform functions for delay, clock and reset. Now I can reset
the board without power up. My board is connected with Lauterbach - Debugger
on BDM Interface. I can use it to reset the board and follow some Funktions
on high level language including the drivers startup. I try to follow
functions in /core/message.c and hub.c like usb_new_device(). I am looking
for the way to create messages like 'usb usb1: default language 0x0409' for
example.
Also on my PC-Linux I get messages like 'SCSI emulation for USB Mass Storage
devices' which is missing in my case. 
Still get error on mount -tvfat /dev/sda1 /opt/mnt :-(

-----Ursprüngliche Nachricht-----
Von: Olav Kongas [mailto:[EMAIL PROTECTED] 
Gesendet: Montag, 25. Juli 2005 19:18
An: Fukumoto Akira
Cc: [email protected]
Betreff: Re: AW: AW: isp116x



On Mon, 25 Jul 2005, Fukumoto Akira wrote:

>  I hope it could enlighten something.
> The complete part from the hub is missing. In my case the ISP-Driver is
> loaded static. Nothing additional with plugging USB-Devices. If you look
> inside platform - Code you see, that I integrate all structures with
> module_init. 

If correctly set up, you should see the following subdirs 
appearing. Is any of them missing in your case?

        /sys/bus/platform/devices/isp116x-hcd.0/
        /sys/bus/platform/drivers/isp116x-hcd/isp116x-hcd.0/


Your kernel conf seems to be OK. Below are a few remarks 
about your platform code.



#include <linux/types.h>
#include <linux/init.h>
#include <linux/module.h>
#include <linux/device.h>
#include <linux/usb_isp116x.h>
#include <platforms/8xx/studie_2010.h>

/* Platform clock */
static void isp116x_pfm_clock(struct device *dev, int start){

};

/* Platform reset */
static void isp116x_pfm_reset(struct device *dev, int set){
        
};

/* Platform delay */
static void isp116x_pfm_delay(struct device *dev, int delay){
        int cyc = delay / 20;
        
        __asm__ volatile ("     nop\n"
                          "     nop\n"
                          "     nop\n"
        
        );
};

/* Define chip configuration */
static struct isp116x_platform_data isp116x_pfm_data = {
        .sel15Kres = 1,
        .clknotstop = 0,
        .oc_enable = 0,
        .int_act_high = 0,
        .int_edge_triggered = 1,
        .remote_wakeup_enable = 1,
        .no_power_switching = 1,
        .power_switching_mode = 0,
        .reset = isp116x_pfm_reset,
        .delay = isp116x_pfm_delay,
        .clock = isp116x_pfm_clock,
};


Don't define the reset(), delay() and clock() functions, 
i.e., delete the last three lines from the above struct.

You don't need delay() as you use NDELAY. For reset() and 
clock(), the driver checks, whether they are defined or not 
and if they are, expects them to do their job. For example, 
it expects that the reset() provided by you indeed makes 
hardware reset to the chip. As your reset() is just an empty 
function, your isp chip won't be reset. If you don't define 
the reset() at all, the driver will make a software reset to 
the isp chip.

Are you sure you need sel15Kres = 1 in the above struct?

Olav


-------------------------------------------------------
SF.Net email is sponsored by: Discover Easy Linux Migration Strategies
from IBM. Find simple to follow Roadmaps, straightforward articles,
informative Webcasts and more! Get everything you need to get up to
speed, fast. http://ads.osdn.com/?ad_idt77&alloc_id492&op=click
_______________________________________________
[email protected]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to