On Mon, Dec 9, 2013 at 12:36 PM, Erik Faye-Lund <kusmabite@xxxxxxxxx> wrote: > On Sun, Dec 8, 2013 at 12:35 AM, Rob Clark <robdclark@xxxxxxxxx> wrote: >> diff --git a/drivers/gpu/drm/msm/msm_kms.h b/drivers/gpu/drm/msm/msm_kms.h >> new file mode 100644 >> index 0000000..e42973c >> --- /dev/null >> +++ b/drivers/gpu/drm/msm/msm_kms.h >> @@ -0,0 +1,57 @@ >> +/* >> + * Copyright (C) 2013 Red Hat >> + * Author: Rob Clark <robdclark@xxxxxxxxx> >> + * >> + * This program is free software; you can redistribute it and/or modify it >> + * under the terms of the GNU General Public License version 2 as published by >> + * the Free Software Foundation. >> + * >> + * This program is distributed in the hope that it will be useful, but WITHOUT >> + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or >> + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for >> + * more details. >> + * >> + * You should have received a copy of the GNU General Public License along with >> + * this program. If not, see <http://www.gnu.org/licenses/>. >> + */ >> + >> +#ifndef __MSM_KMS_H__ >> +#define __MSM_KMS_H__ >> + >> +#include <linux/clk.h> >> +#include <linux/regulator/consumer.h> >> + >> +#include "msm_drv.h" >> + >> +/* As there are different display controller blocks depending on the >> + * snapdragon version, the kms support is split out and the appropriate >> + * implementation is loaded at runtime. The kms module is responsible >> + * for constructing the appropriate planes/crtcs/encoders/connectors. >> + */ >> +struct msm_kms_funcs { >> + /* hw initialization: */ >> + int (*hw_init)(struct msm_kms *kms); >> + /* irq handling: */ >> + void (*irq_preinstall)(struct msm_kms *kms); >> + int (*irq_postinstall)(struct msm_kms *kms); >> + void (*irq_uninstall)(struct msm_kms *kms); >> + irqreturn_t (*irq)(struct msm_kms *kms); >> + int (*enable_vblank)(struct msm_kms *kms, struct drm_crtc *crtc); >> + void (*disable_vblank)(struct msm_kms *kms, struct drm_crtc *crtc); >> + /* misc: */ >> + const struct msm_format *(*get_format)(struct msm_kms *kms, uint32_t format); >> + long (*round_pixclk)(struct msm_kms *kms, unsigned long rate, >> + struct drm_encoder *encoder); >> + /* cleanup: */ >> + void (*preclose)(struct msm_kms *kms, struct drm_file *file); >> + void (*destroy)(struct msm_kms *kms); >> +}; >> + >> +struct msm_kms { >> + const struct msm_kms_funcs *funcs; >> +}; >> + >> +struct msm_kms *mdp4_kms_init(struct drm_device *dev); >> +struct msm_kms *mdp5_kms_init(struct drm_device *dev); > > Shouldn't this be introduced in a follow-up patch that also adds the definition? yeah, probably.. looks like I fumbled slightly when re-arranging patches.. BR, -R -- To unsubscribe from this list: send the line "unsubscribe linux-arm-msm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html