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
This commit is contained in:
bvl
2000-07-31 10:16:47 +00:00
parent 6df36f32e5
commit a62c8eb358
3 changed files with 10 additions and 9 deletions

View File

@@ -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;
}

View File

@@ -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);

View File

@@ -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;