[T-Mobile myTouch 4G Slide] infernix:
Same here.

Upgraded from r8 exp to r9 exp, front facing camera broke. When I push the change camera icon, it actually flips the back camera around 180 degrees.

Both cameras are accessible:

root@android:/data/dropbear # cat /sys/android_camera/sensor

sony imx105 8M

root@android:/data/dropbear # cat /sys/android_camera2/sensor

Micron mt9v113 VGA CMOS

I've done some digging, and I think mm-camera is to blame. It's always picking up sensor 0. First start of camera app:

V/CameraHolder( 2770): open camera 0
I/CameraService( 168): Opening camera 0
I/QualcommCameraHardwareZSL( 168): openCameraHardware: call createInstance cameraId 0
I/QualcommCameraHardwareZSL( 168): createInstance: E
D/CameraPP( 168): CameraPP::CameraPP()
D/SDO_PP ( 168): SDO_PP::SDO_PP()
I/OlaEngine( 168): [Ola_Engine_Create:79] engine build info [ name ] : htc
I/OlaEngine( 168): [Ola_Engine_Create:83] engine build info [ date ] : 2011-07-28 13:07:31
I/OlaEngine( 168): [Ola_Engine_Create:87] engine build info [ version ] : __bulid_revision_223__
D/CameraFace_OLA( 168): create OlaEngine
I/FD ( 168): [Ola_FaceDetector_Create:135] create num : 1
D/CameraFace_OLA( 168): create Ola FD
V/Olaworks( 168): [Ola_BeautyShotEngine_Create] prr(0x00ea24a0)
D/CameraFace_OLA( 168): create Ola BS
D/CameraFace_OLA( 168): create Ola SD
D/CameraFace_OLA( 168): create Ola BD
D/CameraFace( 168): alloc face_t 0xf21510 num 10
I/QualcommCameraHardwareZSL( 168): QualcommCameraHardware constructor E
D/com.jb@Mms( 2698): [288] fillFromCursor: recipientIds=34
I/QualcommCameraHardwareZSL( 168): 2D mode only
I/QualcommCameraHardwareZSL( 168): QualcommCameraHardware constructor EX
I/QualcommCameraHardwareZSL( 168): createInstance: created hardware=0xea9370
D/QualcommCameraHardwareZSL( 168): bool android::QualcommCameraHardware::startCamera() mCurrentTarget=4
I/mm-camera( 168): set sensor selection :0
D/mm-camera( 168): mm_camera_init, open FD: 13
D/mm-camera( 168): mm_camera_init close FD: 13, dyn_device_query 1
D/mm-camera( 168): mm_camera_exec open FD: 13
D/com.jb@Mms( 2698): [288] fillFromCursor: recipientIds=32
D/com.jb@Mms( 2698): [288] fillFromCursor: recipientIds=33
I/ ( 168): [AWB Calibration] from kernel: fuse_id: 0x0, 0x0, 0x4, 0x4452c
D/mm-camera( 168): sensor_load_chromatix: Sensor name: imx105 cnt=3
D/mm-camera( 168): sensor_load_chromatix:1789:chromatix library Name = libchromatix_imx105_preview.so
I/mm-camera-product( 168): get_lens_type() : lens_info=9547

Then when I switch the camera by pushing camera swap icon:

V/CameraHolder( 2770): open camera 1
I/CameraService( 168): Opening camera 1
I/QualcommCameraHardwareZSL( 168): openCameraHardware: call createInstance cameraId 1
I/QualcommCameraHardwareZSL( 168): createInstance: E
D/CameraPP( 168): CameraPP::CameraPP()
D/SDO_PP ( 168): SDO_PP::SDO_PP()
I/OlaEngine( 168): [Ola_Engine_Create:79] engine build info [ name ] : htc
I/OlaEngine( 168): [Ola_Engine_Create:83] engine build info [ date ] : 2011-07-28 13:07:31
I/OlaEngine( 168): [Ola_Engine_Create:87] engine build info [ version ] : __bulid_revision_223__
D/CameraFace_OLA( 168): create OlaEngine
I/FD ( 168): [Ola_FaceDetector_Create:135] create num : 1
D/CameraFace_OLA( 168): create Ola FD
V/Olaworks( 168): [Ola_BeautyShotEngine_Create] prr(0x00ea24a0)
D/CameraFace_OLA( 168): create Ola BS
D/CameraFace_OLA( 168): create Ola SD
D/CameraFace_OLA( 168): create Ola BD
D/CameraFace( 168): alloc face_t 0xf528e8 num 10
I/QualcommCameraHardwareZSL( 168): QualcommCameraHardware constructor E
I/QualcommCameraHardwareZSL( 168): 2D mode only
I/QualcommCameraHardwareZSL( 168): QualcommCameraHardware constructor EX
I/QualcommCameraHardwareZSL( 168): createInstance: created hardware=0xea9370
D/QualcommCameraHardwareZSL( 168): bool android::QualcommCameraHardware::startCamera() mCurrentTarget=4
I/mm-camera( 168): set sensor selection :0
D/mm-camera( 168): mm_camera_init, open FD: 13
D/mm-camera( 168): mm_camera_init close FD: 13, dyn_device_query 1
D/mm-camera( 168): mm_camera_exec open FD: 13
D/AK8975 ( 161): Compass CLOSE
I/ ( 168): [AWB Calibration] from kernel: fuse_id: 0x0, 0x0, 0x4, 0x4452c
D/mm-camera( 168): sensor_load_chromatix: Sensor name: imx105 cnt=3
D/mm-camera( 168): sensor_load_chromatix:1789:chromatix library Name = libchromatix_imx105_preview.so
I/mm-camera-product( 168): get_lens_type() : lens_info=9547

It could either be mm-camera being passed sensor 0 all the time, or it could be QualcommCameraHardwareZSL always doing "created hardware=0xea9370".

I had a look at the recent commits but I couldn't find anything out of the ordinary; someone who has worked with this camera stuff can probably pinpoint it.