media: atomisp: use LINUX_VERSION_CODE for driver version
The atomisp subdev driver hardcodes its version to ATOMISP_CSS_VERSION_21. Yet, it has several tests for versions below 21 internally, with sounds really odd. On all other media drivers, we're just keeping version set to LINUX_VERSION_CODE. So, do the same here, simplifying the code a little bit. Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
This commit is contained in:
parent
d104477625
commit
f3b38dcaa4
@ -28,12 +28,6 @@
|
||||
#include <linux/types.h>
|
||||
#include <linux/version.h>
|
||||
|
||||
/* struct media_device_info.driver_version */
|
||||
#define ATOMISP_CSS_VERSION_MASK 0x00ffffff
|
||||
#define ATOMISP_CSS_VERSION_15 KERNEL_VERSION(1, 5, 0)
|
||||
#define ATOMISP_CSS_VERSION_20 KERNEL_VERSION(2, 0, 0)
|
||||
#define ATOMISP_CSS_VERSION_21 KERNEL_VERSION(2, 1, 0)
|
||||
|
||||
/* struct media_device_info.hw_revision */
|
||||
#define ATOMISP_HW_REVISION_MASK 0x0000ff00
|
||||
#define ATOMISP_HW_REVISION_SHIFT 8
|
||||
|
@ -75,15 +75,6 @@
|
||||
#define ATOMISP_PCI_REV_MRFLD_A0_MAX 0
|
||||
#define ATOMISP_PCI_REV_BYT_A0_MAX 4
|
||||
|
||||
#define ATOMISP_MAJOR 0
|
||||
#define ATOMISP_MINOR 5
|
||||
#define ATOMISP_PATCHLEVEL 1
|
||||
|
||||
#define DRIVER_VERSION_STR __stringify(ATOMISP_MAJOR) \
|
||||
"." __stringify(ATOMISP_MINOR) "." __stringify(ATOMISP_PATCHLEVEL)
|
||||
#define DRIVER_VERSION KERNEL_VERSION(ATOMISP_MAJOR, \
|
||||
ATOMISP_MINOR, ATOMISP_PATCHLEVEL)
|
||||
|
||||
#define ATOM_ISP_STEP_WIDTH 2
|
||||
#define ATOM_ISP_STEP_HEIGHT 2
|
||||
|
||||
|
@ -51,7 +51,6 @@
|
||||
static const char *DRIVER = "atomisp"; /* max size 15 */
|
||||
static const char *CARD = "ATOM ISP"; /* max size 31 */
|
||||
static const char *BUS_INFO = "PCI-3"; /* max size 31 */
|
||||
static const u32 VERSION = DRIVER_VERSION;
|
||||
|
||||
/*
|
||||
* FIXME: ISP should not know beforehand all CIDs supported by sensor.
|
||||
@ -562,8 +561,6 @@ static int atomisp_querycap(struct file *file, void *fh,
|
||||
strncpy(cap->card, CARD, sizeof(cap->card) - 1);
|
||||
strncpy(cap->bus_info, BUS_INFO, sizeof(cap->card) - 1);
|
||||
|
||||
cap->version = VERSION;
|
||||
|
||||
cap->device_caps = V4L2_CAP_VIDEO_CAPTURE |
|
||||
V4L2_CAP_STREAMING | V4L2_CAP_VIDEO_OUTPUT;
|
||||
cap->capabilities = cap->device_caps | V4L2_CAP_DEVICE_CAPS;
|
||||
|
@ -1253,8 +1253,7 @@ int atomisp_create_pads_links(struct atomisp_device *isp)
|
||||
{
|
||||
struct atomisp_sub_device *asd;
|
||||
int i, j, ret = 0;
|
||||
isp->num_of_streams = isp->media_dev.driver_version >=
|
||||
ATOMISP_CSS_VERSION_20 ? 2 : 1;
|
||||
isp->num_of_streams = 2;
|
||||
for (i = 0; i < ATOMISP_CAMERA_NR_PORTS; i++) {
|
||||
for (j = 0; j < isp->num_of_streams; j++) {
|
||||
ret =
|
||||
@ -1414,8 +1413,7 @@ int atomisp_subdev_init(struct atomisp_device *isp)
|
||||
* CSS2.0 running ISP2400 support
|
||||
* multiple streams
|
||||
*/
|
||||
isp->num_of_streams = isp->media_dev.driver_version >=
|
||||
ATOMISP_CSS_VERSION_20 ? 2 : 1;
|
||||
isp->num_of_streams = 2;
|
||||
isp->asd = devm_kzalloc(isp->dev, sizeof(struct atomisp_sub_device) *
|
||||
isp->num_of_streams, GFP_KERNEL);
|
||||
if (!isp->asd)
|
||||
|
@ -1083,22 +1083,20 @@ atomisp_load_firmware(struct atomisp_device *isp)
|
||||
if (skip_fwload)
|
||||
return NULL;
|
||||
|
||||
if (isp->media_dev.driver_version == ATOMISP_CSS_VERSION_21) {
|
||||
if (isp->media_dev.hw_revision ==
|
||||
((ATOMISP_HW_REVISION_ISP2401 << ATOMISP_HW_REVISION_SHIFT)
|
||||
| ATOMISP_HW_STEPPING_A0))
|
||||
fw_path = "shisp_2401a0_v21.bin";
|
||||
if (isp->media_dev.hw_revision ==
|
||||
((ATOMISP_HW_REVISION_ISP2401 << ATOMISP_HW_REVISION_SHIFT)
|
||||
| ATOMISP_HW_STEPPING_A0))
|
||||
fw_path = "shisp_2401a0_v21.bin";
|
||||
|
||||
if (isp->media_dev.hw_revision ==
|
||||
((ATOMISP_HW_REVISION_ISP2401_LEGACY << ATOMISP_HW_REVISION_SHIFT)
|
||||
| ATOMISP_HW_STEPPING_A0))
|
||||
fw_path = "shisp_2401a0_legacy_v21.bin";
|
||||
if (isp->media_dev.hw_revision ==
|
||||
((ATOMISP_HW_REVISION_ISP2401_LEGACY << ATOMISP_HW_REVISION_SHIFT)
|
||||
| ATOMISP_HW_STEPPING_A0))
|
||||
fw_path = "shisp_2401a0_legacy_v21.bin";
|
||||
|
||||
if (isp->media_dev.hw_revision ==
|
||||
((ATOMISP_HW_REVISION_ISP2400 << ATOMISP_HW_REVISION_SHIFT)
|
||||
| ATOMISP_HW_STEPPING_B0))
|
||||
fw_path = "shisp_2400b0_v21.bin";
|
||||
}
|
||||
if (isp->media_dev.hw_revision ==
|
||||
((ATOMISP_HW_REVISION_ISP2400 << ATOMISP_HW_REVISION_SHIFT)
|
||||
| ATOMISP_HW_STEPPING_B0))
|
||||
fw_path = "shisp_2400b0_v21.bin";
|
||||
|
||||
if (!fw_path) {
|
||||
dev_err(isp->dev,
|
||||
@ -1251,7 +1249,8 @@ static int atomisp_pci_probe(struct pci_dev *dev,
|
||||
/* This is not a true PCI device on SoC, so the delay is not needed. */
|
||||
isp->pdev->d3_delay = 0;
|
||||
|
||||
isp->media_dev.driver_version = ATOMISP_CSS_VERSION_21;
|
||||
isp->media_dev.driver_version = LINUX_VERSION_CODE;
|
||||
|
||||
switch (id->device & ATOMISP_PCI_DEVICE_SOC_MASK) {
|
||||
case ATOMISP_PCI_DEVICE_SOC_MRFLD:
|
||||
isp->media_dev.hw_revision =
|
||||
|
Loading…
Reference in New Issue
Block a user