summaryrefslogtreecommitdiff
path: root/wiki/GMSL_Camera_Setup.wiki
diff options
context:
space:
mode:
Diffstat (limited to 'wiki/GMSL_Camera_Setup.wiki')
-rw-r--r--wiki/GMSL_Camera_Setup.wiki76
1 files changed, 76 insertions, 0 deletions
diff --git a/wiki/GMSL_Camera_Setup.wiki b/wiki/GMSL_Camera_Setup.wiki
new file mode 100644
index 0000000..b13b5d2
--- /dev/null
+++ b/wiki/GMSL_Camera_Setup.wiki
@@ -0,0 +1,76 @@
+h1. GMSL Camera Setup
+
+h2. Details on system configuration
+
+[[GMSL Configuration]]
+
+h2. Open issues and testing
+
+[[GMSL Cameras Open Issues and testing]]
+
+h2. Software support
+
+h3. External Patches:
+
+h4. Cogent Patches:
+
+https://github.com/CogentEmbedded/meta-rcar/blob/v2.23.0/meta-rcar-gen3-adas/recipes-kernel/linux/linux-renesas/0030-Gen3-LVDS-cameras.patch
+
+h4. NXP Patches:
+
+https://community.nxp.com/docs/DOC-158531
+
+h3. Linux kernel
+
+A base branch is available at
+
+* git://jmondi.org/linux-gen3#gmsl/base
+
+The base branch includes VIN and mux support from Niklas' branch git://git.ragnatech.se/linux#vin/mux+gmsl
+with the ""max9286: More cleanups and fixes" series from Laurent on top.
+vin/mux+gmsl contains the GMSL link stabilization series from Niklas: [PATCH 0/4] GMSL link stabilization.
+
+On top of this branch, some developers branch are available:
+
+* git://jmondi.org/linux-gen3#gmsl/devel/jacopo
+ Fixes sent out as "[PATCH v2 0/5] v4l: max9286: Additional fixes" + sensor configuration + link status monitoring
+
+* git://jmondi.org/linux-gen3#gmsl/devel/jacopo-i2c-bcast
+ gmsl/devel/jacopo branch with on top implementation of broadcast transmission of SEREN command to max9271 serializers
+
+h3. Config
+
+Configuration file for Linux-v4.13-rc5 available here: ("linux-v4.13-max9286.config":../../wiki/GMSL_Camera_Setup/linux-v4.13-max9286.config)
+
+h1. I2C configuration
+
+* The MAX9271 does appear to expose all traffic received across the GMSL link on it's I2C bus pins.
+* There does not appear to be any cross-talk traffic currently.
+* 'Bit-errors' have been seen ... most evidently when an address write incorrectly wrote to register 0x00 instead and 'forcefully' changed the MAX9271 address. All following writes were then 'NACKed'.
+* This shows that auto-ack from the MAX9286 (which was enabled at that time) *does not* traverse the GMSL link.
+* If the delays between bus configuration writes are not long enough - the following write/read can be corrupted with bit errors, or not be present on the bus at all.
+** This shows that the delay after configuration writes must be conservative, and therefore at least 5 ms (recommended by the MAX9286 data sheet) rather than 3 ms or less (as suggested by the MAX9271 DS.
+
+
+h1. I2C address space allocations
+
+h2. The GMSL camera set up uses the I2C-4 bus on the RCar platform. This has the following pre-existing address assignments:
+
+| Address | Physical | Part | SCL | SDA | Description |
+| | CN29 | EXIO-Connector C | 51 | 53 | MIPI CSI-2 Zebax Connector |
+| 0x20 | U6 | PCA9654EDTR2G | 14 | 15 | 8 bit IO Expander |
+| 0x68 | U11 | 9FGV0841AKILF | 10 | 11 | Salvator-X Page 11 : 8 Output PCIe Clock Gen |
+| 0x6a | U61 | 5P49V5923A | 9 | 8 | Salvator-X Page 3 : Versaclock5 |
+| 0x70 | U31 | ADV7482WBBCZ | J8 | K8 | Salvator-X Page 19 : ADV7482 HDMI Receiver |
+| 0x7C | U58 | MAX9611AUB+ | 6 | 7 | Salvator-X Page 25 : Current Sense Amplifier with ADC |
+| 0x7F | U59 | MAX9611AUB+ | 6 | 7 | Salvator-X Page 25 : Current Sense Amplifier with ADC |
+
+h2. Maxim Expansion Board
+
+| Address | Physical | Part | SCL | SDA | Description |
+| 0x4c | U1 | MAX9286GTN/V+ | 8 | 7 | MAX9286 GMSL De-serialiser (MAX9286 A) |
+| 0x6c | U3 | MAX9286GTN/V+ | 8 | 7 | MAX9286 GMSL De-serialiser (MAX9286 A) |
+| | | | | | |
+| 0x30 | RDACM20 | OV10635 Default | | | OV10635 Default address |
+| 0x40 | RDACM20 | MAX9271 Default | | | MAX9271 Default address |
+| 0x50 | RDACM20 | Microcontroller | | | Microcontroller (MCU) Default address |