Skip to content

Commit

Permalink
Input: rotary-encoder - constify platform data pointers
Browse files Browse the repository at this point in the history
Drivers should not be changing platform data attached to the device
because they do not own it.

Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
  • Loading branch information
Dmitry Torokhov committed Aug 22, 2012
1 parent 429a34d commit ce91953
Showing 1 changed file with 6 additions and 6 deletions.
12 changes: 6 additions & 6 deletions drivers/input/misc/rotary_encoder.c
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@

struct rotary_encoder {
struct input_dev *input;
struct rotary_encoder_platform_data *pdata;
const struct rotary_encoder_platform_data *pdata;

unsigned int axis;
unsigned int pos;
Expand All @@ -43,7 +43,7 @@ struct rotary_encoder {
char last_stable;
};

static int rotary_encoder_get_state(struct rotary_encoder_platform_data *pdata)
static int rotary_encoder_get_state(const struct rotary_encoder_platform_data *pdata)
{
int a = !!gpio_get_value(pdata->gpio_a);
int b = !!gpio_get_value(pdata->gpio_b);
Expand All @@ -56,7 +56,7 @@ static int rotary_encoder_get_state(struct rotary_encoder_platform_data *pdata)

static void rotary_encoder_report_event(struct rotary_encoder *encoder)
{
struct rotary_encoder_platform_data *pdata = encoder->pdata;
const struct rotary_encoder_platform_data *pdata = encoder->pdata;

if (pdata->relative_axis) {
input_report_rel(encoder->input,
Expand Down Expand Up @@ -142,10 +142,10 @@ static irqreturn_t rotary_encoder_half_period_irq(int irq, void *dev_id)

static int __devinit rotary_encoder_probe(struct platform_device *pdev)
{
struct rotary_encoder_platform_data *pdata = pdev->dev.platform_data;
struct device *dev = &pdev->dev;
const struct rotary_encoder_platform_data *pdata = dev_get_platdata(dev);
struct rotary_encoder *encoder;
struct input_dev *input;
struct device *dev = &pdev->dev;
irq_handler_t handler;
int err;

Expand Down Expand Up @@ -247,7 +247,7 @@ static int __devinit rotary_encoder_probe(struct platform_device *pdev)
static int __devexit rotary_encoder_remove(struct platform_device *pdev)
{
struct rotary_encoder *encoder = platform_get_drvdata(pdev);
struct rotary_encoder_platform_data *pdata = pdev->dev.platform_data;
const struct rotary_encoder_platform_data *pdata = encoder->pdata;

free_irq(encoder->irq_a, encoder);
free_irq(encoder->irq_b, encoder);
Expand Down

0 comments on commit ce91953

Please sign in to comment.