Я пытаюсь добавить условный оператор в некоторый код для каждого процессора, но я не уверен, почему он не будет компилироваться. Вот неизмененный код:
static struct i2c_board_info ccwmx51_i2c_devices[] __initdata = {
{
// Use erdigitemp2 driver for device id 0x48 (digital temperature sensor)
I2C_BOARD_INFO("erdigitemp2", 0x48)
},
{
// Use erdigitemp2 driver for device id 0x4c (digital temperature sensor)
I2C_BOARD_INFO("erdigitemp2", 0x4c)
},
{
// Use tvp5150 driver for device id 0x5c (camera decoder)
I2C_BOARD_INFO("tvp5150tj", 0xb8 >> 1)
},
#if defined(CONFIG_TJTKMJ_LSM303DLHC)
{
// STMICROELECTRONICS LSM303DLHC e-compass
// accelerometer
I2C_BOARD_INFO("lsm303dlhc_acc", 0x19)
},
{
// magnetometer
I2C_BOARD_INFO("lsm303dlhc_mag", 0x1e)
},
#endif
#if defined(CONFIG_INPUT_MMA7455L) || defined(CONFIG_INPUT_MMA7455L_MODULE)
{
I2C_BOARD_INFO("mma7455l", 0x1d),
.irq = IOMUX_TO_IRQ(MX51_PIN_GPIO1_7),
},
#endif
#if defined(CONFIG_SND_SOC_IMX_CCWMX51_WM8753) || defined(CONFIG_SND_SOC_IMX_CCWMX51_WM8753_MODULE)
{
I2C_BOARD_INFO("wm8753", 0x1A),
},
#endif
#if defined (CONFIG_MXC_CAMERA_MICRON111_1) || defined(CONFIG_MXC_CAMERA_MICRON111_1_MODULE)
{
I2C_BOARD_INFO("mt9v111_1", 0xB8>>1),
},
#endif
#if defined (CONFIG_MXC_CAMERA_MICRON111_2) || defined(CONFIG_MXC_CAMERA_MICRON111_2_MODULE)
{
I2C_BOARD_INFO("mt9v111_2", 0x90>>1),
},
#endif
};
и мои изменения - это простое утверждение if:
if (hardware_id() == 0) {
#if defined(CONFIG_SND_SOC_IMX_CCWMX51_WM8753) || defined(CONFIG_SND_SOC_IMX_CCWMX51_WM8753_MODULE)
{
I2C_BOARD_INFO("wm8753", 0x1A),
},
#endif
}
Ошибка компилятора:
ошибка: ожидаемое выражение перед «если»