Example #1
0
void ril_request_proxi(int state)
{
#ifdef CONFIG_PROX
	//should call proximity function
	RIL_INFO("state = %d\n", state);
	if (state) {
		prox_lds6202_enable();
	} else {
		prox_lds6202_disable();
	}
#else
	RIL_INFO("proximity is not configured\n");
#endif
}
Example #2
0
static void sim_irq_work(void)
{
	sim_state = gpio_get_value(GPIO_SIM_PIN);

	RIL_INFO("sim state = %d\n", sim_state);
	switch_set_state(&sim_sdev, sim_state);
}
Example #3
0
static void store_gpio(const char *buf, int gpio, char *name)
{
    int state = 0;
    sscanf(buf, "%d", &state);
    gpio_set_value(gpio, state);
    RIL_INFO("Set %s state to %d\n", name, state);
}
Example #4
0
static void ril_shutdown(struct platform_device *pdev)
{
    RIL_INFO("RIL Shutdown\n");

    gpio_set_value(GPIO_3G_Reset_PIN, 0);

    mdelay(10);

    gpio_set_value(GPIO_3G_Power_PIN, 0);
}
Example #5
0
int init_sim_hot_plug(void)
{
	int rc = 0;
	int sim_irq = gpio_to_irq(GPIO_SIM_PIN);
	sim_state = gpio_get_value(GPIO_SIM_PIN);

	RIL_INFO("GPIO = %d , irq = %d, state = %d\n", GPIO_SIM_PIN, sim_irq, sim_state);

	rc = request_irq(sim_irq, sim_interrupt_handler,
			IRQF_TRIGGER_FALLING|IRQF_TRIGGER_RISING, NAME_SIM, NULL);
	if (rc < 0) {
		RIL_ERR("Could not register for %s interrupt, irq = %d, rc = %d\n", NAME_SIM, sim_irq, rc);
		rc = -EIO;
		goto failed;
	}

	/* init work queue */
	INIT_DELAYED_WORK(&workq, sim_irq_work);

	/* register switch class*/
	sim_sdev.name = NAME_SIM;
	sim_sdev.print_name = print_sim_name;
	sim_sdev.print_state = print_sim_state;
	rc = switch_dev_register(&sim_sdev);
	/*
	 * Because switch_dev_register will initiate sdev.state to 0,
	 * sdev.state will be initiated after switch_dev_register.
	 */
	sim_sdev.state = sim_state;

	if (rc < 0) {
		RIL_ERR("Could not register switch device, rc = %d\n", rc);
		goto failed;
	}

	RIL_INFO("request irq and switch class successfully\n");
	return 0;

failed:
	gpio_free(GPIO_SIM_PIN);
	return rc;
}
Example #6
0
void proxi_request_ril(int state)
{
	//be called by proximity
	RIL_INFO("state = %d\n", state);

	if (state != 0)
		state = 1;

	proxi_in = state;

	switch_set_state(&proxi_sdev, proxi_in);
}
Example #7
0
//**** sysfs callback functions
static int store_gpio(size_t count, const char *buf, int gpio, char *gpio_name)
{
	int enable;

	if (sscanf(buf, "%u", &enable) != 1)
		return -EINVAL;

	if ((enable != 1) && (enable != 0))
		return -EINVAL;

	gpio_set_value(gpio, enable);
	RIL_INFO("Set %s to %d\n", gpio_name, enable);
	return count;
}
Example #8
0
int init_proximity(void)
{
	int rc = 0;
	/* register switch class*/
	proxi_sdev.name = "proximity";
	proxi_sdev.print_name = print_proxi_name;
	proxi_sdev.print_state = print_proxi_state;
	rc = switch_dev_register(&proxi_sdev);

	if (rc < 0) {
		RIL_ERR("Could not register switch device, rc = %d\n", rc);
		goto failed;
	}

	RIL_INFO("register switch class successfully\n");
	return 0;

failed:
	return rc;
}
Example #9
0
static int ril_probe(struct platform_device *pdev)
{
    RIL_INFO("RIL Probe\n");
    return 0;
}