PICDEM FS USB Bootloader under FreeBSD
Xiaofan Chen
xiaofanc at gmail.com
Sat Apr 26 05:07:36 UTC 2008
On Sat, Apr 26, 2008 at 12:46 PM, Xiaofan Chen <xiaofanc at gmail.com> wrote:
> On Sat, Apr 26, 2008 at 11:50 AM, Xiaofan Chen <xiaofanc at gmail.com> wrote:
> >
> > > 2) Patch /sys/dev/usb/ugen.c
> > >
> > > Change all lines looking like the following, that are not in a function
> > > named "xxx_callback":
> > >
> > > sce->read_stall = 1;
> > > sce->write_stall = 1;
> > >
> > > Into:
> > >
> > > sce->read_stall = 0;
> > > sce->write_stall = 0;
> > >
> > > Recompile ugen an try again.
> >
> > Maybe this is a stupid question but how do I compile ugen only and not
> > the whole kernel?
> >
> > Normally I will use the following command with this modifications.
> > [root at freebsd7 /usr/src]# make buildkernel installkernel
> > KERNCONF=custom -DNOCLEAN -DNO_CLEAN -DNO_KERNELDEPEND
> >
> > But with major updates I will just use
> > make buildkernel installkernel KERNCONF=custom
> >
> > I will try this out and report back.
>
> This does not help.
>
On the other hand, reading the hex file works. It worked with the same change
for PICkit 2 actually.
[mcuee at freebsd7 /usr/home/mcuee/Desktop/build/fsusb/fsusb-0.1.11-2]$
./fsusb --read demo1.hex
Locating USB Microchip(tm) PICDEM-FS USB(tm) (vendor 0x04d8/product 0x000b)
Found USB PICDEM-FS USB as device '/dev/ugen1' on USB bus /dev/usb1
Communication established. Onboard firmware version is 1.0
Finished reading
[mcuee at freebsd7 /usr/home/mcuee/Desktop/build/fsusb/fsusb-0.1.11-2]$
sudo sysctl hw.usb.debug=1
[mcuee at freebsd7 /usr/home/mcuee/Desktop/build/fsusb/fsusb-0.1.11-2]$
./fsusb --read demo2.hex
Locating USB Microchip(tm) PICDEM-FS USB(tm) (vendor 0x04d8/product 0x000b)
Found USB PICDEM-FS USB as device '/dev/ugen1' on USB bus /dev/usb1
Communication established. Onboard firmware version is 1.0
Finished reading
dmesg output is truncated. But here is a short version from /var/log/messages:
Apr 26 13:00:58 freebsd7 sudo: mcuee : TTY=ttyp1 ;
PWD=/usr/home/mcuee/Desktop/build/fsusb/fsusb-0.1.11-2 ; USER=root ;
COMMAND=/sbin/sysctl hw.usb.debug=1
Apr 26 13:01:11 freebsd7 kernel: usbd_start_hardware: xfer=0xc4272070,
pipe=0xc40bc9b0, nframes=2, dir=read
Apr 26 13:01:11 freebsd7 kernel: usbd_dump_pipe: pipe=0xc40bc9b0
edesc=0xc40bcc7d isoc_next=0 toggle_next=0 bEndpointAddress=0x00
Apr 26 13:01:11 freebsd7 kernel: usbd_dump_queue: pipe=0xc40bc9b0
Apr 26 13:01:11 freebsd7 kernel: usbd_start_hardware: xfer=0xc4272070,
pipe=0xc40bc9b0, nframes=2, dir=read
Apr 26 13:01:11 freebsd7 kernel: usbd_dump_pipe: pipe=0xc40bc9b0
edesc=0xc40bcc7d isoc_next=0 toggle_next=0 bEndpointAddress=0x00
Apr 26 13:01:11 freebsd7 kernel: usbd_dump_queue: pipe=0xc40bc9b0
Apr 26 13:01:11 freebsd7 kernel: usbd_start_hardware: xfer=0xc4272070,
pipe=0xc40bc9b0, nframes=2, dir=read
Apr 26 13:01:11 freebsd7 kernel: usbd_dump_pipe: pipe=0xc40bc9b0
edesc=0xc40bcc7d isoc_next=0 toggle_next=0 bEndpointAddress=0x00
Apr 26 13:01:11 freebsd7 kernel: usbd_dump_queue: pipe=0xc40bc9b0
Apr 26 13:01:11 freebsd7 kernel: usbd_start_hardware: xfer=0xc4272070,
pipe=0xc40bc9b0, nframes=2, dir=read
Apr 26 13:01:11 freebsd7 kernel: usbd_dump_pipe: pipe=0xc40bc9b0
edesc=0xc40bcc7d isoc_next=0 toggle_next=0 bEndpointAddress=0x00
Apr 26 13:01:11 freebsd7 kernel: usbd_dump_queue: pipe=0xc40bc9b0
Apr 26 13:01:11 freebsd7 kernel: usbd_start_hardware: xfer=0xc46d9070,
pipe=0xc4e6e9b0, nframes=2, dir=read
Apr 26 13:01:11 freebsd7 kernel: usbd_dump_pipe: pipe=0xc4e6e9b0
edesc=0xc4e6ec7d isoc_next=0 toggle_next=0 bEndpointAddress=0x00
Apr 26 13:01:11 freebsd7 kernel: usbd_dump_queue: pipe=0xc4e6e9b0
Apr 26 13:01:11 freebsd7 kernel: usbd_start_hardware: xfer=0xc46d9070,
pipe=0xc4e6e9b0, nframes=2, dir=read
Apr 26 13:01:11 freebsd7 kernel: usbd_dump_pipe: pipe=0xc4e6e9b0
edesc=0xc4e6ec7d isoc_next=0 toggle_next=0 bEndpointAddress=0x00
Apr 26 13:01:11 freebsd7 kernel: usbd_dump_queue: pipe=0xc4e6e9b0
Apr 26 13:01:11 freebsd7 kernel: usbd_start_hardware: xfer=0xc4f05070,
pipe=0xc4e6e9c4, nframes=1, dir=write
Apr 26 13:01:11 freebsd7 kernel: usbd_dump_pipe: pipe=0xc4e6e9c4
edesc=0xc40cb232 isoc_next=0 toggle_next=0 bEndpointAddress=0x01
Apr 26 13:01:11 freebsd7 kernel: usbd_dump_queue: pipe=0xc4e6e9c4
Apr 26 13:01:11 freebsd7 kernel: usbd_start_hardware: xfer=0xc4f16070,
pipe=0xc4e6e9d8, nframes=1, dir=read
Apr 26 13:01:11 freebsd7 kernel: usbd_dump_pipe: pipe=0xc4e6e9d8
edesc=0xc40cb239 isoc_next=0 toggle_next=0 bEndpointAddress=0x81
Apr 26 13:01:11 freebsd7 kernel: usbd_dump_queue: pipe=0xc4e6e9d8
Apr 26 13:01:11 freebsd7 kernel: usbd_start_hardware: xfer=0xc4f05070,
pipe=0xc4e6e9c4, nframes=1, dir=write
Apr 26 13:01:11 freebsd7 kernel: usbd_dump_pipe: pipe=0xc4e6e9c4
edesc=0xc40cb232 isoc_next=0 toggle_next=1 bEndpointAddress=0x01
Apr 26 13:01:11 freebsd7 kernel: usbd_dump_queue: pipe=0xc4e6e9c4
Apr 26 13:01:11 freebsd7 kernel: usbd_start_hardware: xfer=0xc4f16070,
pipe=0xc4e6e9d8, nframes=1, dir=read
Apr 26 13:01:11 freebsd7 kernel: usbd_dump_pipe: pipe=0xc4e6e9d8
edesc=0xc40cb239 isoc_next=0 toggle_next=1 bEndpointAddress=0x81
Apr 26 13:01:11 freebsd7 kernel: usbd_dump_queue: pipe=0xc4e6e9d8
Apr 26 13:01:11 freebsd7 kernel: usbd_start_hardware: xfer=0xc4f05070,
pipe=0xc4e6e9c4, nframes=1, dir=write
Apr 26 13:01:11 freebsd7 kernel: usbd_dump_pipe: pipe=0xc4e6e9c4
edesc=0xc40cb232 isoc_next=0 toggle_next=0 bEndpointAddress=0x01
Apr 26 13:01:11 freebsd7 kernel: usbd_dump_queue: pipe=0xc4e6e9c4
Apr 26 13:01:11 freebsd7 kernel: usbd_start_hardware: xfer=0xc4f16070,
pipe=0xc4e6e9d8, nframes=1, dir=read
Apr 26 13:01:11 freebsd7 kernel: usbd_dump_pipe: pipe=0xc4e6e9d8
edesc=0xc40cb239 isoc_next=0 toggle_next=0 bEndpointAddress=0x81
Apr 26 13:01:11 freebsd7 kernel: usbd_dump_queue: pipe=0xc4e6e9d8
Apr 26 13:01:11 freebsd7 kernel: usbd_start_hardware: xfer=0xc4f05070,
pipe=0xc4e6e9c4, nframes=1, dir=write
Apr 26 13:01:11 freebsd7 kernel: usbd_dump_pipe: pipe=0xc4e6e9c4
edesc=0xc40cb232 isoc_next=0 toggle_next=1 bEndpointAddress=0x01
Apr 26 13:01:11 freebsd7 kernel: usbd_dump_queue: pipe=0xc4e6e9c4
Apr 26 13:01:11 freebsd7 kernel: usbd_start_hardware: xfer=0xc4f16070,
pipe=0xc4e6e9d8, nframes=1, dir=read
Apr 26 13:01:11 freebsd7 kernel: usbd_dump_pipe: pipe=0xc4e6e9d8
edesc=0xc40cb239 isoc_next=0 toggle_next=1 bEndpointAddress=0x81
Apr 26 13:01:11 freebsd7 kernel: usbd_dump_queue: pipe=0xc4e6e9d8
Apr 26 13:01:11 freebsd7 kernel: usbd_start_hardware: xfer=0xc4f05070,
pipe=0xc4e6e9c4, nframes=1, dir=write
Apr 26 13:01:11 freebsd7 kernel: usbd_dump_pipe: pipe=0xc4e6e9c4
edesc=0xc40cb232 isoc_next=0 toggle_next=0 bEndpointAddress=0x01
Apr 26 13:01:11 freebsd7 kernel: usbd_dump_queue: pipe=0xc4e6e9c4
Apr 26 13:01:11 freebsd7 kernel: usbd_start_hardware: xfer=0xc4f16070,
pipe=0xc4e6e9d8, nframes=1, dir=read
Apr 26 13:01:11 freebsd7 kernel: usbd_dump_pipe: pipe=0xc4e6e9d8
edesc=0xc40cb239 isoc_next=0 toggle_next=0 bEndpointAddress=0x81
Apr 26 13:01:11 freebsd7 kernel: usbd_dump_queue: pipe=0xc4e6e9d8
Apr 26 13:01:11 freebsd7 kernel: usbd_start_hardware: xfer=0xc4f05070,
pipe=0xc4e6e9c4, nframes=1, dir=write
...
Apr 26 13:01:19 freebsd7 kernel: usbd_dump_pipe: pipe=0xc4e6e9c4
edesc=0xc40cb232 isoc_next=0 toggle_next=0 bEndpointAddress=0x01
Apr 26 13:01:19 freebsd7 kernel: usbd_dump_queue: pipe=0xc4e6e9c4
Apr 26 13:01:19 freebsd7 kernel: usbd_start_hardware: xfer=0xc4f16070,
pipe=0xc4e6e9d8, nframes=1, dir=read
Apr 26 13:01:19 freebsd7 kernel: usbd_dump_pipe: pipe=0xc4e6e9d8
edesc=0xc40cb239 isoc_next=0 toggle_next=0 bEndpointAddress=0x81
Apr 26 13:01:19 freebsd7 kernel: usbd_dump_queue: pipe=0xc4e6e9d8
Apr 26 13:01:19 freebsd7 kernel: usbd_start_hardware: xfer=0xc4f05070,
pipe=0xc4e6e9c4, nframes=1, dir=write
Apr 26 13:01:19 freebsd7 kernel: usbd_dump_pipe: pipe=0xc4e6e9c4
edesc=0xc40cb232 isoc_next=0 toggle_next=1 bEndpointAddress=0x01
Apr 26 13:01:19 freebsd7 kernel: usbd_dump_queue: pipe=0xc4e6e9c4
Apr 26 13:01:19 freebsd7 kernel: usbd_start_hardware: xfer=0xc4f16070,
pipe=0xc4e6e9d8, nframes=1, dir=read
Apr 26 13:01:19 freebsd7 kernel: usbd_dump_pipe: pipe=0xc4e6e9d8
edesc=0xc40cb239 isoc_next=0 toggle_next=1 bEndpointAddress=0x81
Apr 26 13:01:19 freebsd7 kernel: usbd_dump_queue: pipe=0xc4e6e9d8
Apr 26 13:01:19 freebsd7 kernel: usbd_start_hardware: xfer=0xc4f05070,
pipe=0xc4e6e9c4, nframes=1, dir=write
Apr 26 13:01:19 freebsd7 kernel: usbd_dump_pipe: pipe=0xc4e6e9c4
edesc=0xc40cb232 isoc_next=0 toggle_next=0 bEndpointAddress=0x01
Apr 26 13:01:19 freebsd7 kernel: usbd_dump_queue: pipe=0xc4e6e9c4
Apr 26 13:01:19 freebsd7 kernel: usbd_start_hardware: xfer=0xc4f16070,
pipe=0xc4e6e9d8, nframes=1, dir=read
Apr 26 13:01:19 freebsd7 kernel: usbd_dump_pipe: pipe=0xc4e6e9d8
edesc=0xc40cb239 isoc_next=0 toggle_next=0 bEndpointAddress=0x81
Apr 26 13:01:19 freebsd7 kernel: usbd_dump_queue: pipe=0xc4e6e9d8
Apr 26 13:01:19 freebsd7 kernel: usbd_start_hardware: xfer=0xc4f05070,
pipe=0xc4e6e9c4, nframes=1, dir=write
Apr 26 13:01:19 freebsd7 kernel: usbd_dump_pipe: pipe=0xc4e6e9c4
edesc=0xc40cb232 isoc_next=0 toggle_next=1 bEndpointAddress=0x01
Apr 26 13:01:19 freebsd7 kernel: usbd_dump_queue: pipe=0xc4e6e9c4
Apr 26 13:01:19 freebsd7 kernel: usbd_start_hardware: xfer=0xc4f16070,
pipe=0xc4e6e9d8, nframes=1, dir=read
Apr 26 13:01:19 freebsd7 kernel: usbd_dump_pipe: pipe=0xc4e6e9d8
edesc=0xc40cb239 isoc_next=0 toggle_next=1 bEndpointAddress=0x81
Apr 26 13:01:19 freebsd7 kernel: usbd_dump_queue: pipe=0xc4e6e9d8
Xiaofan
More information about the freebsd-usb
mailing list