From a62c8eb3582bd6f352ae4c62011ad174e6e5591d Mon Sep 17 00:00:00 2001 From: bvl Date: Mon, 31 Jul 2000 10:16:47 +0000 Subject: [PATCH] bvl: init structure passed to digita seial init, for serial path and speed git-svn-id: https://svn.code.sf.net/p/gphoto/code/trunk/libgphoto2@804 67ed7778-7388-44ab-90cf-0a291f65f57c --- camlibs/digita/digita.c | 2 +- camlibs/digita/digita.h | 2 +- camlibs/digita/serial.c | 15 ++++++++------- 3 files changed, 10 insertions(+), 9 deletions(-) diff --git a/camlibs/digita/digita.c b/camlibs/digita/digita.c index b0868f41b..592f1f788 100644 --- a/camlibs/digita/digita.c +++ b/camlibs/digita/digita.c @@ -93,7 +93,7 @@ int camera_init(Camera *camera, CameraInit *init) if (!strcmp(init->port_settings.path, "usb")) dev = digita_usb_open(camera); else - dev = digita_serial_open(camera); + dev = digita_serial_open(camera,init); return dev ? GP_OK : GP_ERROR; } diff --git a/camlibs/digita/digita.h b/camlibs/digita/digita.h index 6238df3e9..6ee36efa2 100644 --- a/camlibs/digita/digita.h +++ b/camlibs/digita/digita.h @@ -133,7 +133,7 @@ int digita_get_file_data(struct digita_device *dev, int thumbnail, int digita_delete_picture(struct digita_device *dev, struct filename *filename); /* serial.c */ -struct digita_device *digita_serial_open(Camera *camera); +struct digita_device *digita_serial_open(Camera *camera, CameraInit *init); /* usb.c */ struct digita_device *digita_usb_open(Camera *camera); diff --git a/camlibs/digita/serial.c b/camlibs/digita/serial.c index 365801099..0ce0b6c5b 100644 --- a/camlibs/digita/serial.c +++ b/camlibs/digita/serial.c @@ -164,7 +164,7 @@ static int digita_serial_read(struct digita_device *dev, void *_buffer, int len) return received; } -struct digita_device *digita_serial_open(Camera *camera) +struct digita_device *digita_serial_open(Camera *camera, CameraInit *init) { struct digita_device *dev; gpio_device_settings settings; @@ -180,10 +180,10 @@ struct digita_device *digita_serial_open(Camera *camera) if (!dev->gpdev) return NULL; -/* - strcpy(settings.serial.port, serial_port); -*/ - strcpy(settings.serial.port, "/dev/ttyS0"); + + strcpy(settings.serial.port,init->port_settings.path); + + //strcpy(settings.serial.port, "/dev/ttyS0"); settings.serial.speed = 9600; settings.serial.bits = 8; settings.serial.parity = 0; @@ -205,7 +205,8 @@ struct digita_device *digita_serial_open(Camera *camera) usleep(50); - dev->gpdev->settings.serial.speed = 9600; + + dev->gpdev->settings.serial.speed =init->port_settings.speed ; gpio_serial_set_baudrate(dev->gpdev); usleep(2000); @@ -227,7 +228,7 @@ struct digita_device *digita_serial_open(Camera *camera) beacon_ack.cf_reserved = 0; beacon_ack.cf_pod_receive_mode = 0; beacon_ack.cf_host_receive_mode = 0; - beacon_ack.dataspeed = htonl(SPEED); + beacon_ack.dataspeed = htonl(init->port_settings.speed); beacon_ack.deviceframesize = htons(1023); beacon_ack.hostframesize = htons(1023); beacon_ack.checksum = 0;