summaryrefslogtreecommitdiff
path: root/arch/arm/mach-tegra/board-colibri_t30.c
AgeCommit message (Collapse)Author
2017-09-26ARM: mach-tegra: colibri_t30: integrate atmel mxt multitouch controllerColibri-T30_LXDE-Image_2.7b4-20171005Colibri-T20_LXDE-Image_2.7b4-20171005Apalis-T30_LXDE-Image_2.7b4-20171005Bhuvanchandra DV
Integrate Atmel MXT multitouch controller driver which is interfaced over I2C bus. The driver supports the 7" multitouch variant available from Logic Technologies. Signed-off-by: Bhuvanchandra DV <bhuvanchandra.dv@toradex.com> Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2017-09-20apalis/colibri_t20/t30: power i2c 100 khz limitationMarcel Ziswiler
At least the LM95245 temperature sensor is only supposed to be run at a speed of 100 KHz. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> Acked-by: Dominik Sliwa <dominik.sliwa@toradex.com>
2017-06-30colibri_t30: add warning message before reaching critical temperatureBhuvanchandra DV
Print log message before module (local) or SoC (remote) is reaching critical shutdown temperature nT_CRIT as the LM95245 temperature sensor's OVERT_N pin is directly connected to PMIC PWRDN. Signed-off-by: Bhuvanchandra DV <bhuvanchandra.dv@toradex.com> Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2017-06-30apalis/colibri_t30: clean-up thermal throttlingMarcel Ziswiler
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> Acked-by: Dominik Sliwa <dominik.sliwa@toradex.com>
2017-03-31colibri_t30: Register soc deviceBhuvanchandra DV
Register SOC device to expose the SoC UID information via soc_sys Signed-off-by: Bhuvanchandra DV <bhuvanchandra.dv@toradex.com> Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2016-06-22media: Epson S2D13P04 decoder support for Colibri T30Wojciech Bieganski
This commit adds support for Epson S2D13P04 (4-input analog video decoder with parallel interface) for Colibri T30. Currently the only supported standard is PAL-B/G/I/N and the output is arranged in 'merge mode' (4 input streams on one screen) Acked-by: Dominik Sliwa <dominik.sliwa@toradex.com>
2015-12-15colibri_t20/t30: add as0260 camera platform dataColibri_T30_LinuxImageV2.5Beta3_20151215Colibri_T20_LinuxImageV2.5Beta3_20151215Apalis_T30_LinuxImageV2.5Beta3_20151215Marcel Ziswiler
Add Aptina AS0260 camera platform data. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> Acked-by: Max Krummenacher <max.krummenacher@toradex.com>
2015-12-15apalis/colibri_t20/t30: clean-up board filesMarcel Ziswiler
Purely cosmetic clean-up of board files by fixing indentation, re-ordering camera platform data, splitting lines longer than 80 characters etc. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> Acked-by: Max Krummenacher <max.krummenacher@toradex.com>
2015-12-15colibri_t30: v4l2: adv7280 integrationBhuvanchandra DV
Integrate ADV7280 video decoder support. Signed-off-by: Bhuvanchandra DV <bhuvanchandra.dv@toradex.com> Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2015-08-31apalis/colibri_t30: Add comments about i2s pin muxing/operationMarcel Ziswiler
Add a comment about DAP FS pin mux requiring INPUT when operating as I2S slave. Add a comment about DAP SCLK requiring INPUT even when operating as I2S master. Add a comment about is_i2s_master in the platform data meaning T30 SoC is I2S master.
2014-12-18apalis/colibri_t30: usb: fix low-speed issue hackMarcel Ziswiler
Certain low-speed USB devices were not detected correctly when plugged into a running system.
2014-10-28apalis/colibri t30: fix audio hub lock-upMarcel Ziswiler
This patch fixes a clock related audio hub driver lock-up observed when booting with mainline U-Boot which we are in the process of migrating to now.
2014-07-25apalis/colibri t30: use hda hdmi audio and split sound initMarcel Ziswiler
Use HDA HDMI audio now on Colibri T30 as well allowing for up to 7.1 multi-channel playback. Split board sound initialisation between Apalis and Colibri T30 in order to distinguish better between default SPDIF being supported out-of-the-box on Apalis vs. this being an optional feature for the Colibri. Therefore remove SPDIF for the Colibri T30. While at it add csus clock required for vi_sensor camera master clock on Apalis T30 and clk_out_2/extern2 for Colibri T30, fix debug UART1 initialisation, get rid of spurious CONFIG_SND_USB enable and further clean-up both board platform data files.
2014-07-22apalis/colibri t20/t30: fix/introduce spi device controller dataMarcel Ziswiler
Fix (Colibri) resp. introduce (Apalis) SPI device controller data to properly use HW based chip select with one clock of setup and hold time each for both MCP2515 CAN controller(s) as well as spidev.
2014-07-21mmc: tegra: use 1.8V quirk only on affected instancesStefan Agner
The 1.8V quirk also affected the internal eMMC which disabled newer modes such as SDR50, SDR104 and DDR50. This in turn lead to an out of spec usage since the clock was still 50MHz. By creating a no_1v8 field in the platform data we can now enable this work around on a per-instance basis. Hence we enable the quirk only on the controllers which are connected to the external SD-slots.
2014-05-09colibri t20/t30: add spi controller platform data for hw csMarcel Ziswiler
Add SPI controller platform data required for use of hardware chip selects. While at it pull-up SPI chip select pin due to NVIDIA's designers taking the term chip select a little too personal: they indeed only select a chip otherwise all the chip select pins are just left floating!
2014-05-09colibri t20/t30: clarify mcp2515 resetMarcel Ziswiler
The MCP2515 on the Colibri EvalBoard V3.1a actually uses regular system reset aka RESET_OUT# on SODIMM 87 to reset the MCP2515. Therefore clean-up resp. remove any MECS Tellurium legacy in that respect. While at it adjust copyright year, re-order some include, clean-up some struct spacing, re-order clocks and improve some comments.
2014-04-22media: added camera settings per decoderWojciech Bieganski
This commit adds settings such as: - values of horizontal/vertical active start, - enabling/disabling internal sync, to the private data of decoders: MAX9526, ADV7180, TVP5150, OV7670 and AS0260. The feature is available through *_tegra_camera_platform_data struct initialised in board-*.c files.
2014-04-04media: fixes in board-*.c files for Colibri T20/T30 and Apalis T30Wojciech Bieganski
This commit fixes the crash that occures while loading tegra_v4l2_camera module caused by its new features (private data per sensor). updated files: arch/arm/mach-tegra/board-apalis_t30.c arch/arm/mach-tegra/board-colibri_t20.c arch/arm/mach-tegra/board-colibri_t30.c
2014-03-13OV7670 and TVP5150 drivers added, updated configsWojciech Bieganski
2014-01-29colibri_t20/colibri_t30: use new platform data for fusion touchscreenStefan Agner
Fusion touchscreen driver now uses platform data to do GPIO initialization by itself. Make use of this by providing GPIO numbers instead of doing initialization in the board initialization.
2013-12-09colibri_t30/apalis_t30: enable STMPE ADC driverStefan Agner
Make use of the new STMPE ADC driver to expose the four free ADC channels on the STMPE811 to userspace.
2013-12-02colibri_t20/colibri_t30: don't register KEY_BACK for wakeupStefan Agner
The port used for KEY_BACK does not support wakeup (no wake PIN). Remove the wake flag, this prevents unbalanced irq warning messages.
2013-08-30apalis/colibri_t30: fix HDMI hang issueMarcel Ziswiler
Initialisation of the framebuffer console on DVI-D aka HDMI sometimes failed. This was particularly bad on Apalis T30 where this is activated by default. On Colibri T30 this was observed when enabling it using the fbcon=map:1 boot argument. This fix curtsey of Bibek Basu from NVIDIA explicitly enables PLLA during early clock initialisation which avoids a later race with the display driver on DC1.
2013-06-24colibri_t30: set local critical temperatur to 95°CMax Krummenacher
If the local critical temperature is reached the power is unconditionally switched off. At 70°C ambient the default of 85°C can be reached. So increase the limit in the hwmon chip to 95°C.
2013-06-12colibri_t30: adv7180 and max9526 integrationPiotr Zierhoffer
Integrate ADV7180 and MAX9526 video decoder support and prepare for drivers as modules.
2013-06-12apalis/colibri_t30: remove spurious tegra_aes_devicePeter Gielda
Remove tegra_aes_device from the platform device list as it was listed twice.
2013-06-05colibri_t20/30: add comment about GMI_ADV_N usageMarcel Ziswiler
Add a comment about conflicting use of SODIMM pin 150 as GPIO K0 resp. GMI_ADV_N used for multiplexed address/data bus courtesy of Stéphane Gonnella from Multitel ASBL.
2013-05-27colibri_t30: export some gpio on /sys/class/gpio/...Max Krummenacher
Added skeleton code to define userspace accessable gpio. Export gpios which are unlikely to be used for other functions.
2013-03-12colibri_t20/30: usb: otg: fix host to peripheral transitionMarcel Ziswiler
Fix null pointer during USB OTG host to peripheral transition caused by freeing the platform data twice. See the following Tegra OTG driver commit for reference: 8acf989d5896b152cc88f8b29afd11d522f903e3
2013-03-12colibri_t20/30: can: integrate mcp251x and sja1000 supportMarcel Ziswiler
Integrate CAN support for the Colibri Evaluation Board V3.1a with built-in MCP2515 SPI CAN controller resp. the Colibri Evaluation Board V2.1c with its built-in SJA1000 CAN controller connected to the GMI bus. The following kernel configuration needs to be enabled as well: CONFIG_CAN CONFIG_CAN_RAW CONFIG_CAN_BCM CONFIG_CAN_DEV Plus depending on the Evaluation Board revision: CONFIG_CAN_MCP251X or CONFIG_CAN_SJA1000 CONFIG_CAN_SJA1000_PLATFORM Optional support for 32-bit GMI as well as xPOD CAN on MECS Tellurium for Colibri T20 is provided via commented defines in arch/arm/mach-tegra/board-colibri_t20.h.
2013-03-06colibri_t30: android: enable hdaMarcel Ziswiler
Unless HDA driver is enabled device enters safe mode upon start-up.
2013-03-06colibri_t30: android: hack to allow using cardhu initrdMarcel Ziswiler
NVIDIA's Android for their Cardhu developer tablet is looking for the machine name in order to initialise certain things. For now just hack it to be able to use their regular initrd.
2013-03-03colibri_t20/30: v4l2: max9526 integrationMarcel Ziswiler
Integrate MAX9526 video decoder support as found on our analogous camera module (ACM) connected to a Colibri Evaluation carrier board. The following kernel configuration options are required to be enabled: CONFIG_VIDEO_V4L2=y CONFIG_SOC_CAMERA=y CONFIG_SOC_CAMERA_MAX9526=y CONFIG_VIDEO_TEGRA=y
2013-03-02colibri_t20/30: move gpio definesMarcel Ziswiler
Move GPIO defines to header file. While at it get rid of spurious AVDD_DSI_CSI_ENB_GPIO define.
2013-03-02colibri_t30: 4-bit mmc/sd cardMarcel Ziswiler
Explicitly configure MMC/SD card as 4-bit only by default.
2013-03-02colibri_t20/30: rename uartsMarcel Ziswiler
Rename UARTs to be consistent with Colibri FF/BT/STDUART naming.
2013-03-02colibri_t20/30: rename pwm ledsMarcel Ziswiler
Rename PWM LEDs to be consistent with Colibri PWM<X> naming.
2013-03-02apalis/colibri_t20/30: migrate gpio to irq conversionMarcel Ziswiler
Migrate from static TEGRA_GPIO_TO_IRQ macro to run-time gpio_to_irq function. While at it clean-up some comments and fix some long lines in order to adhere to Linux kernel coding style.
2013-02-21colibri_t30: enable back key wake-upMarcel Ziswiler
Enable back key wake-up source.
2013-02-13colibri_t20/30: integrate Fusion 7 and 10 multi-touchMarcel Ziswiler
This patch integrates multi-touch for the TouchRevolution Fusion 7 and 10 panels connected to Iris as follows: Iris X16-5, SODIMM pin 194, I2C SDA Iris X16-6, SODIMM pin 196, I2C SCL Iris X16-15, SODIMM pin 103, pen down interrupt Iris X16-16, SODIMM pin 101, reset The following kernel configuration needs to be enabled: Device Drivers -> Input device support -> Touchscreens -> TouchRevolution Fusion F0710A Touchscreens Please note that level shifters are required. Please further note that our current OpenEmbedded BSP does not yet integrate multi-touch support in the XInput as well as X server layers.
2013-01-21colibri_t30: set DD pins to push/pullMax Krummenacher
set DD pins to push/pull if not used for I2C in open drain mode
2013-01-21colibri_t30: w1: set platform data in w1-deviceMax Krummenacher
2013-01-11colibri_t30: w1: add platform dataMarcel Ziswiler
Add one-wire platform data. Still requires explicitly enabling the following two kernel configuration options: CONFIG_W1 CONFIG_W1_MASTER_TEGRA
2013-01-11colibri_t30: integrate PWM LED functionalityMarcel Ziswiler
Make PWM B, C, D accessible from userspace. e.g as /sys/class/leds/pwm_b.
2013-01-11colibri_t30: GPIO keys implementationMarcel Ziswiler
Implement the following GPIO keys: - find (SODIMM pin 77) - home (SODIMM pin 127) - back (SODIMM pin 133, Iris X16-14) - volume up (SODIMM pin 22) - volume down (SODIMM pin 24) - power (SODIMM pin 45, Iris X16-20) - menu (SODIMM pin 135)
2013-01-11colibri_t30: clean-up camera definesMarcel Ziswiler
Now simply enabling CONFIG_TEGRA_CAMERA resp. not explicitly disabling it will make L4T's nv_omx_vip Gstreamer plug-in work with analogue video decoders like the ADV7180 or MAX9526.
2013-01-11colibri_t30: fix system hang caused by USB device insertionMarcel Ziswiler
Booting with a bare USB hub (e.g. EvalBoard V3.1A) and later plugging in a USB device completely hang the system. This fixes it.
2013-01-11colibri_t30: clean-up board fileMarcel Ziswiler
Shorten GPL license header. Get rid of obsolete includes. Get rid of spurious comments. Fix indentation. Add some clarifying comments.
2013-01-09colibri_t30: integrate thermal throttlingMarcel Ziswiler
As our hardware only allows triggering an interrupt on over-temperature shutdown we setup a workqueue to catch leaving it again. For Tegra 3 NVIDIA relies on the regular Linux thermal subsystem. As follows some output during a thermal throttling run: root@colibri-t30:~# cat /sys/bus/i2c/devices/4-004c/temp2_os 45000 RAM 400/980MB (lfb 135x4MB) IRAM 0/255kB(lfb 255kB) cpu [12%,2%,3%,6%]@475 EMC 533 AVP 81 VDE 400 EDP limit 1300000 Temperatures CPU 42.4 Board 36.4 root@colibri-t30:~# cat /sys/bus/i2c/devices/4-004c/temp2_os 60000 RAM 400/980MB (lfb 135x4MB) IRAM 0/255kB(lfb 255kB) cpu [14%,5%,4%,4%]@1300 EMC 533 AVP 81 VDE 400 EDP limit 1300000 Temperatures CPU 54.2 Board 47.8 RAM 400/980MB (lfb 135x4MB) IRAM 0/255kB(lfb 255kB) cpu [100%,100%,100%,100%]@1200 EMC 533 AVP 81 VDE 400 EDP limit 1200000 Temperatures CPU 70.4 Board 56.6 root@colibri-t30:~# cat /sys/bus/i2c/devices/4-004c/temp2_os 75000 RAM 400/980MB (lfb 135x4MB) IRAM 0/255kB(lfb 255kB) cpu [54%,49%,48%,48%]@1200 EMC 533 AVP 81 VDE 400 EDP limit 1200000 Temperatures CPU 70.9 Board 57.1 RAM 400/980MB (lfb 135x4MB) IRAM 0/255kB(lfb 255kB) cpu [100%,100%,100%,100%]@1100 EMC 533 AVP 81 VDE 400 EDP limit 1100000 Temperatures CPU 75.3 Board 60.5 root@colibri-t30:~# cat /sys/bus/i2c/devices/4-004c/temp2_os 85000 RAM 401/980MB (lfb 135x4MB) IRAM 0/255kB(lfb 255kB) cpu [65%,61%,61%,61%]@1100 EMC 533 AVP 81 VDE 400 EDP limit 1100000 Temperatures CPU 75.2 Board 61.0 RAM 401/980MB (lfb 135x4MB) IRAM 0/255kB(lfb 255kB) cpu [100%,100%,100%,100%]@1000 EMC 533 AVP 81 VDE 400 EDP limit 1100000 Temperatures CPU 85.1 Board 69.8 RAM 401/980MB (lfb 135x4MB) IRAM 0/255kB(lfb 255kB) cpu [100%,100%,100%,100%]@760 EMC 533 AVP 81 VDE 400 EDP limit 1100000 Temperatures CPU 85.1 Board 69.9 root@colibri-t30:~# cat /sys/class/thermal/cooling_device0/cur_state 0 root@colibri-t30:~# cat /sys/class/thermal/cooling_device0/max_state 10 root@colibri-t30:~# cat /sys/class/thermal/cooling_device0/type balanced root@colibri-t30:~# cat /sys/class/thermal/thermal_zone0/cdev0_trip_point 0 root@colibri-t30:~# cat /sys/class/thermal/thermal_zone0/temp 84531 root@colibri-t30:~# cat /sys/class/thermal/thermal_zone0/trip_point_0_temp 85000 root@colibri-t30:~# cat /sys/class/thermal/thermal_zone0/trip_point_0_type passive root@colibri-t30:~# cat /sys/class/thermal/thermal_zone0/type lm95245_remote