Skip to content

Commit

Permalink
Pisound dynamic overlay (#1760)
Browse files Browse the repository at this point in the history
Restructuring pisound-overlay.dts, so it can be loaded and unloaded dynamically using dtoverlay.

Print a logline when the kernel module is removed.
  • Loading branch information
gtrainavicius authored and popcornmix committed Dec 12, 2016
1 parent 23fc186 commit b657771
Show file tree
Hide file tree
Showing 2 changed files with 52 additions and 44 deletions.
94 changes: 50 additions & 44 deletions arch/arm/boot/dts/overlays/pisound-overlay.dts
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,54 @@
compatible = "brcm,bcm2708";

fragment@0 {
target = <&spi0>;
__overlay__ {
status = "okay";
};
};

fragment@1 {
target = <&spidev0>;
__overlay__ {
status = "disabled";
};
};

fragment@2 {
target = <&spidev1>;
__overlay__ {
status = "okay";
};
};

fragment@3 {
target = <&spi0>;
__overlay__ {
#address-cells = <1>;
#size-cells = <0>;

pisound_spi: pisound_spi@0{
compatible = "blokaslabs,pisound-spi";
reg = <0>;
pinctrl-names = "default";
pinctrl-0 = <&spi0_pins>;
spi-max-frequency = <1000000>;
};
};
};

fragment@4 {
target-path = "/";
__overlay__ {
pcm5102a-codec {
#sound-dai-cells = <0>;
compatible = "ti,pcm5102a";
status = "okay";
};
};
};

fragment@5 {
target = <&sound>;
__overlay__ {
compatible = "blokaslabs,pisound";
Expand All @@ -49,7 +97,7 @@
};
};

fragment@1 {
fragment@6 {
target = <&gpio>;
__overlay__ {
pinctrl-names = "default";
Expand All @@ -63,52 +111,10 @@
};
};

fragment@2 {
fragment@7 {
target = <&i2s>;
__overlay__ {
status = "okay";
};
};

fragment@3 {
target-path = "/";
__overlay__ {
pcm5102a-codec {
#sound-dai-cells = <0>;
compatible = "ti,pcm5102a";
status = "okay";
};
};
};

fragment@4 {
target = <&spi0>;
__overlay__ {
status = "okay";

spidev@0{
status = "disabled";
};

spidev@1{
status = "okay";
};
};
};

fragment@5 {
target = <&spi0>;
__overlay__ {
#address-cells = <1>;
#size-cells = <0>;

pisound_spi: pisound_spi@0{
compatible = "blokaslabs,pisound-spi";
reg = <0>;
pinctrl-names = "default";
pinctrl-0 = <&spi0_pins>;
spi-max-frequency = <1000000>;
};
};
};
};
2 changes: 2 additions & 0 deletions sound/soc/bcm/pisound.c
Original file line number Diff line number Diff line change
Expand Up @@ -954,6 +954,8 @@ static int pisnd_probe(struct platform_device *pdev)

static int pisnd_remove(struct platform_device *pdev)
{
printi("Unloading.\n");

if (pisnd_kobj) {
kobject_put(pisnd_kobj);
pisnd_kobj = NULL;
Expand Down

0 comments on commit b657771

Please sign in to comment.