Loading src/arch/arm/boot/dts/elphel393_1_mt9p006.dts +2 −0 Original line number Original line Diff line number Diff line Loading @@ -181,6 +181,8 @@ elphel393_pwr,pinstrapped_oven= <1>; elphel393_pwr,pinstrapped_oven= <1>; elphel393_pwr,vcc_sens01_mv= <2800>; /* set sensor intreface voltage to 2.8V */ elphel393_pwr,vcc_sens01_mv= <2800>; /* set sensor intreface voltage to 2.8V */ elphel393_pwr,channels_enable= "vp5"; elphel393_pwr,channels_enable= "vp5"; /* high byte - enable bits, low byte - value */ elphel393_pwr,10389-init-value= <0x100>; /* elphel393_pwr,channels_enable= "vcc_sens01 vp33sens01"; */ /* elphel393_pwr,channels_enable= "vcc_sens01 vp33sens01"; */ } ; } ; Loading src/arch/arm/boot/dts/elphel393_4_mt9p006.dts +2 −0 Original line number Original line Diff line number Diff line Loading @@ -181,6 +181,8 @@ elphel393_pwr,pinstrapped_oven= <1>; elphel393_pwr,pinstrapped_oven= <1>; elphel393_pwr,vcc_sens01_mv= <2800>; /* set sensor intreface voltage to 2.8V */ elphel393_pwr,vcc_sens01_mv= <2800>; /* set sensor intreface voltage to 2.8V */ elphel393_pwr,channels_enable= "vp5"; elphel393_pwr,channels_enable= "vp5"; /* high byte - enable bits, low byte - value */ elphel393_pwr,10389-init-value= <0x100>; /* elphel393_pwr,channels_enable= "vcc_sens01 vp33sens01"; */ /* elphel393_pwr,channels_enable= "vcc_sens01 vp33sens01"; */ } ; } ; Loading src/arch/arm/boot/dts/elphel393_eyesis.dts +2 −0 Original line number Original line Diff line number Diff line Loading @@ -181,6 +181,8 @@ elphel393_pwr,pinstrapped_oven= <1>; elphel393_pwr,pinstrapped_oven= <1>; elphel393_pwr,vcc_sens01_mv= <2800>; /* set sensor intreface voltage to 2.8V */ elphel393_pwr,vcc_sens01_mv= <2800>; /* set sensor intreface voltage to 2.8V */ elphel393_pwr,channels_enable= "vp5"; elphel393_pwr,channels_enable= "vp5"; /* high byte - enable bits, low byte - value */ elphel393_pwr,10389-init-value= <0x100>; /* elphel393_pwr,channels_enable= "vcc_sens01 vp33sens01"; */ /* elphel393_pwr,channels_enable= "vcc_sens01 vp33sens01"; */ } ; } ; Loading src/drivers/elphel/elphel393-pwr.c +17 −5 Original line number Original line Diff line number Diff line Loading @@ -1172,6 +1172,22 @@ static void elphel393_pwr_init_of(struct platform_device *pdev) dev_info(&pdev->dev,"elphel393_pwr configuration done\n"); dev_info(&pdev->dev,"elphel393_pwr configuration done\n"); } } static void gpio_10389_initialize(struct platform_device *pdev){ const __be32 * config_data; int len, init_value; struct device_node *node = pdev->dev.of_node; config_data = of_get_property(node, "elphel393_pwr,10389-init-value", &len); if (config_data && (len>0)){ init_value = be32_to_cpup(&config_data[0]); pr_debug("Found elphel393_pwr,10389-init-value=<%d>\n",init_value); //reset for the gpios that are 1's on power on but 0's in the driver which cannot read them gpio_10389_ctrl(&pdev->dev, (init_value & 0xf00) | 0xff); gpio_10389_ctrl(&pdev->dev, init_value); } } static int device_by_i2c_addr_match(struct device *dev, void *data) static int device_by_i2c_addr_match(struct device *dev, void *data) { { struct i2c_client *client = to_i2c_client(dev); struct i2c_client *client = to_i2c_client(dev); Loading Loading @@ -1306,13 +1322,9 @@ static int elphel393_pwr_probe(struct platform_device *pdev) */ */ pm_power_off = shutdown; pm_power_off = shutdown; /* if (base[2]!=NULL){ if (base[2]!=NULL){ //turn off PCA9571 gpio_10389_initialize(pdev); gpio_10389_ctrl(&pdev->dev, 0xf0f); gpio_10389_ctrl(&pdev->dev, 0xf00); } } */ return 0; return 0; } } Loading Loading
src/arch/arm/boot/dts/elphel393_1_mt9p006.dts +2 −0 Original line number Original line Diff line number Diff line Loading @@ -181,6 +181,8 @@ elphel393_pwr,pinstrapped_oven= <1>; elphel393_pwr,pinstrapped_oven= <1>; elphel393_pwr,vcc_sens01_mv= <2800>; /* set sensor intreface voltage to 2.8V */ elphel393_pwr,vcc_sens01_mv= <2800>; /* set sensor intreface voltage to 2.8V */ elphel393_pwr,channels_enable= "vp5"; elphel393_pwr,channels_enable= "vp5"; /* high byte - enable bits, low byte - value */ elphel393_pwr,10389-init-value= <0x100>; /* elphel393_pwr,channels_enable= "vcc_sens01 vp33sens01"; */ /* elphel393_pwr,channels_enable= "vcc_sens01 vp33sens01"; */ } ; } ; Loading
src/arch/arm/boot/dts/elphel393_4_mt9p006.dts +2 −0 Original line number Original line Diff line number Diff line Loading @@ -181,6 +181,8 @@ elphel393_pwr,pinstrapped_oven= <1>; elphel393_pwr,pinstrapped_oven= <1>; elphel393_pwr,vcc_sens01_mv= <2800>; /* set sensor intreface voltage to 2.8V */ elphel393_pwr,vcc_sens01_mv= <2800>; /* set sensor intreface voltage to 2.8V */ elphel393_pwr,channels_enable= "vp5"; elphel393_pwr,channels_enable= "vp5"; /* high byte - enable bits, low byte - value */ elphel393_pwr,10389-init-value= <0x100>; /* elphel393_pwr,channels_enable= "vcc_sens01 vp33sens01"; */ /* elphel393_pwr,channels_enable= "vcc_sens01 vp33sens01"; */ } ; } ; Loading
src/arch/arm/boot/dts/elphel393_eyesis.dts +2 −0 Original line number Original line Diff line number Diff line Loading @@ -181,6 +181,8 @@ elphel393_pwr,pinstrapped_oven= <1>; elphel393_pwr,pinstrapped_oven= <1>; elphel393_pwr,vcc_sens01_mv= <2800>; /* set sensor intreface voltage to 2.8V */ elphel393_pwr,vcc_sens01_mv= <2800>; /* set sensor intreface voltage to 2.8V */ elphel393_pwr,channels_enable= "vp5"; elphel393_pwr,channels_enable= "vp5"; /* high byte - enable bits, low byte - value */ elphel393_pwr,10389-init-value= <0x100>; /* elphel393_pwr,channels_enable= "vcc_sens01 vp33sens01"; */ /* elphel393_pwr,channels_enable= "vcc_sens01 vp33sens01"; */ } ; } ; Loading
src/drivers/elphel/elphel393-pwr.c +17 −5 Original line number Original line Diff line number Diff line Loading @@ -1172,6 +1172,22 @@ static void elphel393_pwr_init_of(struct platform_device *pdev) dev_info(&pdev->dev,"elphel393_pwr configuration done\n"); dev_info(&pdev->dev,"elphel393_pwr configuration done\n"); } } static void gpio_10389_initialize(struct platform_device *pdev){ const __be32 * config_data; int len, init_value; struct device_node *node = pdev->dev.of_node; config_data = of_get_property(node, "elphel393_pwr,10389-init-value", &len); if (config_data && (len>0)){ init_value = be32_to_cpup(&config_data[0]); pr_debug("Found elphel393_pwr,10389-init-value=<%d>\n",init_value); //reset for the gpios that are 1's on power on but 0's in the driver which cannot read them gpio_10389_ctrl(&pdev->dev, (init_value & 0xf00) | 0xff); gpio_10389_ctrl(&pdev->dev, init_value); } } static int device_by_i2c_addr_match(struct device *dev, void *data) static int device_by_i2c_addr_match(struct device *dev, void *data) { { struct i2c_client *client = to_i2c_client(dev); struct i2c_client *client = to_i2c_client(dev); Loading Loading @@ -1306,13 +1322,9 @@ static int elphel393_pwr_probe(struct platform_device *pdev) */ */ pm_power_off = shutdown; pm_power_off = shutdown; /* if (base[2]!=NULL){ if (base[2]!=NULL){ //turn off PCA9571 gpio_10389_initialize(pdev); gpio_10389_ctrl(&pdev->dev, 0xf0f); gpio_10389_ctrl(&pdev->dev, 0xf00); } } */ return 0; return 0; } } Loading