Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 366585
b: refs/heads/master
c: c31b9fb
h: refs/heads/master
i:
  366583: a5d82d1
v: v3
  • Loading branch information
Mauro Carvalho Chehab committed Mar 21, 2013
1 parent fb3b288 commit 0bcb9f8
Show file tree
Hide file tree
Showing 4 changed files with 31 additions and 64 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 739a8c91a39cd2bc3fce23ab4368816150fcf27a
refs/heads/master: c31b9fb26069d0beedb3125a4ff3c1d0f8051d26
18 changes: 9 additions & 9 deletions trunk/drivers/media/common/siano/sms-cards.c
Original file line number Diff line number Diff line change
Expand Up @@ -109,18 +109,18 @@ struct sms_board *sms_get_board(unsigned id)
}
EXPORT_SYMBOL_GPL(sms_get_board);
static inline void sms_gpio_assign_11xx_default_led_config(
struct smscore_gpio_config *pGpioConfig) {
pGpioConfig->Direction = SMS_GPIO_DIRECTION_OUTPUT;
pGpioConfig->InputCharacteristics =
SMS_GPIO_INPUT_CHARACTERISTICS_NORMAL;
pGpioConfig->OutputDriving = SMS_GPIO_OUTPUT_DRIVING_4mA;
pGpioConfig->OutputSlewRate = SMS_GPIO_OUTPUT_SLEW_RATE_0_45_V_NS;
pGpioConfig->PullUpDown = SMS_GPIO_PULL_UP_DOWN_NONE;
struct smscore_config_gpio *pGpioConfig) {
pGpioConfig->direction = SMS_GPIO_DIRECTION_OUTPUT;
pGpioConfig->inputcharacteristics =
SMS_GPIO_INPUTCHARACTERISTICS_NORMAL;
pGpioConfig->outputdriving = SMS_GPIO_OUTPUTDRIVING_4mA;
pGpioConfig->outputslewrate = SMS_GPIO_OUTPUT_SLEW_RATE_0_45_V_NS;
pGpioConfig->pullupdown = SMS_GPIO_PULLUPDOWN_NONE;
}

int sms_board_event(struct smscore_device_t *coredev,
enum SMS_BOARD_EVENTS gevent) {
struct smscore_gpio_config MyGpioConfig;
struct smscore_config_gpio MyGpioConfig;

sms_gpio_assign_11xx_default_led_config(&MyGpioConfig);

Expand Down Expand Up @@ -182,7 +182,7 @@ static int sms_set_gpio(struct smscore_device_t *coredev, int pin, int enable)
.direction = SMS_GPIO_DIRECTION_OUTPUT,
.pullupdown = SMS_GPIO_PULLUPDOWN_NONE,
.inputcharacteristics = SMS_GPIO_INPUTCHARACTERISTICS_NORMAL,
.outputslewrate = SMS_GPIO_OUTPUTSLEWRATE_FAST,
.outputslewrate = SMS_GPIO_OUTPUT_SLEW_RATE_FAST,
.outputdriving = SMS_GPIO_OUTPUTDRIVING_S_4mA,
};

Expand Down
20 changes: 10 additions & 10 deletions trunk/drivers/media/common/siano/smscoreapi.c
Original file line number Diff line number Diff line change
Expand Up @@ -1405,7 +1405,7 @@ static int GetGpioPinParams(u32 PinNum, u32 *pTranslatedPinNum,
}

