On Mon, Jul 28, 2014 at 04:24:49PM +0100, Thomas Wood wrote: > Ensure tests using igt_enable_connectors can still run even if the > relevant debugfs files are not available. > > Signed-off-by: Thomas Wood <thomas.wood@xxxxxxxxx> > --- > lib/igt_kms.c | 19 ++++++++++++++----- > lib/igt_kms.h | 2 +- > 2 files changed, 15 insertions(+), 6 deletions(-) > > diff --git a/lib/igt_kms.c b/lib/igt_kms.c > index 20370a9..740b5dd 100644 > --- a/lib/igt_kms.c > +++ b/lib/igt_kms.c > @@ -429,9 +429,11 @@ static char* get_debugfs_connector_path(int drm_fd, drmModeConnector *connector, > * @state: state to force on @connector > * > * Force the specified state on the specified connector. > + * > + * Returns: true on success > */ > -void kmstest_force_connector(int drm_fd, drmModeConnector *connector, enum > - kmstest_force_connector_state state) > +bool kmstest_force_connector(int drm_fd, drmModeConnector *connector, > + enum kmstest_force_connector_state state) > { > char *path; > const char *value; > @@ -458,12 +460,15 @@ void kmstest_force_connector(int drm_fd, drmModeConnector *connector, enum > debugfs_fd = open(path, O_WRONLY | O_TRUNC); > free(path); > > - igt_assert(debugfs_fd != -1); > + if (debugfs_fd == -1) { > + return false; > + } Aside: We have some neat debugfs helpers in igt_debugfs.c. Might convert over to them while at it. -Daniel > > ret = write(debugfs_fd, value, strlen(value)); > close(debugfs_fd); > > igt_assert(ret != -1); > + return (ret == -1) ? false : true; > } > > /** > @@ -1509,8 +1514,12 @@ void igt_enable_connectors(void) > continue; > > /* just enable VGA for now */ > - if (c->connector_type == DRM_MODE_CONNECTOR_VGA) > - kmstest_force_connector(drm_fd, c, FORCE_CONNECTOR_ON); > + if (c->connector_type == DRM_MODE_CONNECTOR_VGA) { > + if (!kmstest_force_connector(drm_fd, c, FORCE_CONNECTOR_ON)) > + igt_info("Unable to force state on %s-%d\n", > + kmstest_connector_type_str(c->connector_type), > + c->connector_type_id); > + } > > drmModeFreeConnector(c); > } > diff --git a/lib/igt_kms.h b/lib/igt_kms.h > index fb0e66a..08b46ab 100644 > --- a/lib/igt_kms.h > +++ b/lib/igt_kms.h > @@ -130,7 +130,7 @@ int kmstest_get_connector_default_mode(int drm_fd, drmModeConnector *connector, > int kmstest_get_connector_config(int drm_fd, uint32_t connector_id, > unsigned long crtc_idx_mask, > struct kmstest_connector_config *config); > -void kmstest_force_connector(int fd, drmModeConnector *connector, > +bool kmstest_force_connector(int fd, drmModeConnector *connector, > enum kmstest_force_connector_state state); > void kmstest_force_edid(int drm_fd, drmModeConnector *connector, > const unsigned char *edid, size_t length); > -- > 1.9.3 > > _______________________________________________ > Intel-gfx mailing list > Intel-gfx@xxxxxxxxxxxxxxxxxxxxx > http://lists.freedesktop.org/mailman/listinfo/intel-gfx -- Daniel Vetter Software Engineer, Intel Corporation +41 (0) 79 365 57 48 - http://blog.ffwll.ch _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/intel-gfx