调试MCP3421
I2C 通道2
#include <linux/module.h>
#include <linux/platform_device.h>
#include <linux/delay.h>
#include <linux/string.h>
#include <linux/ctype.h>
#include <linux/kthread.h>
#include <linux/input.h>
#include <linux/miscdevice.h>
#include <linux/i2c.h>
#include <asm/uaccess.h>
#include <linux/of_gpio.h>
#include <linux/interrupt.h>
#include <linux/gpio.h>
#include <linux/of.h>
#include <linux/of_address.h>
#include <linux/of_irq.h>
#include <linux/wait.h>
struct i2c_client *mcp3421_i2c_client;
#define ADC_LOG pr_debug
#define MCP3421_I2C_MAX_LOOP 3
#ifndef BOOL
typedef unsigned char BOOL;
#endif
static BOOL mcp3421_i2c_write_reg_len(unsigned char data)
{
BOOL ack=0;
unsigned char ret;
unsigned char wrbuf[2];
wrbuf[0] = data;
ret = i2c_master_send(mcp3421_i2c_client, wrbuf, 1);
if (ret != 1)
{
ADC_LOG("leo_code i2c_master_send failed %s \r\n", __func__);
//dev_err(&mcp3421_i2c_client->dev,"%s: i2c_master_recv() failed, ret=%d\n",__func__, ret);
&