smartcard: S7 bringup. [1/1]

PD#SWPL-152434

Problem:
S7 bringup.

Solution:
S7 bringup.

Verify:
S905Y5/BH209

Change-Id: Ia421b5ef03a7be9c8c6910ad1c79ac823e7f5edb
Signed-off-by: hongyu.chen <hongyu.chen@amlogic.com>
This commit is contained in:
hongyu.chen
2024-01-12 15:33:02 +08:00
committed by Luan Yuan
parent 2347444f1a
commit 1e97d1017d
3 changed files with 108 additions and 10 deletions
@@ -280,6 +280,42 @@
pinctrl-0 = <&dvb_s_ts0_pins>;
};
/* SMC */
smartcard {
compatible = "amlogic,smartcard-sc2";
dev_name = "smartcard";
status = "disabled";
reg = <0x0 0xfe000000 0x0 0x480000>;
irq_trigger_type = "GPIO_IRQ_LOW";
reset_pin-gpios = <&gpio GPIOH_10 GPIO_ACTIVE_HIGH>;
detect_pin-gpios = <&gpio GPIOH_11 GPIO_ACTIVE_HIGH>;
enable_5v3v_pin-gpios = <&gpio GPIOH_5 GPIO_ACTIVE_HIGH>;
enable_pin-gpios = <&gpio GPIOH_6 GPIO_ACTIVE_HIGH>;
interrupts = <0 174 1>;
interrupt-names = "smc0_irq";
/*
*Smc clock source, if change this,
*you must adjust clk and divider in smartcard.c
*/
smc0_clock_source = <0>;
/*0: high voltage on detect pin indicates card in.*/
smc0_det_invert = <0>;
smc0_5v3v_level = <0>;
/*Ordinarily,smartcard controller needs a enable pin.*/
smc_need_enable_pin = "yes";
reset_level = <0>;
smc0_enable_level = <0>;
pinctrl-names = "default";
pinctrl-0 = <&sd_iso7816_pins>;
clocks = <&clkc CLKID_SC>;
clock-names = "smartcard";
};
ionvideo {
compatible = "amlogic, ionvideo";
dev_name = "ionvideo";
@@ -311,6 +311,42 @@
pinctrl-0 = <&dvb_s_ts0_pins>;
};
/* SMC */
smartcard {
compatible = "amlogic,smartcard-sc2";
dev_name = "smartcard";
status = "disabled";
reg = <0x0 0xfe000000 0x0 0x480000>;
irq_trigger_type = "GPIO_IRQ_LOW";
reset_pin-gpios = <&gpio GPIOH_10 GPIO_ACTIVE_HIGH>;
detect_pin-gpios = <&gpio GPIOH_11 GPIO_ACTIVE_HIGH>;
enable_5v3v_pin-gpios = <&gpio GPIOH_5 GPIO_ACTIVE_HIGH>;
enable_pin-gpios = <&gpio GPIOH_6 GPIO_ACTIVE_HIGH>;
interrupts = <0 174 1>;
interrupt-names = "smc0_irq";
/*
*Smc clock source, if change this,
*you must adjust clk and divider in smartcard.c
*/
smc0_clock_source = <0>;
/*0: high voltage on detect pin indicates card in.*/
smc0_det_invert = <0>;
smc0_5v3v_level = <0>;
/*Ordinarily,smartcard controller needs a enable pin.*/
smc_need_enable_pin = "yes";
reset_level = <0>;
smc0_enable_level = <0>;
pinctrl-names = "default";
pinctrl-0 = <&sd_iso7816_pins>;
clocks = <&clkc CLKID_SC>;
clock-names = "smartcard";
};
ionvideo {
compatible = "amlogic, ionvideo";
dev_name = "ionvideo";
+36 -10
View File
@@ -307,20 +307,46 @@
ts0_control = <0x0>;
ts0_invert = <0>;
ts1_sid = <0x11>;
ts1 = "parallel";
ts1_control = <0x0>;
ts1_invert = <0>;
ts2_sid = <0x12>;
ts2 = "parallel";
ts2_control = <0x0>;
ts2_invert = <0>;
pinctrl-names = "s_ts0";
pinctrl-0 = <&dvb_s_ts0_pins>;
};
/* SMC */
smartcard {
compatible = "amlogic,smartcard-sc2";
dev_name = "smartcard";
status = "okay";
reg = <0x0 0xfe000000 0x0 0x480000>;
irq_trigger_type = "GPIO_IRQ_LOW";
reset_pin-gpios = <&gpio GPIOH_10 GPIO_ACTIVE_HIGH>;
detect_pin-gpios = <&gpio GPIOH_11 GPIO_ACTIVE_HIGH>;
enable_5v3v_pin-gpios = <&gpio GPIOH_5 GPIO_ACTIVE_HIGH>;
enable_pin-gpios = <&gpio GPIOH_6 GPIO_ACTIVE_HIGH>;
interrupts = <0 174 1>;
interrupt-names = "smc0_irq";
/*
*Smc clock source, if change this,
*you must adjust clk and divider in smartcard.c
*/
smc0_clock_source = <0>;
/*0: high voltage on detect pin indicates card in.*/
smc0_det_invert = <0>;
smc0_5v3v_level = <0>;
/*Ordinarily,smartcard controller needs a enable pin.*/
smc_need_enable_pin = "yes";
reset_level = <0>;
smc0_enable_level = <0>;
pinctrl-names = "default";
pinctrl-0 = <&sd_iso7816_pins>;
clocks = <&clkc CLKID_SC>;
clock-names = "smartcard";
};
ionvideo {
compatible = "amlogic, ionvideo";
dev_name = "ionvideo";