Loading Documentation/devicetree/bindings/sound/rt5659.txt +3 −0 Original line number Diff line number Diff line Loading @@ -12,6 +12,9 @@ Required properties: Optional properties: - clocks: The phandle of the master clock to the CODEC - clock-names: Should be "mclk" - realtek,in1-differential - realtek,in3-differential - realtek,in4-differential Loading Documentation/devicetree/bindings/sound/rt5660.txt 0 → 100644 +47 −0 Original line number Diff line number Diff line RT5660 audio CODEC This device supports I2C only. Required properties: - compatible : "realtek,rt5660". - reg : The I2C address of the device. Optional properties: - clocks: The phandle of the master clock to the CODEC - clock-names: Should be "mclk" - realtek,in1-differential - realtek,in3-differential Boolean. Indicate MIC1/3 input are differential, rather than single-ended. - realtek,poweroff-in-suspend Boolean. If the codec will be powered off in suspend, the resume should be added delay time for waiting codec power ready. - realtek,dmic1-data-pin 0: dmic1 is not used 1: using GPIO2 pin as dmic1 data pin 2: using IN1P pin as dmic1 data pin Pins on the device (for linking into audio routes) for RT5660: * DMIC L1 * DMIC R1 * IN1P * IN1N * IN2P * IN3P * IN3N * SPO * LOUTL * LOUTR Example: rt5660 { compatible = "realtek,rt5660"; reg = <0x1c>; }; Documentation/devicetree/bindings/sound/rt5663.txt 0 → 100644 +30 −0 Original line number Diff line number Diff line RT5663/RT5668 audio CODEC This device supports I2C only. Required properties: - compatible : One of "realtek,rt5663" or "realtek,rt5668". - reg : The I2C address of the device. - interrupts : The CODEC's interrupt output. Optional properties: Pins on the device (for linking into audio routes) for RT5663/RT5668: * IN1P * IN1N * IN2P * IN2N * HPOL * HPOR Example: codec: rt5663@12 { compatible = "realtek,rt5663"; reg = <0x12>; interrupts = <7 IRQ_TYPE_EDGE_FALLING>; }; arch/arm/mach-s3c24xx/mach-mini2440.c +19 −0 Original line number Diff line number Diff line Loading @@ -497,9 +497,28 @@ static struct i2c_board_info mini2440_i2c_devs[] __initdata = { }, }; static struct uda134x_platform_data s3c24xx_uda134x = { .l3 = { .gpio_clk = S3C2410_GPB(4), .gpio_data = S3C2410_GPB(3), .gpio_mode = S3C2410_GPB(2), .use_gpios = 1, .data_hold = 1, .data_setup = 1, .clock_high = 1, .mode_hold = 1, .mode = 1, .mode_setup = 1, }, .model = UDA134X_UDA1341, }; static struct platform_device uda1340_codec = { .name = "uda134x-codec", .id = -1, .dev = { .platform_data = &s3c24xx_uda134x, }, }; static struct platform_device *mini2440_devices[] __initdata = { Loading include/sound/l3.h +12 −3 Original line number Diff line number Diff line Loading @@ -2,9 +2,15 @@ #define _L3_H_ 1 struct l3_pins { void (*setdat)(int); void (*setclk)(int); void (*setmode)(int); void (*setdat)(struct l3_pins *, int); void (*setclk)(struct l3_pins *, int); void (*setmode)(struct l3_pins *, int); int gpio_data; int gpio_clk; int gpio_mode; int use_gpios; int data_hold; int data_setup; int clock_high; Loading @@ -13,6 +19,9 @@ struct l3_pins { int mode_setup; }; struct device; int l3_write(struct l3_pins *adap, u8 addr, u8 *data, int len); int l3_set_gpio_ops(struct device *dev, struct l3_pins *adap); #endif Loading
Documentation/devicetree/bindings/sound/rt5659.txt +3 −0 Original line number Diff line number Diff line Loading @@ -12,6 +12,9 @@ Required properties: Optional properties: - clocks: The phandle of the master clock to the CODEC - clock-names: Should be "mclk" - realtek,in1-differential - realtek,in3-differential - realtek,in4-differential Loading
Documentation/devicetree/bindings/sound/rt5660.txt 0 → 100644 +47 −0 Original line number Diff line number Diff line RT5660 audio CODEC This device supports I2C only. Required properties: - compatible : "realtek,rt5660". - reg : The I2C address of the device. Optional properties: - clocks: The phandle of the master clock to the CODEC - clock-names: Should be "mclk" - realtek,in1-differential - realtek,in3-differential Boolean. Indicate MIC1/3 input are differential, rather than single-ended. - realtek,poweroff-in-suspend Boolean. If the codec will be powered off in suspend, the resume should be added delay time for waiting codec power ready. - realtek,dmic1-data-pin 0: dmic1 is not used 1: using GPIO2 pin as dmic1 data pin 2: using IN1P pin as dmic1 data pin Pins on the device (for linking into audio routes) for RT5660: * DMIC L1 * DMIC R1 * IN1P * IN1N * IN2P * IN3P * IN3N * SPO * LOUTL * LOUTR Example: rt5660 { compatible = "realtek,rt5660"; reg = <0x1c>; };
Documentation/devicetree/bindings/sound/rt5663.txt 0 → 100644 +30 −0 Original line number Diff line number Diff line RT5663/RT5668 audio CODEC This device supports I2C only. Required properties: - compatible : One of "realtek,rt5663" or "realtek,rt5668". - reg : The I2C address of the device. - interrupts : The CODEC's interrupt output. Optional properties: Pins on the device (for linking into audio routes) for RT5663/RT5668: * IN1P * IN1N * IN2P * IN2N * HPOL * HPOR Example: codec: rt5663@12 { compatible = "realtek,rt5663"; reg = <0x12>; interrupts = <7 IRQ_TYPE_EDGE_FALLING>; };
arch/arm/mach-s3c24xx/mach-mini2440.c +19 −0 Original line number Diff line number Diff line Loading @@ -497,9 +497,28 @@ static struct i2c_board_info mini2440_i2c_devs[] __initdata = { }, }; static struct uda134x_platform_data s3c24xx_uda134x = { .l3 = { .gpio_clk = S3C2410_GPB(4), .gpio_data = S3C2410_GPB(3), .gpio_mode = S3C2410_GPB(2), .use_gpios = 1, .data_hold = 1, .data_setup = 1, .clock_high = 1, .mode_hold = 1, .mode = 1, .mode_setup = 1, }, .model = UDA134X_UDA1341, }; static struct platform_device uda1340_codec = { .name = "uda134x-codec", .id = -1, .dev = { .platform_data = &s3c24xx_uda134x, }, }; static struct platform_device *mini2440_devices[] __initdata = { Loading
include/sound/l3.h +12 −3 Original line number Diff line number Diff line Loading @@ -2,9 +2,15 @@ #define _L3_H_ 1 struct l3_pins { void (*setdat)(int); void (*setclk)(int); void (*setmode)(int); void (*setdat)(struct l3_pins *, int); void (*setclk)(struct l3_pins *, int); void (*setmode)(struct l3_pins *, int); int gpio_data; int gpio_clk; int gpio_mode; int use_gpios; int data_hold; int data_setup; int clock_high; Loading @@ -13,6 +19,9 @@ struct l3_pins { int mode_setup; }; struct device; int l3_write(struct l3_pins *adap, u8 addr, u8 *data, int len); int l3_set_gpio_ops(struct device *dev, struct l3_pins *adap); #endif