Skip to content

Commit 9950f94

Browse files
Dr. David Alan Gilbertij-intel
authored andcommitted
platform/x86/sony-laptop: Remove unused sony laptop camera code
commit ba47652 ("media: meye: remove this deprecated driver") removed the meye driver but left behind the code in sony-laptop.c which that driver used to call. Remove the sony_pic_camera_command() function, and the set of defines (SONY_PIC_COMMAND_*) in a header used for the interface and the static helpers it called. Cleanup remaining #defines. Signed-off-by: Dr. David Alan Gilbert <[email protected]> Link: https://lore.kernel.org/r/[email protected] Reviewed-by: Ilpo Järvinen <[email protected]> Signed-off-by: Ilpo Järvinen <[email protected]>
1 parent c935ddf commit 9950f94

File tree

3 files changed

+0
-207
lines changed

3 files changed

+0
-207
lines changed

MAINTAINERS

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22597,7 +22597,6 @@ W: http://www.linux.it/~malattia/wiki/index.php/Sony_drivers
2259722597
F: Documentation/admin-guide/laptops/sony-laptop.rst
2259822598
F: drivers/char/sonypi.c
2259922599
F: drivers/platform/x86/sony-laptop.c
22600-
F: include/linux/sony-laptop.h
2260122600

2260222601
SOPHGO DEVICETREES and DRIVERS
2260322602
M: Chen Wang <[email protected]>

drivers/platform/x86/sony-laptop.c

Lines changed: 0 additions & 167 deletions
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,6 @@
4848
#include <linux/acpi.h>
4949
#include <linux/slab.h>
5050
#include <linux/sonypi.h>
51-
#include <linux/sony-laptop.h>
5251
#include <linux/rfkill.h>
5352
#ifdef CONFIG_SONYPI_COMPAT
5453
#include <linux/poll.h>
@@ -3621,22 +3620,6 @@ static u8 sony_pic_call2(u8 dev, u8 fn)
36213620
return v1;
36223621
}
36233622

3624-
static u8 sony_pic_call3(u8 dev, u8 fn, u8 v)
3625-
{
3626-
u8 v1;
3627-
3628-
wait_on_command(inb_p(spic_dev.cur_ioport->io1.minimum + 4) & 2, ITERATIONS_LONG);
3629-
outb(dev, spic_dev.cur_ioport->io1.minimum + 4);
3630-
wait_on_command(inb_p(spic_dev.cur_ioport->io1.minimum + 4) & 2, ITERATIONS_LONG);
3631-
outb(fn, spic_dev.cur_ioport->io1.minimum);
3632-
wait_on_command(inb_p(spic_dev.cur_ioport->io1.minimum + 4) & 2, ITERATIONS_LONG);
3633-
outb(v, spic_dev.cur_ioport->io1.minimum);
3634-
v1 = inb_p(spic_dev.cur_ioport->io1.minimum);
3635-
dprintk("sony_pic_call3(0x%.2x - 0x%.2x - 0x%.2x): 0x%.4x\n",
3636-
dev, fn, v, v1);
3637-
return v1;
3638-
}
3639-
36403623
/*
36413624
* minidrivers for SPIC models
36423625
*/
@@ -3724,156 +3707,6 @@ static void sony_pic_detect_device_type(struct sony_pic_dev *dev)
37243707
dev->model == SONYPI_DEVICE_TYPE2 ? 2 : 3);
37253708
}
37263709

