static int broadcast_Isdb_i2c_probe(struct i2c_client *client, const struct i2c_device_id *id) { int rc = 0; int addr; TcpalPrintLog("broadcast_Isdb_i2c_probe client:0x%X\n", (unsigned int)client); if(!i2c_check_functionality(client->adapter, I2C_FUNC_I2C)) { TcpalPrintErr("need I2C_FUNC_I2C\n"); return -ENODEV; } /* taew00k.kang added for Device Tree Structure 2013-06-04 [start] */ addr = client->addr; //Slave Addr pr_err("[1seg] i2c Slaveaddr [%x] \n", addr); /* taew00k.kang added for Device Tree Structure 2013-06-04 [end] */ TcpalCreateSemaphore(&Tcc353xDrvSem, (I08S *) "Tcc353xDriverControlSemaphore", 1); IsdbCtrlInfo.pclient = client; //i2c_set_clientdata(client, (void*)&IsdbCtrlInfo.pclient); TchalInit(); #ifndef _NOT_USE_WAKE_LOCK_ wake_lock_init(&IsdbCtrlInfo.wake_lock, WAKE_LOCK_SUSPEND, dev_name(&client->dev)); #endif return rc; }
static int broadcast_Isdb_spi_probe(struct spi_device *spi_dev) { int rc = 0; xo_handle_tcc = msm_xo_get(MSM_XO_TCXO_A0, id); if(IS_ERR(xo_handle_tcc)) { pr_err("Failed to get MSM_XO_TCXO_A2 handle for TDMB (%ld)\n", PTR_ERR(xo_handle_tcc)); return FALSE; } TcpalCreateSemaphore(&Tcc353xDrvSem, (I08S *) "Tcc353xDriverControlSemaphore", 1); TcpalCreateSemaphore(&Tcc353xStreamSema, (I08S *) "StreamSemaphore", 1); TcpalCreateSemaphore(&Tcc353xLnaControlSema, (I08S *) "LnaControlSemaphore", 1); spi_dev->mode = SPI_MODE_0; spi_dev->bits_per_word = 8; spi_dev->max_speed_hz = 32*1000*1000; /* */ rc = spi_setup(spi_dev); IsdbCtrlInfo.spi_dev = spi_dev; IsdbCtrlInfo.pwr_state = 0; TcpalPrintStatus((I08S *)"spi : %p\n", spi_dev); TchalInit(); TcpalRegisterIrqHandler(); TcpalIrqDisable(); #ifndef _NOT_USE_WAKE_LOCK_ wake_lock_init(&IsdbCtrlInfo.wake_lock, WAKE_LOCK_SUSPEND, dev_name(&spi_dev->dev)); #endif /* */ tcc353x_lnaControl_start(); return rc; }
static int broadcast_Isdb_i2c_probe(struct i2c_client *client, const struct i2c_device_id *id) { int rc = 0; int addr; TcpalPrintLog("broadcast_Isdb_i2c_probe client:0x%X\n", (unsigned int)client); if(!i2c_check_functionality(client->adapter, I2C_FUNC_I2C)) { TcpalPrintErr("need I2C_FUNC_I2C\n"); return -ENODEV; } /* */ addr = client->addr; // pr_err("[1seg] i2c Slaveaddr [%x] \n", addr); /* */ TcpalCreateSemaphore(&Tcc353xDrvSem, (I08S *) "Tcc353xDriverControlSemaphore", 1); TcpalCreateSemaphore(&Tcc353xStreamSema, (I08S *) "StreamSemaphore", 1); TcpalCreateSemaphore(&Tcc353xLnaControlSema, (I08S *) "LnaControlSemaphore", 1); IsdbCtrlInfo.pclient = client; // TchalInit(); TcpalRegisterIrqHandler(); TcpalIrqDisable(); #ifndef _NOT_USE_WAKE_LOCK_ wake_lock_init(&IsdbCtrlInfo.wake_lock, WAKE_LOCK_SUSPEND, dev_name(&client->dev)); #endif /* */ tcc353x_lnaControl_start(); return rc; }