int smscore_gpio_configure(struct smscore_device_t *coredev, u8 PinNum,
struct smscore_gpio_config *pGpioConfig) {
struct smscore_config_gpio *pGpioConfig) {

u32 totalLen;
u32 TranslatedPinNum = 0;
Expand Down Expand Up @@ -1452,19 +1452,19 @@ int smscore_gpio_configure(struct smscore_device_t *coredev, u8 PinNum,

pMsg->msgData[1] = TranslatedPinNum;
pMsg->msgData[2] = GroupNum;
ElectricChar = (pGpioConfig->PullUpDown)
| (pGpioConfig->InputCharacteristics << 2)
| (pGpioConfig->OutputSlewRate << 3)
| (pGpioConfig->OutputDriving << 4);
ElectricChar = (pGpioConfig->pullupdown)
| (pGpioConfig->inputcharacteristics << 2)
| (pGpioConfig->outputslewrate << 3)
| (pGpioConfig->outputdriving << 4);
pMsg->msgData[3] = ElectricChar;
pMsg->msgData[4] = pGpioConfig->Direction;
pMsg->msgData[4] = pGpioConfig->direction;
pMsg->msgData[5] = groupCfg;
} else {
pMsg->xMsgHeader.msgType = MSG_SMS_GPIO_CONFIG_EX_REQ;
pMsg->msgData[1] = pGpioConfig->PullUpDown;
pMsg->msgData[2] = pGpioConfig->OutputSlewRate;
pMsg->msgData[3] = pGpioConfig->OutputDriving;
pMsg->msgData[4] = pGpioConfig->Direction;
pMsg->msgData[1] = pGpioConfig->pullupdown;
pMsg->msgData[2] = pGpioConfig->outputslewrate;
pMsg->msgData[3] = pGpioConfig->outputdriving;
pMsg->msgData[4] = pGpioConfig->direction;
pMsg->msgData[5] = 0;
}

Expand Down
55 changes: 11 additions & 44 deletions trunk/drivers/media/common/siano/smscoreapi.h
Original file line number Diff line number Diff line change
Expand Up @@ -638,8 +638,16 @@ struct smscore_config_gpio {
#define SMS_GPIO_INPUTCHARACTERISTICS_SCHMITT 1
u8 inputcharacteristics;

#define SMS_GPIO_OUTPUTSLEWRATE_FAST 0
#define SMS_GPIO_OUTPUTSLEWRATE_SLOW 1
/* 10xx */
#define SMS_GPIO_OUTPUT_SLEW_RATE_FAST 0
#define SMS_GPIO_OUTPUT_SLEW_WRATE_SLOW 1

/* 11xx */
#define SMS_GPIO_OUTPUT_SLEW_RATE_0_45_V_NS 0
#define SMS_GPIO_OUTPUT_SLEW_RATE_0_9_V_NS 1
#define SMS_GPIO_OUTPUT_SLEW_RATE_1_7_V_NS 2
#define SMS_GPIO_OUTPUT_SLEW_RATE_3_3_V_NS 3

u8 outputslewrate;

/* 10xx */
Expand All @@ -661,47 +669,6 @@ struct smscore_config_gpio {
u8 outputdriving;
};

struct smscore_gpio_config {
#define SMS_GPIO_DIRECTION_INPUT 0
#define SMS_GPIO_DIRECTION_OUTPUT 1
u8 Direction;

#define SMS_GPIO_PULL_UP_DOWN_NONE 0
#define SMS_GPIO_PULL_UP_DOWN_PULLDOWN 1
#define SMS_GPIO_PULL_UP_DOWN_PULLUP 2
#define SMS_GPIO_PULL_UP_DOWN_KEEPER 3
u8 PullUpDown;

#define SMS_GPIO_INPUT_CHARACTERISTICS_NORMAL 0
#define SMS_GPIO_INPUT_CHARACTERISTICS_SCHMITT 1
u8 InputCharacteristics;

#define SMS_GPIO_OUTPUT_SLEW_RATE_SLOW 1 /* 10xx */
#define SMS_GPIO_OUTPUT_SLEW_RATE_FAST 0 /* 10xx */


#define SMS_GPIO_OUTPUT_SLEW_RATE_0_45_V_NS 0 /* 11xx */
#define SMS_GPIO_OUTPUT_SLEW_RATE_0_9_V_NS 1 /* 11xx */
#define SMS_GPIO_OUTPUT_SLEW_RATE_1_7_V_NS 2 /* 11xx */
#define SMS_GPIO_OUTPUT_SLEW_RATE_3_3_V_NS 3 /* 11xx */
u8 OutputSlewRate;

#define SMS_GPIO_OUTPUT_DRIVING_S_4mA 0 /* 10xx */
#define SMS_GPIO_OUTPUT_DRIVING_S_8mA 1 /* 10xx */
#define SMS_GPIO_OUTPUT_DRIVING_S_12mA 2 /* 10xx */
#define SMS_GPIO_OUTPUT_DRIVING_S_16mA 3 /* 10xx */

#define SMS_GPIO_OUTPUT_DRIVING_1_5mA 0 /* 11xx */
#define SMS_GPIO_OUTPUT_DRIVING_2_8mA 1 /* 11xx */
#define SMS_GPIO_OUTPUT_DRIVING_4mA 2 /* 11xx */
#define SMS_GPIO_OUTPUT_DRIVING_7mA 3 /* 11xx */
#define SMS_GPIO_OUTPUT_DRIVING_10mA 4 /* 11xx */
#define SMS_GPIO_OUTPUT_DRIVING_11mA 5 /* 11xx */
#define SMS_GPIO_OUTPUT_DRIVING_14mA 6 /* 11xx */
#define SMS_GPIO_OUTPUT_DRIVING_16mA 7 /* 11xx */
u8 OutputDriving;
};

extern void smscore_registry_setmode(char *devpath, int mode);
extern int smscore_registry_getmode(char *devpath);

Expand Down Expand Up @@ -750,7 +717,7 @@ int smscore_set_gpio(struct smscore_device_t *coredev, u32 pin, int level);

/* new GPIO management */
extern int smscore_gpio_configure(struct smscore_device_t *coredev, u8 PinNum,
struct smscore_gpio_config *pGpioConfig);
struct smscore_config_gpio *pGpioConfig);
extern int smscore_gpio_set_level(struct smscore_device_t *coredev, u8 PinNum,
u8 NewLevel);
extern int smscore_gpio_get_level(struct smscore_device_t *coredev, u8 PinNum,
Expand Down

0 comments on commit 0bcb9f8

Please sign in to comment.