Loading Documentation/devicetree/bindings/bt-fm/silabs_fm.txt 0 → 100644 +13 −0 Original line number Diff line number Diff line Silicon Labs FM radio device -FM RX playback with RDS FM signal is demodulated then audio L/R samples are sent to external audio codec. FM Rx RDS data received sent to host processor on I2C. Required Properties: - compatible: "silabs,silabs-fm" Example: silabs,silabs-fm { compatible = "silabs,silabs-fm"; }; Documentation/devicetree/bindings/bt-fm/silabs_fm_i2c_si4705.txt 0 → 100644 +73 −0 Original line number Diff line number Diff line Silicon Labs Si4705 FM radio Silabs Si4705 is a FM radio chip which sits on the i2c bus. This node must live under i2c controller. Required properties: - compatible : should be "silabs,si4705" - reg : i2c slave address of the device - interrupt-parent : parent of interrupt - interrupts : interrupt to indicate completion of on going tune, seek etc. - silabs,int-gpio : interrupt gpio - silabs,reset-gpio : reset gpio - silabs,status-gpio : status gpio - pinctrl-names : This should be defined if a target uses pinctrl framework. See "pinctrl" in Documentation/devicetree/bindings/pinctrl/msm-pinctrl.txt. It should specify the names of the configs that pinctrl can install in driver. Following are the pinctrl configs that can be installed: "pmx_fm_active" : Active configuration of pins, this should specify active config defined in pin groups of interrupt and reset gpio. "pmx_fm_suspend" : Disabled configuration of pins, this should specify sleep config defined in pin groups of interrupt and reset gpio. - pinctrl : Active and suspend configuration of interrupt and reset pins. - interrupt-names : Name of interrupt, must be "silabs_fm_int" Optional properties: - vdd-supply : Digital power supply needed to power device - va-supply : Analog power supply needed to power device - silabs,va-supply-voltage : specifies VA voltage levels for supply. Should be specified in pair (min, max), units uV. - silabs,vdd-supply-voltage : specifies VDD voltage levels for supply. Should be specified in pairs (min, max), units uV. Example: i2c_5: i2c@f9967000 { /* BLSP2 QUP5 */ compatible = "qcom,i2c-msm-v2"; #address-cells = <1>; #size-cells = <0>; reg-names = "qup_phys_addr", "bam_phys_addr"; reg = <0xf9967000 0x1000>, <0xf9944000 0x19000>; interrupt-names = "qup_irq", "bam_irq"; interrupts = <0 105 0>, <0 239 0>; qcom,clk-freq-out = <100000>; qcom,clk-freq-in = <19200000>; clock-names = "iface_clk", "core_clk"; clocks = <&clock_gcc clk_gcc_blsp2_ahb_clk>, <&clock_gcc clk_gcc_blsp2_qup5_i2c_apps_clk>; pinctrl-names = "i2c_active", "i2c_sleep"; pinctrl-0 = <&i2c_5_active>; pinctrl-1 = <&i2c_5_sleep>; silabs4705@11 { /* SiLabs FM chip, slave id 0x11*/ status = "ok"; compatible = "silabs,si4705"; reg = <0x11>; vdd-supply = <&pm8994_s4>; silabs,va-supply-voltage = <3300000 3300000>; silabs,vdd-supply-voltage = <1800000 1800000>; pinctrl-names = "pmx_fm_active","pmx_fm_suspend"; pinctrl-0 = <&fm_int_active &fm_rst_active>; pinctrl-1 = <&fm_int_suspend &fm_rst_suspend>; silabs,reset-gpio = <&msm_gpio 62 0>; silabs,int-gpio = <&msm_gpio 9 0>; silabs,status-gpio = <&msm_gpio 11 0>; interrupt-parent = <&msm_gpio>; interrupts = <9 2>; interrupt-names = "silabs_fm_int"; }; }; arch/arm64/configs/msm-perf_defconfig +2 −0 Original line number Diff line number Diff line Loading @@ -371,6 +371,7 @@ CONFIG_REGULATOR_MEM_ACC=y CONFIG_REGULATOR_PROXY_CONSUMER=y CONFIG_MEDIA_SUPPORT=y CONFIG_MEDIA_CAMERA_SUPPORT=y CONFIG_MEDIA_RADIO_SUPPORT=y CONFIG_MEDIA_CONTROLLER=y CONFIG_VIDEO_V4L2_SUBDEV_API=y CONFIG_V4L_PLATFORM_DRIVERS=y Loading Loading @@ -407,6 +408,7 @@ CONFIG_MSM_VIDC_V4L2=y CONFIG_MSM_VIDC_VMEM=y CONFIG_MSM_VIDC_GOVERNORS=y CONFIG_MSM_SDE_ROTATOR=y CONFIG_RADIO_SILABS=y CONFIG_QCOM_KGSL=y CONFIG_FB=y CONFIG_FB_MSM=y Loading arch/arm64/configs/msm_defconfig +2 −0 Original line number Diff line number Diff line Loading @@ -358,6 +358,7 @@ CONFIG_REGULATOR_MEM_ACC=y CONFIG_REGULATOR_PROXY_CONSUMER=y CONFIG_MEDIA_SUPPORT=y CONFIG_MEDIA_CAMERA_SUPPORT=y CONFIG_MEDIA_RADIO_SUPPORT=y CONFIG_MEDIA_CONTROLLER=y CONFIG_VIDEO_V4L2_SUBDEV_API=y CONFIG_VIDEO_ADV_DEBUG=y Loading Loading @@ -395,6 +396,7 @@ CONFIG_MSM_VIDC_V4L2=y CONFIG_MSM_VIDC_VMEM=y CONFIG_MSM_VIDC_GOVERNORS=y CONFIG_MSM_SDE_ROTATOR=y CONFIG_RADIO_SILABS=y CONFIG_QCOM_KGSL=y CONFIG_FB=y CONFIG_FB_MSM=y Loading drivers/media/radio/Kconfig +7 −0 Original line number Diff line number Diff line Loading @@ -498,4 +498,11 @@ config RADIO_ZOLTRIX_PORT endif # V4L_RADIO_ISA_DRIVERS config RADIO_SILABS tristate "SILABS FM" depends on I2C && VIDEO_V4L2 ---help--- Say Y here if you want to use the SiLabs' FM chip with I2C as transport. endif # RADIO_ADAPTERS Loading
Documentation/devicetree/bindings/bt-fm/silabs_fm.txt 0 → 100644 +13 −0 Original line number Diff line number Diff line Silicon Labs FM radio device -FM RX playback with RDS FM signal is demodulated then audio L/R samples are sent to external audio codec. FM Rx RDS data received sent to host processor on I2C. Required Properties: - compatible: "silabs,silabs-fm" Example: silabs,silabs-fm { compatible = "silabs,silabs-fm"; };
Documentation/devicetree/bindings/bt-fm/silabs_fm_i2c_si4705.txt 0 → 100644 +73 −0 Original line number Diff line number Diff line Silicon Labs Si4705 FM radio Silabs Si4705 is a FM radio chip which sits on the i2c bus. This node must live under i2c controller. Required properties: - compatible : should be "silabs,si4705" - reg : i2c slave address of the device - interrupt-parent : parent of interrupt - interrupts : interrupt to indicate completion of on going tune, seek etc. - silabs,int-gpio : interrupt gpio - silabs,reset-gpio : reset gpio - silabs,status-gpio : status gpio - pinctrl-names : This should be defined if a target uses pinctrl framework. See "pinctrl" in Documentation/devicetree/bindings/pinctrl/msm-pinctrl.txt. It should specify the names of the configs that pinctrl can install in driver. Following are the pinctrl configs that can be installed: "pmx_fm_active" : Active configuration of pins, this should specify active config defined in pin groups of interrupt and reset gpio. "pmx_fm_suspend" : Disabled configuration of pins, this should specify sleep config defined in pin groups of interrupt and reset gpio. - pinctrl : Active and suspend configuration of interrupt and reset pins. - interrupt-names : Name of interrupt, must be "silabs_fm_int" Optional properties: - vdd-supply : Digital power supply needed to power device - va-supply : Analog power supply needed to power device - silabs,va-supply-voltage : specifies VA voltage levels for supply. Should be specified in pair (min, max), units uV. - silabs,vdd-supply-voltage : specifies VDD voltage levels for supply. Should be specified in pairs (min, max), units uV. Example: i2c_5: i2c@f9967000 { /* BLSP2 QUP5 */ compatible = "qcom,i2c-msm-v2"; #address-cells = <1>; #size-cells = <0>; reg-names = "qup_phys_addr", "bam_phys_addr"; reg = <0xf9967000 0x1000>, <0xf9944000 0x19000>; interrupt-names = "qup_irq", "bam_irq"; interrupts = <0 105 0>, <0 239 0>; qcom,clk-freq-out = <100000>; qcom,clk-freq-in = <19200000>; clock-names = "iface_clk", "core_clk"; clocks = <&clock_gcc clk_gcc_blsp2_ahb_clk>, <&clock_gcc clk_gcc_blsp2_qup5_i2c_apps_clk>; pinctrl-names = "i2c_active", "i2c_sleep"; pinctrl-0 = <&i2c_5_active>; pinctrl-1 = <&i2c_5_sleep>; silabs4705@11 { /* SiLabs FM chip, slave id 0x11*/ status = "ok"; compatible = "silabs,si4705"; reg = <0x11>; vdd-supply = <&pm8994_s4>; silabs,va-supply-voltage = <3300000 3300000>; silabs,vdd-supply-voltage = <1800000 1800000>; pinctrl-names = "pmx_fm_active","pmx_fm_suspend"; pinctrl-0 = <&fm_int_active &fm_rst_active>; pinctrl-1 = <&fm_int_suspend &fm_rst_suspend>; silabs,reset-gpio = <&msm_gpio 62 0>; silabs,int-gpio = <&msm_gpio 9 0>; silabs,status-gpio = <&msm_gpio 11 0>; interrupt-parent = <&msm_gpio>; interrupts = <9 2>; interrupt-names = "silabs_fm_int"; }; };
arch/arm64/configs/msm-perf_defconfig +2 −0 Original line number Diff line number Diff line Loading @@ -371,6 +371,7 @@ CONFIG_REGULATOR_MEM_ACC=y CONFIG_REGULATOR_PROXY_CONSUMER=y CONFIG_MEDIA_SUPPORT=y CONFIG_MEDIA_CAMERA_SUPPORT=y CONFIG_MEDIA_RADIO_SUPPORT=y CONFIG_MEDIA_CONTROLLER=y CONFIG_VIDEO_V4L2_SUBDEV_API=y CONFIG_V4L_PLATFORM_DRIVERS=y Loading Loading @@ -407,6 +408,7 @@ CONFIG_MSM_VIDC_V4L2=y CONFIG_MSM_VIDC_VMEM=y CONFIG_MSM_VIDC_GOVERNORS=y CONFIG_MSM_SDE_ROTATOR=y CONFIG_RADIO_SILABS=y CONFIG_QCOM_KGSL=y CONFIG_FB=y CONFIG_FB_MSM=y Loading
arch/arm64/configs/msm_defconfig +2 −0 Original line number Diff line number Diff line Loading @@ -358,6 +358,7 @@ CONFIG_REGULATOR_MEM_ACC=y CONFIG_REGULATOR_PROXY_CONSUMER=y CONFIG_MEDIA_SUPPORT=y CONFIG_MEDIA_CAMERA_SUPPORT=y CONFIG_MEDIA_RADIO_SUPPORT=y CONFIG_MEDIA_CONTROLLER=y CONFIG_VIDEO_V4L2_SUBDEV_API=y CONFIG_VIDEO_ADV_DEBUG=y Loading Loading @@ -395,6 +396,7 @@ CONFIG_MSM_VIDC_V4L2=y CONFIG_MSM_VIDC_VMEM=y CONFIG_MSM_VIDC_GOVERNORS=y CONFIG_MSM_SDE_ROTATOR=y CONFIG_RADIO_SILABS=y CONFIG_QCOM_KGSL=y CONFIG_FB=y CONFIG_FB_MSM=y Loading
drivers/media/radio/Kconfig +7 −0 Original line number Diff line number Diff line Loading @@ -498,4 +498,11 @@ config RADIO_ZOLTRIX_PORT endif # V4L_RADIO_ISA_DRIVERS config RADIO_SILABS tristate "SILABS FM" depends on I2C && VIDEO_V4L2 ---help--- Say Y here if you want to use the SiLabs' FM chip with I2C as transport. endif # RADIO_ADAPTERS