diff --git a/firmware/SOURCES b/firmware/SOURCES index 719fc80b83..95131ab25b 100644 --- a/firmware/SOURCES +++ b/firmware/SOURCES @@ -870,37 +870,37 @@ target/arm/s3c2440/gigabeat-fx/wmcodec-meg-fx.c #ifndef SIMULATOR target/arm/lcd-as-memframe.S target/arm/mmu-armv6.S +target/arm/imx31/ata-imx31.c +target/arm/imx31/avic-imx31.c target/arm/imx31/ccm-imx31.c target/arm/imx31/debug-imx31.c target/arm/imx31/dvfs_dptc-imx31.c +target/arm/imx31/gpio-imx31.c +target/arm/imx31/i2c-imx31.c +target/arm/imx31/mc13783-imx31.c +target/arm/imx31/mmu-imx31.c target/arm/imx31/rolo_restart.S target/arm/imx31/sdma-imx31.c -target/arm/imx31/gigabeat-s/adc-imx31.c -target/arm/imx31/gigabeat-s/ata-imx31.c -target/arm/imx31/gigabeat-s/avic-imx31.c -target/arm/imx31/gigabeat-s/backlight-imx31.c -target/arm/imx31/gigabeat-s/button-imx31.c +target/arm/imx31/spi-imx31.c +target/arm/imx31/gigabeat-s/adc-gigabeat-s.c +target/arm/imx31/gigabeat-s/backlight-gigabeat-s.c +target/arm/imx31/gigabeat-s/button-gigabeat-s.c target/arm/imx31/gigabeat-s/gpio-gigabeat-s.c -target/arm/imx31/gigabeat-s/gpio-imx31.c -target/arm/imx31/gigabeat-s/kernel-imx31.c -target/arm/imx31/gigabeat-s/i2c-imx31.c -target/arm/imx31/gigabeat-s/i2s-imx31.c -target/arm/imx31/gigabeat-s/lcd-imx31.c +target/arm/imx31/gigabeat-s/kernel-gigabeat-s.c +target/arm/imx31/gigabeat-s/i2s-gigabeat-s.c +target/arm/imx31/gigabeat-s/lcd-gigabeat-s.c target/arm/imx31/gigabeat-s/mc13783-gigabeat-s.c -target/arm/imx31/gigabeat-s/mc13783-imx31.c -target/arm/imx31/gigabeat-s/mmu-imx31.c -target/arm/imx31/gigabeat-s/power-imx31.c -target/arm/imx31/gigabeat-s/powermgmt-imx31.c -target/arm/imx31/gigabeat-s/spi-imx31.c -target/arm/imx31/gigabeat-s/system-imx31.c -target/arm/imx31/gigabeat-s/usb-imx31.c -target/arm/imx31/gigabeat-s/wmcodec-imx31.c +target/arm/imx31/gigabeat-s/power-gigabeat-s.c +target/arm/imx31/gigabeat-s/powermgmt-gigabeat-s.c +target/arm/imx31/gigabeat-s/system-gigabeat-s.c +target/arm/imx31/gigabeat-s/usb-gigabeat-s.c +target/arm/imx31/gigabeat-s/wmcodec-gigabeat-s.c #ifndef BOOTLOADER target/arm/imx31/gigabeat-s/audio-gigabeat-s.c target/arm/imx31/gigabeat-s/fmradio-i2c-gigabeat-s.c target/arm/imx31/gigabeat-s/headphone-gigabeat-s.c -target/arm/imx31/gigabeat-s/pcm-imx31.c -target/arm/imx31/gigabeat-s/timer-imx31.c +target/arm/imx31/gigabeat-s/pcm-gigabeat-s.c +target/arm/imx31/gigabeat-s/timer-gigabeat-s.c #endif #endif /* SIMULATOR */ #endif /* GIGABEAT_S */ diff --git a/firmware/target/arm/imx31/gigabeat-s/ata-imx31.c b/firmware/target/arm/imx31/ata-imx31.c similarity index 100% rename from firmware/target/arm/imx31/gigabeat-s/ata-imx31.c rename to firmware/target/arm/imx31/ata-imx31.c diff --git a/firmware/target/arm/imx31/gigabeat-s/ata-target.h b/firmware/target/arm/imx31/ata-target.h similarity index 100% rename from firmware/target/arm/imx31/gigabeat-s/ata-target.h rename to firmware/target/arm/imx31/ata-target.h diff --git a/firmware/target/arm/imx31/gigabeat-s/avic-imx31.c b/firmware/target/arm/imx31/avic-imx31.c similarity index 100% rename from firmware/target/arm/imx31/gigabeat-s/avic-imx31.c rename to firmware/target/arm/imx31/avic-imx31.c diff --git a/firmware/target/arm/imx31/gigabeat-s/avic-imx31.h b/firmware/target/arm/imx31/avic-imx31.h similarity index 100% rename from firmware/target/arm/imx31/gigabeat-s/avic-imx31.h rename to firmware/target/arm/imx31/avic-imx31.h diff --git a/firmware/target/arm/imx31/gigabeat-s/adc-imx31.c b/firmware/target/arm/imx31/gigabeat-s/adc-gigabeat-s.c similarity index 100% rename from firmware/target/arm/imx31/gigabeat-s/adc-imx31.c rename to firmware/target/arm/imx31/gigabeat-s/adc-gigabeat-s.c diff --git a/firmware/target/arm/imx31/gigabeat-s/backlight-imx31.c b/firmware/target/arm/imx31/gigabeat-s/backlight-gigabeat-s.c similarity index 100% rename from firmware/target/arm/imx31/gigabeat-s/backlight-imx31.c rename to firmware/target/arm/imx31/gigabeat-s/backlight-gigabeat-s.c diff --git a/firmware/target/arm/imx31/gigabeat-s/button-imx31.c b/firmware/target/arm/imx31/gigabeat-s/button-gigabeat-s.c similarity index 100% rename from firmware/target/arm/imx31/gigabeat-s/button-imx31.c rename to firmware/target/arm/imx31/gigabeat-s/button-gigabeat-s.c diff --git a/firmware/target/arm/imx31/gigabeat-s/i2s-imx31.c b/firmware/target/arm/imx31/gigabeat-s/i2s-gigabeat-s.c similarity index 54% rename from firmware/target/arm/imx31/gigabeat-s/i2s-imx31.c rename to firmware/target/arm/imx31/gigabeat-s/i2s-gigabeat-s.c index d1c917a209..c2ec0d6cab 100644 --- a/firmware/target/arm/imx31/gigabeat-s/i2s-imx31.c +++ b/firmware/target/arm/imx31/gigabeat-s/i2s-gigabeat-s.c @@ -18,9 +18,28 @@ * KIND, either express or implied. * ****************************************************************************/ - +#include "config.h" +#include "system.h" #include "i2s.h" void i2s_reset(void) { + /* How SYSCLK for codec is derived (USBPLL=338.688MHz). + * + * SSI post dividers (SSI2 PODF=4, SSI2 PRE PODF=0): + * 338688000Hz / 5 = 67737600Hz = ssi1_clk + * + * SSI bit clock dividers (DIV2=1, PSR=0, PM=0): + * ssi1_clk / 4 = 16934400Hz = INT_BIT_CLK (MCLK) + * + * WM Codec post divider (MCLKDIV=1.5): + * INT_BIT_CLK (MCLK) / 1.5 = 11289600Hz = 256*fs = SYSCLK + */ + imx31_regmod32(&CCM_PDR1, + ((1-1) << CCM_PDR1_SSI1_PRE_PODF_POS) | + ((5-1) << CCM_PDR1_SSI1_PODF_POS) | + ((8-1) << CCM_PDR1_SSI2_PRE_PODF_POS) | + ((64-1) << CCM_PDR1_SSI2_PODF_POS), + CCM_PDR1_SSI1_PODF | CCM_PDR1_SSI2_PODF | + CCM_PDR1_SSI1_PRE_PODF | CCM_PDR1_SSI2_PRE_PODF); } diff --git a/firmware/target/arm/imx31/gigabeat-s/kernel-imx31.c b/firmware/target/arm/imx31/gigabeat-s/kernel-gigabeat-s.c similarity index 100% rename from firmware/target/arm/imx31/gigabeat-s/kernel-imx31.c rename to firmware/target/arm/imx31/gigabeat-s/kernel-gigabeat-s.c diff --git a/firmware/target/arm/imx31/gigabeat-s/lcd-imx31.c b/firmware/target/arm/imx31/gigabeat-s/lcd-gigabeat-s.c similarity index 100% rename from firmware/target/arm/imx31/gigabeat-s/lcd-imx31.c rename to firmware/target/arm/imx31/gigabeat-s/lcd-gigabeat-s.c diff --git a/firmware/target/arm/imx31/gigabeat-s/mc13783-gigabeat-s.c b/firmware/target/arm/imx31/gigabeat-s/mc13783-gigabeat-s.c index fc9ad719a6..2060b7bc6a 100644 --- a/firmware/target/arm/imx31/gigabeat-s/mc13783-gigabeat-s.c +++ b/firmware/target/arm/imx31/gigabeat-s/mc13783-gigabeat-s.c @@ -27,7 +27,7 @@ #include "adc-target.h" #include "button-target.h" #include "usb-target.h" -#include "power-imx31.h" +#include "power-gigabeat-s.h" #include "powermgmt-target.h" /* Gigabeat S definitions for static MC13783 event registration */ diff --git a/firmware/target/arm/imx31/gigabeat-s/pcm-imx31.c b/firmware/target/arm/imx31/gigabeat-s/pcm-gigabeat-s.c similarity index 100% rename from firmware/target/arm/imx31/gigabeat-s/pcm-imx31.c rename to firmware/target/arm/imx31/gigabeat-s/pcm-gigabeat-s.c diff --git a/firmware/target/arm/imx31/gigabeat-s/power-imx31.c b/firmware/target/arm/imx31/gigabeat-s/power-gigabeat-s.c similarity index 99% rename from firmware/target/arm/imx31/gigabeat-s/power-imx31.c rename to firmware/target/arm/imx31/gigabeat-s/power-gigabeat-s.c index b29d3cd0fb..7e3b39dba8 100644 --- a/firmware/target/arm/imx31/gigabeat-s/power-imx31.c +++ b/firmware/target/arm/imx31/gigabeat-s/power-gigabeat-s.c @@ -23,7 +23,7 @@ #include "usb.h" #include "usb_core.h" #include "power.h" -#include "power-imx31.h" +#include "power-gigabeat-s.h" #include "backlight.h" #include "backlight-target.h" #include "avic-imx31.h" diff --git a/firmware/target/arm/imx31/gigabeat-s/power-imx31.h b/firmware/target/arm/imx31/gigabeat-s/power-gigabeat-s.h similarity index 100% rename from firmware/target/arm/imx31/gigabeat-s/power-imx31.h rename to firmware/target/arm/imx31/gigabeat-s/power-gigabeat-s.h diff --git a/firmware/target/arm/imx31/gigabeat-s/powermgmt-imx31.c b/firmware/target/arm/imx31/gigabeat-s/powermgmt-gigabeat-s.c similarity index 99% rename from firmware/target/arm/imx31/gigabeat-s/powermgmt-imx31.c rename to firmware/target/arm/imx31/gigabeat-s/powermgmt-gigabeat-s.c index bb9b8c23af..34abf04940 100644 --- a/firmware/target/arm/imx31/gigabeat-s/powermgmt-imx31.c +++ b/firmware/target/arm/imx31/gigabeat-s/powermgmt-gigabeat-s.c @@ -26,7 +26,7 @@ #include "adc.h" #include "powermgmt.h" #include "power.h" -#include "power-imx31.h" +#include "power-gigabeat-s.h" /* TODO: Battery tests to get the right values! */ const unsigned short battery_level_dangerous[BATTERY_TYPES_COUNT] = diff --git a/firmware/target/arm/imx31/gigabeat-s/system-imx31.c b/firmware/target/arm/imx31/gigabeat-s/system-gigabeat-s.c similarity index 100% rename from firmware/target/arm/imx31/gigabeat-s/system-imx31.c rename to firmware/target/arm/imx31/gigabeat-s/system-gigabeat-s.c diff --git a/firmware/target/arm/imx31/gigabeat-s/timer-imx31.c b/firmware/target/arm/imx31/gigabeat-s/timer-gigabeat-s.c similarity index 100% rename from firmware/target/arm/imx31/gigabeat-s/timer-imx31.c rename to firmware/target/arm/imx31/gigabeat-s/timer-gigabeat-s.c diff --git a/firmware/target/arm/imx31/gigabeat-s/usb-imx31.c b/firmware/target/arm/imx31/gigabeat-s/usb-gigabeat-s.c similarity index 99% rename from firmware/target/arm/imx31/gigabeat-s/usb-imx31.c rename to firmware/target/arm/imx31/gigabeat-s/usb-gigabeat-s.c index 64ff04e7ae..d873c19ed3 100644 --- a/firmware/target/arm/imx31/gigabeat-s/usb-imx31.c +++ b/firmware/target/arm/imx31/gigabeat-s/usb-gigabeat-s.c @@ -27,10 +27,10 @@ #include "usb_core.h" #include "usb_drv.h" #include "usb-target.h" -#include "ccm-imx31.h" -#include "power-imx31.h" -#include "avic-imx31.h" #include "mc13783.h" +#include "ccm-imx31.h" +#include "avic-imx31.h" +#include "power-gigabeat-s.h" static int usb_status = USB_EXTRACTED; diff --git a/firmware/target/arm/imx31/gigabeat-s/wmcodec-imx31.c b/firmware/target/arm/imx31/gigabeat-s/wmcodec-gigabeat-s.c similarity index 72% rename from firmware/target/arm/imx31/gigabeat-s/wmcodec-imx31.c rename to firmware/target/arm/imx31/gigabeat-s/wmcodec-gigabeat-s.c index 06bb4d6306..96324cc162 100644 --- a/firmware/target/arm/imx31/gigabeat-s/wmcodec-imx31.c +++ b/firmware/target/arm/imx31/gigabeat-s/wmcodec-gigabeat-s.c @@ -25,6 +25,7 @@ #include "kernel.h" #include "sound.h" #include "wmcodec.h" +#include "i2s.h" #include "i2c-imx31.h" /* NOTE: Some port-specific bits will have to be moved away (node and GPIO @@ -41,24 +42,7 @@ static struct i2c_node wm8978_i2c_node = void audiohw_init(void) { - /* How SYSCLK for codec is derived (USBPLL=338.688MHz). - * - * SSI post dividers (SSI2 PODF=4, SSI2 PRE PODF=0): - * 338688000Hz / 5 = 67737600Hz = ssi1_clk - * - * SSI bit clock dividers (DIV2=1, PSR=0, PM=0): - * ssi1_clk / 4 = 16934400Hz = INT_BIT_CLK (MCLK) - * - * WM Codec post divider (MCLKDIV=1.5): - * INT_BIT_CLK (MCLK) / 1.5 = 11289600Hz = 256*fs = SYSCLK - */ - imx31_regmod32(&CCM_PDR1, - ((1-1) << CCM_PDR1_SSI1_PRE_PODF_POS) | - ((5-1) << CCM_PDR1_SSI1_PODF_POS) | - ((8-1) << CCM_PDR1_SSI2_PRE_PODF_POS) | - ((64-1) << CCM_PDR1_SSI2_PODF_POS), - CCM_PDR1_SSI1_PODF | CCM_PDR1_SSI2_PODF | - CCM_PDR1_SSI1_PRE_PODF | CCM_PDR1_SSI2_PRE_PODF); + i2s_reset(); i2c_enable_node(&wm8978_i2c_node, true); diff --git a/firmware/target/arm/imx31/gigabeat-s/gpio-imx31.c b/firmware/target/arm/imx31/gpio-imx31.c similarity index 100% rename from firmware/target/arm/imx31/gigabeat-s/gpio-imx31.c rename to firmware/target/arm/imx31/gpio-imx31.c diff --git a/firmware/target/arm/imx31/gigabeat-s/gpio-imx31.h b/firmware/target/arm/imx31/gpio-imx31.h similarity index 100% rename from firmware/target/arm/imx31/gigabeat-s/gpio-imx31.h rename to firmware/target/arm/imx31/gpio-imx31.h diff --git a/firmware/target/arm/imx31/gigabeat-s/i2c-imx31.c b/firmware/target/arm/imx31/i2c-imx31.c similarity index 100% rename from firmware/target/arm/imx31/gigabeat-s/i2c-imx31.c rename to firmware/target/arm/imx31/i2c-imx31.c diff --git a/firmware/target/arm/imx31/gigabeat-s/i2c-imx31.h b/firmware/target/arm/imx31/i2c-imx31.h similarity index 100% rename from firmware/target/arm/imx31/gigabeat-s/i2c-imx31.h rename to firmware/target/arm/imx31/i2c-imx31.h diff --git a/firmware/target/arm/imx31/gigabeat-s/mc13783-imx31.c b/firmware/target/arm/imx31/mc13783-imx31.c similarity index 98% rename from firmware/target/arm/imx31/gigabeat-s/mc13783-imx31.c rename to firmware/target/arm/imx31/mc13783-imx31.c index 2c5af8d5b7..fc5dfa72f6 100644 --- a/firmware/target/arm/imx31/gigabeat-s/mc13783-imx31.c +++ b/firmware/target/arm/imx31/mc13783-imx31.c @@ -26,11 +26,6 @@ #include "debug.h" #include "kernel.h" -#include "power-imx31.h" -#include "button-target.h" -#include "adc-target.h" -#include "usb-target.h" - #ifdef BOOTLOADER #define PMIC_DRIVER_CLOSE #endif diff --git a/firmware/target/arm/imx31/gigabeat-s/mmu-imx31.c b/firmware/target/arm/imx31/mmu-imx31.c similarity index 100% rename from firmware/target/arm/imx31/gigabeat-s/mmu-imx31.c rename to firmware/target/arm/imx31/mmu-imx31.c diff --git a/firmware/target/arm/imx31/gigabeat-s/mmu-imx31.h b/firmware/target/arm/imx31/mmu-imx31.h similarity index 100% rename from firmware/target/arm/imx31/gigabeat-s/mmu-imx31.h rename to firmware/target/arm/imx31/mmu-imx31.h diff --git a/firmware/target/arm/imx31/gigabeat-s/serial-imx31.h b/firmware/target/arm/imx31/serial-imx31.h similarity index 100% rename from firmware/target/arm/imx31/gigabeat-s/serial-imx31.h rename to firmware/target/arm/imx31/serial-imx31.h diff --git a/firmware/target/arm/imx31/gigabeat-s/spi-imx31.c b/firmware/target/arm/imx31/spi-imx31.c similarity index 100% rename from firmware/target/arm/imx31/gigabeat-s/spi-imx31.c rename to firmware/target/arm/imx31/spi-imx31.c diff --git a/firmware/target/arm/imx31/gigabeat-s/spi-imx31.h b/firmware/target/arm/imx31/spi-imx31.h similarity index 100% rename from firmware/target/arm/imx31/gigabeat-s/spi-imx31.h rename to firmware/target/arm/imx31/spi-imx31.h