user@UBUNTU:~$:/home/user/fujitsu_irmc_bmc# grep -r -B5 -A10 --color -i speed pwmtach*
pwmtach-6.1.0.0.0-src/data/pwmtach.h- unsigned char (*disable_fantach_control) (unsigned char ft_num);
pwmtach-6.1.0.0.0-src/data/pwmtach.h- void (*enable_all_fantach_control) (void);
pwmtach-6.1.0.0.0-src/data/pwmtach.h- void (*disable_all_fantach_control) (void);
pwmtach-6.1.0.0.0-src/data/pwmtach.h- void (*enable_counterresolution) (unsigned char pwm_num);
pwmtach-6.1.0.0.0-src/data/pwmtach.h- unsigned char (*disable_counterresolution) (unsigned char pwm_num);
pwmtach-6.1.0.0.0-src/data/pwmtach.h: unsigned int (*get_current_speed) (unsigned char tachnum);
pwmtach-6.1.0.0.0-src/data/pwmtach.h- void (*set_prescale) (unsigned char pwm_num, unsigned char prescale_value);
pwmtach-6.1.0.0.0-src/data/pwmtach.h- unsigned int (*get_prescale) (unsigned char pwm_num);
pwmtach-6.1.0.0.0-src/data/pwmtach.h- void (*set_dutycycle) (unsigned char pwm_num, int dutycycle_value);
pwmtach-6.1.0.0.0-src/data/pwmtach.h- void (*set_counterresolution) (unsigned char pwm_num, unsigned int counterres_value);
pwmtach-6.1.0.0.0-src/data/pwmtach.h- unsigned int (*get_counterresolution) (unsigned char pwm_num);
pwmtach-6.1.0.0.0-src/data/pwmtach.h: int (*trigger_read_fanspeed) (unsigned char tachnum);
pwmtach-6.1.0.0.0-src/data/pwmtach.h: int (*can_read_fanspeed) (unsigned char tachnum);
pwmtach-6.1.0.0.0-src/data/pwmtach.h- unsigned int (*get_num_of_pwms) (void);
pwmtach-6.1.0.0.0-src/data/pwmtach.h- unsigned int (*get_num_of_tachs) (void);
pwmtach-6.1.0.0.0-src/data/pwmtach.h- unsigned int (*get_pwm_clk) (void);
pwmtach-6.1.0.0.0-src/data/pwmtach.h- unsigned int (*get_dutycycle) (unsigned char pwm_num);
pwmtach-6.1.0.0.0-src/data/pwmtach.h- unsigned char (*get_pwm_control_status) (unsigned char pwm_num);
pwmtach-6.1.0.0.0-src/data/pwmtach.h- unsigned char (*get_fantach_control_status) (unsigned char ft_num);
pwmtach-6.1.0.0.0-src/data/pwmtach.h- int (*set_tach_property) (unsigned char property, unsigned char pwm_tach_num, unsigned int value);
pwmtach-6.1.0.0.0-src/data/pwmtach.h- unsigned int (*get_tach_property) (unsigned char property, unsigned char pwm_tach_num);
pwmtach-6.1.0.0.0-src/data/pwmtach.h- int (*set_pwm_property) (unsigned char property, unsigned char pwm_tach_num, unsigned int value);
pwmtach-6.1.0.0.0-src/data/pwmtach.h- unsigned int (*get_pwm_property) (unsigned char property, unsigned char pwm_tach_num);
--
pwmtach-6.1.0.0.0-src/data/pwmtachmain.c-static int
pwmtach-6.1.0.0.0-src/data/pwmtachmain.c-get_tachvalue (struct pwmtach_dev* pdev, unsigned int tachnumber, unsigned int* rpmvalue)
pwmtach-6.1.0.0.0-src/data/pwmtachmain.c-{
pwmtach-6.1.0.0.0-src/data/pwmtachmain.c- unsigned int retries = 1; //avoid spinning 2.5 seconds within kernel waiting for timeout
pwmtach-6.1.0.0.0-src/data/pwmtachmain.c-
pwmtach-6.1.0.0.0-src/data/pwmtachmain.c: if (pdev->ppwmtach_hal->ppwmtach_hal_ops->trigger_read_fanspeed(tachnumber) < 0) {
pwmtach-6.1.0.0.0-src/data/pwmtachmain.c: printk("trigger read fan speed failed\n");
pwmtach-6.1.0.0.0-src/data/pwmtachmain.c- return -1;
pwmtach-6.1.0.0.0-src/data/pwmtachmain.c- }
pwmtach-6.1.0.0.0-src/data/pwmtachmain.c-
pwmtach-6.1.0.0.0-src/data/pwmtachmain.c: while ((retries!=0) && (pdev->ppwmtach_hal->ppwmtach_hal_ops->can_read_fanspeed(tachnumber) != 1))
pwmtach-6.1.0.0.0-src/data/pwmtachmain.c- {
pwmtach-6.1.0.0.0-src/data/pwmtachmain.c- schedule_timeout( 0.1 * HZ);
pwmtach-6.1.0.0.0-src/data/pwmtachmain.c- retries--;
pwmtach-6.1.0.0.0-src/data/pwmtachmain.c- }
pwmtach-6.1.0.0.0-src/data/pwmtachmain.c- if (retries == 0)
pwmtach-6.1.0.0.0-src/data/pwmtachmain.c- {
pwmtach-6.1.0.0.0-src/data/pwmtachmain.c- //printk("ran out of retries in gettachvalue(tach %d)...returning -1\n",tachnumber & 0x7F);
pwmtach-6.1.0.0.0-src/data/pwmtachmain.c- return -1;
pwmtach-6.1.0.0.0-src/data/pwmtachmain.c- }
pwmtach-6.1.0.0.0-src/data/pwmtachmain.c-
pwmtach-6.1.0.0.0-src/data/pwmtachmain.c: *rpmvalue = pdev->ppwmtach_hal->ppwmtach_hal_ops->get_current_speed (tachnumber);
pwmtach-6.1.0.0.0-src/data/pwmtachmain.c- return 0;
pwmtach-6.1.0.0.0-src/data/pwmtachmain.c-}
pwmtach-6.1.0.0.0-src/data/pwmtachmain.c-
pwmtach-6.1.0.0.0-src/data/pwmtachmain.c-
pwmtach-6.1.0.0.0-src/data/pwmtachmain.c-static int
pwmtach-6.1.0.0.0-src/data/pwmtachmain.c-configure_fanmap_table (struct pwmtach_dev* pdev, pwmtach_data_t* in_data)
pwmtach-6.1.0.0.0-src/data/pwmtachmain.c-{
pwmtach-6.1.0.0.0-src/data/pwmtachmain.c- int i=0;
pwmtach-6.1.0.0.0-src/data/pwmtachmain.c- struct fan_map_entry_t* fanmap_data = (struct fan_map_entry_t*) (in_data->fanmap_dataptr);
pwmtach-6.1.0.0.0-src/data/pwmtachmain.c- pdev->ppwmtach_hal->num_fans = in_data->num_fans;
--
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-unsigned char get_fantach_control_status (unsigned char pwm_num);
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-void enable_all_fantach_control (void);
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-void disable_all_fantach_control (void);
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-void enable_counterresolution (unsigned char pwm_num);
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-unsigned char disable_counterresolution (unsigned char pwm_num);
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c:unsigned int get_current_speed (unsigned char tachnum);
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-void set_prescale (unsigned char pwm_num, unsigned char prescale_value);
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-unsigned int get_prescale (unsigned char pwm_num);
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-void set_dutycycle (unsigned char pwm_num, int dutycycle_value);
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-unsigned int get_dutycycle (unsigned char pwm_num);
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-void set_counterresolution (unsigned char pwm_num, unsigned int counterres_value);
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-unsigned int get_counterresolution (unsigned char pwm_num);
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c:int trigger_read_fanspeed (unsigned char tachnum);
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c:int can_read_fanspeed (unsigned char tachnum);
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-unsigned int get_num_of_pwms (void);
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-unsigned int get_num_of_tachs (void);
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-unsigned int get_pwm_clk (void);
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-int set_tach_property (unsigned char property, unsigned char tach_num, unsigned int value);
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-unsigned int get_tach_property (unsigned char property, unsigned char tach_num);
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-int set_pwm_property (unsigned char property, unsigned char pwm_num, unsigned int value);
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-unsigned int get_pwm_property (unsigned char property, unsigned char pwm_num);
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-int clear_tach_error(unsigned char tach_num);
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-int clear_pwm_errors (void);
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-
--
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- disable_fantach_control,
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- enable_all_fantach_control,
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- disable_all_fantach_control,
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- enable_counterresolution,
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- disable_counterresolution,
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c: get_current_speed,
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- set_prescale,
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- get_prescale,
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- set_dutycycle,
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- set_counterresolution,
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- get_counterresolution,
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c: trigger_read_fanspeed,
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c: can_read_fanspeed,
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- get_num_of_pwms,
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- get_num_of_tachs,
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- get_pwm_clk,
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- get_dutycycle,
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- get_pwm_control_status,
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- get_fantach_control_status,
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- set_tach_property,
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- get_tach_property,
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- set_pwm_property,
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- get_pwm_property,
--
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- break;
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- }
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- return ((60 * clockFactor)/rawVal);
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-}
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c:unsigned int get_current_speed(unsigned char tachnum)
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-{
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c: volatile uint8_t CurrentSpeed = 0;
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- unsigned char bitOffset = 0;
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- int rawdata = 0;
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- uint32_t RegAddr = VPWMTACH_REMAP_ADDR + FMSPR0OFF;
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- rawdata = (tachnum & 0x80) ? 1 : 0;
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- tachnum &= 0x7f;
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- bitOffset = tachnum;
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-#if defined SOC_PILOT_III || defined SOC_PILOT_IV
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- if(tachnum > MAXFTMCHN_PILOT)
--
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- bitOffset = tachnum - NOFEXTFTMCHN;
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- RegAddr += PWMTACHEXTOFF;
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- }
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-#endif
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c: CurrentSpeed = pwmtach_read_reg(RegAddr + (bitOffset * 0x0C));
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- if (rawdata)
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c: return CurrentSpeed;
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c: return callRPM(tachnum, CurrentSpeed);
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-}
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-void set_prescale (unsigned char pwm_num, unsigned char prescale_value)
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-{
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- uint8_t prev_pwm_ctrl_state = 0;
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- unsigned char bitOffset = 0;
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- uint32_t RegAddr = VPWMTACH_REMAP_ADDR + PWPSR0OFF;
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- uint8_t RegVal;
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-
--
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-#endif
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- return pwmtach_read_reg(RegAddr + (bitOffset * 4));
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-}
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c:int trigger_read_fanspeed (unsigned char tachnum)
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-{
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- //unsigned char bitOffset = 0;
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- //tachnum &= 0x7F; //ignore RAW-bit
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- //
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- //bitOffset = tachnum;
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- return 0;
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-}
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c:int can_read_fanspeed(unsigned char tachnum)
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-{
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- volatile uint8_t ctrl_stat_val;
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- uint32_t RegAddr = VPWMTACH_REMAP_ADDR + FMCSR0OFF;
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- unsigned char bitOffset = 0;
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- tachnum &= 0x7F; //ignore RAW-bit
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- bitOffset = tachnum;
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-#if defined SOC_PILOT_III || defined SOC_PILOT_IV
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- if(tachnum > MAXFTMCHN_PILOT)
--
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-#endif
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- ctrl_stat_val = pwmtach_read_reg(RegAddr + (bitOffset * 0x0C));
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- /* Clearing the bits - One Sec Error, Overflow and Over Threshold - if set,
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c: because only when cleared we can read the fan speed */
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- if ((ctrl_stat_val & 0x0E) != 0)
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- {
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- pwmtach_write_reg (ctrl_stat_val & 0xFE, RegAddr + (bitOffset * 0x0C));
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- }
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c: if (ctrl_stat_val & SPEED_READY)
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- return 1;
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- return 0;
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-}
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-unsigned int get_num_of_pwms (void)
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-{
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- return NUMPWM;
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-}
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-
--
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-unsigned int get_tach_overflow (unsigned char tach_num)
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-{
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- return get_tach_fmcsr_bit (tach_num, 2);
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-}
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c:unsigned int get_tach_speedready (unsigned char tach_num)
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-{
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- return get_tach_fmcsr_bit (tach_num, 0);
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-}
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-/*
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- * @fn set_pwm_tach_property
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- * @brief Generic function to set a property of either pwm or tach.
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- * @param[in] property - Property to set and this can be different for different platform.
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- * @param[in] pwm_tach_num - pwm number or tach number according to property.
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- * @param[in] value - appropriate value to set
--
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- * PWM TACH PROPERTY
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-#define TACH_FILTERSELECT 0x01
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-#define TACH_CLOCKSELECT 0x02
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-#define TACH_ERROR 0x03
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-#define TACH_OVERFLOW 0x04
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c:#define TACH_SPEEDREADY 0x05
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-#define PWM_DIVISION_128_64 0x06
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-#define PWM_CLOCKSELECT 0x07
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-#define PWM_PRESCALEVALUE 0x08
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-#define PWM_COUNTERRESOLUTIONVALUE 0x09
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-*/
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-int set_pwm_tach_property (unsigned char property, unsigned char pwm_tach_num, unsigned int value)
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-{
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- switch (property)
--
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- case TACH_CLOCKSELECT:
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- /* This takes only 2 bits */
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- return set_tach_clockselect (pwm_tach_num, value & 0x03);
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- case TACH_ERROR:
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- case TACH_OVERFLOW:
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c: case TACH_SPEEDREADY:
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- // Currently not supported...
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- return -1;
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- break;
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- case PWM_DIVISION_128_64:
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- return set_pwm_division (pwm_tach_num, value & 0x01);
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- break;
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- case PWM_CLOCKSELECT:
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- return set_pwm_clockselect (pwm_tach_num, value & 0x01);
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- case PWM_PRESCALEVALUE:
--
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- break;
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- case TACH_ERROR:
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- return get_tach_error (pwm_tach_num);
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- case TACH_OVERFLOW:
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- return get_tach_overflow (pwm_tach_num);
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c: case TACH_SPEEDREADY:
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c: return get_tach_speedready (pwm_tach_num);
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- case PWM_DIVISION_128_64:
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- case PWM_CLOCKSELECT:
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- case PWM_PRESCALEVALUE:
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- case PWM_COUNTERRESOLUTIONVALUE:
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- // Currently not supported...
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- default:
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- return 0xFFFFFFFF;
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- }
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c- return 0;
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtachmain_hw.c-}
--
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtach_hw.h-#define FILTER_DISABLE 1<<5
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtach_hw.h-#define INTERRUPT_ENABLE 1<<4
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtach_hw.h-#define FTIN_TOGGLE_ERR 1<<3
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtach_hw.h-#define OVERFLOW_ERR 1<<2
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtach_hw.h-#define OVERTHRESHOLD_ERR 1<<1
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtach_hw.h:#define SPEED_READY 1<<0
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtach_hw.h-
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtach_hw.h-#define CLK_FREQ_500HZ (500)
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtach_hw.h-#define CLK_FREQ_2KHZ (2*1000)
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtach_hw.h-#define CLK_FREQ_4KHZ (4*1000)
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtach_hw.h-#define CLK_FREQ_8KHZ (8*1000)
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtach_hw.h-#define CLK_FREQ_16KHZ (16*1000)
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtach_hw.h-#define CLK_FREQ_200KHZ (200*1000)
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtach_hw.h-#define CLK_FREQ_8_3_MHZ (8333*1000)
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtach_hw.h-
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtach_hw.h-
--
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtach_hw_prop.h-/* PWM TACH PROPERTY */
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtach_hw_prop.h-#define TACH_FILTERSELECT 0x01
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtach_hw_prop.h-#define TACH_CLOCKSELECT 0x02
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtach_hw_prop.h-#define TACH_ERROR 0x03
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtach_hw_prop.h-#define TACH_OVERFLOW 0x04
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtach_hw_prop.h:#define TACH_SPEEDREADY 0x05
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtach_hw_prop.h-
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtach_hw_prop.h-#define PWM_DIVISION_128_64 0x06
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtach_hw_prop.h-#define PWM_CLOCKSELECT 0x07
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtach_hw_prop.h-#define PWM_PRESCALEVALUE 0x08
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtach_hw_prop.h-#define PWM_COUNTERRESOLUTIONVALUE 0x09
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtach_hw_prop.h-
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtach_hw_prop.h-/* ******************** */
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtach_hw_prop.h-
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtach_hw_prop.h-#endif
pwmtach_hw-6.2.0.0.0-ARM-PILOT-src/data/pwmtach_hw_prop.h-