3727-
/* camera tests and poweron/poweroff */
3728-
#define SONYPI_CAMERA_PICTURE 5
3729-
#define SONYPI_CAMERA_CONTROL 0x10
3730-
3731-
#define SONYPI_CAMERA_BRIGHTNESS 0
3732-
#define SONYPI_CAMERA_CONTRAST 1
3733-
#define SONYPI_CAMERA_HUE 2
3734-
#define SONYPI_CAMERA_COLOR 3
3735-
#define SONYPI_CAMERA_SHARPNESS 4
3736-
3737-
#define SONYPI_CAMERA_EXPOSURE_MASK 0xC
3738-
#define SONYPI_CAMERA_WHITE_BALANCE_MASK 0x3
3739-
#define SONYPI_CAMERA_PICTURE_MODE_MASK 0x30
3740-
#define SONYPI_CAMERA_MUTE_MASK 0x40
3741-
3742-
/* the rest don't need a loop until not 0xff */
3743-
#define SONYPI_CAMERA_AGC 6
3744-
#define SONYPI_CAMERA_AGC_MASK 0x30
3745-
#define SONYPI_CAMERA_SHUTTER_MASK 0x7
3746-
3747-
#define SONYPI_CAMERA_SHUTDOWN_REQUEST 7
3748-
#define SONYPI_CAMERA_CONTROL 0x10
3749-
3750-
#define SONYPI_CAMERA_STATUS 7
3751-
#define SONYPI_CAMERA_STATUS_READY 0x2
3752-
#define SONYPI_CAMERA_STATUS_POSITION 0x4
3753-
3754-
#define SONYPI_DIRECTION_BACKWARDS 0x4
3755-
3756-
#define SONYPI_CAMERA_REVISION 8
3757-
#define SONYPI_CAMERA_ROMVERSION 9
3758-
3759-
static int __sony_pic_camera_ready(void)
3760-
{
3761-
u8 v;
3762-
3763-
v = sony_pic_call2(0x8f, SONYPI_CAMERA_STATUS);
3764-
return (v != 0xff && (v & SONYPI_CAMERA_STATUS_READY));
3765-
}
3766-
3767-
static int __sony_pic_camera_off(void)
3768-
{
3769-
if (!camera) {
3770-
pr_warn("camera control not enabled\n");
3771-
return -ENODEV;
3772-
}
3773-
3774-
wait_on_command(sony_pic_call3(0x90, SONYPI_CAMERA_PICTURE,
3775-
SONYPI_CAMERA_MUTE_MASK),
3776-
ITERATIONS_SHORT);
3777-
3778-
if (spic_dev.camera_power) {
3779-
sony_pic_call2(0x91, 0);
3780-
spic_dev.camera_power = 0;
3781-
}
3782-
return 0;
3783-
}
3784-
3785-
static int __sony_pic_camera_on(void)
3786-
{
3787-
int i, j, x;
3788-
3789-
if (!camera) {
3790-
pr_warn("camera control not enabled\n");
3791-
return -ENODEV;
3792-
}
3793-
3794-
if (spic_dev.camera_power)
3795-
return 0;
3796-
3797-
for (j = 5; j > 0; j--) {
3798-
3799-
for (x = 0; x < 100 && sony_pic_call2(0x91, 0x1); x++)
3800-
msleep(10);
3801-
sony_pic_call1(0x93);
3802-
3803-
for (i = 400; i > 0; i--) {
3804-
if (__sony_pic_camera_ready())
3805-
break;
3806-
msleep(10);
3807-
}
3808-
if (i)
3809-
break;
3810-
}
3811-
3812-
if (j == 0) {
3813-
pr_warn("failed to power on camera\n");
3814-
return -ENODEV;
3815-
}
3816-
3817-
wait_on_command(sony_pic_call3(0x90, SONYPI_CAMERA_CONTROL,
3818-
0x5a),
3819-
ITERATIONS_SHORT);
3820-
3821-
spic_dev.camera_power = 1;
3822-
return 0;
3823-
}
3824-
3825-
/* External camera command (exported to the motion eye v4l driver) */
3826-
int sony_pic_camera_command(int command, u8 value)
3827-
{
3828-
if (!camera)
3829-
return -EIO;
3830-
3831-
mutex_lock(&spic_dev.lock);
3832-
3833-
switch (command) {
3834-
case SONY_PIC_COMMAND_SETCAMERA:
3835-
if (value)
3836-
__sony_pic_camera_on();
3837-
else
3838-
__sony_pic_camera_off();
3839-
break;
3840-
case SONY_PIC_COMMAND_SETCAMERABRIGHTNESS:
3841-
wait_on_command(sony_pic_call3(0x90, SONYPI_CAMERA_BRIGHTNESS, value),
3842-
ITERATIONS_SHORT);
3843-
break;
3844-
case SONY_PIC_COMMAND_SETCAMERACONTRAST:
3845-
wait_on_command(sony_pic_call3(0x90, SONYPI_CAMERA_CONTRAST, value),
3846-
ITERATIONS_SHORT);
3847-
break;
3848-
case SONY_PIC_COMMAND_SETCAMERAHUE:
3849-
wait_on_command(sony_pic_call3(0x90, SONYPI_CAMERA_HUE, value),
3850-
ITERATIONS_SHORT);
3851-
break;
3852-
case SONY_PIC_COMMAND_SETCAMERACOLOR:
3853-
wait_on_command(sony_pic_call3(0x90, SONYPI_CAMERA_COLOR, value),
3854-
ITERATIONS_SHORT);
3855-
break;
3856-
case SONY_PIC_COMMAND_SETCAMERASHARPNESS:
3857-
wait_on_command(sony_pic_call3(0x90, SONYPI_CAMERA_SHARPNESS, value),
3858-
ITERATIONS_SHORT);
3859-
break;
3860-
case SONY_PIC_COMMAND_SETCAMERAPICTURE:
3861-
wait_on_command(sony_pic_call3(0x90, SONYPI_CAMERA_PICTURE, value),
3862-
ITERATIONS_SHORT);
3863-
break;
3864-
case SONY_PIC_COMMAND_SETCAMERAAGC:
3865-
wait_on_command(sony_pic_call3(0x90, SONYPI_CAMERA_AGC, value),
3866-
ITERATIONS_SHORT);
3867-
break;
3868-
default:
3869-
pr_err("sony_pic_camera_command invalid: %d\n", command);
3870-
break;
3871-
}
3872-
mutex_unlock(&spic_dev.lock);
3873-
return 0;
3874-
}
3875-
EXPORT_SYMBOL(sony_pic_camera_command);
3876-
38773710
/* gprs/edge modem (SZ460N and SZ210P), thanks to Joshua Wise */
38783711
static void __sony_pic_set_wwanpower(u8 state)
38793712
{

include/linux/sony-laptop.h

Lines changed: 0 additions & 39 deletions
This file was deleted.

0 commit comments

Comments
 (0)