mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-27 05:35:12 +07:00
7e1db599b9
The CSI PHY is associated with a CSI receiver. The code assumes this receiver is a CSI2 module and relies on the CSI2 module object heavily to access the ISP or pipeline objects. However, the receiver could also be a CSI1/CCP2 module. Pass a new CSI receiver entity pointer to the CSI PHY acquire function, and replace all hardcoded usage of the CSI2 module with that CSI receiver entity. Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com> Tested-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> # on Beagleboard-xM + MPT9P031 Acked-by: Pavel Machek <pavel@ucw.cz> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
47 lines
1.2 KiB
C
47 lines
1.2 KiB
C
/*
|
|
* ispcsiphy.h
|
|
*
|
|
* TI OMAP3 ISP - CSI PHY module
|
|
*
|
|
* Copyright (C) 2010 Nokia Corporation
|
|
* Copyright (C) 2009 Texas Instruments, Inc.
|
|
*
|
|
* Contacts: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
* Sakari Ailus <sakari.ailus@iki.fi>
|
|
*
|
|
* 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.
|
|
*/
|
|
|
|
#ifndef OMAP3_ISP_CSI_PHY_H
|
|
#define OMAP3_ISP_CSI_PHY_H
|
|
|
|
#include "omap3isp.h"
|
|
|
|
struct isp_csi2_device;
|
|
struct regulator;
|
|
|
|
struct isp_csiphy {
|
|
struct isp_device *isp;
|
|
struct mutex mutex; /* serialize csiphy configuration */
|
|
struct isp_csi2_device *csi2;
|
|
struct regulator *vdd;
|
|
/* the entity that acquired the phy */
|
|
struct media_entity *entity;
|
|
|
|
/* mem resources - enums as defined in enum isp_mem_resources */
|
|
unsigned int cfg_regs;
|
|
unsigned int phy_regs;
|
|
|
|
u8 num_data_lanes; /* number of CSI2 Data Lanes supported */
|
|
};
|
|
|
|
int omap3isp_csiphy_acquire(struct isp_csiphy *phy,
|
|
struct media_entity *entity);
|
|
void omap3isp_csiphy_release(struct isp_csiphy *phy);
|
|
int omap3isp_csiphy_init(struct isp_device *isp);
|
|
void omap3isp_csiphy_cleanup(struct isp_device *isp);
|
|
|
|
#endif /* OMAP3_ISP_CSI_PHY_H */
|